What a payment gateway does on your Kenyan website

A payment gateway is the software that sits between your website and your customer's bank. When someone buys from you online, the gateway encrypts their card or mobile money details, sends them to the bank for approval, and tells your website whether the payment went through — all in a few seconds. You never see the customer's full card number; the gateway handles that part.

In Kenya, most gateways connect to the same few banks and mobile money networks that your customers actually use: M-Pesa, Airtel Money, bank cards issued locally, and sometimes international cards. The gateway's job is to translate between your website's language and theirs, so a customer can pay however they normally do.

You do not run the gateway yourself. You sign up with a gateway provider — a company that owns the software and the connections to the banks — and they handle the technical side. You install their code on your website, set your prices, and they process the payments.

Key Takeaways

  • The main Kenyan payment gateways are Pesapal, Daraja (M-Pesa's official API), Flutterwave, and Stripe, each with different fees and which payment methods they support.
  • M-Pesa is the most common payment method in Kenya, so any gateway you choose should offer it, either directly or through a partner.
  • Setup costs nothing, but you pay a percentage of each transaction (usually 2 to 3.5 percent) plus sometimes a small fixed fee per transaction.
  • Settlement — when the money actually lands in your bank account — takes one to three business days depending on the gateway and your bank.
  • You will need a business bank account, a national ID, and sometimes proof of business registration, depending on which gateway you choose.

The main payment gateways available in Kenya

Pesapal is the oldest and most widely used gateway in Kenya. It connects to M-Pesa, Airtel Money, bank cards, and international cards. Pesapal charges 2.9 percent per transaction for M-Pesa and 3.5 percent for cards. Settlement happens within one business day. You can sign up online with your national ID and a business bank account; they do not require formal business registration.

Daraja is M-Pesa's official payment API, run by Safaricom. It only handles M-Pesa payments, not cards or other methods. The fee is 2 percent per transaction. Daraja is cheaper than other gateways if M-Pesa is your only payment method, but you will need to integrate it yourself or hire a developer — it is more technical than point-and-click platforms. Settlement is next business day.

Flutterwave is a larger pan-African gateway that works in Kenya. It connects to M-Pesa, cards, bank transfers, and international payment methods. Fees are 1.4 percent for M-Pesa and 3.5 percent for cards, making it competitive on M-Pesa. Settlement takes one to three business days. Flutterwave requires more documentation than Pesapal — they ask for proof of business and sometimes a utility bill.

Stripe is an international gateway that recently expanded to Kenya. It handles cards and bank transfers but does not yet support M-Pesa directly. Fees are 2.9 percent plus 10 shillings per transaction. Stripe is useful if most of your customers pay with international cards, but it is not the right choice if M-Pesa is your main payment method. Settlement takes two to three business days.

Comparing fees and settlement speed

GatewayM-Pesa FeeCard FeeSettlement TimeRequires Business Registration
Pesapal2.9%3.5%1 business dayNo
Daraja2%N/A1 business dayNo
Flutterwave1.4%3.5%1–3 business daysYes
StripeN/A2.9% + 10 KES2–3 business daysYes

The choice between them usually comes down to two things: which payment methods your customers use most, and how much documentation you want to provide. If 80 percent of your customers pay with M-Pesa and you do not have formal business registration yet, Pesapal or Daraja are the fastest to set up. If you have registered your business and want the lowest M-Pesa fee, Flutterwave saves you 1.5 percent per transaction.

What you need to sign up

All four gateways require a business bank account in your name. This is not optional — the gateway needs somewhere to send your money. If you do not have one, open it at your bank first; it usually takes one to three days.

You will also need your national ID (or passport if you are not Kenyan). Every gateway asks for this during signup. Have a clear photo of both sides ready.

Pesapal and Daraja do not ask for proof of business registration. Flutterwave and Stripe do — they want either your certificate of registration from the Registrar of Companies, or sometimes a utility bill in your business name as proof of address. If you do not have formal registration, Pesapal is the fastest option.

You will also need to provide your website URL and a brief description of what you sell. The gateway uses this to check that you are not selling prohibited items (weapons, counterfeit goods, etc.). This takes a few minutes to fill in.

How the money reaches your bank account

When a customer pays through your gateway, the money does not go directly to your bank. It sits in the gateway's account first. Once a day (usually overnight), the gateway totals up all your transactions and sends them to your bank in one batch. This is called settlement.

Settlement timing varies. Pesapal and Daraja settle the next business day — if a customer pays on Monday, the money is in your account by Tuesday morning. Flutterwave takes one to three business days depending on your bank. Stripe takes two to three days.

Your bank may add another day on top of that. Some banks process incoming transfers slowly, especially if the amount is large. If you are expecting a big payment, contact your bank first and ask how long transfers from payment gateways usually take.

The gateway keeps a small percentage of each transaction as their fee. This comes out before the money reaches you — you do not pay it separately. If a customer sends 1,000 shillings through Pesapal's M-Pesa option, you receive 971 shillings (1,000 minus 2.9 percent), and Pesapal keeps 29 shillings.

Choosing between gateways for your specific situation

If you are just starting out and most of your customers use M-Pesa, Pesapal is the easiest choice. You can sign up in an hour with just your ID and bank account, and the fees are reasonable. The dashboard is straightforward to understand.

If you want the absolute lowest M-Pesa fee and you have business registration, Flutterwave saves you money on volume. At 1,000 transactions per month, the 1.5 percent difference adds up. But the signup process takes longer because they ask for more documents.

If M-Pesa is your only payment method and you are comfortable with technical setup, Daraja is the cheapest at 2 percent. You will need a developer to integrate it, which costs money upfront, but the per-transaction savings pay for itself if you process enough volume.

If most of your customers are outside Kenya or pay with international cards, Stripe is worth considering, but only as a second gateway alongside Pesapal or Flutterwave. Do not use Stripe alone in Kenya — you will lose most of your M-Pesa customers.

What happens after you sign up

Once your gateway account is approved (usually within 24 hours), you get access to a dashboard where you can see all your transactions, fees, and payouts. The gateway provides code or a link you can add to your website to start accepting payments.

If your website is built on a platform like Shopify, WooCommerce, or Joomla, the gateway usually has a plugin you can install with a few clicks. If you built your site yourself or use a custom platform, you will need a developer to integrate the gateway's API — this typically costs 5,000 to 15,000 shillings depending on complexity.

After your first payment comes through, check that the money arrived in your bank account on the expected day. If it did not, contact the gateway's support team when ready — they can usually trace the transaction within a few hours.

Frequently Asked Questions

Can I use more than one payment gateway on the same website?

Yes. Many businesses use Pesapal for M-Pesa and Flutterwave for international cards, or Daraja for M-Pesa and Stripe for cards. This gives customers more payment options and lets you compare fees. The downside is more accounts to manage and more fees to track. Start with one gateway and add a second only if customers ask for a payment method you do not support.

What happens if a customer's payment fails?

The gateway shows them an error message and the money is not taken from their account. You do not get charged a fee for failed payments. The customer can try again when ready or use a different payment method. Your dashboard shows which payments failed so you can follow up if needed.

Do I need to register my business formally to use a payment gateway?

No, not for Pesapal or Daraja. You can sign up with just a national ID and a business bank account. Flutterwave and Stripe do ask for registration, but many small businesses use Pesapal first and upgrade to another gateway later if they grow.

How long does it take to get approved after I sign up?

Pesapal and Daraja usually approve within 24 hours. Flutterwave can take one to three business days because they review your documents more carefully. Stripe takes two to five business days. You can start testing your setup while you wait, but you cannot process real payments until you are approved.

What if my bank account is in a different name than my national ID?

Contact the gateway's support team before you sign up. Most gateways require the bank account and ID to match, but some allow a business account in a different name if you provide proof of authorization. It is easier to avoid this problem by opening a business account in your own name first.