Xero Full Audit QA — Setup, Config & Drift (July 2026)

Full read-only audit pass over the Xero organisation, 6 Jul 2026 (~21:30 AEST), via the Pride-Dashboard Custom Connection (scopes: accounting.transactions.read + accounting.reports.read; every pull a GET — nothing written to Xero). Sources: endpoint probe; trial balances at 6 Jul 2026, 30 Jun 2026, 30 Jun 2025; monthly P&L Aug 2023 → Jun 2026; all 399 manual journals; all 2,840 bank transfers; open/ draft invoices; credit notes; plus the session-1 bank forensics in finance/xero-audit-progress.md. Companion decision context: Xero Corrections Approved, Financial Reporting, Bookkeeper Role and Financial Management Capacity.

Verdict in one paragraph

The books have a sound skeleton (revenue posted every month without gaps, AR clean at $0, transfers structurally coherent, access posture correctly least-privilege) but the April 2026 approved correction pack was never posted, the Square Balance bank account has been bleeding uncredited since Dec 2025 (−$156k and ~$55–67k/month), June 2026 cost-of-sales collapsed to $305 (supplier bills not entered — June’s “profit” of $30.7k is an artefact), and a cluster of clearing/ suspense/legacy accounts carry frozen wrong balances. Nothing found suggests misappropriation; everything found is consistent with a bookkeeper-capacity gap (Nov 2025 – Apr 2026) whose repair job stopped halfway.

1. Access & config posture — PASS with notes

CheckResult
Settings endpoints (Organisation, Accounts, TaxRates, Currencies, Users, Tracking, Contacts, BrandingThemes, PaymentServices)All 401 — least-privilege trim is real and working
Transactions/reports endpoints200 as expected; RepeatingInvoices also readable (harmless, part of transactions scope)
ConsequenceChart-of-accounts config QA below is inferred from trial balances, not /Accounts; org settings (FY, GST basis, lock dates) not API-checkable — verify lock dates in the UI (see actions)

2. The approved corrections were never executed — FAIL

Xero Corrections Approved (April 2026) authorised four journals. Trial balance at 6 Jul 2026 proves none are posted:

Approved correctionEvidence it’s unposted
Net off SQ-600001 vs SQ-800004 ($244,367.14)Both still on TB: SQ-600001 cr $247,618.39, SQ-800004 dr $244,367.14
Write off $3,251.25 residualResidual still embedded (difference is exactly $3,251.25)
Consolidate Westpac 901 → WL901 still dr $18,520.00 (repayments still coded there — $2,315/mo × 8), WL still cr $100,000.00
Zeller reclass ~$209k out of SQ-600000No Zeller account exists on the TB; SQ-600000 sits at credit $45,007.35 — a negative asset

What WAS done in the April window (found in manual journals): ATM cash-withdrawal reclasses SQ-600000 → Cash Float ($98,690 FY25 + $33,930 FY26), Amaka double-count revenue reversals ($13,217 + $7,906), novated-lease reallocations, and the accountant’s CC2025 ADJ. Real work — but the board-visible correction pack is still pending.

3. Active drift (things getting worse monthly)

  1. Square Balance −$156,192.52 — root-caused in session 1: daily takings credits stopped Dec 2025; only payout transfers since (1,535 lifetime transfers to 2203, $5.42M — the pipe itself is fine). Revenue side is NOT broken (see §5), so the fix is bank-side backfill + reinstating the posting pattern. Leak rate ~$55–67k/month. Likely mechanism: Amaka (the Square→Xero middleware per Clearing Account Cycle) posts both the revenue leg and the bank leg — revenue still flows, the bank leg stopped ~Dec 2025. Check Amaka’s config/subscription FIRST (10-minute UI check) before hand-building any backfill; note the April Amaka double-count reversal journals prove its output was already being corrected by hand.
  2. June 2026 COGS $305 vs $15–50k every prior month; May was already low ($3,651). Supplier bills have stopped being entered — consistent with 85 overdue AP invoices and suppliers cutting deliveries. June’s net profit +$30,720 is therefore overstated by roughly a month of stock cost. FY26 P&L is NOT usable for decisions until COGS is caught up.
  3. 2203 unreconciled items still being created ~10/month (39 open, $136,720 gross).
  4. Staff Petty Purchase +$8k since Nov 2025, 15 unreconciled; note the odd routing history: $332,802 of Square Balance transfers INTO Staff Petty (98 transfers) and $527,238 OUT to 2203 — the account has been used as a cash-cycle waypoint, not petty cash. Needs a definition decision, then cleanup.
  5. Superannuation Payable $49,012.53 and rising while Super Holding sits at −$298 — the set-aside discipline that existed (FY25: $85k held) has lapsed. SG debt accruing unfunded is the single most dangerous liability on the sheet (directors personally liable for SGC).

