For an NGO operating in Kenya, accepting donations online should be as simple as possible for the donor. A visitor who wants to support a programme should not have to search through several pages, copy an M-Pesa number into their phone, switch between screens, and wonder whether the payment was received.
Integrating M-Pesa donations directly into your NGO’s website can create a much smoother experience.
Instead of simply displaying an M-Pesa Paybill or Till number, your website can provide a dedicated donation form where supporters select an amount, enter relevant details, and initiate an M-Pesa payment from the same digital experience.
For organisations that receive donations from individuals, local businesses, diaspora supporters, corporate partners, or campaign participants, this can make the website an important part of the fundraising process.
This guide explains how M-Pesa donation integration works, the options available to Kenyan NGOs, what a good donation experience should look like, and what your organisation should consider before commissioning the development.
M-Pesa is deeply integrated into everyday financial transactions in Kenya. For many local supporters, paying through mobile money is more familiar than entering card details into an unfamiliar website.
That makes M-Pesa particularly relevant when designing donation journeys for Kenyan audiences.
A donation page that asks a Kenyan visitor to enter credit card information may introduce unnecessary friction. An M-Pesa-based donation journey can feel considerably more familiar.
For an NGO, the benefits can include:
The important point is that adding an M-Pesa number to a website is not the same thing as properly integrating M-Pesa into the website.
There are several levels of M-Pesa functionality an NGO can place on its website.
The simplest approach is to place information such as:
Paybill: 123456
Account: DONATE
Amount: Enter your preferred amount
This is inexpensive and easy to implement.
However, the donor has to leave the website or use another device to complete the transaction. The NGO may also have limited ability to automatically associate the payment with the particular donation form, campaign or donor.
This can still be useful as a backup payment method, particularly for donors who prefer manual M-Pesa payments.
A more structured approach allows the donor to enter:
The website then displays the appropriate M-Pesa payment instructions.
This provides a better user experience and allows the organisation to collect useful information about the donation.
However, unless the payment itself is integrated with the payment system, the website may still need some mechanism for confirming that the payment actually happened.
For a more sophisticated donation platform, the website can communicate with M-Pesa programmatically.
Safaricom’s Daraja platform provides APIs that allow developers to connect M-Pesa functionality to web and mobile applications.
A common approach is to use an M-Pesa payment prompt, where the donor enters their phone number and the website initiates a payment request. The donor then confirms the transaction on their phone.
The website can receive the payment response and update the donation record accordingly.
This creates a much more integrated experience.
A typical donation journey might look like this:
The exact implementation depends on the payment architecture and the NGO’s M-Pesa account configuration.
The important principle is that the website should not treat a donor’s form submission as proof of payment. The system should verify the payment through the appropriate payment response before marking the donation as successful.
The payment integration is only one part of a successful donation experience.
A well-designed donation page should answer three questions quickly:
Why should I donate?
What will my donation support?
How can I donate right now?
Explain what the donation supports.
For example:
Your contribution helps provide learning materials and educational support to children in underserved communities.
The message should be specific rather than simply saying:
Support our work.
Instead of presenting only an empty amount field, consider providing suggested amounts.
For example:
Suggested amounts make the decision easier and can also encourage higher-value donations.
Always consider allowing donors to enter their own amount.
Different supporters have different financial capacities, and the donation form should not unnecessarily restrict them.
If the integration uses an M-Pesa payment prompt, the donor will generally need to provide the relevant mobile number.
The form should clearly explain why the number is required and how it will be used.
Depending on the organisation’s needs, the form might request:
Do not ask for information simply because it is technically possible to collect it.
Every additional field increases friction.
For organisations running multiple programmes, allowing donors to select where they want their contribution directed can be useful.
For example:
What would you like to support?
The organisation should ensure that its accounting and donor reporting processes can actually support the distinctions presented on the website.
After a successful payment, the donor should receive an immediate confirmation.
A good confirmation page might include:
Thank you for your donation.
Your contribution of KSh 2,500 has been received.
You can also provide:
A confirmation page is particularly important because it reassures the donor that the payment was successful.
For many Kenyan donation websites, an M-Pesa payment prompt can provide a particularly convenient experience.
Rather than asking donors to remember a Paybill number and manually navigate through their phone’s M-Pesa menu, the website can initiate the payment process.
The donor then receives a prompt and authorises the transaction.
From a UX perspective, this reduces the number of steps required to complete the donation.
However, the technical implementation should be designed carefully. The website needs to handle successful transactions, failed transactions, cancelled requests, timeouts, duplicate attempts and other possible payment states.
One of the most important technical considerations is distinguishing between:
Payment initiated
and
Payment successfully completed
These are not the same thing.
For example, a donor might click the Donate button and receive an M-Pesa prompt but fail to complete the payment.
The website should not immediately record the donation as successfully received simply because the payment request was initiated.
A properly designed integration should process the appropriate payment response and update the donation status accordingly.
Useful statuses can include:
This becomes particularly important as donation volumes increase.
An NGO should not rely exclusively on M-Pesa transaction messages or manual spreadsheets to manage online donations.
The website can maintain a structured donation record containing information such as:
| Field | Example |
|---|---|
| Donation ID | DON-2026-00125 |
| Amount | KSh 5,000 |
| Donor | Jane Wanjiku |
| Phone | 07XXXXXXXX |
| jane@example.com | |
| Campaign | Education Programme |
| Status | Successful |
| Transaction reference | ABC123XYZ |
| Date | 11 September 2026 |
This can make reconciliation and reporting substantially easier.
The organisation can also build administrative tools around the donation database.
For example, authorised staff could filter donations by:
Payment integration should not end when the donor sees a success message.
The NGO also needs a reliable back-office process.
Finance and programme teams may need to answer questions such as:
A good donation system should therefore connect the public-facing donation form with internal reporting.
This is especially valuable for organisations that need to demonstrate financial accountability to boards, donors, partners and auditors.
Consider what happens after someone makes a donation.
An automated system can potentially send a confirmation email containing:
For organisations that issue formal receipts or acknowledgements, the website can also integrate this process into the donation workflow.
However, the organisation should establish its accounting and tax treatment separately from the technical website implementation. The website developer should not determine whether a particular contribution qualifies for a tax-related treatment.
Donation forms can collect personal information such as names, telephone numbers and email addresses.
That means data protection should be considered from the beginning of the project.
Kenya’s Data Protection Act, 2019 establishes requirements around the processing of personal data, while the Office of the Data Protection Commissioner oversees the country’s data protection framework.
An NGO should therefore consider:
The donation form should not become an excuse to collect excessive personal information.
For example, if an anonymous donation is possible, requiring a donor’s full postal address may be unnecessary.
Your website should also have an appropriate privacy policy explaining how donor information is handled.
Payment-related websites require more than attractive design.
At a minimum, the development team should consider:
The entire donation journey should use HTTPS.
M-Pesa API credentials and other sensitive configuration values should never be exposed in frontend code or committed to a public source-code repository.
Payment information should be processed and verified server-side rather than trusting values submitted by the browser.
Donation amounts, phone numbers, email addresses and other submitted data should be validated.
The system should be designed to prevent a transaction from being recorded multiple times because of repeated callbacks or users refreshing a page.
Donation records should only be accessible to authorised staff.
Donation data should be backed up according to the organisation’s broader data retention and business continuity requirements.
This depends on the NGO’s fundraising and reporting requirements.
An anonymous donation option can reduce friction for supporters who do not want to provide their identity.
However, organisations may need donor information for:
The right approach depends on the organisation’s specific requirements.
If anonymous donations are permitted, the website should clearly explain what information is optional and what information is required to process the payment.
Recurring giving can be valuable for NGOs because predictable monthly contributions can provide more reliable funding.
A donation strategy could therefore include options such as:
Give once
or
Give monthly
However, recurring payments require a different technical and operational approach from a simple one-time M-Pesa donation.
Do not advertise a “monthly donation” feature unless the underlying payment architecture genuinely supports recurring transactions in an appropriate way.
If recurring giving is important to your fundraising strategy, discuss it with your payment provider and development team before designing the feature.
Kenyan NGOs often have supporters outside Kenya.
M-Pesa may be highly convenient for donors in Kenya, but it should not necessarily be the only payment method available.
Depending on the organisation’s audience, a donation page might eventually offer:
The correct combination depends on where the NGO’s donors are located.
A useful approach is to analyse actual donor behaviour rather than adding payment methods simply because they are available.
If most donations come from Kenya, prioritising M-Pesa makes sense.
If a significant proportion comes from the United States, United Kingdom, Europe or elsewhere, international payment options may be important.
Displaying a Paybill number is useful, but it does not provide the same experience as an integrated donation workflow.
The donation process should be obvious.
Avoid making users search through the Contact, About or Footer sections for payment information.
Every unnecessary field can reduce completion rates.
Ask only for information that serves a legitimate purpose.
A donor should know whether the transaction succeeded.
Manual reconciliation may work for a small organisation, but it becomes increasingly difficult as donation volumes grow.
A robust system should handle failed, cancelled and incomplete transactions gracefully.
An API can be technically functional while the donation experience is still frustrating.
The donor journey should be designed before development begins.
Payment-related functionality should be designed with security, access control and data protection in mind from the beginning.
People do not donate because a payment button exists.
They donate because they believe their contribution can make a difference.
The page needs to communicate the organisation’s work and the impact of giving.
The cost depends heavily on the complexity of the website and payment system.
A simple donation page displaying M-Pesa instructions can be relatively inexpensive.
A fully integrated donation platform can require considerably more development work.
Costs may include:
If the NGO already has a modern website and content management system, the integration may be relatively straightforward.
If the website is outdated or the organisation wants a complete fundraising platform, rebuilding parts of the website may make more sense.
The key is to define the required functionality before requesting quotations.
For more guidance on budgeting a website project, see our article NGO Website Cost in Kenya 2026: Website Development Budgets.
Before starting the project, your NGO should prepare a basic requirements document.
Include:
Specify what information needs to be collected and why.
Specify the M-Pesa account or payment arrangement that will be used and confirm the appropriate integration requirements with the relevant payment provider.
Determine what finance and management teams need to see after donations are received.
Decide whether donors should receive:
This makes it much easier for a development agency to scope the project accurately.
Before hiring an agency to implement M-Pesa donations, ask:
These questions can help distinguish between an agency that simply knows how to create a form and one that understands the broader requirements of a donation platform.
For more procurement guidance, see 10 Questions to Ask a Web Design Agency Before You Sign.
For a professional NGO website, the donation system can be thought of as several connected components:
Donor-facing website
The page where the donor selects an amount and provides relevant information.
↓
Payment integration
The website communicates with the appropriate M-Pesa services.
↓
Payment processing
The transaction is initiated and the donor authorises the payment.
↓
Payment confirmation
The system receives and verifies the transaction result.
↓
Donation database
The successful transaction is recorded.
↓
Notifications
The donor and relevant NGO staff receive appropriate confirmations.
↓
Reporting
The organisation can reconcile, analyse and report on donations.
This architecture helps ensure that the donation feature is not treated as an isolated button on the website.
A significant proportion of Kenyan website traffic is mobile.
Your donation page should therefore be designed mobile-first.
Consider:
The donor should be able to complete the process comfortably on a smartphone.
A beautiful desktop donation page that is difficult to use on a phone is not a successful donation experience.
Payment technology is only part of fundraising.
The strongest donation pages connect the transaction to the organisation’s mission.
Instead of simply saying:
Donate KSh 1,000
consider explaining what the contribution can help achieve, where this is accurate and supported by the organisation’s programme model.
For example:
KSh 1,000 can help support educational materials for children participating in our programme.
Use real figures and programme information wherever possible.
This can make the donation feel less like a financial transaction and more like participation in the organisation’s mission.
For organisations working with institutional and individual donors, this also connects naturally with broader impact communication. A well-designed website should make it easy for visitors to understand not only what the NGO does, but also what previous funding has helped accomplish.
A direct integration is particularly worth considering when:
For a very small organisation receiving only occasional donations, a simple M-Pesa payment instruction page may be sufficient.
The right solution is the one that matches the organisation’s actual fundraising volume and operational needs.
An NGO website should not be designed as a collection of isolated features.
The donation system should fit into the wider digital experience.
A visitor might first discover the organisation through:
They may then read about the organisation, explore its programmes, review its impact, and eventually decide to donate.
The website should make that journey coherent.
This is where UX research and strategic web design become particularly valuable. Before implementing the payment technology, an organisation should understand how its donors currently discover, evaluate and support its work.
Zedafrica’s UX Research service can be relevant when an organisation needs to understand these user journeys and design a digital experience around real user behaviour.
Before launching your donation system, confirm that:
Integrating M-Pesa donations into an NGO’s website can make online fundraising significantly more convenient for Kenyan supporters.
But the objective should not simply be to add an M-Pesa payment button.
A successful donation system combines payment technology, user experience, security, data protection, reporting and clear communication about impact.
For smaller organisations, a simple M-Pesa donation page may be enough. For organisations running significant fundraising campaigns, a more sophisticated integration can connect the website, payment processing, donor records, communications and reporting into one workflow.
The most important consideration is to design the entire donor journey rather than treating payment as an isolated technical feature.
For an NGO planning a new website or redesign, M-Pesa donations should be considered during the initial planning and UX stage, not added as an afterthought once the website has already been built.
Zedafrica is a Nairobi-based creative technology company specialising in website design, website development, UI/UX design, UX research and app design. We work with organisations that need digital experiences designed around real users and measurable organisational goals.
If your NGO is planning a new website, redesign or digital fundraising experience, schedule a conversation with Zedafrica to discuss your requirements.
