A custom-built Shopify payment integration that lets your Kenyan and East-African shoppers pay by Safaricom M-Pesa STK-push (Lipa na M-Pesa), with real-time confirmation and automatic order capture. One-time license from $249.00 USD for Shopify (build-to-order) — includes 12 months of updates and support.

A custom-built Shopify payment integration that lets your Kenyan and East-African shoppers pay by Safaricom M-Pesa STK-push (Lipa na M-Pesa), with real-time confirmation and automatic order capture.
ابھی کوئی ادائیگی نہیں۔ یہ ہماری ٹیم کو قیمت کی درخواست بھیجتا ہے — ہم قیمت اور اگلے اقدامات کے ساتھ ای میل کے ذریعے رابطہ کریں گے۔
M-Pesa Checkout for Shopify brings Safaricom's Lipa na M-Pesa STK-push flow directly into your store so East-African shoppers pay the way they already trust — by entering their M-Pesa PIN on a prompt pushed to their phone, with no card and no redirect to an unfamiliar gateway.
Safaricom M-Pesa STK-push (Lipa na M-Pesa Online) — customer approves payment with their PIN on a phone prompt, no card or redirect
Daraja API integration: OAuth token handling, STKPush request, and STKPushQuery status fallback for missed callbacks
Hosted callback/confirmation webhook that verifies ResultCode and CheckoutRequestID before marking an order paid
Automatic order capture via the Shopify Admin GraphQL API once Safaricom confirms the transaction
M-Pesa receipt number stored in an order metafield, visible in Shopify admin and on the order confirmation page for reconciliation
Real-time payment confirmation with a status-polling fallback so customers aren't stuck if Safaricom's async callback is delayed
This is built to order by ECOSIRE, not an instant App Store install. After purchase we collect your Safaricom Daraja API credentials (Consumer Key/Secret, Business Short Code, and Lipa na M-Pesa passkey), provision a hosted callback service, register the validation/confirmation URLs, and wire the payment experience into your Shopify checkout. We then test against the Daraja sandbox before flipping to production.
How it works. At checkout the customer enters their M-Pesa number; we trigger an STK-push via the Daraja STKPush (Lipa na M-Pesa Online) endpoint. Safaricom sends the asynchronous result to our callback webhook, which verifies the ResultCode and CheckoutRequestID, then uses the Shopify Admin GraphQL API to mark the order paid and capture it. The M-Pesa receipt number is written to an order metafield so it appears in Shopify admin and on the confirmation page — giving your team and your customer one shared reference for reconciliation.
Settlement happens in KES to your registered Safaricom Pay Bill or Till, exactly as your existing M-Pesa account already works — we do not touch the funds. ECOSIRE builds, installs, documents, and supports the integration; you keep full ownership of your Shopify store and your Daraja credentials. Honest delivery: typical build and go-live is 5–10 business days depending on Safaricom credential readiness.
Sells physical goods to Kenyan shoppers who overwhelmingly pay by M-Pesa and abandon card-only checkouts. Wants the familiar Lipa na M-Pesa PIN prompt at checkout so conversions stop leaking to WhatsApp orders and manual Pay Bill payments.
Operates across Kenya and neighbouring markets where M-Pesa is the default rail. Needs settlement in KES to an existing Safaricom Pay Bill/Till and automatic order capture instead of staff manually matching SMS receipts to orders.
Responsible for matching paid orders to M-Pesa receipts each day. Wants the M-Pesa receipt number stored on the Shopify order and a documented runbook so reconciliation and credential rotation aren't tribal knowledge.
Buy the license on ecosire.com and download the M-Pesa Checkout for Shopify (East Africa) module ZIP from your account dashboard.
Extract the ZIP into your Odoo custom addons folder on the server (or upload via Apps > Install from file on Odoo.sh / runbot).
Activate Developer Mode, open Apps, click Update Apps List, search for M-Pesa Checkout for Shopify (East Africa), and press Install.
Open the new menu, paste your ECOSIRE license key, connect any external credentials (Shopify, Amazon, Stripe, etc.), and save.
Run the built-in connection test, sync your first 10 records, and schedule the recurring cron. Contact support if anything fails.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Native Safaricom M-Pesa STK-push (Lipa na M-Pesa) at checkout | ||||
| Built, installed, and supported for you (no DIY assembly) | ||||
| KES settlement direct to your own Pay Bill/Till (provider never holds funds) | ||||
| M-Pesa receipt stored on the Shopify order via metafield for reconciliation | ||||
| Idempotent callback handling and status-query fallback for delayed confirmations | ||||
| Tailored to your exact store, theme, and Safaricom short code | ||||
| Instant self-serve install with no engineer involvement | ||||
| Documented admin runbook for credential rotation and reconciliation |
Typical build and go-live is 5–10 business days. The main variable is Safaricom credential readiness: once your Daraja Consumer Key/Secret, Business Short Code, and Lipa na M-Pesa passkey are in hand, we test against the Daraja sandbox and then cut over to production. If your Daraja app or Pay Bill is still being approved by Safaricom, that approval time is outside our control and can extend the timeline.
No. This is built to order. ECOSIRE custom-builds, installs, and configures the integration for your specific store and Safaricom short code, then hands it over. You are not downloading a self-serve app — a real engineer provisions the callback service, registers your Daraja URLs, and verifies a live transaction before go-live.
Funds settle in KES directly to your own registered Safaricom Pay Bill or Till, exactly as your M-Pesa account already works. ECOSIRE never holds or touches your money; we only orchestrate the STK-push and confirm the result back to Shopify. You keep full ownership of your Daraja credentials and your Shopify store.
Every build includes a 30-day post-launch support window for fixes and Safaricom-side adjustments such as callback re-registration or credential rotation. If Safaricom changes the Daraja API or your business needs evolve, we offer ongoing support and maintenance as a separate retainer. Because we built it for you, the same team maintains it — you are not left reverse-engineering a third-party app.
A Safaricom Daraja developer account with Lipa na M-Pesa Online enabled (Consumer Key/Secret, Business Short Code, passkey), your Pay Bill or Till number, and collaborator/staff access to your Shopify admin so we can install the integration and configure order capture. If you don't have Daraja credentials yet, we'll guide you through requesting them from Safaricom.
A custom-built Shopify payment integration that lets your Kenyan and East-African shoppers pay by Safaricom M-Pesa STK-push (Lipa na M-Pesa), with real-time confirmation and automatic order capture.