Skip to main content
Send money transfers using multiple payment methods. This guide covers how to send payments and track their status.

Sending a Payment

Send a payment by specifying the payment method and recipient details in info. Example for a bank transfer:

Payment Parameters

Required Fields

  • from_amount – Amount to send (source currency)
  • from_wallet_id – Wallet ID to debit from
  • to_currency – Destination currency (e.g. NGN, USD)
  • payment_method – One of: bank_transfer, card, mobile_money, wallet, tag_transfer, defi, revolut, paypal, cashapp, zelle
  • info – Recipient details; required fields depend on payment_method (e.g. for bank_transfer: account_number, bank_code, account_name; for tag_transfer: tag_id)

Optional Fields

  • reference – Your payment reference for idempotency or tracking
  • payment_type – instant, scheduled, or recurring (default: instant)
  • is_save_to_beneficiary – Save recipient as beneficiary

Finding the bank_code

bank_code is not a CBN or SWIFT code; it is the code our payment provider uses for that bank in that country. Get it from List banks for the recipient’s country, and use it as-is:
  1. GET /v1/banks/{country_code} lists every bank with its code.
  2. For Ghana and Kenya, GET /v1/banks/{country_code}/{bank_code} lists branches; pass the chosen branch_code in info.branch_code.
  3. POST /v1/banks/verify resolves the account number to the holder’s name before you send.
  4. If you only have an account number, POST /v1/banks/suggest returns banks we have paid it through before.
Cache the bank list for at most a day. All four endpoints need your API key.

Payment Response

Payment Status

Payments are processed asynchronously. Status can be:
  • Processing - Payment is being processed
  • Success - Payment completed successfully
  • Failed - Payment failed (check error details)

Verifying Payment Status

Check payment status using the transaction reference returned from send:

Payment Methods

The API supports multiple payment methods; pass payment_method and the matching info shape: Availability depends on currency and region. See the Send Payment API for the exact info fields per method.

Payment Limits

Payment limits may apply based on:
  • Account tier
  • Currency
  • Payment method
  • Regulatory requirements

Payment Fees

Fees may apply depending on:
  • Payment amount
  • Currency
  • Payment method
  • Destination country

Best Practices

  • Verify recipient account details before sending
  • Include payment references for easy tracking
  • Monitor payment status regularly
  • Keep sufficient wallet balance
  • Handle failed payments appropriately

Next Steps