

The MPesa Gateway listed on the WooCommerce Payments settings screen
TK MPesa Payment Gateway allows your WooCommerce customers to pay directly from their mobile phone via MPesa STK Push (Lipa Na MPesa Online).
This plugin is not affiliated with, endorsed by, or sponsored by Safaricom PLC. M-Pesa and Daraja are trademarks of Safaricom PLC, referenced here only to describe compatibility with their payment service.
How it works:
stkpush/v1/processrequest) request for the order total.If a customer doesn’t complete the prompt in time or the order is otherwise left unpaid, they can return to it later through WooCommerce’s standard “Pay for order” screen to retry.
Payment types:
CustomerPayBillOnline) – pay into a Paybill number and accountCustomerBuyGoodsOnline) – pay into a Till number; the Till must be settling funds to a bank accountCheckout compatibility:
AbstractPaymentMethodType integrationPayment tracking & admin tools:
tk-mpesa), useful when a payment doesn’t go throughSandbox / test mode:
Security:
==Requirements:
This plugin connects to the Safaricom Daraja API to process M-Pesa payments. This is required for the plugin’s core function – initiating an M-Pesa STK Push payment request to the customer’s phone and receiving confirmation that it was paid.
Two Daraja endpoints are used:
oauth/v1/generate – authenticates the site with Safaricom using the Consumer Key and Consumer Secret you enter in the gateway settings. No customer data is sent to this endpoint.mpesa/stkpush/v1/processrequest – initiates the STK Push. When a customer places an order and chooses this payment method at checkout, the following is sent: your configured Paybill/Till short code, the order amount, the customer’s phone number, a callback URL, and the WooCommerce order ID (as a reference). Safaricom then sends a payment-result callback to this site’s REST endpoint.This plugin is not affiliated with, endorsed by, or sponsored by Safaricom PLC. Learn more: Daraja API Terms and Conditions, Safaricom Data Privacy Statement.