Skip to main content

Refunds

Refunds are currently exposed primarily through merchant-scoped payment operations.

The Refund object

{
"id": "re_abc123",
"object": "refund",
"amount": 5000,
"currency": "xof",
"payment_intent": "pi_xyz789",
"status": "succeeded",
"reason": "requested_by_customer",
"created": 1708300800
}

Implemented route family

Current refund operations are documented under the merchant route family:

  • POST /api/v1/merchant/payments/{id}/refund
  • GET /api/v1/merchant/payments/{id}/refunds

Legacy-compatible merchant paths may also be available under api/merchant/*.

Create a refund for a payment

POST /api/v1/merchant/payments/{id}/refund
ParameterTypeRequiredDescription
amountintegerAmount to refund
reasonstringduplicate, fraudulent, or requested_by_customer

The payment identifier is part of the route and refers to the merchant payment resource being refunded.

List refunds for a payment

GET /api/v1/merchant/payments/{id}/refunds

This returns refunds associated with a specific merchant payment.

Integration note

At this stage, the documentation should not present refunds as an independent public refunded resource family unless that route family is explicitly implemented and exposed.