Skip to main content

Bank API Documentation

Overview

The Bank API provides endpoints for retrieving information about supported banks in the wallet service. This information is used for interbank transfers, withdrawals, and other bank-related operations.

Base URL

/api/v1/bank

Authentication

The bank endpoints do not require authentication as they provide publicly available information.

Endpoints

Get Banks

Retrieve a list of all supported banks. Endpoint: GET /get-banks Response:
{
  "statusCode": 200,
  "message": "string",
  "data": [
    {
      "name": "string",
      "slug": "string",
      "code": "string",
      "nibss_bank_code": "string",
      "country": "string"
    }
  ]
}

Bank Information

Bank Properties

  • name: Full name of the bank
  • slug: URL-friendly version of the bank name
  • code: Unique bank code used for transactions
  • nibss_bank_code: NIBSS (Nigeria Inter-Bank Settlement System) bank code
  • country: Country where the bank operates

Bank Usage

  • Interbank transfers
  • Bank account validation
  • Withdrawal processing
  • Settlement operations

Bank Validation

  • Bank codes are validated during transfers
  • Bank names are validated during withdrawals
  • NIBSS codes are validated for Nigerian banks
  • Country codes are validated for international transfers

Bank Integration

  • Banks are integrated with payment providers
  • Banks support multiple currencies
  • Banks have specific transaction limits
  • Banks have specific processing times

Best Practices

  1. Bank Selection:
    • Use bank codes for transactions
    • Verify bank support for operations
    • Check bank processing times
    • Consider bank fees
  2. Bank Validation:
    • Validate bank codes before transfers
    • Verify bank account numbers
    • Check bank status
    • Validate bank country
  3. Bank Operations:
    • Handle bank-specific errors
    • Monitor bank processing times
    • Track bank transaction status
    • Manage bank settlement
  4. Bank Integration:
    • Follow bank API requirements
    • Handle bank-specific responses
    • Manage bank timeouts
    • Handle bank maintenance periods

Error Handling

  • Invalid bank codes are rejected
  • Unsupported banks are rejected
  • Bank maintenance periods are handled
  • Bank-specific errors are managed

Security Considerations

  • Bank codes are validated
  • Bank account numbers are validated
  • Bank transactions are monitored
  • Bank settlements are secured

Monitoring and Reporting

  • Bank performance is tracked
  • Bank errors are logged
  • Bank processing times are monitored
  • Bank settlement status is tracked

Future Considerations

  • Support for additional banks
  • Enhanced bank validation
  • Improved bank integration
  • Better bank-specific reporting