Payer les vendeurs
Versements automatiques et réserve pour les marchands Lite, versements groupés pour Relay.
La façon dont un vendeur reçoit son argent dépend du mode de la connexion. Un marchand direct
pilote son propre compte et retire lui-même : rien sur cette page ne le concerne. Un marchand lite
n'a pas de dashboard pour retirer, c'est donc Wajub qui le paie. Une marketplace relay encaisse
tout et paie ses vendeurs depuis son propre solde.
Lite : Wajub paie le marchand
Un marchand Lite est payé au rythme que vous fixez sur la connexion. Chaque versement est un balayage : ce qui est disponible sur son solde, moins la réserve, moins la place des frais du versement.
payout_schedule | Ce qui se passe |
|---|---|
manual (par défaut) | Rien, jusqu'à ce que vous le demandiez avec POST /accounts/{id}/payouts |
daily | Payé une fois par jour |
weekly | Payé une fois par semaine |
monthly | Payé une fois par mois |
Définissez-le avec POST /accounts ou PUT /accounts/{id} à tout moment. Contrairement aux capacités
et à la tarification, il change directement : le moment où un marchand reçoit son propre argent ne
lui retire rien. Il n'existe que sur un compte lite — l'envoyer pour un compte direct ou relay
est refusé avec 400, puisque Wajub n'y paie personne.
curl -X POST https://api.wajub.com/accounts/acc_7Yh2MpL4tRb3nP8sZcXv/payouts \
-H "Authorization: sk.kZ3qP8mWvL2xR7tB5nY4hC6dF9jS1aG0eU3i…"| Vous recevez | Quand |
|---|---|
200 et le transfer | Le versement est parti |
409 There is nothing to pay out yet. | Le balayage est inférieur à payout_min_amount |
422 avec un motif | Aucune destination déclarée, connexion inactive, ou plafond de versement atteint |
Une connexion est balayée au plus une fois par jour, quel que soit le demandeur. Un second appel le même jour renvoie le versement déjà parti. Le montant n'est jamais le vôtre à choisir : c'est ce que le marchand peut recevoir.
Pourquoi le versement est un peu inférieur au solde
Les frais d'un versement sont réservés en même temps que son montant : balayer tout le solde laisserait le versement à court de ses propres frais. Le balayage envoie le plus grand montant dont les frais tiennent encore. Un marchand payé sur un autre compte Wajub ne paie aucun frais, et son solde est balayé en entier. Seul le solde dans la devise propre du marchand est balayé ; un solde qu'il détient dans une autre devise attend qu'il le retire lui-même.
Chaque versement part vers la destination que le marchand a déclarée dans son portail, et passe les mêmes contrôles que n'importe quel virement — y compris le délai de carence d'une destination tout juste déclarée ou modifiée.
La réserve
Un marchand Lite est payé sans rien demander : l'argent peut donc partir alors que l'acheteur peut encore être remboursé. La réserve retient une part de chaque vente jusqu'à ce que cette fenêtre se ferme : 10 % pendant 30 jours par défaut.
| Ensuite | Ce que devient la réserve |
|---|---|
| Un versement s'exécute | Il envoie tout sauf ce qui est retenu |
| Une vente est remboursée | Le remboursement puise d'abord dans la réserve |
| La fenêtre se ferme | Cette part est libérée et rejoint le prochain versement |
La réserve n'est ni un prélèvement ni un solde à part. L'argent reste celui du marchand ; la réserve dit seulement quelle part ne peut pas encore sortir. Le taux et la durée sont fixés par Wajub pour une connexion, pas par la plateforme.
Quand un marchand passe en négatif
Si un remboursement arrive après qu'un marchand a été payé et que la réserve ne suffit pas, son solde passe sous zéro. C'est vous qui couvrez. Le manque passe de votre solde à celui du marchand, au moment même où le remboursement est traité, et est enregistré contre ce remboursement.
C'est l'autre face de Lite
Lite vous permet de recruter des marchands sans leur demander de gérer un compte Wajub. Ces marchands sont les vôtres, et ce qu'ils doivent après un remboursement aussi. Un marchand Direct, qui gère son propre compte, porte lui-même son solde négatif.
Quand votre commission ne peut pas être prélevée tout de suite
Un marchand direct peut encaisser sur ses propres contrats de prestataire. Ces ventes ne passent
jamais par un solde Wajub : il n'y a donc rien sur quoi prélever votre commission au moment de la
vente. Elle devient une créance :
| Ensuite | Ce qui se passe |
|---|---|
| La vente a lieu | La commission est enregistrée comme due, et account.commission_receivable_recorded est envoyé |
| La vente est remboursée | La créance est réduite selon le commission_refund_policy de la connexion, comme le serait une commission prélevée |
| Le solde Wajub du marchand peut la couvrir | Elle est prélevée en entier, et account.commission_receivable_collected est envoyé |
Le prélèvement ne fait jamais passer le marchand sous zéro : une commission impayée attend que l'argent
arrive. GET /accounts/{id}/commission-receivables liste ce qu'une connexion vous doit et totalise ce
qui reste à percevoir.
Relay : payer beaucoup de vendeurs d'un coup
Une marketplace Relay encaisse tous les paiements et paie ses vendeurs depuis son propre solde. Chaque vendeur est un bénéficiaire, et une campagne de versements tient en un appel.
curl -X POST https://api.wajub.com/transfers/batch \
-H "Authorization: sk.kZ3qP8mWvL2xR7tB5nY4hC6dF9jS1aG0eU3i…" \
-H "Idempotency-Key: payout-run-2026-09-30" \
-H "Content-Type: application/json" \
-d '{
"transfers": [
{ "beneficiary": "ben_01JX…", "amount": 125000, "reference": "seller-42" },
{ "beneficiary": "ben_01JY…", "amount": 48000, "reference": "seller-43" }
]
}'| Règle | Pourquoi |
|---|---|
| Jusqu'à 500 lignes par appel | Au-delà, découpez la campagne |
Idempotency-Key est obligatoire | Relancer après un délai dépassé n'envoie que les lignes qui ne sont pas passées |
Chaque reference est unique dans le lot | La clé propre à chaque ligne en est construite |
| Les lignes réussissent ou échouent seules | Un vendeur sans destination vérifiée ne bloque pas les autres |
La réponse liste chaque ligne avec accepted ou rejected et le motif. Chaque virement garde votre
reference et le batch_reference de la campagne : c'est ce qui le relie à vos propres données.
Les vendeurs sont vérifiés avant leur premier versement
Wajub paie des vendeurs que vous avez recrutés : sur un compte Relay, le portefeuille de chaque nouveau bénéficiaire est donc comparé au nom que l'opérateur a enregistré, avant tout versement. Déclarez le nom complet du vendeur tel qu'il figure sur son portefeuille : au moins deux mots doivent correspondre.
verification sur le bénéficiaire | Ce que cela veut dire |
|---|---|
verified | Les noms correspondent ; le vendeur peut être payé |
name_mismatch | L'opérateur connaît ce portefeuille sous un autre nom ; les versements sont refusés |
lookup_unavailable | L'opérateur n'a pas pu être interrogé ; réessayez plus tard |
verified vaut true ou false sur chaque bénéficiaire que vous lisez. Relancez une vérification
avec POST /beneficiaries/{id}/verify — après une indisponibilité de l'opérateur, ou une fois le nom
corrigé. Dans un lot, une ligne qui paie un vendeur non vérifié est refusée seule, et le reste du lot
passe.
Relay seulement, et réglable
Un compte qui ne fait pas de Relay continue de créer des bénéficiaires payables immédiatement, comme toujours. Wajub peut assouplir la vérification pour une marketplace Relay qu'il a évaluée, ou l'exiger de n'importe quel autre compte — demandez-le si l'un des deux vous concerne.
Quand un vendeur payé doit rendre de l'argent
Une vente est remboursée après que vous en avez payé le vendeur. Le remboursement sort de votre solde, et personne ne peut reprendre de l'argent sur un portefeuille Mobile Money : le vendeur vous le doit donc. Vous seul savez à quel vendeur appartenait la commande, c'est donc vous qui déclarez la dette :
curl -X POST https://api.wajub.com/beneficiaries/ben_01JX…/receivables \
-H "Authorization: sk.kZ3qP8mWvL2xR7tB5nY4hC6dF9jS1aG0eU3i…" \
-H "Content-Type: application/json" \
-d '{ "amount": 12500, "reference": "order-9981-refund" }'Déclarer à nouveau la même reference renvoie la première dette. Wajub l'enregistre et envoie
beneficiary.receivable_recorded. La suite dépend de votre compte :
| Compensation | Ce qui se passe |
|---|---|
| Désactivée (par défaut) | Rien d'autre. Vous la récupérez comme vous voulez, puis la marquez avec POST /beneficiaries/{id}/receivables/{receivable}/settle |
| Activée | Votre prochaine campagne de versements vers ce vendeur est réduite de ce qu'il doit, et beneficiary.receivable_recovered est envoyé |
Avec la compensation activée, chaque ligne du lot indique recovered. Une ligne dont le versement est
inférieur à la dette n'envoie rien, répond status: recovered, et le reste reste dû. La compensation
ne joue que dans POST /transfers/batch ; un POST /transfers seul envoie toujours ce que vous
demandez. Demandez à Wajub d'activer la compensation pour votre compte.
Une ligne échouée rend la dette
Si le versement d'une ligne est refusé, ce qu'elle aurait récupéré revient sur la dette. Relancer la campagne ne récupère jamais deux fois.
Relevés
GET /beneficiaries/{id}/statement?from=2026-09-01&to=2026-09-30 renvoie tout ce qui a été versé à un
vendeur sur une période, jusqu'à un an. Les totaux sont répartis entre paid, in_progress et
failed : un versement échoué figure sur le relevé, mais n'est jamais compté comme payé.
Vélocité des versements
Chaque compte a un plafond horaire de versements, pensé pour un marchand qui paie ses fournisseurs — pas pour une marketplace qui paie deux cents vendeurs. Contactez Wajub pour le relever avant votre première campagne. Il est fixé par Wajub pour votre compte et ne peut pas être relevé par l'API.