A story of frustrations, discovery and salvation.

Meet Sarah, who owns a small shopfitting business in Bristol

Eight years ago, Sarah started a small firm of shopfitters in Bristol. They fit out shops, cafés and offices, from design to the finished job. Today there are fourteen people: three project managers, a small design team, two site supervisors, and Claire, who runs the office and, since last year, most of the finance admin as well.

The business runs on Xero. Sales invoices, Bills, bank reconciliation, VAT and payroll all live in it. Her accountant set it up before she had a single employee, and it has grown with the business far better than she expected.

Buying is a different story. In any given week the shopfitters are ordering flooring, joinery, lighting, door handles and fittings, hired equipment and subcontractor time across four or five live jobs. That is a lot of money going out through a lot of hands, and for a long time Sarah had no clear view of any of it until the Bills came in. She did not have a purchase order system. She had Xero, a spreadsheet, and a WhatsApp group.

What was going wrong with buying in Xero?

When Sarah sat down to work out why she felt so out of control, it came down to two problems. Neither is a criticism of Xero. They are simply the point where an accounting system stops being a purchasing system.

Problem one: raising an order needed a Xero login, so nobody raised orders

Xero can create purchase orders. It has templates, it emails them to suppliers, and once an order is approved you can turn it into a Bill later. On paper, that was everything Sarah needed.

In practice, the only people with Xero access were Sarah, Claire and the accountant. Sarah was not going to give three project managers and two site supervisors logins to the system that holds the bank feeds and payroll. Even if she had, the level of access that lets someone raise an order lets them see a great deal more than an order.

So the real process looked like this. A project manager would message Claire: "Can I get a PO number for £2,400 of flooring from Kingsway?" Claire would stop what she was doing, raise the order in Xero, approve it herself because Sarah was on site, and send the number back. More often, the project manager would place the order first and ask for a number afterwards. By then the purchase order was just paperwork for a decision already made.

The result was a purchase order process that only worked when Claire was at her desk, and a steady stream of orders raised after the event that said nothing about what had been spent until the supplier's invoice arrived.

Problem two: one approval step and no budget check, so overspend only showed up at month end

Approval on a Xero purchase order is a single step. Someone with the right permission clicks approve, and that is the whole process. There is no way to say that anything under £500 on a job can go straight through, anything over needs Sarah, and anything over £5,000 needs Sarah and her business partner.

More importantly, nothing in that approval step checked the order against a budget. The shopfitters tracked jobs with Tracking Categories in Xero, which is useful for reporting afterwards, but there was no moment where an order was raised and someone could see that this job had £6,000 of materials budget left and this order would take it to £7,200.

The first time this really hurt was a café job. The project manager, doing perfectly sensible things one order at a time, put the job 18% over on materials. Each order looked fine on its own. Nobody was watching the running total until the last Bill was coded and the job report came out three weeks after the keys were handed over. By then the money was gone, and the chance to talk to the client about extra costs had already passed.

What did she try before looking for a purchase order system?

Spreadsheets, twice. A shared PO list in Google Sheets where anyone could take the next number and note down the supplier and amount. It worked for about six weeks each time. Then someone forgot to add an order, the numbers stopped matching Xero, and the spreadsheet and the accounts no longer agreed. When the list is not the one true record, people stop trusting it, and when they stop trusting it, they stop filling it in.

She also tried approving everything herself. That lasted less time than the spreadsheets. If every order needs the owner and the owner is on site three days a week, orders wait, jobs slip, and project managers start ordering first and asking afterwards. Which put her straight back at problem one.

What does a small business actually need from a purchase order system?

By this point Sarah had a short list, shaped entirely by the two problems above. It is a useful checklist for any Xero business in the same position.

  • Anyone in the business can raise an order from a phone or laptop, without a Xero login and without seeing anything else in Xero.
  • Approval rules based on value and job, so small orders go straight through and large ones reach the owner, with a proper "no" button rather than sending things back to draft with a note.
  • A budget for each job that the person raising the order can see, and that the approver sees at the moment they approve it.
  • Suppliers, Account Codes and Tracking Categories pulled from Xero, so nobody types the same lists into two systems or codes things differently in each.
  • When the supplier's invoice arrives, it is matched to the order and goes into Xero as a coded Bill, rather than Claire typing it in from a PDF.

That last point mattered more than she first realised. She had gone looking for a purchase order system, but the invoice side was where Claire was losing her afternoons. Fixing how orders are raised without fixing how Bills get into Xero would just move the problem rather than solve it.

When has a Xero business outgrown built-in purchase orders?

It depends almost entirely on how many people buy on the company's behalf. A two-person business where the owner raises every order will usually be fine with Xero's built-in purchase orders, and adding another system for the sake of it is a mistake.

The time to look seriously is when either of Sarah's two problems shows up. If orders are being raised after the event because the people buying things cannot get into the system, or if overspend is only found when the Bills are coded, the built-in tools have been outgrown. For Sarah's shopfitters that happened somewhere between ten and fourteen people, and her one regret is not acting a year earlier.

Where does Zahara fit?

Sarah's checklist describes a purchase order system that sits on top of Xero rather than replacing any part of it, and that is exactly how Zahara is built. Xero stays the accounts system. Orders are raised, approved, marked as received and matched in Zahara, and the finished, coded Bill is sent into Xero once it has been approved.

Against her five requirements:

  • No Xero logins needed to raise an order. Project managers and site staff raise orders in Zahara from a browser or the mobile app, and see only what they need to.
  • Approvals with more than one step. Orders go to the right person based on value, department or job, approvers can say yes or no from their phone, and a rejected order goes back to whoever raised it with the reason.
  • Budgets at the point of ordering. Department and job budgets show what has been ordered, what has been invoiced and what is left, to both the person ordering and the person approving.
  • Works with Xero. Zahara syncs suppliers, Account Codes and Tracking Categories from Xero, so the coding on the order is the coding on the Bill.
  • Invoices matched to orders. Supplier invoices are emailed in, read automatically and matched against open orders, so the finance admin only has to look at the ones that do not match. This is the accounts payable automation side of Zahara, and for Claire it would be the part that gives her afternoons back.

What about the receipts in everyone's van?

There is a sixth problem Sarah had not put on her list, because she had stopped noticing it. Site supervisors buy small things on their own cards all the time: a box of screws, a tin of filler, fuel, a parking ticket. The receipts live in glove boxes and jacket pockets until the end of the month, when Claire chases them, types them in one by one, and works out who is owed what. Zahara's AI Expenses deals with this in the same system as the orders and invoices. A supervisor photographs the receipt on their phone, the AI reads the amount, the supplier and the date, checks the claim against the company's expense rules, and flags anything unusual before Claire even sees it. The claim goes through the same kind of approval as a purchase order and is paid once it has been signed off. Nothing to type, nothing to chase, and one set of rules for every pound the business spends, whether it went out on an order, an invoice or a site supervisor's card.

Set-up is not instant, and nobody should tell you otherwise. Building approval rules, loading budgets and getting a team into new habits usually takes weeks, not months. If Sarah's story sounds like yours, the quickest way to find out whether it would work for your business is to book a short demo and walk through how you buy things with someone who has seen a lot of businesses do it.