lomi.
Payments

Remboursements

Effectuez des remboursements totaux ou partiels sur les transactions.

L’API Refunds permet de rembourser des transactions terminées. Les remboursements sont traités de façon asynchrone par le prestataire d’origine.

Les remboursements sont initiés immédiatement mais traités de manière asynchrone. Suivez le statut final via webhook (refund.completed ou refund.failed).

Initier un remboursement

Effectue un remboursement total ou partiel d’une transaction terminée.

Corps de la requête

ChampTypeObligatoireDescription
transaction_idstringOuiID de la transaction à rembourser
amountnumberNonMontant (remboursement total si omis)
reasonstringNonMotif du remboursement
metadataobjectNonPaires clé-valeur
import { LomiSDK } from '@lomi./sdk';

const lomi = new LomiSDK({
  apiKey: process.env.LOMI_API_KEY!,
  environment: 'live',
});

const fullRefund = await lomi.refunds.create({
  transaction_id: 'tx_abc123...',
  reason: 'Customer requested refund',
});

const partialRefund = await lomi.refunds.create({
  transaction_id: 'tx_abc123...',
  amount: 5000,
  reason: 'Partial product return',
  metadata: {
    ticket_id: 'TICKET-456',
  },
});

console.log(`Refund initiated: ${partialRefund.id}, Status: ${partialRefund.status}`);
from lomi import LomiClient
import os

client = LomiClient(
    api_key=os.environ["LOMI_API_KEY"],
    environment="test"
)

refund = client.refunds.create({
    "transaction_id": "tx_abc123...",
    "amount": 5000,
    "reason": "Customer requested refund",
    "metadata": {"ticket_id": "TICKET-456"}
})

print(f"Refund initiated: {refund['id']}, Status: {refund['status']}")
curl -X POST "https://api.lomi.africa/refunds" \
  -H "X-API-KEY: $LOMI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "transaction_id": "tx_abc123...",
    "amount": 5000,
    "reason": "Customer requested refund",
    "metadata": {"ticket_id": "TICKET-456"}
  }'

Lister les remboursements

Récupère les remboursements avec filtrage optionnel.

Paramètres de requête

ParamètreTypeDescription
statusstringStatut : pending, completed, failed, cancelled
startDatestringÀ partir de cette date (ISO 8601)
endDatestringJusqu’à cette date (ISO 8601)
limitnumberRésultats par page (défaut : 50)
offsetnumberDécalage (défaut : 0)
const refunds = await lomi.refunds.list({
  status: 'completed',
  startDate: '2024-01-01T00:00:00Z',
  limit: 20,
});
refunds = client.refunds.list(
    status="completed",
    startDate="2024-01-01T00:00:00Z",
    limit=20
)
curl -X GET "https://api.lomi.africa/refunds?status=completed&startDate=2024-01-01T00:00:00Z&limit=20" \
  -H "X-API-KEY: $LOMI_API_KEY"

Obtenir un remboursement

Récupère le détail d’un remboursement.

const refund = await lomi.refunds.get('ref_abc123...');
console.log(`Status: ${refund.status}`);
refund = client.refunds.get('ref_abc123...')
curl -X GET "https://api.lomi.africa/refunds/ref_abc123..." \
  -H "X-API-KEY: $LOMI_API_KEY"

Objet Refund

ChampTypeDescription
idstringIdentifiant du remboursement
transaction_idstringTransaction d’origine
amountnumberMontant remboursé
currency_codestringDevise
statusstringpending, completed, failed, cancelled
reasonstringMotif
failure_reasonstringMotif d’échec (si échec)
provider_codestringPrestataire
metadataobjectMétadonnées
created_atstringHorodatage de création

Webhooks

Abonnez-vous à ces événements pour le suivi :

ÉvénementDescription
refund.pendingRemboursement initié, attente prestataire
refund.completedRemboursement traité avec succès
refund.failedÉchec (voir failure_reason)

Réponses d’erreur

StatutDescription
400Entrée invalide ou montant supérieur à la transaction
401Clé API invalide ou manquante
404Transaction ou remboursement introuvable

Sur cette page