E-commerceBoutiques en ligne · WooCommerce · Shopify · carts custom

MonCashConnect pour e-commerce en Haïti

Vos clients haïtiens veulent payer en HTG depuis leur portefeuille MonCash, pas entrer un numéro de carte. MonCashConnect branche cette méthode de paiement sur votre boutique en ligne — WooCommerce, Shopify, Magento ou panier maison — avec une API REST, des webhooks signés et zéro commission côté plateforme.

Le problème

Les boutiques en ligne haïtiennes qui veulent vendre à un public local se heurtent toujours aux mêmes blocages :

  • ·La majorité des acheteurs n'ont pas de carte Visa internationale. Stripe, PayPal et les passerelles classiques sont hors-jeu, ou réservés à la diaspora.
  • ·MonCash a un portail merchant officiel, mais il n'est pas pensé pour s'intégrer dans un thème Shopify ou un checkout React — vous récupérez au mieux un lien statique à coller manuellement.
  • ·Sans webhook signé, vous devez deviner si la commande est payée. Beaucoup de boutiques finissent par appeler le client pour confirmer, ce qui tue la conversion.
  • ·Côté comptabilité, il n'y a pas d'export propre par commande, par jour, ou par statut — les marchands recopient à la main.

Comment MonCashConnect aide

Cinq capacités directement utiles pour une boutique en ligne :

Plugin WordPress / WooCommerce officiel : installation en quelques clics, un bouton « Payer avec MonCash » apparaît au checkout, le statut de commande passe automatiquement à « payé » sur le webhook.

API REST pour Shopify, Magento, Wix ou tout cart custom : un seul appel POST /payments avec amount + reference_id renvoie une URL MonCash où rediriger le client.

Webhooks signés HMAC-SHA256 : votre serveur reçoit payment.completed avec votre reference_id et la signature à vérifier. Pas besoin de polling, pas besoin d'appeler le client.

Dashboard temps réel : filtrez par projet, par statut, par jour, exportez en CSV pour la compta.

Sandbox isolé : testez chaque modification du checkout avec sk_test_proj_… avant de basculer en live.

Exemple de flow : un client achète un produit à 1 500 HTG

  1. 1. Le client clique « Payer ». Le checkout poste vers votre backend qui appelle POST /v1/payments avec amount: 1500 et reference_id: "ORDER-4821".
  2. 2. MCC renvoie une URL MonCash. Vous redirigez le navigateur du client vers cette URL. MonCash lui demande son mot de passe / OTP et confirme le débit de 1 500 HTG sur son portefeuille.
  3. 3. Le client revient sur votre boutique via la return_url. Vous lui affichez « Paiement en cours de confirmation » — vous ne marquez PAS encore la commande comme payée.
  4. 4. Votre webhook reçoit payment.completed avec la signature HMAC. Vous vérifiez la signature, vous matchez sur reference_id: "ORDER-4821", vous passez la commande en « payé » et déclenchez la préparation de l'expédition.
  5. 5. Vous voyez la transaction dans le dashboard avec le solde projet mis à jour. Quand vous voulez sortir l'argent vers votre propre compte MonCash, vous lancez un retrait depuis le dashboard.
La règle d'or : ne créditez la commande qu'après payment.completed reçu par webhook. La return_url peut être manipulée par l'utilisateur, jamais la signature webhook.

Côté serveur, l'appel ressemble à ceci (Node SDK) :

import { MonCashConnect } from "moncashconnect";

const mcc = new MonCashConnect(process.env.MCC_SECRET_KEY);

app.post("/checkout/pay", async (req, res) => {
  const order = await db.orders.findById(req.body.orderId);

  const payment = await mcc.payments.create({
    amount: order.totalHtg,
    reference_id: order.id,                      // ce que votre webhook recevra
    return_url: `https://boutique.ht/orders/${order.id}`,
  });

  res.json({ checkoutUrl: payment.paymentUrl });
});

Quel plan vous convient

Pour une boutique en ligne typique, le facteur déterminant est le volume de collectes quotidien, pas le nombre de produits au catalogue. Voici la recommandation :

Boutique e-commerce locale

Catalogue de quelques dizaines à quelques centaines de SKU, un seul site, trafic concentré sur le marché haïtien.

Pro — 2 500 HTG / mois

Pro vous donne 3 projets (production + staging + un projet d'archives par exemple) et un plafond de retrait à 15 000 HTG/jour qui couvre la plupart des cycles de cash-out. Les boutiques en démarrage peuvent rester sur Free tant que le volume ne dépasse pas 1 000 HTG/jour ; passez à Business (5 000 HTG/mois) si vous opérez plusieurs boutiques distinctes ou si vous voulez débloquer les retraits illimités.

Voir la grille complète sur la page Tarifs.

FAQ — Boutiques en ligne

Est-ce que MonCashConnect fonctionne avec Shopify ou WooCommerce ?+
Pour WordPress / WooCommerce, nous fournissons un plugin officiel. Pour Shopify, vous passez par notre API REST côté thème ou via un proxy serveur — Shopify n'a pas de plugin natif MonCash, donc le bouton de paiement redirige vers une page intermédiaire qui appelle l'API MonCashConnect.
Combien je paie de commission sur chaque vente ?+
MonCashConnect ne prélève pas de commission. Vous payez uniquement les frais réseau pass-through : 2,9 % côté Bazik sur la collecte, et 5 % côté Digicel si vous décidez de retirer le solde vers MonCash. Aucune marge ajoutée par MonCashConnect.
Comment je gère les commandes annulées ou abandonnées ?+
Le panier crée un paiement seulement quand le client clique sur "Payer". Si le client n'ouvre jamais MonCash, le paiement reste en statut pending puis expire — la commande reste en attente côté boutique et vous ne recevez jamais le webhook payment.completed.
Puis-je tester sans dépenser d'argent réel ?+
Oui. Créez un projet, basculez en mode sandbox et utilisez une clé sk_test_proj_… Vous obtenez un ledger isolé, des numéros de test et une URL de paiement factice qui valide instantanément. Vous ne passez en live qu'après avoir complété le KYC.
Quel plan choisir pour une boutique qui démarre ?+
Si vous faites moins de 1 000 HTG/jour en collectes et tenez sur un seul projet, le plan Free suffit. Dès que votre volume dépasse ce plafond ou que vous voulez un staging séparé du projet de production, passez sur Pro (2 500 HTG/mois, 3 projets, 15 000 HTG/jour).
Les clients voient-ils le nom de ma boutique ?+
Oui. Pendant le KYC, vous fournissez le nom commercial qui apparaîtra sur l'écran MonCash de confirmation. Le client voit votre boutique, pas "MonCashConnect".
MonCashConnect n'est pas le portail marchand officiel Digicel/MonCash. Nous sommes une plateforme indépendante d'intégration. Un KYC est requis avant d'encaisser en production — comptez quelques jours ouvrés.