A custom-built Magento 2 payment method that lets Kenyan and East-African shoppers pay by Safaricom M-Pesa STK push at checkout. ECOSIRE builds, installs and supports it on your store — sandbox-tested on the Daraja API, with C2B confirmation, callback-driven order auto-confirmation and KES settlement. Built to order by ECOSIRE for Magento 2 / Adobe Commerce (build-to-order) — indicative price from $199.00 USD; request a quote for a scoped proposal.
Illustrative previewA custom-built Magento 2 payment method that lets Kenyan and East-African shoppers pay by Safaricom M-Pesa STK push at checkout. ECOSIRE builds, installs and supports it on your store — sandbox-tested on the Daraja API, with C2B confirmation, callback-driven order auto-confirmation and KES settlement.
No DIY setup — a working app, built, installed and supported by ECOSIRE.
Start with a one-time build price. We scope it with you at kickoff.
ECOSIRE builds, configures and installs it on your Magento 2.
You go live in about 2–4 weeks, with a post-launch support window.
M-Pesa is how East Africa pays — but Magento Open Source and Adobe Commerce ship no native M-Pesa method, and generic Marketplace extensions rarely match a store's real checkout, multi-store or fulfilment flow. ECOSIRE builds this gateway to order: a proper Magento 2 payment module under app/code/Ecosire/MpesaGateway, wired the way Magento expects.
At checkout the shopper enters their Safaricom number and we trigger an STK push through the Safaricom Daraja API — the M-Pesa PIN prompt appears on their phone, they confirm, and money moves. Your store holds the order in pending_payment until M-Pesa calls back. Our C2B / STK callback controller (CSRF-exempt, signature- and amount-validated) receives the confirmation, matches it to the quote, and an observer / service-contract flow moves the order to processing and emails the customer — no manual reconciliation.
The build follows Magento conventions end to end: a Magento\Payment\Model\MethodInterface implementation, payment.xml + config.xml defaults, di.xml virtual types, admin system.xml configuration with ACL (consumer key/secret, passkey, shortcode, sandbox vs production), a cron job to reconcile timed-out STK requests, and encrypted credential storage. We expose payment status to your storefront and can extend the GraphQL and REST APIs for headless / PWA Studio builds.
Because it is built to order, it fits your store: your Magento version (2.4.x), your theme's checkout, your multi-website KES setup, your tax and invoicing rules. ECOSIRE installs it on staging, tests the full sandbox-to-live Daraja cutover with you, then deploys to production. You get the source, a short runbook and ongoing support. Honest delivery: this is not an instant download — typical lead time is 5–10 business days depending on customisation.
Runs a Magento Open Source store selling to Kenyan customers and needs M-Pesa at checkout because cards have low penetration. Wants STK push and automatic order confirmation without manual reconciliation.
Operates multi-website Magento across Kenya, Tanzania and Uganda. Needs KES settlement, a clean sandbox-to-live path and a gateway that respects per-store-view configuration and existing fulfilment rules.
A solution integrator or in-house team that wants a properly architected M-Pesa module (di.xml, service contracts, ACL, cron, GraphQL-ready) they can own and extend, rather than a black-box Marketplace extension that fights their headless or PWA build.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Native M-Pesa STK push payment method at checkout | Included | Partial support | Included | |
| Built and tested for YOUR Magento version, theme and multi-store setup | Included | Included | Not included | |
| Callback-validated automatic order confirmation (receipt + amount + idempotency) | Included | Partial support | Partial support | |
| Cron reconciliation for timed-out / missing STK callbacks | Included | Partial support | Partial support | |
| Proper Magento architecture (di.xml, service contracts, ACL, encrypted credentials) | Included | Partial support | Partial support | |
| GraphQL / REST extension for headless / PWA Studio | Included | Partial support | Not included | |
| Installed, sandbox-to-production cutover and supported by the vendor | Included | Not included | Not included | |
| Source code ownership so any developer can maintain it | Included | Included | Partial support |
Typical lead time is 5–10 business days from when we receive your Magento version, theme details and Daraja sandbox credentials. We build and test on staging first, run the sandbox-to-production cutover with you, then deploy to live. This is a build-to-order service, not an instant download — if your checkout is heavily customised or you need GraphQL/headless support, we'll confirm the timeline up front.
Yes. Every build includes 30 days of post-deployment support and bug fixes. After that, you can take an optional ongoing support plan covering Magento 2.4.x upgrades, Daraja API changes from Safaricom, and enhancements. Because you receive the full source and own it, your own team or any Magento developer can also maintain it independently.
You need a Safaricom Daraja developer account and a Lipa Na M-Pesa Online / Paybill or Till (shortcode) with its consumer key, consumer secret and passkey. We start on the Daraja sandbox for end-to-end testing, then switch to your production credentials. We'll guide you through requesting and configuring everything.
Yes. The module targets both Magento Open Source and Adobe Commerce 2.4.x. The default build works with the standard Luma/native checkout; for headless, PWA Studio or a custom frontend we extend the GraphQL and REST APIs so STK push and payment status are available to your storefront. Tell us your stack and we'll scope it.
When the shopper approves the STK push, M-Pesa sends an asynchronous callback to a dedicated, CSRF-exempt controller in the module. We validate the receipt number, amount and shortcode, match it to the Magento quote, and — only on a verified callback — move the order to `processing` and create the invoice. Callbacks are handled idempotently, and a cron job reconciles any STK request that timed out without a callback, so orders never get stuck or double-confirmed.
A build-to-order 2Checkout / Verifone payment gateway for Magento 2 and Adobe Commerce: localized checkout in 12 languages, iDEAL, Giropay and regional methods, multi-currency global selling, subscription billing and tax/invoicing automation — engineered, installed and supported by ECOSIRE.
A build-to-order Magento 2 extension that forces PSD2-compliant 3D Secure 2 authentication at checkout, with smart frictionless-versus-challenge routing, per-payment-method SCA enforcement, exemption handling (low-value/TRA) and liability-shift tracking. Gateway-agnostic, built and installed by ECOSIRE.
A custom-built Magento 2 / Adobe Commerce extension that automatically recovers lost carts with scheduled multi-step reminder emails, auto-generated coupons, one-click restore links and recovery analytics — engineered, installed and supported by ECOSIRE on your own store.
A custom-built Magento 2 / Adobe Commerce extension that detects abandoned carts and recovers revenue through scheduled, personalized email and SMS sequences. Built, installed, and supported on your store by ECOSIRE.
A custom-built Magento 2 payment method that lets Kenyan and East-African shoppers pay by Safaricom M-Pesa STK push at checkout. ECOSIRE builds, installs and supports it on your store — sandbox-tested on the Daraja API, with C2B confirmation, callback-driven order auto-confirmation and KES settlement.