The challenge
A growing pumps and tanks distributor was managing cash week to week. Stock and sales lived in Cin7 Core, the ledger lived in Xero, and the picture of where cash was going came together in spreadsheets. Paying suppliers meant judgement calls made close to the overdraft limit, and nobody could easily see how much cash was sitting in the warehouse or in unpaid invoices.
What we did
We started with a financial analysis of their Cin7 Core and Xero data. It showed $850K of dead or overstocked inventory, a number of dormant top-customer accounts, and $691K of overdue receivables: more than $1.5M of cash tied up in the business.
Then we built a cashflow forecasting model in T-SQL on Azure SQL. Every bill is sorted into a priority tier, key suppliers, small bills or discretionary spend, and scheduled against the overdraft capacity, so the plan never assumes cash the business doesn’t have. A ledger scenario view lets finance test changes before committing to them.
On top of the model sits a dashboard with KPI cards, scenario stress-testing and a colour-coded cash ledger, along with a payables dashboard showing ageing buckets and days payable outstanding.
When finance settle on a plan, a write-back integration built on Azure Logic Apps pushes the planned payment dates into Xero through the Xero Accounting API. Every run logs its outcome, so the team can see exactly what changed and what didn’t. Dates and times are handled correctly for New Zealand daylight saving, so the forecast doesn’t drift an hour twice a year.
We finished with business-facing documentation that explains how the forecast works and how to use it.
The result
The finance team now plans payments from one view of cash instead of a stack of spreadsheets. They can see what is tied up in stock and debtors, test scenarios against the overdraft limit, and send the agreed plan straight to Xero with a record of every change. The stock and receivables analysis gave the leadership team clear levers to free up cash, with a dollar value attached to each one.