36 analyses. Open any one and read the worksheet.
Every analysis runs on the general ledger you already export — no subledger, no procurement extract, no extra client system. The worksheets below are the ones the application produces, on a fictional engagement.
GL Analyzer
21 analysesFull-population testing of the ledger itself: completeness, the statements it produces, risk scoring, and the classic journal entry fraud patterns.
MaterialityCompute the engagement materiality record once, from a stated basis and a stated rate, and let every other worksheet read it.
Compute the engagement materiality record once, from a stated basis and a stated rate, and let every other worksheet read it.
- Basis
- 64,200
- Overall materiality
- 500
- Performance materiality
- 250
- Tolerable error (TE)
- 250
The engagement materiality record, computed here and read everywhere else. Pick the benchmark lines that make up the basis, set one percentage, and the rest of the ladder follows. Nothing on this worksheet is a conclusion: the benchmark, the rate and each step down the ladder are judgements, shown as inputs so a reviewer can see what was chosen rather than infer it from a number.
Result grid5 rows
Threshold Derived from Rate Amount Used by Overall materiality Basis 64,200 0.78% 500 Completion · SUD Performance materiality Overall materiality 50% 250 Completion · Sampling Tolerable error (TE) Performance materiality 100% 250 GL · TE Threshold Clearly trivial Overall materiality 5% 25 Completion · SUD Significant caption Tolerable error (TE) 10x 2,500 GL · TE Threshold GL StatisticsProve the population being analyzed is the complete general ledger before any other test draws a conclusion.chart
Prove the population being analyzed is the complete general ledger before any other test draws a conclusion.
Postings by period (period-12/13 spike) - Journals
- 41,338
- Lines
- 213,774
- Dr minus Cr
- 0
- Out-of-period
- 312
Completeness of the data set (ISA 500). The 15,500 revenue break and the orphan account invalidate downstream tests until explained.
Result grid4 rows
Account GL net movement TB period movement Difference Flag 1100 Cash (2,419,640) (2,419,640) 0 1200 Trade receivables 3,720,118 3,720,118 0 4000 Revenue (12,900,400) (12,884,900) (15,500) Exception: GL not equal TB 9999 (not in COA) 41,200 n/a (orphan) n/a Exception: orphan account Balance SheetEvery account group in statement order, rolled up through its parents, each level against last year.
Every account group in statement order, rolled up through its parents, each level against last year.
Balance Sheet CYPYNon-current assets28,92027,210Property, plant & equipment18,90017,650Intangible assets — net6,4206,420Other non-current assets3,6003,140Current assets19,64516,880Inventory7,3105,980Trade receivables9,5155,860Prepayments & other receivables680480Cash & equivalents2,1404,560Total assets48,56544,090Non-current liabilities(14,620)(16,540)2700 Long-term borrowings(14,000)(16,000)2800 Deferred tax liability(620)(540)Current liabilities(15,275)(12,569)Trade payables(8,420)(5,110)Accruals & other payables(6,635)(7,279)Deferred revenue(220)(180)Total liabilities(29,895)(29,109)Total equity18,67014,981Total liabilities & equity(48,565)(44,090)- Total Assets
- 48,565
- Total Liabilities
- 29,895
- Balance check
- 0
Ordered most-illiquid to most-liquid. Two identities are asserted rather than assumed: total assets 48,565 = liabilities 29,895 + equity 18,670, and opening equity 14,981 + profit 3,689 − distributions nil = closing equity 18,670, which is what ties this statement to the income statement. Receivables are shown gross with the allowance beneath them rather than netted away, so the provision test has something to point at.
Result grid6 of 8 rows
FS Caption CY PY Delta Abs Delta % % Assets Non-current assets 28,920 27,210 +1,710 +6.3% 60.0% Current assets 19,645 16,880 +2,765 +16.4% 40.5% Total assets 48,565 44,090 +4,475 +10.1% 100.0% Non-current liabilities (14,620) (16,540) +1,920 (11.6%) — Current liabilities (15,275) (12,569) (2,706) +21.5% — Total liabilities (29,895) (29,109) (786) +2.7% — Income StatementA tree of the mapping levels, ordered revenue down to net income, each node against last year.
A tree of the mapping levels, ordered revenue down to net income, each node against last year.
Income Statement CYPYRevenue64,20051,3004000 Product revenue58,20046,3004100 Service revenue6,0005,000Cost of goods sold(39,680)(29,400)5000 Materials(24,300)(17,200)5100 Direct labour(11,200)(9,100)5200 Overhead absorbed(4,180)(3,100)Gross profit24,52021,900Operating expenses(19,200)(15,000)6100 Selling & marketing(9,140)(7,020)6200 Admin expenses(8,060)(7,980)6800 Restructuring(2,000)0Operating profit (EBIT)5,3206,9006900 Finance costs(650)(520)Profit before tax4,6706,3807900 Income tax expense(981)(1,340)Profit for the year3,6895,040- Gross margin %
- 38.2%
- Operating margin %
- 8.3%
- Net margin %
- 5.7%
- Eff. tax %
- 21.0%
Revenue up +25.1% but profit down 26.8%, gross margin erodes 44% to 33%.
Result grid6 of 9 rows
Caption CY PY Delta Abs Delta % % Rev Revenue 64,200 51,300 +12,900 +25.1% 100.0% Cost of goods sold (39,680) (29,400) 10,280 +35.0% (61.8%) Gross profit 24,520 21,900 +2,620 +12.0% 38.2% Operating expenses (19,200) (15,000) 4,200 +28.0% (29.9%) Operating profit (EBIT) 5,320 6,900 1,580 22.9% 8.3% 6900 Finance costs (650) (520) 130 +25.0% (1.0%) Cash Flow & FCFReconstruct the cash flow statement from the GL alone and test whether reported profit translates into real cash.chart
Reconstruct the cash flow statement from the GL alone and test whether reported profit translates into real cash.
Cash bridge — 3,689 of profit, no free cash, and 2,420 less in the bank (USD 000) Cash Flow & FCF AmountCF op — Cash Flow from Operations+2,375Net income+3,689Non-cash add-backs and reversals+1,345Working capital — assets(5,250)Working capital — liabilities+2,591CF inv — Cash Flow from Investing(2,640)Purchase of fixed assets (cash CapEx)(2,680)Disposal proceeds+500Financial assets (shares)0Loans & deposits (LT) placed(460)FCF — Free Cash Flow (CF op + CF inv)(265)CF op+2,375CF inv(2,640)CF fin — Cash Flow from Financing(2,000)Proceeds from share issue0Dividends paid0Short-term debt — drawn / repaid0Proceeds from long-term borrowings0Repayment of long-term borrowings(2,000)Interest paid — presented in CF op by policy0Deeper lines are in the worksheet grid below.- CF op
- +2,375
- CF inv
- (2,640)
- FCF
- (265)
- CF fin
- (2,000)
Indirect-method cash-flow statement built from the GL alone. Expand any line to see what it is made of; the lowest level opens the trial-balance accounts or the journal entries behind it. Every block is signed as cash impact — money in positive, money out negative — so the statement reads by addition throughout: FCF = CF op + CF inv, and CF op + CF inv + CF fin gives the movement in cash, which must reconcile to the raw movement on the cash accounts. The residual is the gap, and it carries only what the statement genuinely cannot explain.
Result grid5 rows
Line Amount CF op — Cash Flow from Operations +2,375 CF inv — Cash Flow from Investing (2,640) FCF — Free Cash Flow (CF op + CF inv) (265) CF fin — Cash Flow from Financing (2,000) Cash reconciliation (155) Gross MarginRepeat the gross margin build per segment to surface a losing segment hidden inside a healthy blended average.chart
Repeat the gross margin build per segment to surface a losing segment hidden inside a healthy blended average.
Gross margin by segment, prior year against current One line per segment carrying a margin. A line falling steeply is a segment whose margin moved, whatever its absolute level; the overhead absorbed against no segment is on the grid rather than here.
- Median GM%
- 24.7%
- Hardware GM%
- 15.9%
- Spare parts GM%
- (15.0%)
Hardware margin is volatile and collapsing; spare parts sell below cost. Segment revenue and cost reconcile to the income statement, with absorbed overhead carrying no segment basis shown as its own line rather than spread across the four.
Result grid6 of 7 rows
Segment Revenue COGS Gross Profit GM% GM% PY Software 21,400 6,850 14,550 68.0% 67.2% Hardware 27,700 23,180 4,520 16.3% 28.4% Services 13,900 9,250 4,650 33.5% 33.1% Spare parts 1,200 1,380 (180) (15.0%) 4.2% Total 64,200 40,660 23,540 36.7% 42.7% Unallocated overhead — (980) +980 Three-Way FlowPick any three accounts and trace how much of the flow actually follows that path — Revenue → Receivable → Cash ships as a one-click preset. Surfaces what leaves the path in both directions; the worksheet shows, it does not conclude.chart
Pick any three accounts and trace how much of the flow actually follows that path — Revenue → Receivable → Cash ships as a one-click preset. Surfaces what leaves the path in both directions; the worksheet shows, it does not conclude.
- Receivable vs revenue
- 121%
- Into AR not from revenue
- 25,000
- Cash vs receivable
- 83%
Receivable is 121% of revenue — even the part fully sourced from revenue does not make the two match, because 25% of receivable debits did not come from revenue while 4% of revenue never reached receivable. Cash is 83% of receivable. Every figure links to its journals — the call is yours.
Result grid6 rows
From To Amount Share Revenue · 1st Receivable · 2nd 96,000 25% not from revenue Revenue · 1st Not to receivable 4,000 Exception: 4% of revenue Not from revenue Receivable · 2nd 25,000 Exception: 25% of revenue Receivable · 2nd Cash · 3rd 98,000 2% not from receivable Receivable · 2nd Not to cash 4,000 Exception: 3% of receivable Not from receivable Cash · 3rd 2,000 Exception: 2% of receivable Monthly ActivityDetect accounts posting an abnormal amount in a given month relative to their own history.chart
Detect accounts posting an abnormal amount in a given month relative to their own history.
Acct 6500 Professional fees — Dec spike (z = 9.1) - Anomalies |score|>3
- 47
- Dormant reactivated
- 6
Result grid4 rows
Account Month Net Movement Median (ex-month) 1.4826 x MAD Robust score 6500 Professional fees Dec 902 281 68 +9.1 7200 Repairs & maint Aug 0 44 12 (3.7) 2900 Suspense (dormant) Dec 318 0 0 n/m 4000 Revenue Dec (1,940) (1,070) 260 (3.3) Dimension AnalysisProfile who is posting, not just what, because authorization risk lives at the user level.
Profile who is posting, not just what, because authorization risk lives at the user level.
- Wide-spread users
- 2
Result grid4 rows
User Distinct accounts touched Top account (value) Manual entries Flag SYSTEM 142 4000 Revenue 0 A.Lee (GL clerk) 11 1200 AR 410 J.Smith (Controller) 9 2900 Suspense 640 Watch: senior + suspense conc. R.Kahn (temp) 24 6900 Other 86 Watch: rare wide spread JE SummaryCollapse individual lines to one row per journal entry.chart
Collapse individual lines to one row per journal entry.
Entries by source module Modules ranked by how many entries each posted. One module carrying almost all of them — a module posting entries that look manual — is a different question from a person doing it.
- OSJE detected
- 7
- Self-approved
- 23
- Missing approver
- 4
Result grid4 rows
journal_id entry_date source created_by approved_by Dr JV-44120 2024-12-31 Manual J.Smith J.Smith 902 JV-44131 2024-12-31 Manual A.Lee — 318 JV-44135 2024-12-30 Manual R.Kahn J.Smith 1,500 AP-90233 2024-12-28 AP subledger SYSTEM SYSTEM 44 JE Line ItemsNarrow a multi-million-line ledger to the subset worth a human reading.chart
Narrow a multi-million-line ledger to the subset worth a human reading.
Share of lines by journal type Each type as a share of the line population, largest first. Manual is the type every other test weights, so its bar is the first thing to read. Type is an attribute of a line, never a filter on it.
- Total lines
- 213,774
- After filters
- 142
Result grid4 rows
journal_id line date account net created_by JV-44120 1 12-31 6500 Prof fees +902 J.Smith JV-44120 2 12-31 2900 Suspense 902 J.Smith JV-44131 1 12-31 2900 Suspense +318 A.Lee JV-43880 4 12-29 4000 Revenue 5,000 R.Kahn Risk-Based JETurn individual flags into one combined score per entry.chart
Turn individual flags into one combined score per entry.
Entries by risk tier Bars in severity order, High to Low. A fat High bar means the weights, not the ledger, need looking at. The height is a count of entries, never a conclusion about them.
- Population
- 41,338
- High 3+
- 214
- Med
- 1,902
- Low
- 39,222
ISA 240 testing for management override. Click a row to open the full journal entry.
Result grid4 rows
journal_id Man Round Timing Keyword Senior JV-43880 Y Y Y (Sun 12-29) Y JV-44120 Y Y (per-end 12-31) Y Y JV-44131 Y Y (per-end 12-31) Y AP-90233 Risk ScoringVisualize the shape of the entire risk-scored population at once.chart
Visualize the shape of the entire risk-scored population at once.
Entries by score band Bands are the buckets the scoring defines; the height is how many entries landed in each.
- Low 0-32
- 39,222 · 94.9%
- Med 33-66
- 1,902 · 4.6%
- High 67-100
- 214 · 0.5%
Continuous 0-100 score over 100% of the population (ISA 240).
Result grid3 rows
journal_id score band top contributors JV-44120 94 HIGH self-approved · suspense · period-end · keyword JV-43880 88 HIGH round · period-end · rare flow · plug AP-90233 7 LOW (none material) ClusteringIdentify account-to-account posting patterns that occur so rarely they fit no normal business process.
Identify account-to-account posting patterns that occur so rarely they fit no normal business process.
- Outliers (no cluster)
- 3
- Top rare flow
- 4000 to 2800 x3
Result grid3 rows
Rare account flow Frequency Example journal Note 4000 Revenue to 2900 Suspense 3 JV-43880 Watch: outlier — fits no cluster 6500 Prof fees to 2900 Suspense 2 JV-44120 expense to suspense 4000 Revenue to 1200 AR 1 — within normal cluster ExplainabilityProduce a documented breakdown of why any flagged entry received its score.chart
Produce a documented breakdown of why any flagged entry received its score.
Entries by their heaviest contributing flag Flags ranked by how many entries each one tops, with the cumulative share. The first bar carrying most of it — the cumulative line jumping to near the cutoff at once — is a single rule driving the score.
- Per-transaction why
- Yes
- Standard
- ISA 230
Result grid2 rows
journal_id score band top contributor JV-44120 94 HIGH Self-approval +31 JV-43880 88 HIGH Rare flow +26 Benford 1st DigitTest whether amounts follow the natural distribution that occurs when numbers arise organically.chart
Test whether amounts follow the natural distribution that occurs when numbers arise organically.
First-digit frequency against Benford - Observed
- Benford ±2pp
- Outside band
Band is ±2pp around expectation. Marked digits fall outside it; the entries behind them are the population to open.
- n
- 188,402
- Chi-square
- 412.6
- MAD
- 0.018
MAD 0.018 = non-conformity. Digit-2 spike (round plugs near 2,000-2,950) drives the break.
Result grid6 of 9 rows
First digit Observed % Expected % Z-score Flag 1 28.9% 30.1% 1.6 2 24.1% 17.6% +9.4 Watch: Z>1.96 (pairs 24) 3 11.0% 12.5% 1.9 4 11.8% 9.7% +4.2 Watch: pairs 24, 49 5 6.0% 7.9% 3.1 Watch: Z>1.96 6 6.1% 6.7% 1.0 Relationship RatiosTest financial relationships that should move together and flag when they decouple.chart
Test financial relationships that should move together and flag when they decouple.
Relationship ratios, prior year against current - Band breaches
- 2
- Decoupled pairs
- 1
Every ratio is recomputed from the same ledger the statements are built from, so a breach can be opened to the accounts behind it. Interest expense of 650 on average debt of 15,000 is 4.3%, against 3.2% last year, while borrowings were repaid — a decoupling that does not articulate (ISA 520). Average debt is opening plus closing over two; on a balance that moved in one step a monthly mean would give a different answer, so the basis is stated.
Result grid5 rows
Relationship CY ratio PY ratio Expected band Flag Interest / Avg Debt 4.3% 3.2% 3.0-3.6% Exception: breach — 650 on avg debt 15,000; debt fell, interest rose Depn / Avg gross PP&E 4.1% 4.0% 3.8-4.4% 1,072 on avg gross 26,250 Payroll tax / Wages 7.6% 7.5% 7.2-7.9% Commission / Revenue 2.1% 3.4% 3.0-3.8% Watch: below band COGS / Revenue 61.8% 57.3% 56-59% Watch: margin compression TE ThresholdFormalize how much work each caption deserves — balance sheet and P&L alike.chart
Formalize how much work each caption deserves — balance sheet and P&L alike.
Movement of the captions that breach a TE tier Only the captions tiered Limited or Significant — the ones over tolerable error. Signed: a bar below the line is a caption that fell. The captions inside TE are left off; they are on the grid.
- Tolerable error (TE)
- 500
- Significant if
- > 10x TE
- Accounts scanned
- 48
- Significant (> TE)
- 4
TE thresholding. Two thresholds, not one: the movement says how much changed, the closing balance says how much is exposed, and the tier is taken from whichever is higher — a caption that did not move but carries a large balance still holds risk. Significant is movement or balance above 10x TE and takes full substantive testing; Limited is above TE up to that, and takes analytical procedures with a corroborating test. Decreases carry their sign in both the absolute and the percentage column.
Result grid6 of 10 rows
Account CY balance PY balance Delta Abs Delta % Exceeds TE 4000 Revenue 64,200 51,300 +12,900 +25.1% Exception: +12,900 >> TE 1200/1210 Trade receivables 9,840 6,120 +3,720 +60.8% Exception: +3,720 >> TE 5000 COGS — Materials 24,300 17,200 +7,100 +41.3% Exception: +7,100 >> TE 6800 Restructuring charge 2,000 0 +2,000 n/m Exception: +2,000 (new item) 2700 LT Borrowings 14,000 16,000 (2,000) (12.5%) Watch: (2,000) >> TE 6100 Selling & marketing 9,140 7,020 +2,120 +30.2% Watch: +2,120 >> TE Reversing EntriesIdentify equal-and-opposite journal entry pairs — a recognized fraud pattern.chart
Identify equal-and-opposite journal entry pairs — a recognized fraud pattern.
Reversal amount against days to reverse - Reversal pairs detected
- 11
- Same-day reversals
- 3
- Period-end reversals
- 5
- Same-preparer reversals
- 7
ISA 240 reversing-entry detection. Equal-and-opposite JEs posted within a short window, weighted heavier when same preparer prepares both sides.
Result grid6 rows
Original JE_ID Reversal JE_ID Original date Reversal date Days apart Amount JV-44120 JV-44199 2024-12-31 2025-01-02 2 902 INV-77120 CM-3120 2024-12-30 2025-01-09 10 1,840 INV-77131 CM-3122 2024-12-31 2025-01-12 12 960 JV-44135 JV-44210 2024-12-30 2025-01-03 4 1,500 AP-90412 AP-90498 2024-11-22 2024-11-25 3 320 JV-41003 JV-41008 2024-06-14 2024-06-14 0 180 Backdating / Late-PostedDistinguish entries posted on the actual day from entries whose `Posting_Date` was deliberately set to an earlier period.chart
Distinguish entries posted on the actual day from entries whose `Posting_Date` was deliberately set to an earlier period.
Late-posted entries by preparer Cumulative share on the line. A short head means the delay sits with a few people, which is a different finding from a general backlog.
- Backdated entries
- 47
- Posted 7d+ late
- 18
- Posted post-cutoff
- 12
- Avg gap (days)
- 4.2
Compares Posting_Date against Entry_Date (system-stamped) from the audit log. Gaps 7+ days at year-end are the classic backdating signature.
Result grid6 rows
JE_ID Posting_Date Entry_Date Gap (days) Fiscal_Period assigned Preparer_ID JV-44120 2024-12-31 2025-01-04 11:22 +4 FY25 P12 J.Smith JV-44131 2024-12-31 2025-01-08 09:14 +8 FY25 P12 A.Lee JV-43880 2024-12-29 2025-01-06 18:40 +8 FY25 P12 R.Kahn DEP-1231 2024-12-31 2025-01-10 16:02 +10 FY25 P12 J.Smith ADMIN-JE01 2024-12-30 2024-12-30 23:47 0 FY25 P12 ADMIN1 AP-90233 2024-12-28 2024-12-28 02:14 0 FY25 P12 SYSTEM JE Number GapsVerify journal entry numbering integrity — a missing number can mean a deleted entry.
Verify journal entry numbering integrity — a missing number can mean a deleted entry.
- Journal types audited
- 6
- Total sequence gaps
- 9
- Suspect deletions
- 3
- Out-of-sequence dates
- 4
Sequence-integrity test. Numeric gaps with internally inconsistent dates suggest a deleted entry rather than a reserved number.
Result grid6 rows
Journal_Type Sequence run Last JE_ID before gap Next JE_ID after gap Gap size Surrounding dates align? Manual JV-44100 to 44131 JV-44128 JV-44131 2 Yes (12-31) Manual JV-44132 to 44199 JV-44144 JV-44150 5 No (gap dated 12-30, next dated 12-28) Sales INV-77100 to 77160 INV-77129 INV-77131 1 Yes (12-30 to 12-31) AP subledger AP-90100 to 90500 AP-90233 AP-90235 1 Yes Credit memo CM-3000 to 3125 CM-3120 CM-3122 1 Yes Depreciation DEP-0131 to 1231 DEP-1131 DEP-1231 1 Yes — Q4 catch-up replaces monthly
Revenue & AR
7 analysesRevenue recognition, receivables ageing, and the period-end patterns that move income between years.
Revenue TrendTest whether revenue follows a believable shape across the year.chart
Test whether revenue follows a believable shape across the year.
Revenue by segment, prior year against current - CY
- PY
- Total Revenue
- 64,200
- YoY
- +25.1%
- December
- 23% of FY
Result grid5 rows
Segment CY PY Delta % % of total Flag Hardware 27,700 19,400 +42.8% 43.1% Watch: YoY swing Software 21,400 19,900 +7.5% 33.3% Spare parts 1,200 — n/m 1.9% Services 13,900 12,000 +15.8% 21.7% Dec only (all seg) 14,766 7,100 +108% 23.0% of FY Exception: period-end conc. Customer ConcentrationIdentify customers representing an outsized share of revenue.chart
Identify customers representing an outsized share of revenue.
Revenue concentration by customer Bars past the 80% line are shaded back. The line is cumulative share of total revenue.
- Portfolio DSO
- 56 days
- >10% customers
- 3
Zephyr DSO 203 — 4,000 sits in 90+ bucket.
Result grid5 rows
Customer Revenue % of Rev Cum % AR Balance DSO Apex Retail 14,800 23.1% 23.1% 3,400 84 Northwind Co 9,600 15.0% 38.1% 1,480 56 Zephyr Ltd (new) 7,200 11.2% 49.3% 4,000 203 Delta Mfg 5,100 7.9% 57.2% 760 54 All others 27,500 42.8% 100.0% 200 — Credit MemosCatch revenue recognized then quietly reversed shortly after period end.
Catch revenue recognized then quietly reversed shortly after period end.
- Post-close reversals
- 3
- By R.Kahn
- 61%
- Blank reasons
- 2
Result grid4 rows
memo_id memo_date orig_invoice_date days after amount issued_by CM-3120 2025-01-09 2024-12-30 10 1,840 R.Kahn CM-3122 2025-01-12 2024-12-28 15 960 R.Kahn CM-3098 2024-11-14 2024-11-02 12 220 A.Lee CM-3125 2025-02-01 2024-12-31 32 2,000 R.Kahn Channel StuffingIdentify channel stuffing — late period revenue reversed in the first weeks of the new period.
Identify channel stuffing — late period revenue reversed in the first weeks of the new period.
- Dec 22-31 revenue
- 4,540 — 30.7% of Dec
- First 30 days reversals
- (4,800)
- Stuffing ratio
- 1.06
- Linked reversals — quantified
- (4,800)
Channel stuffing (ISA 315 fraud risk). A late-period spike that mirrors a post-period reversal is the inflated-revenue signature, and what is quantified is the linked reversals themselves — each traced to the invoice it reverses — rather than a residual left after estimating how much of the spike was genuine. The daily series sums to the 4,540 stated for the window.
Result grid5 rows
Pattern leg Period Amount Detail Flag Late-period revenue spike Dec 22-31 (last 10 days) +4,540 30.7% of December revenue (14,766) compressed into the last 10 days; manual JEs to Apex Retail, Northwind and Zephyr Ltd Exception: severe period-end concentration Post-close credit memos Jan 1-30 (4,800) CM-3120 (1,840) + CM-3122 (960) + CM-3125 (2,000), each traced to the invoice it reverses Exception: mirror reversal in first 30 days Returns / refunds (post-close) Jan 1-30 (440) Goods returned by Apex Retail (SR-9011) and Northwind (SR-9014) Watch: matches premature-cut-off invoices Quantified overstatement FY25 (4,800) The sum of the linked reversals, invoice by invoice. Not a residual — subtracting an estimate of genuine late sales from the spike would make the answer equal to that estimate Exception: channel-stuffing signature Cross-reference FY25 CM-3120 and CM-3122 (2,800) are the same invoices as M-02 Premature revenue — counted once. CM-3125 (2,000) is additional and is raised separately No double-count AR AgingTest whether the bad debt provision is adequate given the actual age profile of receivables.chart
Test whether the bad debt provision is adequate given the actual age profile of receivables.
Trade receivables by ageing bucket Buckets darken with age. Intercompany AR is excluded — it is assessed against the counterparty, not by ageing.
- AR in scope (ex-IC)
- 8,940
- Coverage
- 3.6%
- Shortfall
- (1,280)
Aged from the due date, not the invoice date, at the period-end date. Intercompany receivables are excluded and assessed against the counterparty. Loss rates are derived from the entity’s own realisation history on aged balances rather than assumed. Implied provision 1,605 against the 325 recorded on account 1250 — a 1,280 shortfall. Feeds M-03.
Result grid6 rows
Past-due bucket AR Loss rate (derived) Implied prov. Recorded Shortfall Current 2,110 0.5% 11 — — 31–60 days 1,340 2% 27 — — 61–90 days 880 8% 70 — — 90+ days 4,610 29.3% 1,497 — — Total 8,940 — 1,605 325 (1,280) Memo: intercompany AR excluded 900 n/a — — — Unapplied CashFind cash that arrived but was never matched to an invoice.chart
Find cash that arrived but was never matched to an invoice.
Unapplied receipts: value against age - Unapplied $
- 1,210
- Oldest
- 142 days
- Cross-customer
- 3
Result grid3 rows
receipt_id receipt_date customer_id amount applied_invoice age unapplied RC-5012 2024-08-14 Apex Retail 480 — 142 RC-5099 2024-12-20 Northwind 300 INV (Delta Mfg) — RC-5140 2024-12-29 Zephyr Ltd 430 — 6 Intercompany RevenueVerify intercompany transactions eliminate cleanly at the group level.chart
Verify intercompany transactions eliminate cleanly at the group level.
Intercompany revenue against the counterparty’s cost - IC revenue
- Counterparty cost
The gap between the dots is what has to be explained before anything is eliminated — a timing difference or a genuine break. The grid says which; the two are never netted.
- IC revenue
- 6,200
- IC cost
- 5,900
- Elimination gap
- 300
Result grid3 rows
Seller Buyer IC Revenue Counterparty IC Cost Gap Gap % US-Co DE-Co 4,200 3,900 300 7.1% UK-Co US-Co 1,100 1,100 0 0% DE-Co UK-Co 900 900 0 0%
Trade Payables
4 analysesVendor concentration, aggregated vendor risk, payables ageing against contracted terms, and the invoices that were paid twice.
Vendor ConcentrationIdentify vendors representing a disproportionate share of spend.chart
Identify vendors representing a disproportionate share of spend.
Spend concentration by vendor Bars past the 80% line are shaded back. The line is cumulative share of total spend.
- Portfolio DPO
- 77 days
- >10% vendors
- 2
- New top vendor
- Orion
Result grid6 rows
Vendor Spend PY Spend % of Spend Cum % AP Balance Global Parts 11,200 9,800 28.1% 28.1% 1,380 Orion Supplies (new) 6,400 0 16.1% 44.2% 2,950 Meridian Logistics 4,900 4,600 12.3% 56.5% 640 Cedar Office 980 44 2.5% 59.0% 120 All others 16,400 18,900 41.0% 100.0% 3,330 Total 39,880 33,344 100.0% 8,420 Vendor Risk RankingRoll every vendor-level signal into one aggregated risk score per vendor.
Roll every vendor-level signal into one aggregated risk score per vendor.
This one collects results from every other analysis, so it only means anything on a real engagement — we walk through it live in the demo.
AP Aging & DPOAge the open payables at period end, and compare how fast settled invoices were actually paid against contracted terms.chart
Age the open payables at period end, and compare how fast settled invoices were actually paid against contracted terms.
Payables by past-due band Bands in ageing order, oldest last — the order is the reading, so nothing re-sorts them by size.
- Portfolio DPO
- 77 days
- Debit balances (reclass)
- (240)
- 90+ no dispute
- 460
Two populations, two tests. The ageing covers what is still owed and is where the aged balance and the debit balances surface; days-to-pay covers what has already been settled and reads in both directions — early settlement to Orion is the fraud-relevant signal, late settlement to Cedar the liquidity one. Portfolio DPO is the whole closing balance (8,420) over the whole purchase population, giving 77 days; computing it from a handful of listed vendors against total spend would give 47 and describe nobody. Early and late carry opposite signs.
Result grid6 of 13 rows
Past-due bucket / Vendor AP balance Contract terms Days to pay (settled) Delta vs terms Flag Ageing of open items at period end Not yet due 5,340 1-30 days past due 1,780 31-90 days past due 840 90+ days past due 460 Watch: aged, no dispute recorded Total open payables 8,420 Ties to the balance sheet Duplicate InvoicesFind invoices paid twice.chart
Find invoices paid twice.
Candidate pairs by amount Ranked by the money each pair puts at risk, so the reader can see how few to open to cover most of it. Tiers are never added together — which pair is an exact match and which is fuzzy stays on the grid.
- Groups
- 14
- Paid twice
- 6
- Exposure
- 38.4k
Confirmed paid-twice 5,580 — recoverable overpayment.
Result grid3 rows
Group invoice A invoice B vendor amount dates D-01 PI-66201 (#A1099) PI-66830 (#A1099) Global Parts 4,400 same D-02 PI-66310 (#7741) PI-66355 (#7741) Meridian 1,180 +2d D-03 PI-66120 (#INV-2231) PI-66480 (#INV2231) Orion 2,950 same
Completion
4 analysesSampling, coverage, exception disposition, and the misstatement schedule that carries into the opinion.
Misstatement SchedulePull every finding into one number that matters for the audit opinion.
Pull every finding into one number that matters for the audit opinion.
This one collects results from every other analysis, so it only means anything on a real engagement — we walk through it live in the demo.
Disposition / ReviewTrack the lifecycle of every exception from flagged to final conclusion.
Track the lifecycle of every exception from flagged to final conclusion.
This one collects results from every other analysis, so it only means anything on a real engagement — we walk through it live in the demo.
Sampling (MUS)Justify statistically why testing high-risk items plus a smaller systematic sample is sufficient.
Justify statistically why testing high-risk items plus a smaller systematic sample is sufficient.
- Method
- Monetary-unit
- Confidence
- 95%
- Tolerable error (TE)
- 250
- Reliability factor
- 3.0 @ 95%
ISA 530. Above-TE and high-risk items are examined in full; only the residual is sampled, monetary-unit, from a random start below the achieved interval.
Result grid4 rows
Stratum Value Items Selection basis Tested Above TE — examined in full 18,900 214 Examined in full 214 items High risk — examined in full 9,200 22 Examined in full 22 items Residual — sampled 17,000 501 MUS, interval 83 = residual value ÷ n (204), random start below the interval 204 items Negative / nil — outside MUS (1,400) 18 Own stratum — MUS selects proportional to value and cannot reach these separate approach required Population CoverageDemonstrate testing effort is allocated proportionally to risk and value.chart
Demonstrate testing effort is allocated proportionally to risk and value.
Population reached by testing - High 67-100
- Med 33-66
- Low 0-32
- Not reached
Tested value per band = value × tested %. The pale remainder is the population no procedure reached.
- Tested by value
- 41%
- High-risk $
- 100%
- Untested $
- 59%
Result grid4 rows
Risk band Count % count Value % value Tested High 67-100 214 0.5% 18,900 39% 100% Med 33-66 1,902 4.6% 12,400 26% 22% Low 0-32 39,222 94.9% 17,000 35% 1% Total 41,338 100% 48,300 100% 41% $ · 100% high-risk $
Need a test that is not listed?
Describe the audit objective in plain English. Audit Scoot can generate a draft query from schema metadata, then execute it locally for professional review.
See the catalogue in a demo