Skip to main contentCurrency API Documentation
Overview
The wallet service supports multiple currencies for transactions and account management. Currency support is integrated across various services including accounts, payments, transfers, and settlements.
Supported Currencies
The system currently supports the following currencies:
- USD (US Dollar)
- EUR (Euro)
- GBP (British Pound)
- JPY (Japanese Yen)
- AUD (Australian Dollar)
- CAD (Canadian Dollar)
- CHF (Swiss Franc)
- CNY (Chinese Yuan)
- INR (Indian Rupee)
- RUB (Russian Ruble)
- BRL (Brazilian Real)
- ZAR (South African Rand)
- NGN (Nigerian Naira)
Currency Integration
Account Management
- Each account is associated with a specific currency
- Multiple accounts in different currencies can be created for a user
- Currency is specified during account creation
- Currency cannot be changed after account creation
Payment Processing
- Card payments support multiple currencies
- USSD payments support multiple currencies
- POS card payments support multiple currencies
- Currency must be compatible with the payment provider
Transfer Operations
- Intra-wallet transfers require matching currencies
- Interbank transfers support currency conversion
- Deposits support multiple currencies
- Withdrawals support multiple currencies
Currency Validation
- Currency code must be valid and supported
- Currency must be compatible with the payment provider
- Currency must be compatible with the bank for interbank transfers
- Currency must be compatible with the country for USSD payments
Currency Limits
- Transaction limits are currency-specific
- Daily limits are enforced per currency
- Monthly limits are enforced per currency
- Tier limits are currency-specific
Currency Conversion
- Interbank transfers support currency conversion
- Conversion rates are provider-specific
- Conversion fees may apply
- Conversion is handled by the payment provider
Currency Settlement
- Settlement accounts can be in different currencies
- Auto-settlement supports multiple currencies
- Settlement fees may vary by currency
- Settlement timing may vary by currency
Best Practices
-
Account Creation:
- Choose the appropriate currency based on user needs
- Consider payment provider support
- Consider bank support for interbank transfers
- Consider country-specific requirements
-
Payment Processing:
- Verify currency support with payment provider
- Handle currency conversion if needed
- Consider exchange rates and fees
- Validate currency compatibility
-
Transfer Operations:
- Match currencies for intra-wallet transfers
- Handle currency conversion for interbank transfers
- Consider exchange rates and fees
- Validate currency compatibility
-
Settlement:
- Choose appropriate settlement currency
- Consider exchange rates and fees
- Handle currency conversion if needed
- Validate currency compatibility
Error Handling
- Invalid currency codes are rejected
- Incompatible currencies are rejected
- Unsupported currency conversions are rejected
- Currency-specific errors are handled appropriately
Security Considerations
- Currency validation is enforced
- Currency conversion is monitored
- Currency-specific limits are enforced
- Currency-specific fees are validated
Monitoring and Reporting
- Currency usage is tracked
- Currency conversion rates are monitored
- Currency-specific errors are logged
- Currency-specific performance is measured
Future Considerations
- Support for additional currencies
- Enhanced currency conversion features
- Improved currency validation
- Better currency-specific reporting