Créer un remboursement
Créer un remboursement
Aperçu
Créer un remboursement
Refunds a completed transaction (card, Wave, or MTN MoMo). Merchant balance updates immediately. Supports full and partial refunds. In test mode, MTN refunds are ledger-only (no MTN API call). In live mode, MTN MoMo requires a RequestToPay reference on the original transaction.
Quand l’utiliser
Pour annuler tout ou partie d’un paiement éligible déjà terminé (remboursement total ou partiel).
À savoir
Carte : le crédit client sur le réseau carte est finalisé séparément par nos équipes. Wave partiel : nécessite un numéro de téléphone client enregistré (paiement bénéficiaire). MTN MoMo (live) : le paiement d’origine doit avoir une référence prestataire (UUID RequestToPay, provider_checkout_id) ; lomi. appelle l’API Disbursement MTN et interroge le statut jusqu’à complétion. MTN MoMo (test) : uniquement comptable; pas d’appel API MTN. Les remboursements partiels MTN exigent aussi un téléphone client. Pour les paiements liés à un abonnement, utilisez subscription_action (optionnel) : default, cancel, pause ou none. Un remboursement partiel ne modifie l’abonnement que si le cumul atteint le montant total de la transaction.
Voir aussi
Lister les remboursements · Récupérer une transaction · Remboursements
Authentification
Les routes marchandes nécessitent une clé API dans l’en-tête X-API-KEY (voir Vue d’ensemble). Utilisez une clé test avec https://sandbox.api.lomi.africa et une clé live avec https://api.lomi.africa.
Endpoint
POST /refunds
URLs de base :
https://sandbox.api.lomi.africahttps://api.lomi.africa
Requête
Paramètres d’URL
Pas d’autre paramètre dans l’URL.
Paramètres de requête
Aucun paramètre de requête.
En-têtes
| Nom | Emplacement | Obligatoire | Schéma | Description |
|---|---|---|---|---|
Lomi-Account | header | Non | - | Optional lomi. Network account id (acct_...). When present, the API key acts as the Operator and the request targets the connected Member Account. |
Corps de la requête
Corps JSON.
Schéma: CreateRefundDto
| Champ | Obligatoire | Type | Description |
|---|---|---|---|
transaction_id | Oui | string | UUID of a completed transaction (card, Wave, or MTN MoMo) |
amount | Oui | number | Amount to refund (same currency as the transaction) |
reason | Non | string | Reason for the refund |
refund_type | Non | enum ("full", "partial") | Full or partial refund. If omitted, full when amount equals transaction gross amount. |
subscription_action | Non | enum ("default", "cancel", "pause", ...) | Subscription side-effect after a full refund: default (cancel initial payment, pause renewal), cancel, pause, or none. |
Exemple de corps :
{
"transaction_id": "string",
"amount": 0
}Réponses
| Statut | Description |
|---|---|
201 | Remboursement enregistré |
400 | Entrée invalide ou type non pris en charge |
Erreurs
Les erreurs suivent un format JSON standard. 401 : clé manquante ou invalide. 404 : ressource introuvable. 429 : trop de requêtes. Pour les créations, envoyez une clé d’idempotence si votre flux le permet.
Exemple
curl -sS -X POST "https://sandbox.api.lomi.africa/refunds" \
-H "X-API-KEY: $LOMI_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"transaction_id":"string","amount":0}'OpenAPI
- operationId:
RefundsController_create - Operation:
POST /refunds
Schémas complets et Try it : référence API.