Skip to main content

Overview

The Refund API allows you to return funds to your customers for completed checkout transactions. You can process full refunds, partial refunds, or refund directly to a customer’s bank account via transfer.
This API is only available in the production environment

Refund Types

The Nomba API supports three types of refunds depending on the parameters you provide:

1. Full Refund

When you provide only the transactionId, the system automatically processes a full refund for the entire transaction amount.
{
  "transactionId": "WEB-ONLINE_C-69923-2e102708-ee34-4a29-b713-a826ca928a12"
}

2. Partial Refund

To refund a portion of the transaction amount, include the amount parameter alongside the transactionId. The amount must be less than the original transaction amount.
{
  "transactionId": "WEB-ONLINE_C-69923-2e102708-ee34-4a29-b713-a826ca928a12",
  "amount": 5000.00
}

3. Refund via Bank Transfer

For instant refunds or when card refunds are not supported, you can refund directly to the customer’s bank account by providing accountNumber and bankCode.
{
  "transactionId": "WEB-ONLINE_C-69923-2e102708-ee34-4a29-b713-a826ca928a12",
  "accountNumber": "0123456789",
  "bankCode": "058"
}
You can combine the transfer method with partial refunds by including the amount parameter

Process a Refund

To process a refund, send a POST request to /v1/checkout/refund.
  curl --request POST \
    --url https://api.nomba.com/v1/checkout/refund \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --header 'accountId: <accountid>' \
    --data '{
      "transactionId": "WEB-ONLINE_C-69923-2e102708-ee34-4a29-b713-a826ca928a12"
    }'

Important Considerations

Card Refund Timing

Card refunds typically take T+7 days (7 business days) for fulfillment. The actual time may vary depending on the customer’s card issuer and their processing times.

Vendor Limitations

Some card vendors and issuers do not support automated refunds through their systems. In such cases, the refund request may fail or require manual intervention.
For faster and more reliable refunds, we recommend using the bank transfer method by providing the customer’s account number and bank code. This ensures immediate processing and avoids potential vendor limitations.

Best Practices

  1. Verify Before Refunding: Always verify that the original transaction was successful before processing a refund.
  2. Keep Records: Store refund transaction IDs and responses for reconciliation and customer support purposes.
  3. Communicate with Customers:
    • For card refunds, inform customers about the T+7 days processing time
    • For transfer refunds, confirm the account details are correct before processing
  4. Use Transfer for Urgent Refunds: When customers need immediate refunds, use the bank transfer method instead of card refunds.
  5. Handle Partial Refunds Carefully: Ensure the refund amount does not exceed the original transaction amount.

Next Steps