Logo Lanfrica

magnatobi/pawapay-payment-gateway

Domain:

digital infrastructure

Record type:

software
Creator:
mag
Host:
A payment gateway that integrates with some African payment gateways and banks i.e Flutterwave, Paystack, Opay, etc # PawaPay Payment Gateway A comprehensive payment gateway integration service that provides a unified interface for multiple African payment gateways and banks. This .NET 7.0 application enables seamless integration with Flutterwave, Paystack, Opay, and other payment providers through a single, consistent API. ## πŸš€ Features - **Multi-Gateway Support**: Integrate with multiple payment providers (Flutterwave, Paystack, Opay) simultaneously - **Unified API**: Single interface for all payment operations across different providers - **Gateway Management**: Dynamic gateway registration and management with priority-based routing - **Transaction Operations**: - Receive payments (payment links) - Send funds (bank transfers) - Query transaction status - Validate bank account numbers - Check gateway balance and availability - **Intelligent Routing**: Automatic gateway selection based on priority and availability - **Error Handling**: Comprehensive error handling with email notifications - **Swagger Documentation**: Built-in API documentation for easy integration - **Docker Support**: Container-ready for easy deployment ## πŸ—οΈ Architecture The project follows a clean architecture pattern with clear separation of concerns: ``` PawaPayGateway/ β”œβ”€β”€ Domain/ # Domain entities, interfaces, and business logic β”‚ β”œβ”€β”€ Entities/ # Domain entities (Gateway, etc.) β”‚ β”œβ”€β”€ Interfaces/ # Core interfaces (ITransactionProvider, IBankTransactionProvider) β”‚ β”œβ”€β”€ Enums/ # Enumerations (GatewayType, TransactionStatus, etc.) β”‚ β”œβ”€β”€ Models/ # Request/Response models for each gateway β”‚ └── Responses/ # Common response models β”œβ”€β”€ Infrastructure/ # Infrastructure implementations β”‚ β”œβ”€β”€ Services/ # Gateway service implementations β”‚ β”œβ”€β”€ Implementations/# Core implementations (GatewayManager, RepositoryBase) β”‚ β”œβ”€β”€ Configs/ # Configuration classes β”‚ └── Data/ # Data context and database setup β”œβ”€β”€ Application/ …