APIMobile Money

Remboursement

Rembourser un paiement cree via l'API Direct.

POST https://business.novasend.app/v1/payin/{reference}/refund

Cet 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

ValeurDescriptionObligatoire
AuthorizationPour authentifier l'Api, Basic base64(api_key:api_client)
X-Idempotency-KeyCet en-tête garantit l'unicité de vos transactions. La valeur doit être un UUID
Content-Typeapplication/json
Accept-LanguagePour traduire les messages d'erreur, langues possibles: en, fr

Requête

ChampTypeDescriptionObligatoire
reasonstringLa raison du remboursement.
externalReferencestringLa 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

ChampDescription
typeType d'opération (refund).
referenceIdentifiant unique du remboursement.
originalReferenceRéférence du paiement d'origine à rembourser.
amountMontant à rembourser.
feeFrais associés (si applicables).
currencyDevise du remboursement (XOF, USD, etc.).
statusStatut du remboursement (pending, processing, completed, failed).
reasonMotif du remboursement transmis par le marchand.
refundTypeType de remboursement (full ou partial).
customerMsisdnNuméro de téléphone du client remboursé.
customerNameNom du client.
createdAtHorodatage de création de la demande de remboursement.
transactionDétails de la transaction de remboursement côté Core System.