Finance Exports: Verify Every Expected Record
Level data-layer playbook
Decide which records the report should include before scheduling it
Sam Yang, Level
Export Verification Checklist
Accept a file against a requested report definition, not a notification that delivery finished.
| Check | Evidence to retain | Reason to stop |
|---|---|---|
| Scope | Company, report title, period and status filters | Header or filters do not match the request |
| Population | Expected IDs, distinct delivered IDs and all pages | A required ID or page is missing |
| Workbook | Required sheet names and independent totals | A sheet is absent or totals are unexplained |
| Cost | Available and missing cost sources | The answer treats missing cost as zero |
| Delivery | Original file, capture time and version | Only a request or an older file is available |
Report delivery is not report acceptance
MarketSharp sales, production, cost and payment reports can describe different groups of records. An exact link between the known records says nothing about records missing from the supplied reports. Compare report title and filters before combining them. LMN exports may retain nested totals and labor-rate assumptions that should not be flattened into duplicate economic rows. Ramp grids can virtualize rows, so a count of visible cells does not tell you how many records are in the full report.
Keep the original files and a list of what was received. Document the requested report, legal entity, date range, status filters, original filename, saved record IDs, control totals, capture time and the version of the tool that collected the file. Record the browser version only when that report was actually collected through a browser. If a scheduled export is incomplete, preserve that failed receipt and investigate its source. Do not manufacture successful coverage by reusing an old file.
Repeated dates need a row definition
A daily report may contain several legitimate rows for one date, such as different channels or stores. Define its key before calculating a weekly total. If two rows share the complete expected key but disagree, retain both source rows and stop the affected aggregation until the conflict is explained. Selecting an arbitrary row or adding both can create an unsupported result.
This applies beyond field-service exports. Triple Whale's Sheets documentation addresses delayed syncs and duplicate rows, and warns that editing the source tabs can disrupt later syncs. Keep the original receipt and report metadata before investigating. Delivery success does not prove uniqueness, completeness or a reconciled business answer.
Free benchmark review
See whether your books are benchmark-ready.
Start with a free conversation about your priorities. With agreed access to the relevant records, we compare your numbers with applicable benchmarks and identify what to review first.
Two totals can agree while both omit the same records
If a schedule and its control total are derived from the same partial export, agreement only checks that export's arithmetic. Compare against an independent list of expected records: a native invoice roster, a stated report count with independently retained identities, or the appropriate ledger control account. Document which one is independent and which merely repeats the supplied file.
For a nested labor export, separate employee detail, crew subtotal and company total before aggregating. Adding all three levels can multiply the same cost. For a production-to-payment bridge, first define whether a row represents a sale, job, invoice or payment. A fully joined subset does not establish that every eligible sale or completed job reached the export.
The scheduled output should show how many records were expected, received, matched and backed by cost details separately. Missing cost details belong on the exception list even if every invoice joined. That is the difference between automating delivery and building a report an owner can use to set prices.
Financial evidence in practice
How do you prove a scheduled export is complete?
Define the report population before scheduling it. Preserve the delivered file and verify report title, filters, dates, identities, all sheets and control totals. Four rows can describe only three distinct jobs, and a missing cost is not zero.
Run the check
- Record expected source IDs or an independently supported source census.
- Retain original files, formulas and report hierarchy before flattening rows.
- Compare distinct records and control totals, then investigate missing populations.
- Keep a failed or partial run visible instead of silently replacing it with yesterday's file.
Fictional example: Complete job and export population
Four exported rows contain three of five expected jobs: 60% identity coverage. One retained job has no cost. Full-scope profit is withheld.
Invented teaching inputs; downloadable files store these dollar amounts in USD cents.
Inspect the expected output
{
"fictional": true,
"unit": "USD cents",
"id": "complete-export",
"rawRows": 4,
"distinctRows": 3,
"coveragePct": 60,
"missing": [
"D",
"E"
],
"costMissing": [
"B"
],
"completeProfitCents": null,
"limitation": "This is teaching arithmetic from supplied invented inputs, not source authenticity, financial assurance or authority to post."
}Reproduce this calculation
Download the code and input into one folder, then run:
node reproduce.mjs complete-export.input.jsonThe code checks declared units and identities and refuses unsupported inputs. No browser or customer account is used. Source authenticity and accounting approval require separate evidence.
Reviewed 2026-10-06. Level financial-control guidance, with visibly fictional teaching examples. The example shows a control boundary, not a measured customer outcome or industry benchmark.
Read this content revision history
Continue with the related financial decision →More reproducible financial checks
Linked records with missing costs
All three fictional IDs link, giving 100% linkage. One has no cost evidence. Perfect linkage does not establish profit completeness.
Retain the actual delivered attachment
Open the related financial check when the next question concerns that workflow. The Financial Systems Field Guide holds the named-system collection notes, pitfalls and bounded prompts.
Sources and method
Field Guide. This guide shows how to check whether the numbers are ready to use. The examples use made-up numbers, clearly labeled and available to download. They do not include private customer documents or measured customer results. Before using the method, check that your account has the required access and that your reports count the same things.
Get the next one
Want next week's benchmark in your inbox?
One email a week. Real numbers from 2,200+ contractors in the research universe. No fluff. Unsubscribe anytime.
Related reads
Operations
Why Your Field Software Numbers Don't Match Your Accounting
Reconcile field hours, invoices, recognized revenue, and job costs. Billing capture: 97.1% median, 66.9% bottom decile (963 companies).
Operations
The AI Inbox: Emailed Reports as Finance Pipelines
Asking for a report by email does not mean you have received and saved it. Track delivery, original attachment, parsing and review separately, preserving changed versions.
Operations
The API Is Not Enough for Finance Automation
Use APIs for supported records. Add native reports or permitted browser collection for verified gaps, then compare identities, dates and costs.

About the author
Sam Yang
Founder & CEO
Founder of Level, the always-on finance team for contractors, service businesses, and ecommerce brands. Ex-CFO across trades, SaaS, and service businesses. 4 years as Director of Growth Product at BuildOps, building financial tooling used by 1,000+ commercial contractors. Four years in PE and investment banking rolling up and acquiring service businesses, $2.5B in total transactions including M&A and IPOs. Stanford MBA, Brown undergrad. The Level founding team's analysis of 2,200+ contractors ($13.25B in job revenue) across operating, private-equity, and CFO roles anchors the Level Index benchmark research.
LinkedIn