Skip to main content

The one shape a payout has on this API, across create, retrieve and list. amount is denominated in currency; fee and total_debited are denominated in source_currency. The two differ on every cross-currency payout, so the debit side must say which one it is in. For a same-currency payout source_currency equals currency.

id
string
required

The payout ID. Use this to look it up with Get Payout.

Example:

"pay_4Xr9dLc0mNv7Kq2B"

status
enum<string>
required

pending: accepted and queued. processing: submitted to the payment rail. completed: delivered to the destination. failed: could not be delivered, see failure_reason.

Available options:
pending,
processing,
completed,
failed
Example:

"pending"

amount
string
required

The net amount delivered to the destination, in currency.

Example:

"5000.00"

currency
string
required

The destination's currency. amount is denominated in this currency.

Example:

"NGN"

source_currency
string | null

The currency of the balance being debited. fee and total_debited are denominated in this currency. Equal to currency for a same-currency payout; different for a cross-currency payout funded with a quote_id.

Example:

"NGN"

fee
string | null

The fee charged for this payout, in source_currency.

Example:

"100.00"

total_debited
string | null

The gross amount debited from your balance, in source_currency. Equals amount + fee only for a same-currency payout, because on a cross-currency payout amount is in a different currency, so the two do not add up.

Example:

"5100.00"

destination
string | null

The payout destination ID this payout was sent to.

Example:

"pd_7Kq2mNv4XbR9dLc0"

reference
string | null

The reference you set when you created the payout. null if you set none.

Example:

"payout-2026-08-07-001"

narration
string | null

The narration we sent with this payout: the narration you sent, or our default text when you sent none (Bachs Payout on a payout to a Nigerian bank account). null when the payout carries none. The recipient's bank may show it shortened, or show its own label instead.

Example:

"Invoice 1042"

session_id
string | null

The NIP session ID of a payout to a Nigerian bank account: the ID the receiving bank uses to trace the transfer. Give it to the recipient or their bank when they ask where the money is. null until status is completed, and always null on other payout types. Payouts completed before 22 October 2026 have none.

Example:

null

failure_reason
string | null

Populated only when status is failed.

Example:

null

created_at
string<date-time> | null

ISO 8601 creation timestamp.

Example:

"2026-08-07T14:30:00.000Z"

completed_at
string<date-time> | null

ISO 8601 timestamp of when the payout reached a terminal state. null while status is pending or processing.

Example:

null