Payouts
Atlas for Platform — Payouts
This guide covers making payouts from a sub-account to an external beneficiary.
Key differences from Global Clearing
| Global Clearing | Atlas for Platform | |
|---|---|---|
| Authentication | Parent account JWT | Sub-account JWT |
| Sender object | Required for POBO flows | Not required — all flows originate at sub-account level |
| Fund source | Parent wallet | Sub-account wallet only |
Payout flow
Step 1 — Validate the beneficiary account (optional, NGN only)
Optionally validate the destination account using the Get Account Name endpoint before creating the beneficiary.
Step 2 — Create a beneficiary
Create a beneficiary using the Create Beneficiary endpoint. Only beneficiaries with a status of approved can receive payments.
See the Bank codes & market requirements guide for country-specific requirements.
Step 3 — Check wallet balance
Confirm the sub-account wallet has sufficient funds using the Get Wallet endpoint before initiating the payout.
Step 4 — Request a payout
Submit the payout using the Create Payment Request endpoint.
{
"beneficiaryId": 278,
"purposeId": 12,
"amount": 100,
"walletId": 1,
"clientReference": "your-reference",
"paymentId": "a7600e0e-a973-4d26-b15c-89de5836e900"
}| Field | Description | Mandatory |
|---|---|---|
beneficiaryId | ID of the approved beneficiary | Yes |
purposeId | Purpose of payment code | Yes |
amount | Amount to send | Yes |
walletId | Sub-account wallet ID to debit | Yes |
clientReference | Your own reference for the payment | No |
paymentId | Unique UUID for idempotency | Yes |
Sender object not requiredAll flows on Atlas for Platform originate at sub-account level. Sender identity is established through the sub-account's KYB data and director consent — no
senderobject is needed in the payout request.
Step 5 — Track payment status
We recommend subscribing to webhooks to receive real-time status updates rather than polling. See the Webhooks guide for setup instructions.
API response states
| State | Description |
|---|---|
requested | Payment created and queued. Sub-account wallet debited. |
completed | Funds sent successfully. Note this does not confirm the beneficiary has received the funds. |
archived | Payment cancelled or failed. Funds returned to sub-account wallet. |
refunded | Payment refunded. Funds returned to sub-account wallet. |
Webhook states
| State | Description |
|---|---|
requested | Sub-account wallet debited and funds sent. |
completed | Funds sent to the beneficiary. Note this does not confirm the beneficiary has received the funds. |
archived | Payment archived and funds returned to sub-account wallet. |
Compliance holdsOn rare occasions payments may be held for compliance review. Verto will reach out with an RFI if this occurs. Check payment status at any time using the
paymentIdvia the Get Payment endpoint.
Updated about 1 month ago
