SHOPIFY · M-PESA · KENYA

Shopify M-Pesa integration: accept M-Pesa pay-ins in your Kenyan store with Payment Gateway Kenya

Connect your Shopify store to Payment Gateway Kenya to accept M-Pesa pay-ins, receive transaction status by postback and move orders to paid on your side. Your connection route, API (H2H) or Hosted Payment Page, and your store's eligibility are confirmed for your account after KYB.

Payment Gateway Kenya is a payment gateway in Kenya that processes M-Pesa pay-ins for merchants. If you run a Shopify store, this page shows how an M-Pesa connection, payment status and order handling fit together, and what our team confirms for your account. It is not a one-click setup.

Shopify M-Pesa illustration
M-Pesa is the payment method we offer in Kenya
Connection route agreed for your account at onboarding:
API (H2H) or Hosted Payment Page, two routes to one gateway
Postbacks send transaction status to your system
Merchant settlements are sent on the same day (T+0).
Customer pay-ins and merchant settlements are handled as separate money flows

Who this Shopify M-Pesa route is for

This page covers one scenario: connecting a Shopify store to a possible M-Pesa pay-in route through Payment Gateway Kenya. It walks through how a payment could move from your checkout to a confirmed order, and where your team's work begins and ends.

Availability is not assumed. Whether your store and business can use this route is confirmed with our team for your account, based on KYB, your business type and applicable requirements.

If you are still choosing between providers for your store, use our separate Shopify payment gateway Kenya selection guide. For a general profile of the method itself, see the M-Pesa payment method page. Running WooCommerce instead? The WooCommerce M-Pesa scenario covers the equivalent planning questions for that platform.

For market context only: Shopify's official Shopify Payments country list did not include Kenya when we checked on 5 November 2026, and this page does not establish whether any third-party option is available to your store.

Illustrative Shopify M-Pesa order journey

  1. Checkout

    A customer finishes their basket and chooses to pay. On your side, decide how the order and amount are passed to the payment route agreed for your account, and which order reference you will use to match the payment later.

  2. M-Pesa payment request

    A payment request for the order amount is created through the gateway. Your system should record that the order is awaiting payment, not paid, at this point.

  3. Customer confirms

    The customer approves the payment on their side. How this step looks to the customer depends on the agreed flow, so confirm it with our team rather than designing customer instructions in advance.

  4. Postback to merchant

    The gateway sends the transaction status to your system as a postback. This is a message to you, the merchant, not a notification to the buyer. Any customer messages remain your store's responsibility.

  5. Order paid

    Once your system has received and checked a successful status, your team or your integration marks the Shopify order as paid and releases it for fulfilment. Whether this update happens automatically depends on your store's integration and must be confirmed.

API or Hosted Payment Page?

Payment Gateway Kenya offers two connection arrangements: API (H2H) and Hosted Payment Page. They are two ways into the same gateway, not separate products. The route available for an M-Pesa Shopify store is agreed with our team for your account.

General differences between the two connection routes
ConsiderationAPI (H2H)Hosted Payment Page
Where the payment step is handledYour system calls the gateway directlyThe customer is sent to a page hosted by the gateway
Development effortHigher: your developers build and maintain the connectionUsually lower: less payment logic in your own code
Control over the experienceMore control over how the step is presentedLess control; layout follows the hosted page
Status handlingYour system must process postbacksYour system must still process postbacks
Fit for a Shopify storeConfirm with the team for your storeConfirm with the team for your store

Order status and postbacks for Shopify M-Pesa payments

For each pay-in, the gateway's part of the order workflow ends when the transaction status reaches your system. Your job is to read that status, check it against the order, and only then update or reconcile the order in Shopify.

Automatic Shopify order updates are not a given. Whether a postback can change an order's status in your store depends on your account and store integration, and must be confirmed with our team. Plan how your team will reconcile a successful status to the order until that is settled.

A customer returning to your store after paying is not proof of payment. Redirects can be interrupted, repeated or opened without a completed transaction. Treat the postback status as your source of truth.

Illustrative flow
on postback received:
  find order by your own order reference
  if no matching order: log and investigate
  if status is successful and amount matches:
    mark order as paid (only once)
  else:
    keep order unpaid and review

on customer redirect:
  show 'checking payment' message
  do not mark order as paid

Conceptual pseudocode only. It does not show real field names, endpoints, events or status values. Use the documentation provided for your account.

Keep money flows separate in your records. A customer pay-in is the buyer paying for an order. A merchant settlement is the gateway sending collected funds to your business. Customer payouts are a different flow again; whether they are available through M-Pesa for your account requires confirmation.

What to confirm before connecting your Shopify store

Bring these questions to your first conversation with our team. The answers decide which route applies to your account and how much your developers need to build.

  • Eligibility: is our business, business type and store eligible for M-Pesa pay-ins after KYB?
  • Store configuration: what does our Shopify plan, theme or checkout setup need to support the agreed route?
  • Route: is API (H2H) or Hosted Payment Page agreed for our account?
  • App or plugin: is any app or ready-made connection available for our specific store, or do we need a custom build?
  • Documentation: which integration documentation applies to our route?
  • Test access: what testing options, if any, are available for our account?
  • Status mapping: how should our system match a successful postback to the right Shopify order, and who updates the order?
  • Settlement: merchant settlements are sent on the same day (T+0); which settlement records apply to our account, and how do we reconcile them against Shopify orders?

Pricing for your store

Check the Payment Gateway Kenya pricing page and ask our team for current pricing information for your Shopify store.

Ready to check whether your store fits? Start your merchant application and our team will review eligibility and the route for your account.

Shopify M-Pesa integration FAQ

Can my specific Shopify store accept M-Pesa through Payment Gateway Kenya?

That is confirmed per account. It depends on KYB, your business type, applicable requirements and how your store is configured. Confirm with the team before planning your launch.

Is there a Payment Gateway Kenya Shopify app or plugin?

We do not promise an app, plugin or automatic install. Ask the team whether any app or connection route is available for your specific store before you plan around one.

Should my Shopify store use the API or the Hosted Payment Page?

Both are routes into the same gateway. The API (H2H) gives more control but needs more development; the Hosted Payment Page usually needs less. Which route applies to your Shopify M-Pesa store is agreed with the team for your account.

Will my Shopify orders update to paid automatically?

Whether your Shopify order can update automatically from a postback depends on the connection available for your account. Confirm this with the team; until the route is confirmed, plan how your team will reconcile a successful status to the order.

What does a postback do for my store?

A postback sends the transaction status from the gateway to your system. It does not notify your customer. Your system uses it to decide whether an order can be marked paid.

Is the payment flow STK Push?

We do not state a specific M-Pesa flow on this page. The exact flow depends on what is agreed for your account, so confirm it with the team.

Can I mark an order paid when the customer returns to my store?

No. A return or redirect is not proof of payment. Mark orders paid only after a successful status arrives by postback and matches the order.

Talk to us about your Shopify store

Tell us about your store, your order volumes and how you handle fulfilment today. We will confirm what is possible for your account before you commit developer time.