Case study · Xenergy
An ERP built around how a solar distributor actually runs.
Xenergy imports and sells solar panels, inverters and batteries across Zimbabwe. We built the system that runs the business end to end: every sale, every pallet in every warehouse, every supplier payment, payslip and bank line, with a mobile app for the team on the road.
The problem
A growing distributor was running on spreadsheets, a generic accounting package and a lot of memory. Stock lived in several warehouses, purchase orders arrived in foreign currency with landed costs that changed after the fact, and the only way to know how much cash the business really had was to ask the person who did the banking.
Off-the-shelf ERPs were either too expensive for the size of the company or demanded that the business change how it worked to suit the software.
The approach
We started with the questions the owner asked every morning: what came in, what's going out in the next two weeks, what needs my decision today. The system was designed outward from those answers.
Everything else, from invoicing to payroll, was added module by module, each one shipped to a staging environment the team could use before it went live. The business never stopped trading while the system grew around it.
What we built
One system, one login, one source of truth. These are the parts the team touches most.
A morning briefing, not a dashboard
The Today view opens on three numbers: cash in the books, what's committed to go out over the next fourteen days, and the forecast low point. Below it, the things that need dealing with first, ranked: overdue customer payments, purchase orders missing a supplier invoice, approvals waiting on the owner.
- Bank statements imported and matched, so the cash figure is evidence, not an estimate
- Every action links straight to the record it's about
- Full dashboard one click away for the detail

Sales, quotes and credit notes
Quotes become proformas become invoices without retyping. Each line carries its batch and landed cost, so gross margin is known at the moment of sale rather than at month end. Credit notes and write-offs keep the audit trail intact.
- Draft, delivered and paid states with due dates and ageing
- Customer accounts with balances, history and contacts
- Price lists per customer group

Stock that knows where it is and what it cost
Panels, inverters and batteries are tracked by batch across multiple warehouses. Every movement is recorded: receipts against purchase orders, transfers, sales and write-offs. Batch detail shows what was bought, what's left and what it's worth.
- Purchase orders with a progress trail from ordered to delivered to invoiced
- Landed costs applied after delivery when freight and duty arrive, so unit cost is right
- Stock by category at a glance, with low-stock prompts

Purchasing with the real cost
Each purchase order carries its supplier, currency, delivery status and the costs that arrive later. Once freight, duty and clearing are in, the system spreads them across the units received, and every later sale uses the true landed cost.
- Supplier payment schedules feed the cash forecast automatically
- Missing supplier invoices surface as actions until they're resolved

Money, forward and back
Profit and loss, balance sheet, bank reconciliation and a cash flow report come straight from the same records, with no re-keying into an accounting package. The cash forecast projects the next weeks from committed receipts and payments, including payroll and loan repayments, and flags the low point before it arrives.
- Payroll with payslips and statutory deductions
- Loan schedules with interest and repayments tracked against the bank
- Expenses with receipt images and tax references

On the road
Sales staff and technicians spend their days at customer sites, not at desks. The mobile app is installable on any phone and shares the same backend, so a quote raised in the field is in the system before the car has left the driveway.



Price check on the spot
Search any product and see cost, target price, margin and what's on the shelf, so a salesperson can quote confidently in front of the customer without phoning the office.
Receipts that file themselves
Photograph a receipt and the app reads the supplier, amount and tax details and drafts the expense for approval. Fuel, tolls and site costs stop living in glove boxes.
How it's built and run
The whole system runs on Cloudflare's edge network, which keeps it fast in Harare and costs a fraction of a traditional server. There's no machine to patch, back up or reboot.
- React front endFast single-page app, installable as a PWA on mobile
- Workers APIServerless business logic at the edge, no servers to maintain
- D1 databaseRelational data with point-in-time recovery
- AI featuresReceipt reading and an in-app adviser grounded in the business's own data
Shipped continuously
Every change goes to a staging environment first, where the Xenergy team can try it with real workflows. Production deploys are automated from the main branch, several times a week, with no downtime.
Supported by the people who built it
We host, monitor and support the system, and we're still adding to it. When the business changes how it works, the software changes with it.
Your business next
Running on spreadsheets and memory?
Tell us what you sell and how it moves. We'll show you what a system built around your business would look like.