Skip to main content
Version: v2

Refund a transaction

GET 

/api/v2/refund/:order_id

Processes a refund for a paid transaction, returning the money to the customer via their original payment method.

Rate Limit: 100 requests per 60 seconds

Requirements:

  • Valid API key with appropriate scopes (checkout, write, read_and_write, or management)
  • Transaction must exist and belong to your organization
  • Transaction must be in 'paid' or 'paid_and_blocked' status
  • Sufficient account balance to cover the refund amount
  • Transaction must not already be refunded or cancelled

Process Flow:

  1. Validates the transaction exists and is refundable
  2. Checks account balance is sufficient
  3. Initiates refund with payment provider (Wave or Orange Money)
  4. On success: deducts amount from account, updates transaction status to 'refunded'
  5. On failure: returns error without changing account balance

Supported Payment Methods:

  • wave - Refunds via Wave mobile money
  • orange_money - Refunds via Orange Money

Important Notes:

  • Refunds are processed immediately and cannot be cancelled
  • The full transaction amount is refunded (partial refunds not supported)
  • Refund is sent to the customer's phone number used in the original transaction
  • Transaction status changes to 'refunded' upon successful completion

Request

Responses

Refund processed successfully. The transaction status has been updated to 'refunded' and funds have been returned to the customer.