amount. Refund processing is asynchronous; the API responds immediately with a confirmation that the refund has been queued, and the final outcome is available via the status endpoint or a webhook notification.
Request body
string
required
The unique reference of the original payment you want to refund. This must correspond to a completed transaction on your merchant account.
string
required
A unique reference you assign to this refund request. Used to query refund status and to identify the refund in webhook events. Must be unique — submitting a duplicate
refund_reference returns 409 Refund already exists.string
required
ISO 4217 currency code for the refund (e.g.
NGN). Must match the currency of the original payment.number
required
Amount to refund. To issue a partial refund, specify an amount less than the original payment amount. To issue a full refund, match the original payment amount exactly.
string
A human-readable reason for the refund. Stored for your records and may appear in customer notifications.
string
Destination bank account number for the refund. Required when the refund is to be sent to a specific account rather than reversed to the original payment method.
string
Bank code for the destination account. Required when
account_number is provided. Use GET /banks to retrieve the list of supported bank codes.Example request
Example response
Response fields
string
Indicates whether the request was accepted. A value of
success means the refund has been queued for processing.string
A human-readable description of the result.
string
The unique reference you supplied for this refund. Use it to poll for the final status.
string
The original payment reference the refund was raised against.