What payment gateways do in Kenya and which ones work for small business websites
A payment gateway is the tool that sits between your website and the customer's bank. When someone buys from you online, the gateway takes their card or mobile money details, sends them securely to the bank, and tells your website whether the payment went through. In Kenya, the most common gateways for small business websites are Pesapal, Daraja (M-Pesa), Flutterwave, and Stripe — each one connects to different payment methods your customers actually use.
The gateway you choose depends on which payment methods matter most to your customers. If most of your buyers use M-Pesa, you might start with Daraja. If you want to accept both cards and mobile money, Pesapal or Flutterwave handle both. Stripe works well if you take international payments or have customers with Visa and Mastercard, but it requires a business bank account and more paperwork than the others.
Key Takeaways
- Pesapal and Flutterwave accept both M-Pesa and card payments, making them the broadest choice for most Kenyan small businesses.
- Daraja (M-Pesa) is free to set up and works if your customers primarily use mobile money, but it only handles M-Pesa.
- Each gateway charges a transaction fee — usually between 2% and 3.5% — taken from what you receive, not added to the customer's bill.
- Setup takes between one day and two weeks depending on the gateway and how quickly you provide your business documents.
- Your website builder or e-commerce platform may have built-in connections to one or more gateways, which speeds up setup.
Pesapal: Cards and M-Pesa in one integration
Pesapal is one of the oldest payment gateways in Kenya and works with both M-Pesa and card payments (Visa, Mastercard, American Express). It connects to most website builders and e-commerce platforms, so if you use Shopify, WooCommerce, or a custom site, Pesapal likely has a plugin ready.
To set up Pesapal, you need your business registration details, a personal ID, and a bank account where payments will land. Pesapal charges a transaction fee of around 2.9% plus a small fixed amount per transaction. The setup process usually takes 2 to 5 business days once you submit your documents. Pesapal also offers a merchant dashboard where you can see all your transactions, refund orders, and read reports.
Daraja (M-Pesa): Mobile money only, no setup cost
Daraja is Safaricom's official M-Pesa payment gateway for businesses. It only handles M-Pesa payments, so it works best if your customers almost always pay by mobile money. The big advantage is that Daraja is free to set up — you do not pay a monthly fee or a setup fee, only a transaction fee of around 2% when money comes in.
Setting up Daraja requires a Safaricom business account and an M-Pesa Till number or Paybill number. If you do not have one, you can request it through Safaricom's business portal or visit a Safaricom shop. Once your account is active, you can integrate Daraja into your website through their API documentation. The integration is more technical than Pesapal — you may need a developer to set it up — but many website builders now offer Daraja plugins that make it simpler.
Flutterwave: International cards and local payments
Flutterwave is a pan-African gateway that works across Kenya and many other countries. It accepts M-Pesa, cards, and bank transfers, and it is built to handle both local and international transactions. If you sell to customers outside Kenya or want to accept multiple payment types without managing separate integrations, Flutterwave is a strong option.
Flutterwave charges transaction fees between 1.4% and 3.5% depending on the payment method — M-Pesa is usually lower than cards. Setup requires your business details, a bank account, and proof of business registration. The process typically takes 3 to 7 business days. Flutterwave has plugins for Shopify, WooCommerce, and other platforms, and their dashboard shows real-time transaction data and settlement schedules.
Stripe: Best for international customers and recurring payments
Stripe is a global payment processor that works in Kenya but is designed more for businesses that take international payments or need advanced features like subscriptions and invoicing. Stripe accepts Visa, Mastercard, and some local payment methods, but it does not natively support M-Pesa — you would need to add M-Pesa through a separate integration.
Stripe charges 2.9% plus a fixed fee per transaction for card payments. Setup requires a Kenyan business bank account, business registration documents, and a tax ID. The approval process can take 1 to 2 weeks, and Stripe performs more thorough background checks than other gateways. Stripe is worth considering if you plan to grow internationally or need features like subscription billing, but for a small business selling mainly to Kenyan customers, Pesapal or Flutterwave are usually simpler.
Transaction fees and how they affect your pricing
Every gateway charges a fee when a payment goes through. These fees are deducted from what you receive — the customer does not see them. A typical fee structure is a percentage (2% to 3.5%) plus a small fixed amount per transaction (between 5 and 50 shillings, depending on the gateway).
If a customer pays 10,000 shillings through Pesapal, you might receive 9,710 shillings after fees. The exact amount varies by payment method — M-Pesa often has lower fees than card payments. Before you choose a gateway, check their fee schedule for the payment methods your customers will use most. Over time, even a 0.5% difference in fees adds up, especially as your sales grow.
How to choose between gateways for your website
Start by asking what your customers actually use to pay. If they are mostly using M-Pesa, Daraja or Pesapal work well. If they use a mix of M-Pesa and cards, Pesapal or Flutterwave are better. If you have international customers or plan to expand outside Kenya, Flutterwave or Stripe make sense.
Next, check whether your website platform already has a built-in connection. If you use Shopify, WooCommerce, or a hosted e-commerce platform, log into your payment settings and see which gateways are listed. Using a built-in integration saves you time and technical headaches. If your gateway is not listed, you can usually add it through a plugin or by working with a developer to integrate the gateway's API.
Finally, compare the transaction fees for your most common payment method. A difference of 0.5% might not sound like much, but on 100,000 shillings in monthly sales, that is 500 shillings you keep or lose. Some gateways also offer lower rates if you hit certain monthly volumes, so ask about that when you sign up.
Frequently Asked Questions
Can I use more than one payment gateway on my website?
Yes. Many businesses use two gateways — for example, Daraja for M-Pesa and Stripe for international cards. Your website can show both options at checkout, and customers pick which one to use. This gives you flexibility and protects you if one gateway has downtime, but it does mean managing two separate accounts and two sets of transaction reports.
How long does it take to get paid after a customer pays?
Most gateways settle funds to your bank account within 1 to 3 business days. Pesapal and Flutterwave typically settle daily or every few days. Stripe may take longer — sometimes up to a week — especially for new accounts. Check the settlement schedule for your chosen gateway before you sign up, because cash flow matters for small businesses.
What happens if a customer disputes a payment or asks for a refund?
You can issue a refund through your gateway's dashboard, and the money goes back to the customer's original payment method within a few business days. If a customer disputes a charge with their bank (a chargeback), the gateway will notify you and may reverse the payment while the dispute is investigated. Keep records of what you sold and when to defend yourself if a chargeback happens.
Do I need a business bank account to use a payment gateway?
Yes, all the major gateways require a business bank account where they can deposit your payments. You cannot use a personal account. If you do not have a business account yet, most Kenyan banks can open one in a few days with your business registration certificate and ID.
Can customers pay without creating an account on the gateway?
Yes. When you integrate a gateway into your website, customers enter their payment details at checkout but do not need to create a gateway account. The gateway processes the payment in the background, and your website shows them a receipt. This is called a "hosted checkout" or "embedded form," and it is the standard way most gateways work with small business websites.