Splits per order
A payment can reference a splits[] array: amount + vendor_id. The ledger credits each seller wallet as soon as the payment succeeds.
Multi-vendor splits, KYC-checked payouts
On every order, split the payment between your commission and the seller's share. SaalaPay holds a wallet per seller, verifies KYC, and triggers payouts to their Mobile Money number on demand.
A payment can reference a splits[] array: amount + vendor_id. The ledger credits each seller wallet as soon as the payment succeeds.
LIGHT mode (ID only, 1M XOF/tx cap) or FULL (ID + RCCM + IBAN, no cap). Append-only audit trail to satisfy regulators.
Our async worker talks to Mobile Money providers. Provider failure → wallet atomically re-credited. No funds lost in transit.
Mobile Money destination number masked in listings. Visible only on GET /payouts/:id, scoped to the merchant.
curl https://api.saalapay.com/v1/marketplace/payouts \
-H "X-SP-Signature: $HMAC_SIGNATURE" \
-H "Idempotency-Key: payout-vendor-acme-2026-04-w15" \
-d '{
"vendor_id": "v_01HXY...",
"amount": 250000,
"currency": "XOF",
"destination": { "method": "MOBILE_MONEY", "phone": "+221771234567" }
}'
# Le worker async picks le job → Wave/Orange/MTN → callback provider → status COMPLETED