Encaissez par carte Visa/Mastercard et Mobile Money (Orange Money, MTN, Moov, Wave) sur votre site ou votre app, avec une seule API et un widget prêt à l'emploi.
Intègre MaliaPay une seule fois, encaisse partout.
MaliaPay gère la création de transaction, le widget de paiement client, les webhooks, les remboursements et les reversements — ton backend n'a besoin que de ta clé secrète.
Pas d'abonnement, pas de frais cachés. Tu choisis qui paie les frais : toi ou ton client.
Choisis ta plateforme
Le montant est toujours calculé à partir de tes produits ou du panier — jamais saisi à la main.
Le plugin ajoute MaliaPay comme mode de paiement WooCommerce. Il lit automatiquement le total de la commande (tous les produits du panier) — tu n'as rien à configurer produit par produit.
pk_..., onglet "Clés API" du tableau de bord).À chaque commande, le client est redirigé vers MaliaPay avec le montant exact du panier, choisit son moyen de paiement, puis revient automatiquement sur la page de confirmation WooCommerce.
Pour un site codé à la main (ou Wix/Shopify via un bloc HTML personnalisé) : calcule le total du panier en JavaScript, puis ouvre MaliaPay avec ce montant.
<script src="https://api.maliapay.maliacompany.org/widget/maliapay.js"></script> <button id="payBtn">Payer</button> <script> document.getElementById('payBtn').onclick = function () { // Remplace par le vrai calcul à partir des produits du panier var total = cart.reduce(function (sum, item) { return sum + item.price * item.qty; }, 0); MaliaPay.open({ publicKey: 'pk_votre_cle_publique', amount: total, onSuccess: function () { /* commande validée */ }, }); }; </script>Ouvre la page de paiement MaliaPay dans un Chrome Custom Tab, avec le montant calculé depuis le panier de la commande. Utilise un lien de retour (deep link) vers ton app pour confirmer le paiement.
val total = cart.sumOf { it.price * it.quantity } val url = Uri.parse("https://api.maliapay.maliacompany.org/checkout/new") .buildUpon() .appendQueryParameter("pk", "pk_votre_cle_publique") .appendQueryParameter("amount", total.toString()) .appendQueryParameter("return_url", "monapp://paiement-retour") .build() CustomTabsIntent.Builder().build().launchUrl(context, url) // Dans l'Activity qui reçoit "monapp://paiement-retour?reference=...&status=..." // vérifie le statut côté serveur avant de valider la commande : // GET https://api.maliapay.maliacompany.org/transactions/{reference}/publicMême principe en Swift, avec SFSafariViewController et un Universal Link ou un schéma d'URL personnalisé comme retour.
let total = cart.reduce(0) { $0 + $1.price * $1.quantity } var components = URLComponents(string: "https://api.maliapay.maliacompany.org/checkout/new")! components.queryItems = [ URLQueryItem(name: "pk", value: "pk_votre_cle_publique"), URLQueryItem(name: "amount", value: String(total)), URLQueryItem(name: "return_url", value: "monapp://paiement-retour"), ] let safari = SFSafariViewController(url: components.url!) present(safari, animated: true) // À la réception de "monapp://paiement-retour?reference=...&status=..." // vérifie le statut côté serveur avant de valider la commande : // GET https://api.maliapay.maliacompany.org/transactions/{reference}/publicPour les développeurs avancés
Créer la transaction depuis ton propre backend (clé secrète), si tu veux fixer l'opérateur toi-même.
Crée une transaction
Depuis ton backend, avec ta clé secrète.
POST /transactions x-api-key: sk_... { "provider": "WAVE", "amount": 5000 }Ouvre le widget
Le client confirme son paiement.
MaliaPay.open({ reference: "..." })Sois payé chaque semaine
Suis ton solde disponible et reçois ton reversement.