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}/refundGET /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
| Parameter | Type | Required | Description |
|---|---|---|---|
amount | integer | Amount to refund | |
reason | string | duplicate, 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.