Skip to main content
POST
/
v1
/
payouts
Créer un payout
curl --request POST \
  --url https://api.example.com/v1/payouts

Créer un payout

Crée un nouveau payout (envoi d’argent) vers un compte Mobile Money.

Endpoint

POST /v1/payouts

Headers

HeaderRequisDescription
AuthorizationBearer sk_xxx
Content-Typeapplication/json
X-Idempotency-KeyRecommandéClé unique pour éviter les doublons

Body

ParamètreTypeRequisDescription
amountintegerMontant en FCFA (min: 100, max: 5,000,000)
providerstringORANGE_MONEY, WAVE, ou MOOV
recipient_phonestringNuméro de téléphone du destinataire (+223…)
recipient_namestringNom du destinataire
descriptionstringDescription du payout
typestringType: MERCHANT_WITHDRAWAL, SUPPLIER_PAYMENT, SALARY, COMMISSION, REFUND, OTHER
metadataobjectDonnées personnalisées
idempotency_keystringClé d’idempotence

Exemple

curl -X POST https://api.sahelpay.ml/v1/payouts \
  -H "Authorization: Bearer sk_test_xxx" \
  -H "Content-Type: application/json" \
  -H "X-Idempotency-Key: supplier-123" \
  -d '{
    "amount": 50000,
    "provider": "ORANGE_MONEY",
    "recipient_phone": "+22370123456",
    "recipient_name": "Mamadou Diallo",
    "description": "Paiement fournisseur #123",
    "type": "SUPPLIER_PAYMENT"
  }'

Réponse

{
  "success": true,
  "data": {
    "id": "pay_abc123def456",
    "reference": "PAY_abc123def456",
    "amount": 50000,
    "fee": 250,
    "net_amount": 49750,
    "currency": "XOF",
    "provider": "ORANGE_MONEY",
    "recipient_phone": "+22370123456",
    "recipient_name": "Mamadou Diallo",
    "type": "SUPPLIER_PAYMENT",
    "status": "PENDING",
    "description": "Paiement fournisseur #123",
    "created_at": "2025-12-18T16:45:00.000Z"
  }
}

Erreurs

CodeDescription
INVALID_AMOUNTMontant invalide (< 100 ou > 5,000,000)
INSUFFICIENT_FUNDSSolde insuffisant
INVALID_PROVIDERProvider non supporté
DUPLICATE_PAYOUTPayout déjà créé (idempotence)