Fiat Payout Process
A fiat payout allows partners to securely disburse funds from their wallet balances directly into standard bank accounts. To ensure higher success rates, minimize failed routing, and prevent fraudulent transfers, Hyperrails orchestrates fiat payouts via a strict three-step lifecycle.The 3-Step Payout Lifecycle
Before submitting a payout request, your backend must follow this sequential process:1
Retrieve the Bank Code
Different regions and financial systems use different clearing identifiers. Before executing a transfer, fetch the bank code for the target currency using the Get All Banks API.This is currently supported for NGN and GHS.
2
Verify the Recipient's Account Name
To confirm funds are going to the right person, pass the account number and the
bankCode from Step 1 to the Resolve Bank Account API. This returns the verified account name on record.3
Initiate the Fiat Payout
Once you have the bank code, account number, and verified account name, pass them as a single payload to the Payout endpoint to debit your wallet and route the transfer to the clearing network.
Test Mode Behavior
When using test API keys (
sk_test_...), payouts bypass live banking networks.- Any value works for
bankCodeandaccountNumber - All accounts automatically resolve to “John Doe”
Create Fiat Payout
Endpoint POST https://api.hyperrails.io/api/v1/partners/payoutsHeaders
Request Body
string
required
A unique reference you generate for this transaction. Used to prevent duplicate payouts. Max 50 characters.
number
required
The amount to pay out from your HyperRails wallet balance.
string
required
ISO 3-letter currency code. Example:
NGN, GHS, USD.object
required
The recipient’s bank details.
string
Optional description shown to the recipient on their bank statement.