Customer paying with M-Pesa on a phone at an online checkout
M-Pesa Integration Kenya

M-Pesa Integration for Your Website in Kenya

M-Pesa integration lets customers pay on your website with an STK Push prompt on their phone, and your orders confirm themselves. We build M-Pesa WooCommerce integration and Daraja API WordPress setups for Kenyan businesses, with ready-made plugins or a custom build.

  • STK Push and manual Paybill payments
  • Works with the WooCommerce Checkout Block and HPOS
  • Price in USD or KSh with automatic conversion
Daraja APIWooCommerceSafaricom STK PushKSh checkout
9:41M-Pesa Ready
Full Question Bank1 x KSh 4,500
Pay with M-PesaPAYBILL
Place order

Secure checkout by OCK M-Pesa

M-Pesa

Pay KSh 4,500 to Your Shop
Enter your M-Pesa PIN

STK Push prompt sent to 07XX XXX XXX

M-Pesa

Pay KSh 4,500
Entering PIN...

Processing with Safaricom

Payment receivedOrder #1042 marked paid automatically
Receipt: SXX1ABC2DE
Quick Answer

What is M-Pesa integration?

M-Pesa integration connects your website to Safaricom M-Pesa so customers can pay online and your system knows instantly when they have paid.

In Kenya most shoppers prefer paying by M-Pesa, so a website without it loses sales. Integration is done through the Safaricom Daraja API (STK Push), or through a manual Paybill option when you want to launch fast. Online Creatives Kenya, a Nairobi web agency, builds both.

  • STK Push: a PIN prompt appears on the customer phone
  • Manual Paybill: customer pays your Paybill and account number
  • Auto confirmation: Safaricom callback marks the order paid
  • Who it is for: online shops, bookings, courses, portals and apps in Kenya
M-Pesa Integration Services

M-Pesa integration for every kind of website

From a single Paybill on a WordPress shop to a custom Daraja build for a web app.

M-Pesa integration for WooCommerce

STK Push or manual Paybill at checkout, with orders updating from pending to paid automatically.

Custom M-Pesa integration with Daraja API

Direct Daraja integration for WordPress, PHP, Laravel and Node.js back ends, with secure callbacks.

Secure callbacks and reconciliation

Safaricom IP validation and amount matching so only genuine payments mark an order as paid.

Paybill, Till and USD stores

Support for Paybill and Till numbers, plus USD pricing converted to KSh at an admin-set rate.

Customer and admin notices

Clear payment prompts for buyers and order notes with M-Pesa receipt numbers for your team.

Go-live support

Sandbox testing, Daraja credential setup and production launch handled with you, step by step.

Live Demo

Customer and payment journey with M-Pesa

Shop this demo store like a customer. Pick a bag or shoes, add to cart and pay with M-Pesa. The panel on the left shows what happens behind the scenes at every step.

  1. 1
    Browse the shopA fast, mobile-first catalogue of leather bags and shoes.
  2. 2
    Choose a productSizes and colours work like any WooCommerce product.
  3. 3
    Review the cartDelivery is calculated and the total is shown in KSh.
  4. 4
    Checkout with M-PesaOCK M-Pesa appears as a payment method on the checkout.
  5. 5
    Approve on the phoneAn STK Push prompt arrives through Daraja and the customer enters their PIN.
  6. 6
    Order confirmedSafaricom confirms, the plugin verifies it and the order is marked paid.
