Logo GenukaGenuka Pay
Guides

Tarifs et frais

Le prix tout compris par zone, qui le paie, et comment connaître le montant exact avant d'encaisser.

Tarifs et frais

Genuka Pay affiche un prix tout compris. Le taux ci-dessous est le total prélevé sur la transaction, frais opérateur inclus — pas une commission qui s'ajoute à autre chose.

Barème

ZoneDeviseTarifMinimum
Afrique centrale (CEMAC)XAF3 % + 2550 XAF
Afrique de l'Ouest (UEMOA)XOF3 % + 2550 XOF
Côte d'IvoireXOF4 % + 2550 XOF

Le minimum s'applique au total : si 3 % + 25 donne moins de 50, c'est 50 qui est prélevé.

Ce que « tout compris » veut dire

Sur 10 000 XOF encaissés en Côte d'Ivoire, le total prélevé est 4 % × 10 000 + 25 = 425 XOF, quelle que soit la part que prend l'opérateur ce jour-là. Vous recevez 9 575 XOF.

Des tarifs négociés peuvent être appliqués à votre compte. Dans ce cas ils remplacent le barème ci-dessus, et le devis ci-dessous reste la source de vérité.

Qui paie les frais

Le porteur des frais est un réglage de votre compte (fee_bearer), renvoyé dans chaque transaction.

ValeurEffet
COMPANYLe client est débité du montant demandé. Les frais sont déduits de ce que vous recevez.
CUSTOMERLes frais sont ajoutés au montant débité du client. Vous recevez le montant demandé.

Connaître le montant exact avant d'encaisser

POST /api/v1/payments/quote
ParamètreTypeRequisDescription
amountnumberOuiMontant de la commande
currencystringOuiXAF ou XOF
payer_phonestringOui (sauf carte)Numéro au format E.164, ex. +2250700000001
operator_codestringNonDéduit du numéro s'il est omis
countrystringNonCode ISO 2 lettres. Détermine le barème et l'opérateur retenu.
curl -X POST "{{BASE_URL}}/api/v1/payments/quote" \
  -H "X-Public-Key: YOUR_PUBLIC_KEY" \
  -H "X-Timestamp: UNIX_TIMESTAMP" \
  -H "X-Signature: HMAC_SHA256_SIGNATURE" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 10000,
    "currency": "XOF",
    "payer_phone": "+2250700000001",
    "country": "CI"
  }'
Réponse
{
  "message": "payin_fees_quoted",
  "data": {
    "amount": 10000,
    "currency": "XOF",
    "fee_bearer": "COMPANY",
    "provider_fee_amount": 150,
    "genuka_fee_amount": 275,
    "total_fee_amount": 425,
    "customer_pays": 10000,
    "merchant_receives": 9575
  }
}

Affichez customer_pays à votre client et merchant_receives dans votre back-office. La répartition entre provider_fee_amount et genuka_fee_amount est informative : seul le total vous est facturé.

Le devis est une estimation, pas un engagement

Si l'opérateur visé refuse la transaction, elle est automatiquement reprise ailleurs, et le barème appliqué peut changer. Quand les frais sont à la charge du client (fee_bearer = CUSTOMER), le montant réellement débité est alors recalculé. Le montant ferme est celui renvoyé par la transaction elle-même.

Les frais après coup

Chaque paiement renvoie le détail réellement appliqué :

{
  "amount": 10000,
  "charged_amount": 10000,
  "provider_fee_amount": 150,
  "genuka_fee_amount": 275,
  "total_fee_amount": 425,
  "net_amount": 9575,
  "fee_bearer": "COMPANY",
  "fee_breakdown": {
    "customer_pays": 10000,
    "merchant_receives": 9575
  }
}

Ces montants sont définitifs une fois la transaction en SUCCESS : ils sont réconciliés avec ce que l'opérateur a réellement facturé.

À voir ensuite

How is this guide?

Last updated on