Refund
POST https://business.novasend.app/v1/payin/{reference}/refund
This endpoint allows you to partially or fully refund a previously completed customer payment (Payin).
The refund either credits the customer’s account or cancels the transaction depending on the original payment method.
Conditions
- The payment transaction must have a
successstatus. - The transaction must not have been previously refunded.
Request Headers
| Header | Description | Required |
|---|---|---|
| Authorization | Used to authenticate the API, Basic base64(api_key:api_client) | ✅ |
| X-Idempotency-Key | Ensures transaction uniqueness. The value must be a UUID | ✅ |
| Content-Type | application/json | |
| Accept-Language | Language used for error messages. Supported values: en, fr |
Request
| Champ | Type | Description | Obligatoire |
|---|---|---|---|
reason | string | La raison du remboursement. | ✅ |
externalReference | string | La référence envoyé par l'API. | ✅ |
{
"reason": "Client cancellation",
"externalReference": "refund_9843b-9911c-qa87"
}Response
{
"type": "refund",
"reference": "rf_fhchi842jyimwiugjgszcxvb8n",
"originalReference": "tr_fhchi842jyimwiugjgszcxvb8n",
"amount": 150,
"fee": 0,
"currency": "XOF",
"status": "processing",
"reason": "Client cancellation",
"refundType": "partial",
"customerMsisdn": "+2250702968786",
"customerName": "John",
"createdAt": "2025-08-23T12:34:48.189Z",
"transaction": {
"reference": "tr_rf84dhf9pqiuhd38",
"status": "pending",
"processedAt": null
}
}- Response Fields Description
| Field | Description |
|---|---|
| type | Type of operation (refund). |
| reference | Unique refund identifier. |
| originalReference | Reference of the original payment to be refunded. |
| amount | Amount to be refunded. |
| fee | Associated fees (if applicable). |
| currency | Refund currency (XOF, USD, etc.). |
| status | Refund status (pending, processing, completed, failed). |
| reason | Refund reason provided by the merchant. |
| refundType | Refund type (full or partial). |
| customerMsisdn | Refunded customer phone number. |
| customerName | Customer name. |
| createdAt | Timestamp when the refund request was created. |
| transaction | Refund transaction details on the Core System side. |