ERP Implementation in Kenya: A Step-by-Step Guide for Growing Businesses
Planning to implement an ERP system? This guide walks through every step — from requirements gathering to go-live — with Kenya-specific considerations for M-Pesa, KRA, and multi-branch operations.
An ERP (Enterprise Resource Planning) system is the central nervous system of a growing business. It connects finance, inventory, sales, procurement, HR, and reporting into one unified system — so every department works from the same data, in real time.
For Kenyan businesses that have outgrown spreadsheets and disconnected tools, an ERP is the next step. But ERP implementation is complex, expensive, and — if done wrong — disruptive. Studies show that 50–70 % of ERP implementations fail to meet their objectives, usually because of poor planning, not bad software.
This guide walks through every step of ERP implementation, with Kenya-specific considerations for M-Pesa, KRA compliance, multi-branch operations, and local support.
Who this is for: Business owners, operations managers, and finance leads in Kenya who are planning to implement an ERP system and want to do it right the first time.
What an ERP system does
An ERP connects your core business functions:
| Module | What it handles |
|---|---|
| Finance & Accounting | General ledger, accounts payable/receivable, budgets, financial reports |
| Inventory Management | Stock levels, stock movements, reorder points, multi-warehouse |
| Sales & Distribution | Orders, invoicing, deliveries, customer management |
| Procurement | Purchase orders, supplier management, GRN (goods received notes) |
| Manufacturing | Production planning, BOM (bill of materials), work orders |
| HR & Payroll | Employee records, attendance, leave, payroll, statutory deductions |
| CRM | Leads, customers, sales pipeline, follow-ups |
| Project Management | Project tracking, timesheets, resource allocation |
| Reporting & Analytics | Dashboards, custom reports, business intelligence |
Not every business needs every module. The advantage of an ERP is that you start with what you need and add modules as you grow — all on the same platform, sharing the same data.
Step 1: Requirements gathering (2–4 weeks)
Before choosing or building anything, document exactly what your business needs.
What to document:
- Current processes: How does each department work today? What systems/tools do they use?
- Pain points: What takes too long? What causes errors? What information is hard to get?
- Must-have features: What absolutely must the ERP do?
- Nice-to-have features: What would be helpful but is not critical?
- User count: How many people will use the system, and in which roles?
- Multi-branch: Do you have multiple locations that need access?
- Integrations: What existing systems must the ERP connect to (M-Pesa, bank, KRA, website)?
- Compliance: What regulatory requirements must the system meet (KRA eTIMS, Data Protection Act, CBK)?
- Budget: What can you afford for setup and ongoing costs?
- Timeline: When do you need the system live?
Kenya-specific requirements to consider:
- M-Pesa integration: Can the ERP record M-Pesa payments and reconcile them automatically?
- KRA eTIMS compliance: Can the ERP generate KRA-compliant invoices?
- Multi-currency: Do you need to handle KES and USD (or other currencies)?
- Offline capability: Will branches with poor internet need offline mode?
- Statutory deductions: Does the payroll module handle NSSF, NHIF, PAYE, Housing Levy?
- Local support: Is there a team in Kenya that can support the system?
Deliverable: A requirements document that serves as the foundation for everything that follows.
Step 2: System selection or custom build decision (1–3 weeks)
Based on your requirements, decide: buy an existing ERP or build a custom one?
Existing ERPs available in Kenya
| ERP | Origin | Best for | Price range (KES) |
|---|---|---|---|
| Odoo | Belgium (open-source) | SMEs, highly customisable | 200,000–800,000 (implementation) |
| SAP Business One | Germany | Mid-size, manufacturing, distribution | 1,500,000–5,000,000+ |
| Microsoft Dynamics 365 | USA | Mid-to-large, integration with Microsoft stack | 1,000,000–3,000,000+ |
| Oracle NetSuite | USA | Large, multi-country | 2,000,000–10,000,000+ |
| Custom-built ERP | Kenya | Businesses with unique workflows | 500,000–2,000,000+ |
When to choose an existing ERP:
- Your processes are standard and match what the ERP offers
- You need to go live quickly
- You want the security of a proven, widely-used system
- Your industry has specific ERP solutions (manufacturing, healthcare, education)
When to build a custom ERP:
- Your processes are unique and give you a competitive advantage
- You need deep M-Pesa, KRA, or Kenya-specific integrations that existing ERPs do not support
- You want full ownership and no recurring licence fees
- You need offline capability that cloud ERPs cannot provide
- You want the system to match your team's workflow, not the other way around
Step 3: System design and planning (2–4 weeks)
Once you have chosen your ERP, design how it will work for your business.
What to design:
- Module configuration: Which modules to enable, how they connect, what fields to include
- Workflow design: How documents flow through the system (order → invoice → payment → receipt)
- User roles and permissions: Who can see what, who can approve what, who can edit what
- Chart of accounts: Map your financial structure into the ERP
- Product and pricing structure: How products, categories, units, and prices are organised
- Document formats: Invoice, receipt, purchase order, delivery note layouts
- Reporting: What dashboards and reports are needed, by role and by department
- Integration design: How M-Pesa, KRA, bank, website, and other systems connect
Kenya-specific design considerations:
M-Pesa reconciliation: Design the system so M-Pesa payments are automatically matched to invoices. This eliminates manual reconciliation — one of the biggest time sinks for Kenyan finance teams.
KRA eTIMS: Ensure invoice templates include all eTIMS-required fields and that the system can transmit invoice data to KRA.
Multi-branch: If you have multiple branches, design how inventory, sales, and financial data are shared and separated. Can stock be transferred between branches? Can each branch see only its own data while HQ sees everything?
Offline mode: For branches with unreliable internet, design a system that can operate offline and sync when connectivity returns — without data loss or duplication.
Deliverable: A system design document and project plan with milestones, timelines, and responsibilities.
Step 4: Development and configuration (4–12 weeks)
This is where the system is actually built or configured.
For an existing ERP:
- Configure modules, workflows, and user roles
- Set up chart of accounts and financial structure
- Create custom fields and forms as needed
- Configure M-Pesa, KRA, and bank integrations
- Set up reporting and dashboards
- Test with real data
For a custom ERP:
- Build the database schema
- Develop each module (finance, inventory, sales, procurement, HR)
- Build the user interface
- Implement M-Pesa Daraja API integration
- Implement KRA eTIMS compliance
- Build reporting and analytics
- Integrate with website, POS, and other systems
- Security hardening and access control
Timeline by system size:
| System complexity | Development timeline |
|---|---|
| Small (1–2 modules, single branch) | 4–8 weeks |
| Medium (3–5 modules, 1–3 branches) | 8–16 weeks |
| Large (all modules, multi-branch, custom integrations) | 16–32 weeks |
Step 5: Data migration (1–3 weeks)
Your existing data needs to move into the new ERP. This is often underestimated and causes the most problems.
What to migrate:
- Master data: Products, customers, suppliers, employees, chart of accounts
- Opening balances: Stock levels, account balances, outstanding invoices
- Historical data: Past transactions (if needed for reporting)
Data migration steps:
- Export: Extract data from current systems (spreadsheets, old software, databases)
- Clean: Remove duplicates, fix formatting, validate accuracy
- Map: Match old data fields to new ERP fields
- Import: Load data into the new system
- Verify: Check that data is accurate and complete
- Reconcile: Compare old system totals to new system totals
Common data migration problems:
- Inconsistent product names or codes across different systems
- Customer records duplicated with slight name variations
- Historical prices that do not match current pricing
- Stock counts that are different from what the spreadsheet says (because the spreadsheet was wrong)
- Missing supplier or customer contact details
Pro tip: Do not migrate bad data into a new system. Use the ERP implementation as an opportunity to clean your data. If your spreadsheet says you have 500 units of a product but you actually have 420, fix the number before migration — not after.
Step 6: Testing (2–4 weeks)
Before going live, test the system thoroughly.
What to test:
- Functional testing: Does each module work as designed?
- Integration testing: Do M-Pesa payments, KRA invoices, and bank feeds work correctly?
- User acceptance testing (UAT): Do actual users find the system usable and correct?
- Performance testing: Does the system handle your transaction volume without slowing down?
- Security testing: Are user permissions correct? Can unauthorised users access restricted data?
- Offline testing: If applicable, does offline mode work and sync correctly?
- Edge case testing: What happens with refunds, partial payments, returns, voids, corrections?
Who should test:
- One representative from each department (finance, sales, inventory, HR)
- IT or system administrator
- A manager who can sign off that the system meets business requirements
Deliverable: A signed-off test report confirming the system is ready for go-live, or a list of issues to fix before go-live.
Step 7: Training (1–2 weeks)
Training is not optional. It is the difference between a system that transforms your business and a system that nobody uses.
Training approach:
- Train by role: Cashiers learn sales and payments. Finance learns accounting and reporting. Managers learn dashboards and analytics.
- Hands-on: Do not just show slides. Have users perform real tasks in the system.
- Document: Create simple, role-specific quick-reference guides. Not a 200-page manual — a 1-page guide per role.
- Train the trainer: Identify one person per department who becomes the internal expert and can help others after go-live.
Training schedule:
| Session | Who | Duration |
|---|---|---|
| System overview | All users | 1 hour |
| Role-specific training (sales, finance, inventory, HR) | Department teams | 2–4 hours each |
| Admin training | System administrator | 4–8 hours |
| Manager training (dashboards, reports, approvals) | Managers | 2–4 hours |
| Refresher / Q&A (1 week after go-live) | All users | 1–2 hours |
Step 8: Go-live (1–2 weeks)
The day you switch from your old system to the new ERP.
Go-live checklist:
- All data migrated and verified
- All users trained
- M-Pesa integration tested in production
- KRA eTIMS tested in production
- Backups configured and tested
- Support team on standby
- Old system available as fallback for 2–4 weeks
- Go-live date chosen (avoid month-end, peak periods)
Go-live strategy options:
Big bang: Switch entirely from old to new on a single date. High risk, but clean break. Best for smaller businesses.
Phased: Go live with one module or one branch at a time. Lower risk, but takes longer. Best for larger businesses or multi-branch operations.
Parallel: Run old and new systems simultaneously for a period, comparing results. Safest but most resource-intensive. Best for financial systems where accuracy is critical.
Kenya-specific go-live considerations:
- Avoid month-end and KRA deadlines: Do not go live in the last week of the month when finance is closing books or when KRA returns are due.
- Have M-Pesa support on standby: If M-Pesa integration fails on go-live day, you need someone who can fix it immediately.
- Prepare for internet outages: If your ERP is cloud-based, have a backup plan for when internet drops.
Step 9: Post-go-live support (4–12 weeks)
The first 4–12 weeks after go-live are critical. Users will have questions, find bugs, and discover edge cases that testing missed.
What to expect:
- Users asking "how do I..." questions — have your internal experts ready
- Minor bugs and configuration issues — fix quickly
- Data entry errors as users learn the system — monitor and correct
- Process adjustments — some workflows may need tweaking based on real usage
- Report requests — users will want reports that were not in the original design
Support team:
- Have at least one person available daily for the first 2 weeks
- Weekly check-ins with department heads for the first 4 weeks
- Monthly review meetings for the first 3 months
- Bug tracking and resolution process
ERP implementation cost in Kenya
| Component | Cost range (KES) |
|---|---|
| Requirements analysis and planning | 50,000–150,000 |
| System design | 50,000–200,000 |
| Software licence (existing ERP) | 200,000–2,000,000 |
| Custom development (custom ERP) | 500,000–2,000,000+ |
| M-Pesa integration | 15,000–40,000 |
| KRA eTIMS integration | 10,000–30,000 |
| Data migration | 50,000–200,000 |
| Training | 30,000–100,000 |
| Implementation support (go-live) | 50,000–150,000 |
| Post-go-live support (3 months) | 50,000–200,000 |
| Annual maintenance and support | 100,000–400,000/year |
| Total (first year) | 500,000–3,000,000+ |
Custom vs existing ERP cost comparison (3 years)
| Cost category | Existing ERP (3 years) | Custom ERP (3 years) |
|---|---|---|
| Implementation / development | 500,000–1,500,000 | 800,000–2,000,000 |
| Annual licence / subscription | 200,000–600,000/year | 0 |
| Annual hosting | 50,000–200,000/year | 50,000–200,000/year |
| Annual support | 100,000–300,000/year | 100,000–300,000/year |
| Total over 3 years | 1,950,000–5,700,000 | 1,250,000–3,500,000 |
Custom ERPs have higher upfront cost but lower ongoing cost (no licence fees). Over 3+ years, custom is often cheaper — and you own the system.
Why ERP implementations fail (and how to avoid it)
1. Insufficient planning
Problem: Rushing into implementation without clear requirements and design. Fix: Spend 4–6 weeks on requirements and design before any development starts.
2. Over-customisation
Problem: Trying to make the ERP match every single old process exactly. Fix: Adapt your processes to the ERP's best practices where possible. Customise only where it gives you a genuine competitive advantage.
3. Poor data migration
Problem: Moving dirty data from spreadsheets into the new system. Fix: Clean and validate data before migration. Reconcile totals after migration.
4. Inadequate training
Problem: Users do not know how to use the system and revert to old methods. Fix: Train every user by role. Provide ongoing support. Create quick-reference guides.
5. No executive sponsorship
Problem: The ERP project is seen as an IT project, not a business transformation. Fix: The business owner or CEO must actively champion the project and hold people accountable for adoption.
6. Unrealistic timeline
Problem: Trying to go live too quickly, skipping testing and training. Fix: Build a realistic timeline with buffers. It is better to go live 2 weeks late than to go live with an untested system.
7. Ignoring change management
Problem: Users resist the new system because it changes how they work. Fix: Involve users early. Explain why the change is happening. Show how it benefits them personally (less manual work, fewer errors, faster reporting).
What to do next
ERP implementation is a significant investment — of money, time, and organisational energy. Done right, it transforms your business. Done wrong, it wastes months and millions.
The most important step is the first one: a thorough requirements analysis and planning phase. If you get this right, every subsequent step is easier.
Orwan Consulting provides ERP implementation services for Kenyan businesses — from requirements analysis to post-go-live support. We build custom ERPs and implement existing systems (Odoo, SAP Business One), with M-Pesa integration, KRA eTIMS compliance, and 24/7 local support.
Schedule your free consultation — we will assess your current systems, map your requirements, and provide a detailed implementation plan with fixed costs and timelines.
Related reading:
- The True Cost of Using Spreadsheets for Your Business in Kenya — understand why staying on spreadsheets is more expensive than implementing an ERP
- Why Your Business Needs Custom Software — Not Off-the-Shelf — compare the long-term cost of custom vs existing ERP solutions