Behind the scenes

    Demo store for illustration. No real payment is taken.

    Our Plugins

    Two M-Pesa integration plugins, built and maintained in Nairobi

    Run one or both side by side. Prices are one-off in KSh, per website.

    M-Pesa Manual

    Paybill and account number, no Daraja needed

    KSh3,500
    once-off, 1 website
    • Shows Paybill and account number at checkout
    • Custom title and description
    • USD to KSh Convert button on checkout
    • Checkout Block, classic checkout and HPOS
    • Live in minutes, no Safaricom approval
    Get M-Pesa Manual
    Most popular

    OCK M-Pesa for WooCommerce

    Daraja STK Push, automatic confirmation

    KSh12,500
    once-off, 1 website
    • STK Push prompt straight to the phone
    • Sandbox and production modes
    • Safaricom callback validation and amount reconciliation
    • USD to KSh conversion with admin exchange rate
    • Resend prompt, configurable timeout, Checkout Block ready
    Get OCK M-Pesa

    Bundle plus Setup

    Both plugins, run side by side

    KSh14,500
    once-off, 1 website
    • OCK M-Pesa and M-Pesa Manual together
    • Offer automatic STK Push with Paybill as a fallback
    • Add done-for-you setup and go-live for KSh 6,500
    • Testing on your live checkout
    Get the Bundle

    Need a custom Daraja integration for a non-WordPress site? Request a quote. Prices exclude Safaricom charges.

    How M-Pesa Integration Works

    From checkout to confirmed order in seconds

    Here is what happens behind the scenes with OCK M-Pesa for WooCommerce.

    1

    Customer checks out

    They choose M-Pesa and enter their phone number.

    2

    STK Push sent

    The plugin calls the Daraja API and a prompt appears on their phone.

    3

    PIN entered

    The customer approves with their M-Pesa PIN.

    4

    Safaricom callback

    Safaricom posts the result to a secure endpoint. We verify the source and amount.

    5

    Order marked paid

    The order updates, the receipt number is saved and the customer is redirected.

    Using M-Pesa Manual? Steps 2 to 4 become: the customer sees your Paybill and account number, pays from the M-Pesa menu, and you confirm the order.

    Sell in USD, Get Paid in KSh

    Serve Kenyans at home and abroad

    Many stores price in dollars so diaspora and international buyers see familiar prices. With an exchange rate you control in the plugin settings, the same checkout shows the dollar price and a one-tap Convert to KSh button, so local customers pay the exact M-Pesa amount.

    • Set your own USD to KSh exchange rate in the admin
    • Amount shown always matches the checkout total
    • Safaricom callback amounts reconciled against the converted total

    Try the checkout converter

    Demo of the M-Pesa Manual checkout box.

    Amount to pay$35.00
    Paybill 123456 · Account ORDER-1042
    Compare

    Which M-Pesa integration is right for you?

    FeatureM-Pesa ManualOCK M-Pesa (STK Push)
    Daraja API neededNoYes, production credentials
    Customer experiencePays from the M-Pesa menu using your Paybill and account numberReceives a PIN prompt on their phone
    Order confirmationYou confirm paymentAutomatic through Safaricom callback
    USD to KSh conversionYesYes
    Time to go liveSame dayAfter Daraja approval
    Best forNew stores, small volumes, quick launchGrowing stores that want automatic payments
    Price (KSh, once-off)3,50012,500
    Professional woman presenting an NCLEX review on a laptop for Kenya NCLEX Review Centre
    Client Example

    Kenya NCLEX Review Centre: M-Pesa checkout live

    Kenya NCLEX Review Centre sells its Full Question Bank to nursing students in Kenya and abroad. We built the site and added OCK M-Pesa for WooCommerce, so students pay with an STK Push prompt and gain access as soon as the payment is confirmed.

    • STK Push on the WooCommerce Checkout Block
    • USD pricing converted to KSh for the M-Pesa charge
    • Automatic order confirmation and access to the course
    Before You Start

    What you need for STK Push

    We guide you through each step of getting production access.

    Safaricom Daraja account

    Create a developer account and an app on the Daraja portal.

    Paybill or Till number

    A registered business shortcode that will receive payments.

    Passkey and credentials

    Consumer key, consumer secret and passkey, stored securely.

    HTTPS website

    A live SSL site so Safaricom can reach your callback URL.

    Free tools for your website: Image Compressor, PDF Compressor, Image Upscaler, Background Remover, Invoice Generator, PDF Merger and Splitter. See more on our blog and portfolio.

    FAQ

    Frequently asked questions

    What is M-Pesa integration?

    M-Pesa integration connects your website or app to Safaricom M-Pesa so customers can pay online from their phone. It is usually done through the Safaricom Daraja API, which sends an STK Push prompt to the customer, then notifies your site when the payment succeeds so the order is confirmed automatically. A simpler version shows your Paybill and account number at checkout and you confirm payments manually.

    How much does M-Pesa integration cost in Nairobi and the rest of Kenya?

    Ready-made M-Pesa integration plugins from Online Creatives Kenya start at KSh 3,500 once-off (M-Pesa Manual) and KSh 12,500 once-off (OCK M-Pesa for WooCommerce). A done-for-you setup is KSh 6,500. Custom builds for non-WordPress websites are quoted after a short call.

    Which websites can use M-Pesa integration?

    Any website with a back end that can receive a Safaricom callback: WooCommerce and WordPress stores, booking and LMS sites, portals, and custom PHP, Laravel or Node.js apps. Static sites need a small back end or a plugin-based platform first.

    How do I integrate M-Pesa into my website in Kenya?

    The fastest route is a payment plugin for your platform. On WordPress and WooCommerce, install OCK M-Pesa for WooCommerce, add your Safaricom Daraja credentials and the customer pays with an STK Push prompt on their phone. For custom sites we integrate the Daraja API directly into PHP, Node.js or Laravel back ends. Online Creatives Kenya handles setup, testing and Safaricom go-live for you.

    What is the difference between M-Pesa STK Push and manual Paybill payments?

    STK Push sends a payment prompt to the customer's phone through the Daraja API, and the order is confirmed automatically once Safaricom calls back. Manual Paybill shows your Paybill and account number at checkout, and the customer pays from the M-Pesa menu. Manual needs no Daraja approval, so it is quicker to launch, while STK Push gives a smoother checkout and automatic confirmation.

    Do I need a Daraja API account to accept M-Pesa on WooCommerce?

    You need Daraja credentials only for STK Push. Create an account on the Safaricom Daraja developer portal, register your Paybill or Till, and request production access. Our M-Pesa Manual plugin works without Daraja, and we can also guide you through Daraja approval if you prefer automatic payments.

    Can my WooCommerce store price in USD and still accept M-Pesa?

    Yes. Both of our plugins support an admin-set USD to KSh exchange rate. Customers see the price in dollars, then the amount is converted to KSh for the M-Pesa charge. This suits stores that serve Kenyans abroad as well as local buyers.

    How much does M-Pesa website integration cost in Kenya?

    Our plugins start at KSh 3,500 once-off for M-Pesa Manual and KSh 12,500 once-off for OCK M-Pesa for WooCommerce (Daraja STK Push). A done-for-you setup and go-live service is KSh 6,500. Custom Daraja integrations for non-WordPress sites are quoted after a short discovery call.

    Is the OCK M-Pesa plugin compatible with the WooCommerce checkout block and HPOS?

    Yes. OCK M-Pesa for WooCommerce supports both the Checkout Block and the classic checkout, and declares compatibility with WooCommerce High-Performance Order Storage. Callback requests from Safaricom are validated so fake payment confirmations are rejected.

    How long does M-Pesa integration take?

    A plugin install with manual Paybill can be live the same day. STK Push depends on Safaricom approving your Daraja production credentials, which is outside our control, but we prepare everything in sandbox first so you can go live the day approval lands.

    Get a Free Quote

    Ready for M-Pesa integration on your site?

    Tell us your platform and whether you need STK Push or manual Paybill for your M-Pesa integration. We will recommend the fastest route and quote clearly in KSh.

    5.0 Google rating from verified clients, 100+ projects, 5+ countries.

    Tell us about your project

    We respond within 2 hours on business days.