Transfert
Executer un transfert via l'API Direct.
POST https://business.novasend.app/v1/direct/payout
Cet endpoint permet à un marchand d'initier un payout, c'est-à-dire un transfert de fonds depuis son portefeuille vers un bénéficiaire externe.
| 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 | |
| Champ | Type | Description |
|---|
| reference | string | Identifiant unique de la transaction. |
| customerName | string | Nom du bénéficiaire du transfert. |
| payout | object | Informations relatives au transfert sortant. |
| payout.amount | number | Montant du transfert. |
| payout.msisdn | string | Numéro de téléphone du bénéficiaire (format international). |
| payout.provider | string | Opérateur de paiement (WAVE, ORANGE, MOMO, MOOV). |
| payout.country | string | Code pays ISO (CI, CM). |
{
"reference": "{{$randomUUID}}",
"customerName": "John Do",
"payout": {
"amount": 300,
"msisdn": "{{phone_number}}",
"provider": "WAVE",
"country": "CM"
}
}
{
"id": "pr_bawy28jjce5btvu8eq1jjvmjlt",
"type": "payout",
"reference": "036065a8-081f-46f7-916f-3c4ba24b64a4",
"status": "processed",
"confirmationRequired": false,
"confirmationStatus": "accepted",
"paymentUrl": null,
"customer": {
"name": "Aristide",
"phoneNumber": "+225xxxxxxxxx"
},
"mobileMoney": {
"provider": {
"name": "WAVE_CI"
}
},
"isDirect": false,
"payFee": false,
"createdAt": "2026-01-19T09:11:42.594Z",
"amount": 200,
"fee": 4,
"chargedAmount": 204,
"currency": "XOF",
"failure": null
}
| Champ | Description |
|---|
| id | Identifiant unique du transfert (payout). |
| type | Type de transaction — ici payout (transfert sortant). |
| reference | Référence fournie par le marchand pour identifier le transfert. |
| status | Statut global du transfert (processing, processed, expired, etc.). |
| confirmationRequired | Indique si une confirmation du bénéficiaire est requise avant l'exécution du transfert. |
| confirmationStatus | État actuel de la confirmation (none, pending, accepted, declined). |
| paymentUrl | Lien de confirmation du transfert (null si non applicable). |
| isDirect | Indique si le transfert a été initié via un flux direct. |
| payFee | Indique si les frais sont pris en charge par le marchand. |
| createdAt | Date et heure de création du transfert. |
| amount | Montant du transfert (hors frais). |
| fee | Montant des frais de service appliqués. |
| chargedAmount | Montant total débité du compte marchand (montant + frais). |
| currency | Devise utilisée (XOF, USD, EUR, etc.). |
| failure | Détails de l'erreur en cas d'échec du transfert (null en cas de succès). |
| Champ | Description |
|---|
| name | Nom du client. |
| phoneNumber | Numéro de téléphone du client (format international). |
| Champ | Description |
|---|
| provider | Objet contenant les informations de l'opérateur Mobile Money. |
| provider.name | Identifiant de l'opérateur Mobile Money (ex. WAVE_CI). |
GET https://business.novasend.app/v1/direct/payout/{reference}
Cet endpoint permet de consulter à tout moment l'état d'un transfert.
{
"id": "pr_bawy28jjce5btvu8eq1jjvmjlt",
"type": "payout",
"reference": "036065a8-081f-46f7-916f-3c4ba24b64a4",
"status": "processed",
"confirmationRequired": false,
"confirmationStatus": "accepted",
"paymentUrl": null,
"customer": {
"name": "Aristide",
"phoneNumber": "+225xxxxxxxxx"
},
"mobileMoney": {
"provider": {
"name": "WAVE_CI"
}
},
"isDirect": false,
"payFee": false,
"createdAt": "2026-01-19T09:11:42.594Z",
"amount": 200,
"fee": 4,
"chargedAmount": 204,
"currency": "XOF",
"failure": null
}