Chargement de vos clés API…

Medusa v2

Fournisseur de paiement pour Medusa v2 (Node / TypeScript, headless).

Validé de bout en bout

Prérequis

  • Un backend Medusa v2, Node.js.
  • Une clé API Mobupay (sk_test_… / sk_live_…), le secret whsec_…, et l'URL publique de votre backend Medusa (pour le webhook).

Installation

  1. 1Copiez src/modules/mobupay/ (du connecteur) dans votre projet Medusa.
  2. 2Déclarez le fournisseur dans medusa-config.ts (voir ci-dessous).
module.exports = defineConfig({
  modules: [
    {
      resolve: "@medusajs/medusa/payment",
      options: {
        providers: [
          {
            resolve: "./src/modules/mobupay",
            id: "mobupay",
            options: {
              apiKey: process.env.MOBUPAY_API_KEY,               // sk_test_… / sk_live_…
              webhookSecret: process.env.MOBUPAY_WEBHOOK_SECRET, // whsec_…
              apiBase: "https://api.mobupay.nc",
              redirectUrl: "https://votre-storefront/checkout/return",
              webhookBaseUrl: process.env.MOBUPAY_WEBHOOK_BASE_URL, // URL publique du backend
            },
          },
        ],
      },
    },
  ],
});

Fonctionnement

  1. 1Le storefront initialise le paiement : initiatePayment crée une session Mobupay et renvoie l'URL de la page hébergée dans data.checkoutUrl.
  2. 2Le storefront redirige l'acheteur vers cette URL ; il paie par carte (widget Monext).
  3. 3Le webhook Mobupay est reçu sur la route /hooks/payment/mobupay_mobupay(format {identifier}_{provider}) ; la signature V2 est vérifiée puis le statut confirmé.

La notificationUrl est construite automatiquement à partir de webhookBaseUrl. Le remboursement (total ou partiel) passe par refundPayment.

Tester

Avec une clé sk_test_…, créez un panier, une session de paiement sur le provider pp_mobupay_mobupay, suivez data.checkoutUrl et payez avec la carte de test Monext 5476 4309 9999 9892 (CVV 123). Validé de bout en bout sur Medusa 2.17.1 (paiement capturé + webhook signé vérifié).