APIMobile Money
Remboursement
Rembourser un paiement cree via l'API Direct.
POST https://business.novasend.app/v1/payin/{reference}/refundCet endpoint permet de rembourser partiellement ou totalement un paiement client (Payin) précédemment validé. Le remboursement crédite le compte du client ou annule la transaction selon le mode de règlement initial.
Les règles de Remboursement :
- Payout (Transfert) : En cas de statut échec lors d'un paiement, Novasend remboursement le montant brut (Montant facturé + les frais) sur le portefeuille du Marchand
- Payin (Paiement) : En cas de statut échec lors d'un paiement et que le client du Marchand a été débité, Novasend procède à la vérification avec ses partenaires sur le statut de la transaction. Lorsqu'il est constaté que les fonds ont été collecté par le partenaire, Novasend change le statut de la transaction échec en succès avec envoi du callback (webhook), et crédite le compte du Marchand dans un délai maximum de 48 heures.
Conditions
- La transaction de paiement doit avoir le statut
success. - La transaction ne doit pas avoir déjà été remboursée.
En-tête de la Requête
| Valeur | Description | Obligatoire |
|---|---|---|
| Authorization | Pour authentifier l'Api, Basic base64(api_key:api_client) | ✅ |
| X-Idempotency-Key | Cet en-tête garantit l'unicité de vos transactions. La valeur doit être un UUID | ✅ |
| Content-Type | application/json | |
| Accept-Language | Pour traduire les messages d'erreur, langues possibles: en, fr |
Requête
| 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"
}Réponse
{
"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
}
}Interprétation de la Réponse
| Champ | Description |
|---|---|
| type | Type d'opération (refund). |
| reference | Identifiant unique du remboursement. |
| originalReference | Référence du paiement d'origine à rembourser. |
| amount | Montant à rembourser. |
| fee | Frais associés (si applicables). |
| currency | Devise du remboursement (XOF, USD, etc.). |
| status | Statut du remboursement (pending, processing, completed, failed). |
| reason | Motif du remboursement transmis par le marchand. |
| refundType | Type de remboursement (full ou partial). |
| customerMsisdn | Numéro de téléphone du client remboursé. |
| customerName | Nom du client. |
| createdAt | Horodatage de création de la demande de remboursement. |
| transaction | Détails de la transaction de remboursement côté Core System. |