4. Frozen wrong balances (stable, need one-time journals)

AccountBalanceDiagnosis
Register Cash (105)−$32,022.2950 unmatched till-float transfers Oct 2024–Apr 2025; frozen 15 months; write-off candidate after till count
Cash Float (CF)$21,680.00Created by the April ATM reclasses; verify against actual till/safe float — Register Cash and CF likely net to the truth
Cash Clearing Account (838)$1,920.00Frozen since FY25 — one orphaned float transfer
Suspense (850)−$635.53Nonzero suspense; contents unknown — clear it
Money Held in Trust (TRST)dr $7,510.30Negative trust liability — money recorded as held in trust has been spent/never received; frozen since ≤Jun 2025; needs Mat + accountant
ATO Payment Plan (828)dr $10,000.00Payments parked against a liability account with no offsetting debt balance — reclass vs actual ATO integrated account
GST Adjustments (821)cr $10,663.19Static since FY25 — was an accountant adjustment; confirm it shouldn’t have been cleared to GST (820)
Trybooking bank acct$0.00 but $77,214 unreconciled39 items Dec 2023–May 2024; archive after cleanup
Byron + CBPL accountsnot on current BSLegacy accounts still holding 3 unreconciled items ($20k, Byron); archive after cleanup
Rounding (860)$0.07Cosmetic

5. What’s actually healthy

  • Revenue continuity: Square Sales posted every single month Aug 2023 → Jun 2026 ($58k–$158k range, no gaps) — including right through the bookkeeper gap. TryBooking revenue posts monthly (now GST-split: TBKR since ~Jan 2026 vs TBCTBD before — deliberate change, fine).
  • AR is $0. No stale receivables at all (cash business — as it should be).
  • Transfer topology is coherent: the account-pair map matches how the venue actually moves money; no unexplained counterparties beyond Byron/CBPL legacy.
  • Journal discipline history: EOFY accountant batches visible every year (though FY25’s batch was thin — 4 journals — matching the “lodgement delayed” record).
  • Access security: least-privilege API posture verified by probe.

6. Open-item hygiene

  • AP $81,664.07 due across 100 bills; $63,169.37 (85 bills) overdue since before Apr 2026. Top: ALM $22,289.51 (the liquor wholesaler), ATO $20,079.20, American Billiards $11,147.93, Pride of our Footscray Ltd $6,600.36 (related party), Collins & Co $5,695.39 (the accountant). This is the payables-watcher case in numbers.
  • 59 DRAFT invoices, $57,953.62 gross — never authorised; triage (many will be Mat’s drafts habit).
  • 8 credit notes with $1,668.83 remaining — apply or void.
  • Chart quirks: duplicate novated-lease account sets (334 vs 334NEW2026, 481 vs 481NEW2026) holding split balances; “Loan - Mathew” on expense-range code 446; rename/merge candidates.

7. Priority actions

#ActionOwnerBlocking
1Enter June (+May tail) supplier bills → COGS catch-upShae/MatP&L trust; overlaps AP list
2Post the four approved correction journals (park Zeller reclass detail with Collins & Co on FY boundary)Shae + Collins & CoBalance-sheet credibility
3Check Amaka config/subscription (bank-leg posting stopped ~Dec 2025), then Square Balance backfill Dec 2025→now from Square settlement export + reinstate daily postingShae (Amaka UI + export) then session 3opening_cash, cash forecast
4Super funding plan: $49k payable vs empty holding account — to Mat with the insurance-style urgencyMatDirector exposure (SGC)
5One-time journal pack: Register Cash/CF/838 (after till count), Suspense, TRST (Mat + accountant), ATO plan reclass, GST Adjustments confirmsession 3 → Mat approvalsClean TB
6UI-only checks: lock dates, bank feed status per account, statement-line unreconciled view (~379), user listShae (10 min in Xero)Config QA completeness
7Draft invoice + credit note triage; archive Trybooking/Byron/CBPL accounts post-cleanupsession 3Hygiene

Full working detail and session-by-session state: finance/xero-audit-progress.md (pride-turnaround repo, outside the wiki). Session-1 bank forensics: same file.