ErpZeroZA: leave Xero, keep your books
ERPNext is a free, powerful ERP, but it takes a consultant to make it a South African set of books and weeks of careful work to move a business onto it. ErpZeroZA does both: it turns ERPNext into ready SA books on day one, and it moves you off Xero with the numbers proven to the cent.
The app is free and open source. You pay only for people's time: setup and migration, hosting, support and enhancements, from us or any ERPNext consultant you choose.
Keep what you like about Xero (invoicing, bank reconciliation, VAT) without dollar-linked price rises, per-user fees and paid add-ons. Your books stay in South Africa and are yours to take with you. When you need stock, projects or a web shop, they are already in the same system.
Every client's books kept separate, every client on one dashboard, every VAT201 done the same way. Moving a client off Xero becomes days of checked work rather than a month of spreadsheets.
00 · Free app, paid help
ErpZeroZA is released under the MIT licence, like ERPNext's own ecosystem of apps. There is no licence fee and no per-user charge, now or later. Anyone can install it, read the code and change it.
| What | Cost |
|---|---|
| ErpZeroZA app and ERPNext | Free |
| Setup and the move off Xero, reconciled and signed off | A fixed fee per business, depending on how much history comes across |
| Hosting | Passed through at cost plus a service fee, or your own server at no charge from us |
| Support, training and enhancements | Monthly or as needed |
For consultants and bookkeeping practices: the app is yours to use with your own clients. You charge for setup, support and enhancements; we are happy to train you, back you up on migrations, or take on the work you'd rather not do.
01 · What ErpZeroZA adds to ERPNext
ErpZeroZA is a Frappe app installed on standard ERPNext. It never edits ERPNext itself, so upgrades stay clean and the system can move to any host.
| What you need | Standard ERPNext | With ErpZeroZA |
|---|---|---|
| Leaving Xero | A general data import tool: spreadsheets by hand, no history, no proof the numbers match | Connect Xero, review the data before anything loads, load it, then reconcile against Xero to the cent, signed off by your accountant. Xero's history is archived inside the new system. |
| SA VAT | One 15% tax template; no VAT201 | Standard, zero-rated, exempt, capital goods and imports, each mapped to its VAT201 field, with the return prepared from the books (built on the open-source csf_za localisation) |
| SA paperwork | Generic layouts | Full and abridged tax invoices, credit notes, customer statements and remittances in SA format; March–February financial year |
| The bank | No SA bank feeds or bank rules | One-click statement import for FNB, Standard Bank, Absa, Nedbank, Capitec and Investec, plus bank rules: "description contains X → this account, this VAT" |
| Payroll and getting paid | Nothing SA-specific | SimplePay journal import for PAYE, UIF and SDL; Paystack or Yoco "Pay now" links on emailed invoices |
| Ease of use | The full ERP menu: manufacturing, CRM, HR and more | One Books workspace and a Xero-style dashboard; everything else hidden until the business grows into it |
| Running cost | Tuned by hand, if at all | Set up to run on the smallest practical plan, with many clients able to share one server (§04) |
02 · The move off Xero, proven to the cent
The migration is a guided tool inside ERPNext. Nothing is loaded until it has been staged, reviewed and reconciled, and it can be re-run without creating duplicates.
- Connect. Sign in to Xero once (or upload Xero's own exports). Organisation, chart of accounts, VAT rates, tracking categories, contacts, items and transactions are read into a staging area.
- Review. Your accountant checks how each Xero account and VAT rate maps to ERPNext before anything is posted.
- Load. Masters first, then opening balances, then transactions, in date order, each keeping its Xero reference.
- Reconcile. Trial balance per account, debtors and creditors per invoice, bank balances, and VAT per VAT201 field, compared with Xero for every month loaded. Any difference blocks sign-off.
- Sign off and archive. The accountant signs the reconciliation; Xero's reports and raw data are stored in the new system as its read-only history. Then Xero can be cancelled.
| Depth | What comes across | When it fits |
|---|---|---|
| Opening balances | Trial balance at cutover, open debtors and creditors, contacts, items, chart of accounts | Cutover at year end |
| Current year usual | The above at the last year end, plus every current-year transaction as a real document | Moving mid-year, with full drill-down for the year |
| Full history | Every year, oldest first | Rarely worth it; quoted separately |
03 · Several sets of books, kept apart
A group with three companies and a bookkeeper with thirty clients both need each set of books kept separate. ErpZeroZA supports two ways of doing it:
| One system, several companies | One system per entity | |
|---|---|---|
| Fits | Entities with the same owners who want group figures | Unrelated owners: a bookkeeper's clients, or a company that may be sold |
| Kept apart by | Permissions per company, with customers, suppliers and items tagged to their company | A separate database, users, backups and web address for each |
| Group figures | Built in: consolidated P&L and balance sheet, intercompany invoices | A practice dashboard showing every client's VAT due date, unreconciled bank lines and overdue debtors, with one sign-in |
| Leaving | The group leaves together | Any one client can take their own backup and go |
Our rule: same owners, one system; different owners, separate systems. A client's books should never be one permission mistake away from another client's.
04 · Affordable to run, without a worse experience
Nothing a user sees is switched off to save money. The savings come from how ErpZeroZA is hosted:
- Many clients, one server. Each client gets a separate system on a shared server, so the cost per client falls as a practice grows.
- The heavy lifting happens before go-live. The Xero load and reconciliation run on our own infrastructure; the finished, checked books are then moved to the client's system, which starts on a small plan from day one.
- A lean install. Background jobs for modules a books system never uses (marketing campaigns, manufacturing costing, helpdesk, overseas bank feeds) are switched off, and log clean-up is switched on, so the system doesn't spend its allowance on work nobody asked for. Search, email, notifications, recurring invoices, projects, assets and stock all stay on, and the rest can be switched back on when the business grows.
- Your data, your choice of host. Run on Frappe Cloud in South Africa, or take the backup and the app to your own server at any time. See Hosting: rent or own.
05 · What's built, what's next
| Part | Status |
|---|---|
| ErpZeroZA app on ERPNext v16, deployed on Frappe Cloud, tested on every change | Done |
| Lean install: unused background jobs off, log clean-up on | Done |
| SA books: VAT templates and VAT201, tax invoices, Books workspace, roles, management reports | Building now |
| Xero migrator: connect, stage, review, load, reconcile, archive | Next |
| Bank statement import and bank rules; SimplePay journal; Paystack / Yoco pay-now | Planned |
| Showcase: a fictitious SA business you can sign in to, with a Xero migration you can watch end to end | Planned |
| Practice dashboard for bookkeepers | Planned |
06 · Pilot with us
We are looking for a few South African businesses on Xero (1–20 staff, VAT-registered, with an accountant or bookkeeper who is up for it) and a few bookkeepers who run several clients on Xero. Pilots are migrated at the current-year depth and run alongside Xero for one VAT period before Xero is switched off.
Talk to us about a pilotKeeping Xero as your ledger and adding ERPNext for operations instead? See Xero ↔ ERPNext integration.