Mpesa Integration to Website: Learn How to Add Mpesa API to Your Site

I finally started accepting Mpesa Payments via my website! You can now pay for your favorite e-course or a web design project straight from this website. That is what I call a milestone

However, the journey to this point has not been an easy one. The difficulties I faced trying to integrate an Mpesa Payment Gateway on my website left me wondering why we do not have more developers investing in this area. At the least, Safaricom should come up with solutions on this but they seem to have left it to third-party developers.

JamboPay Mpesa Payment Gateway

One of the most popular online Mpesa Payment Gateways. Their downsides is that they charge an arm and a leg to have you use their Mpesa payment gateway. When I enquired about their services, they slapped me with a quotation that almost toppled me over.

Here is a screenshot of the email I received from them

How to Accept Mpesa on your website

To use JamboPay Mpesa gateway, you would need to pay at least Ksh 150,000 for them to setup your account. Clearly, JamboPay’s service are not for the small online trader or a struggling startup. I told them that much and headed back to Google to find a more viable solution.

PesaPal Payment Gateway

If you can forgive them for the lack of information/misinformation on their website, PesaPal are the guys to use for your online Mpesa Payments.

If your eCommerce store is built on WordPress, integrating with the PesaPal Mpesa Payment gateway is quite easy. There are several plugins available for free on the WordPress repository that make it very easy to start accepting Mpesa on your website.

  1. PesaPal Pay

Last updated on November 2014, the PesaPal Pay WordPress Plugins lets you collect payments via all the mobile money transfer services in Kenya. It makes use of forms and shortcodes [pesapal_pay] and [pesapal_donations] to collect payments and donations respectively.

The plugin is not very intuitive to use. Unless you know your way around coding, I would advise you try the other alternative provided below.

2.  WooCommerce PesaPal  Standard Payment Gateway

Last updated in July 2014 and downloaded 330 times, the WooCommerce PesaPal Standard Payment Gateway extends WooCommerce’s functionality and lets you charge for goods via Mpesa and other mobile payment services in Kenya.

I could not get this plugin to work on my website, and I finally gave up trying to use it.

I am not sure why the developer insists that you use demo consumer key and api during installation…

  3.  PesaPal Gateway for WooCommerce

This is the WordPress plugin that I ended up using on my online stores. It is super easy to use when you have WooCommerce installed on your WordPress website.

  • Simply download the plugin from the WordPress repository
  • Unzip it and upload it via FTP to wp-c0ntents/plugins.
  • Activate on your WordPress Dashboard
  • Go to WooCommerce Settings and Click on PesaPal
  • Enter your PesaPal API Key and Consumer Secret and start accepting payments via Mpesa!

I actually tried it with a sample product that I created on my website, and it works like a charm!

Lipa na Mpesa Online

Safaricom actually have an online Payment Gateway where you can Lipa na Mpesa. This came as a surprise to me. However, I cannot understand why I have to call or email them in order for them to share the details of the application with me.

Lipa na Mpesa OnlineThose are the 3 online Mpesa payment gateways that I am currently aware of. PesaPal takes the trophy home. It is super easy to register for a Merchant account on their website and the available free plugins makes it a darling to work with.

With the PesaPal Payment Gateway, there is no reason why you should not be selling your goods online. Contact me today to set up a beautiful online shop for your business.

34 thoughts on “Mpesa Integration to Website: Learn How to Add Mpesa API to Your Site”

  1. HELLO my name is benjamin, am working on the same project and i need your help.
    i have already signed up with pesapal buh the problem i have is integrating it with my website (www.forwardit-charity.org)
    all i need is a donation form but through pesapal. Can anyone help me with the code.

  2. Dear Patrick Mahinge,

    Thanks for your interesting blog. I was wondering, do you need a Lipa Na M-Pesa number to use these service and go through the required process with KRA Pin, Business License, or is there a way to circumvent this process? Looking forward to hear from you.

    Kind regards, Tim Dost

  3. I would like to know this, i have an e-book and sell online using pesapal…is this also appllicable in tanzania?

    Contact +255754745798

  4. Hi Patrick,

    This is nice post on integrating Mpesa payments on websites.

    However, for those looking for ways to custom integrate Mpesa to their custom websites, the integration on Safaricom website is not very clear.

    This has already been solved by easy plug and play solutions offered at https://www.paymentprocessor-script.com

    Just follow it and see what you can come up with.

  5. HI I need help with integrating mpesa payments on my woocommerce website.
    Any competent developer from kenya please help

    • Are you a developer? Or just looking for someone to integrate. I could be of help in integrating Mpesa payments. Please call me on: +254706745202.

      • Hello Brian,
        I have a freelancing site, I want to integrate instant Mpesa Online deposit and withdrawal, to work exactly the way it works for BETIN.CO.KE

        Clients should be able to instantly load cash via Mpesa to their account and should also be able to withdraw cash to Mpesa instantly.

        Are you able to do this kind of integration for me?

        [email protected]
        Mobile: 0721519271

  6. Thank you Patrick Kihara for such an informative post. Francis Ndungu, your guide is also very good. I salute you kind gentlemen, and all those contributing to the replies for taking your time to add insight to the pool of knowledge. I will save a lot of money doing this myself. I would also like to copy something akin to what betting sites have, where when a customer pays money into my paybill, or till, it shows the balance on the website, almost instantaneously. They can then let the money lie there, or make a purchase with that balance. Any guide on doing that? Bravo folks

  7. hello guyz av tried my best but iget this error
    requestId “25797-1030804-1”
    errorCode “400.003.02”
    errorMessage “Bad Request – Invalid ValidationURL”
    what coulbe the problem am using php and xammp as my server

  8. Hey guys, I am using Angular with Firebase (no PHP stuff), and I’m having a difficult time integrating mpesa to my site. Anyone managed to do it

  9. May i get someone to help me go through all this process and integrate Mpesa to my woocommerce site?
    My name is OLIVER CHANYA and my phone number is 0720083869
    Offcourse for a fee.

  10. I have noticed you don’t monetize patrickmahinge.com, don’t waste your traffic, you can earn extra bucks every month with new monetization method.
    This is the best adsense alternative for any type of website (they approve all websites), for more
    info simply search in gooogle: murgrabia’s tools

Leave a Comment