Ledger Trace
What Ledger Trace is
Ledger Trace connects a client's accounting system to their bank evidence, so each cash entry in the books can be matched to a bank transaction and then followed back to the invoice or bill that created it.
It adds accounting data as a third evidence type in Valid8, alongside bank statements and check images. The work happens in two stages:
- Cash Match — compares the cash journal from the accounting system against the bank statements, in both directions.
- Revenue Trace and Expense Trace — takes each matched payment and drills into the sub-ledger to the invoice or bill behind it, verifying the individual revenue or expense lines.
Typical uses: proof of cash, revenue verification, expense tracing, M&A and investment due diligence, and fraud detection where the books say one thing and the bank says another.
Before you start
A full Ledger Trace needs live access to the accounting system, not an exported file. Valid8 pulls the complete GL plus the AR and AP sub-ledgers, and the sub-ledger is what makes the revenue and expense tracing possible.
Access options
- I have access — you enter the client's accounting system credentials yourself.
- My client has access — you enter the client's name and email, and Valid8 sends them a prompt to log in. The extraction starts from there.
Supported accounting systems (roughly 31 variants once regions and editions are counted)
| Tier | Systems |
|---|---|
| Tier 1 | QuickBooks Online and Desktop (US, Canada, UK), Sage 50 (US, Canada, UK), Xero |
| Tier 2 | Sage 100, 200, 300 and Intacct; Microsoft Dynamics 365 Business Central, Great Plains and NAV; NetSuite; MYOB |
The single source of truth for ERP compatibility is the ERP compatibility Confluence page, which is updated as new connectors are qualified.
Also required
- Bank statements for the period, loaded and assigned to accounts.
- The engagement's bank statements assigned to the account that came in from the ERP import, not to a manually created duplicate.
How to run a Ledger Trace
- Load the accounting extract. From the Process Map, use the Accounting Extracts tile on the bottom row. Pick the accounting system, then choose whether you or the client will log in. Valid8 extracts the full GL, AR and AP.
- Wait for processing. A reimport typically takes 25–30 minutes to reach Processed status. Cash Match will not return results before then.
- Check the account came through. The import creates accounts for anything flagged as a bank account in the accounting system — often six or seven, including petty cash and investment accounts you do not care about.
- Assign bank statements to the ERP account. Assign statements to the account created by the ERP import, the same way you would for a manually created account.
- Set the Available for Ledger Trace flag. On the account you want to verify — usually the operating account — turn on the Available field. This flag drives which transactions the match runs against.
- Run Cash Match. Open Cash Match and click Find New Matches. Valid8 shows the GL date range it has and the matching bank range, so you can confirm the period before running.
- Review the match results, then switch to Revenue Trace or Expense Trace from the dropdown at the top to drill into the sub-ledger.
- Generate the output. The Bank/ERP report and the Excel work paper carry the same detail, with pivot tables for review.
Reading the results
Cash Match lists the cash journal on the left and the bank statement on the right. A match flag means that entry has been verified against third-party evidence. A percentage verified appears at the top.
The direction dropdown matters, because entries legitimately exist on only one side:
- Cash Journal to Bank catches journal entries posted between accounts that never hit the bank.
- Bank to Cash Journal catches bank fees and interest the accountant never booked.
Revenue Trace takes a matched receipt, finds the invoice it paid, and ticks off the revenue lines on that invoice. One payment can clear several invoices — the many-to-one case is supported.
Expense Trace does the same in reverse, from payments out to bills.
Verified vs. unverified. A line shows as unverified when the payment is traceable in the cash journal but no bank evidence was found for it. The books say the money moved; the bank does not confirm it. That gap is usually the finding, not an error.
Matching currently runs on date and amount. Description matching and anomaly surfacing are in design.
Limits and common questions
Can a client upload a rebuilt GL from Excel or CSV? Yes, but it only supports cash verification against the bank statement. Full Ledger Trace needs system access or a backup file from the accounting system, because an Excel file carries no sub-ledger. Load exported GL or cash journal files through the transaction list section and treat them like another bank account; Accounting Extracts is only for live connections. Use the cash journal template for the format.
How many accounts can be traced at once? One. Each report reflects the current match only, so clients with several cash accounts must run Cash Match, generate the Bank/ERP report, then repeat. Support for multiple simultaneous cash matches is not yet built.
Can many GL entries match a single bank transaction? Yes through a live connection — 50 credit card expense lines paid by one cash payment will stack many-to-one. Data brought in via Excel matches one-to-one only.
Why did the trace find nothing in the sub-ledger? Usually because the client books revenue in a separate system and pushes a single summary journal at month end. Check the AR and AP transaction counts against the GL count before running the verification — a GL with 10,000 entries and 500 AR entries is a warning sign.