Skip to main content
Kulmi Pay gives you multiple ways to collect money from your customers. Whether you need to trigger a mobile money prompt, collect a PesaLink bank payment, embed a hosted checkout in your app, or add KulmiPay to WooCommerce, you can do it through the same checkout and collection infrastructure. Every collection method returns an invoice ID you can use to track status in real time or via webhooks.

Collection methods

M-Pesa STK Push

Trigger a payment prompt directly on your customer’s phone. They confirm with their M-Pesa PIN — no redirect needed.

PesaLink Bank Payments

Collect payments from Kenyan bank accounts through PesaLink.

Hosted checkout

Embed a pre-built, branded checkout session in your web or mobile app using your public key.

WooCommerce

Add KulmiPay to a WordPress store with the WooCommerce plugin.

Who pays the transaction fee

Collection requests use tariff fields such as mobile_tarrif for M-Pesa and bank_tarrif for PesaLink to control who bears the processing fee. The default for all methods is BUSINESS-PAYS. You can override this per request or set a default in your dashboard under Payment Settings.

Supported currencies

Kulmi Pay supports collections in KES, USD, EUR, and GBP. M-Pesa and PesaLink settle in KES, so non-KES amounts are converted before processing.
M-Pesa and PesaLink always settle in KES. If you create a request in another currency, the amount is converted to KES before the transaction is sent to the customer.