Skip to main content

Checkout hébergé

Le checkout hébergé est une page de paiement sécurisée hébergée par MabiPay sur https://pay.dev.mabipay.com.

Fonctionnement

  1. Votre serveur initie un paiement via l'API
  2. MabiPay retourne un checkoutUrl (toujours présent ; paymentUrl peut être null)
  3. Vous redirigez le client vers checkoutUrl
  4. Le client complète le paiement sur la page MabiPay
  5. MabiPay notifie votre serveur via webhook

Flux de redirection

Client → Votre site → POST /payments → MabiPay API

Client ← redirect ← checkoutUrl (https://pay.dev.mabipay.com/pay/:ref)
↓ (après paiement)
Client ← redirect ← successUrl / failedUrl
+ webhook → POST notifyUrl

Exemple d'intégration (Node.js/Express)

app.post("/commande/:id/payer", async (req, res) => {
const order = await getOrder(req.params.id);

const payment = await mabipay.payments.initiate({
amount: order.total,
currency: "XOF",
operator: req.body.operator,
merchantRef: order.id,
customerPhone: order.customer.phone,
successUrl: `https://votresite.com/commande/${order.id}/merci`,
failedUrl: `https://votresite.com/commande/${order.id}/echec`,
notifyUrl: `https://votresite.com/webhooks/mabipay`,
});

res.redirect(payment.checkoutUrl);
});

Personnalisation

La page hébergée affiche automatiquement :

  • Le nom et logo de votre commerce (configurés dans votre profil)
  • Le montant et la description de la transaction
  • Les opérateurs disponibles pour votre compte
  • Un formulaire de saisie du numéro de téléphone

Sécurité

  • Communication chiffrée TLS 1.3
  • Référence de transaction unique par paiement
  • Expiration configurable (défaut : 30 minutes)
  • Polling de statut côté client toutes les 5 secondes