Logo Lanfrica

PayDeckCo/paydeck-java

Domain:

digital infrastructure

Record type:

software
Creator:
Pay
Host:
The PayDeck Payment abstraction library - A library for multiple african payment providers. # Paydeck Java SDK > **Note**: This SDK is in active development. APIs might change without notice. Not recommended for production use yet. A unified payment gateway integration for multiple payment providers in Africa. ## Table of Contents - Features - Installation - Quick Start - Transaction Types - Deposit - Provider Initialization - Creating Checkout Request - Transaction Verification - Response Handling - Error Handling - Supported Payment Methods - Withdrawal or Payout (Coming Soon) - Supported Providers - Upcomming Providers - Advanced Configuration - Development Status - Contributing - License ## Features - Single API interface for multiple payment providers - Support for Flutterwave and Paystack - Modular architecture for different transaction types (Deposits, Withdrawals, etc.) - Type-safe enum-based provider selection - Comprehensive error handling with provider-specific details - Transaction status verification ## Installation Add to your `pom.xml`: ```xml co.paydeck paydeck-java 1.0-SNAPSHOT ``` ## Quick Start ```java import co.paydeck.ProviderBuilder; import co.paydeck.model.Provider; import co.paydeck.core.BaseDepositProvider; import co.paydeck.model.common.PaydeckResponse; // Initialize provider BaseDepositProvider provider = ProviderBuilder.buildProvider( Provider.FLUTTERWAVE, "YOUR-SECRET-KEY" ); // Verify transaction PaydeckResponse response = provider.fetchTransaction("TXN_REF"); if (response.isSuccess()) { TransactionResponseData data = response.getData(); System.out.println("Status: " + data.getStatus()); } else { System.out.println("Error: " + response.getError().getMessage()); } ``` ## Transaction Types ### Deposit #### Provider Initialization ```java import co.paydeck.ProviderBuilder; import co.paydeck.model.Provider; import co.paydeck.core.BaseDepositProvider; // Available providers Provider.FLUTTERWAVE Provider.PAYSTACK // Initialize provider BaseDepositProvider provider = ProviderBuilder.buildProvider( Provider.FLUTTE …