Checkout
Une page de paiement à vos couleurs, prête en un appel.
Créez le paiement, redirigez votre client : Wajub affiche les opérateurs disponibles, guide la confirmation et vous notifie du résultat. Aucune page de paiement à construire ni à maintenir.
- Mobile money et cartes
- Français et anglais
Ils encaissent avec Wajub
Pourquoi Wajub Checkout
Pensée pour le mobile money, du choix au reçu.
Votre client choisit son moyen de paiement, confirme sur son téléphone et revient sur votre site. La page gère chaque étape ; vous n'avez rien à construire.
Le mobile money d'abord
Mobile Money s'affiche en tête, marqué Recommandé, avec les opérateurs disponibles dans le pays de votre client. La carte bancaire reste juste en dessous.
L'opérateur reconnu au numéro
Votre client tape son numéro : la page coche l'opérateur d'après le préfixe. Il peut en choisir un autre à tout moment.
Une confirmation guidée
Selon l'opérateur, votre client valide une notification sur son téléphone ou compose le code affiché. La page passe au résultat d'elle-même, sans rechargement.
Cartes et portefeuilles
Carte bancaire avec 3-D Secure, et Apple Pay ou Google Pay quand ils sont disponibles.
Français ou anglais
Selon le réglage de votre compte ou la langue de l'appareil. Votre client peut changer de langue sur la page.
Toujours à jour
Nouveaux opérateurs, nouvelles consignes : la page suit, votre intégration ne change pas.
Couverture
69 canaux de paiement dans 24 pays.
Le checkout montre à votre client les opérateurs de mobile money ouverts dans son pays. Chaque canal listé ici est disponible dans l'API, avec les connexions capables de le porter.
Afrique du Sud
Capitec Pay, EFT, QR
Bénin
MTN MoMo, Moov Money
Burkina Faso
Orange Money, Moov Money, Wave
Cameroun
MTN MoMo, Orange Money, Wave, Express Union
Congo-Brazzaville
MTN MoMo, Airtel Money
Congo-Kinshasa
MTN MoMo, Orange Money, Airtel Money, M-Pesa, Africell Money, Vodacom M-Pesa
Côte d’Ivoire
MTN MoMo, Orange Money, Moov Money, Wave, Djamo
Gabon
Airtel Money, Moov Money
Ghana
MTN MoMo, Telecel Cash, AirtelTigo Money
Guinée
MTN MoMo, Orange Money
Kenya
Airtel Money, M-Pesa
Liberia
MTN MoMo
Malawi
Airtel Money, TNM Mpamba
Mali
Orange Money, Moov Money
Mozambique
M-Pesa
Niger
Airtel Money, Moov Money
Nigeria
MTN MoMo, Débit de compte bancaire, Virement bancaire, Virement vers un compte dédié, USSD
Ouganda
MTN MoMo, Airtel Money, Wave
Rwanda
MTN MoMo, Airtel Money
Sénégal
Orange Money, Wave, Djamo, Free Money
Sierra Leone
Orange Money
Tanzanie
Airtel Money, M-Pesa, HaloPesa, Tigo Pesa, Vodacom M-Pesa, Zantel
Togo
Moov Money, T-Money, Togocel
Zambie
MTN MoMo, Airtel Money, Zamtel Money
Image de marque
La page prend les couleurs de votre marque.
Dans le Studio de marque du Dashboard, vous réglez une fois votre logo, vos couleurs, votre police et l'arrondi des coins. L'aperçu en direct montre la page avant que vos clients la voient.
- Icône et logo, huit palettes prêtes ou vos propres couleurs, 20 polices et cinq arrondis, à partir du plan Growth.
- Un réglage pour tout le compte, en sandbox comme en production, avec un aperçu sur mobile, tablette et ordinateur.
- La page sur votre propre domaine, avec le plan Scale ou l'option de domaine personnalisé : deux enregistrements DNS à ajouter, le certificat SSL est posé pour vous.
Pour les développeurs
Un appel pour créer le paiement, un webhook pour le confirmer.
Vous créez le paiement sur votre serveur et redirigez votre client vers l'adresse renvoyée. Wajub vous envoie un webhook signé dès que le paiement aboutit, et le paiement se relit à tout moment par l'API.
POST /paymentsCréer le paiement- Montant, devise, e-mail du client, votre référence et l'adresse de retour. Une clé d'idempotence évite un doublon si l'appel est rejoué.
authorization_urlRediriger votre client- La réponse contient l'adresse de la page hébergée. Votre client y paie, puis revient sur votre adresse de retour.
payment.succeededRecevoir le webhook- Un événement signé arrive sur votre serveur, même si votre client a fermé la page. S'il n'est pas reçu, Wajub le renvoie pendant 72 heures.
GET /payments/{id}Relire le paiement- Avant de livrer, relisez le paiement par son identifiant : c'est son statut qui fait foi.
import { Wajub } from '@wajub/node'
const wajub = new Wajub({ secretKey: process.env.WAJUB_SECRET_KEY! })
const payment = await wajub.payments.create(
{
amount: 15000,
currency: 'XAF',
email: '[email protected]',
reference: 'order-4172',
callback: 'https://shop.example.com/checkout/return',
},
{ idempotencyKey: 'order-4172' },
)
res.redirect(payment.authorization_url)
// Webhook
const event = wajub.webhooks.constructEvent(rawBody, signature, timestamp)
const paid = await wajub.payments.retrieve(String(event.data.id))
if (paid.status === 'succeeded') await fulfil(paid.reference)Réponse201 Created
{"code": 201,"authorization_url": "https://pay.wajub.com/tok_5f3a9c21","transaction": {"id": "trx_8Kd2","reference": "order-4172","status": "pending"}}
WebhookX-Wajub-Signature
{"event": "payment.succeeded","data": {"id": "trx_8Kd2","reference": "order-4172","amount": 15000,"currency": "XAF","status": "succeeded"},"livemode": true}
Réponse201 Created
{"code": 201,"authorization_url": "https://pay.wajub.com/tok_5f3a9c21","transaction": {"id": "trx_8Kd2","reference": "order-4172","status": "pending"}}
WebhookX-Wajub-Signature
{"event": "payment.succeeded","data": {"id": "trx_8Kd2","reference": "order-4172","amount": 15000,"currency": "XAF","status": "succeeded"},"livemode": true}
Protections
Des protections actives par défaut.
Pas d'option à cocher : ces mesures s'appliquent à tous les comptes, sur tous les plans.
- Cartes traitées par vos fournisseurs
- Les numéros de carte sont saisis dans les champs ou la fenêtre de paiement des fournisseurs de cartes : ils n'atteignent jamais Wajub.
- Clé secrète refusée dans un navigateur
- Une clé secrète s'utilise depuis votre serveur. Envoyée depuis un navigateur, la requête est refusée et le propriétaire de la clé est prévenu par email.
- Idempotence
- Une clé d'idempotence garantit qu'un appel répété sur un paiement ou un transfert ne s'exécute qu'une fois.
- Webhooks signés
- Chaque livraison porte une signature HMAC-SHA256 calculée sur l'horodatage et le corps, avec un secret propre à chaque endpoint. Les SDK rejettent une livraison de plus de 300 secondes.
Tarifs
Sans abonnement pour commencer, à vos couleurs dès Growth.
Pay as you go n'a ni abonnement ni frais d'installation. L'apparence du checkout s'ouvre avec Growth ; votre domaine, avec Scale ou l'option Domaine personnalisé.
| Fonctionnalité | Pay as you go0 $USVous ne payez que l'usage au-delà du quota | GrowthRecommandé17 $US/ moisFacturé chaque mois, sans engagement | Scale52 $US/ moisFacturé chaque mois, sans engagement | EnterpriseSur devis |
|---|---|---|---|---|
| Apparence du checkout | Non inclus | Inclus | Inclus | Inclus |
| Domaine personnalisé | Option17 $US / mois | Option17 $US / mois | Inclus | Inclus |
| Paiements inclus par mois | 200 | 1 000 | 5 000 | Illimité |
| Commission rail Wajub | dès 2 % | dès 1,7 % | dès 1,5 % | dès 1,2 % |
Pay as you go
0 $US
Vous ne payez que l'usage au-delà du quota
pay.wajub.com/tok_5f3a9c21
- Apparence du checkout
- Non inclus
- Domaine personnalisé
- Option17 $US / mois
- Paiements inclus par mois
- 200
- Commission rail Wajub
- dès 2 %
Growth
Recommandé
17 $US
/ mois
Facturé chaque mois, sans engagement
pay.wajub.com/tok_5f3a9c21
- Apparence du checkout
- Inclus
- Domaine personnalisé
- Option17 $US / mois
- Paiements inclus par mois
- 1 000
- Commission rail Wajub
- dès 1,7 %
Scale
52 $US
/ mois
Facturé chaque mois, sans engagement
paiement.nkolo.cm/tok_5f3a9c21
- Apparence du checkout
- Inclus
- Domaine personnalisé
- Inclus
- Paiements inclus par mois
- 5 000
- Commission rail Wajub
- dès 1,5 %
Enterprise
Sur devis
paiement.nkolo.cm/tok_5f3a9c21
- Apparence du checkout
- Inclus
- Domaine personnalisé
- Inclus
- Paiements inclus par mois
- Illimité
- Commission rail Wajub
- dès 1,2 %
Abonnements et options facturés en FCFA, ou en euros par carte au taux fixe de 655,957 FCFA. Les montants dans votre devise sont indicatifs, au taux du jour.
Autres façons d'encaisser
Encaissez aussi dans votre app et par lien.
L'API Payments et Link ouvrent les mêmes moyens de paiement et remontent dans le même Dashboard que votre checkout.
Payments
Encaissez mobile money et cartes avec une seule intégration.
- Webhooks signés
- Idempotence intégrée
- SDK en 7 langages
Link
Encaissez avec un simple lien : produit, événement, collecte, don.
- 25 liens inclus, sans abonnement
- Mobile money et cartes
Questions fréquentes
Une autre question ? Parler à l'équipe
- Comment personnaliser la page de paiement ?
- Dans le Dashboard, rubrique Image de marque, à partir du plan Growth : icône et logo, huit palettes prêtes ou six couleurs à votre choix, 20 polices et l'arrondi des coins, avec un aperçu en direct. Le réglage vaut pour tout le compte.
- Puis-je changer l'apparence paiement par paiement ?
- L'apparence est définie au niveau du compte, dans le Dashboard : tous vos paiements partagent la même identité visuelle.
- Que se passe-t-il si mon client ferme la page avant la fin ?
- Le paiement continue chez l'opérateur. S'il aboutit, le webhook arrive quand même sur votre serveur, et GET /payments/{id} renvoie le statut à jour. Livrez sur le webhook ou sur cette lecture, jamais sur le seul retour du navigateur.
- Comment tester la page sans argent réel ?
- Avec vos clés de sandbox, la page affiche un bandeau MODE TEST. Les six derniers chiffres du numéro de téléphone décident du résultat : un numéro qui finit par 000000 réussit. Tous les cas sont décrits dans la documentation, page Scénarios de test.
- Puis-je servir la page depuis mon propre domaine ?
- Oui, avec le plan Scale ou l'option de domaine personnalisé. Vous ajoutez un enregistrement TXT qui prouve que le domaine est à vous et un CNAME vers connect.wajub.com ; le certificat SSL est posé automatiquement.
Mettez votre page de paiement en ligne aujourd'hui.
Créez votre compte, testez la page en sandbox avec des numéros de test, puis passez en production avec vos clés live.










