Synthetic Invoice Data
Synthetic training data — no real PII, fully coherent identities
Generate synthetic professional services invoice training data for consulting, legal, and accounting billing — a Qty/Hrs column, wide narrative descriptions, a PO reference, and a printed late-fee policy block. The time-and-materials invoice shape that legal-spend and services-AP models have to read.
60
Fields per document
1
Page
Commercial
Category
What this document is
The professional services invoice is what consultancies, law firms, and accounting practices send: a Qty/Hrs column instead of a unit count, long narrative descriptions of work performed, a PO reference tying the invoice to an engagement, payment information, and a printed late-fee policy paragraph at the foot of the page. It is a time-and-materials document, not a goods document.
Why generate synthetically
Services invoices break the assumption baked into most invoice extractors that a line item is a product with a discrete quantity. Hours are fractional, descriptions run long enough to wrap, and the same document mixes billed time with flat-fee items. Synthetic services invoices give you that pattern in volume with exact ground truth, and without exposing the client names and matter descriptions that make real services invoices impossible to share.
What makes synthetic data useful
Each invoice is anchored to a coherent professional-services identity, with line items drawn from realistic consulting, legal, and design engagement catalogs rather than generic product strings. Hours multiply against rates to produce the extended amounts, the subtotal sums the rows, and tax and total resolve consistently. The vendor identity reconciles to the same identity's W-9 and year-end return, so an invoice-to-tax-record audit trail exists in the data.
Training challenges
Descriptions in a services invoice are narrative and frequently wrap to a second visual line, so a row is not one line of text — models that treat each rendered text line as a table row will double-count. The Qty/Hrs column holds fractional values, which defeats integer-quantity validators tuned on goods invoices. The late-fee policy is a block of printed prose at the foot of the page: it must be recognized as static boilerplate and not extracted as a value, and its length pushes the payment-information block's position around. A PO reference appears in the header near the invoice number and date, three short alphanumeric fields in close proximity that OCR routinely transposes.
Who uses this data
Legal-spend management and e-billing platforms, professional-services automation (PSA) vendors, consulting and agency back-office SaaS, accounting-practice management tools, and AP-automation vendors selling into services-heavy buyers. Time-and-materials invoices are where goods-trained extractors quietly under-perform, and legal-spend review in particular depends on reading narrative line items correctly.
Document complexity profile
60 fields on a single rendered page: 39 text and 21 currency, with no numeric-typed cells at all — even Qty/Hrs is stored as text, because fractional hours and unit suffixes both appear in real services billing. 54 annotation relations connect the 28 static printed labels to their values, the second-densest label set among our invoice designs. Line-item arithmetic is applied by the invoice computed-field module upstream of render, so the document balances without the definition carrying expression trees.
Key stats from our synthetic corpus
Quantitative characteristics of the Invoice documents our generator produces.
| Metric | Value | Detail |
|---|---|---|
| Population coverage | 64% | 64% of identities in our 1,000-identity corpus can issue a professional services invoice. The remaining 36% have no business relationship and form the negative class for supplier-document classification. |
| Text-typed quantity cells | 100% | Every Qty/Hrs cell on this design is text-typed rather than numeric, matching real services billing where fractional hours and unit suffixes both occur. Pipelines that infer numeric type from the column header mis-cast these cells. |
| Printed labels on the page | 28 | 28 static labels are printed and exported, including the LATE FEE POLICY block that must be classified as boilerplate rather than extracted as a value. |
| Fourth line item present | 79% | 79% of synthetic services invoices carry a fourth line item and 57% carry a fifth, so the totals block's vertical position moves per document and the late-fee block moves with it. |
| Annotation relations | 54 | 54 label-to-value relations ship per document — enough supervision to train a relation-extraction head on narrative line items without a manual annotation pass. |
How this document co-occurs with others
Rates at which identities in our corpus that produce a Invoice also produce other documents.
| Correlation | Rate | Detail |
|---|---|---|
| Same transaction, Classic layout | 100% | Every services-invoice identity also renders the Classic goods layout from the same transaction — the controlled pair for testing whether a model generalizes from Unit Price to Rate to Qty/Hrs. |
| Same transaction, Modern layout | 100% | The same transaction renders in the borderless Modern design as well, giving three label vocabularies and three visual treatments over identical ground truth. |
| Firm's W-9 on file | 100% | Every services-invoice sender produces a matching W-9. Firm name, address, and TIN on the invoice header reconcile to Part I — the vendor-onboarding match legal-spend platforms perform before first payment. |
| Principal files a 1040 | 100% | Every sender's principal produces a Form 1040 for the same year, so billed revenue can be traced from invoice to personal return within one identity graph. |
| Firm files quarterly 941s | 100% | Every services firm in the corpus is an employer and files Form 941 quarterly, which lets you build engagement-billing-to-payroll reconciliation cases for small-business credit models. |
| Married senders | 47% | 47% of services-invoice senders are married and 31% are in dual-income households — the two-earner household behind many small professional practices. |
All stats above are corpus-derived: they were computed on a local synthetic corpus of 1,000 generated identities produced by SymageDocs' World Simulation Engine. No real client, matter, or billing data was used. `make corpus-stats` regenerates the shipped corpus_stats.json for the site's analytics form set, which does not include this edition; reproduce these figures with `python -m symagedocs.corpus_analysis --corpus-size 1000 --form-id invoice_service`.
Frequently asked questions
- What data format do synthetic professional services invoice documents include?
- Each generated identity produces a rendered PDF plus a structured JSON annotation file with bounding boxes, field types, and ground-truth values for all 60 fields, covering the header, Bill To block, every Qty/Hrs line-item cell, and the totals stack. COCO, YOLO, FUNSD, and BIO/NER exports come from the same job.
- How does this differ from the other invoice layouts?
- The services design is the only one that prints a Qty/Hrs column and a late-fee policy block, and it carries the widest description column. The Classic layout bills goods with a Unit Price column, Modern is a borderless SaaS aesthetic, and Freelance is the minimal contractor case. Same transaction data underneath, four different label vocabularies on top.
- How does labeling work?
- Every value field and every static printed label is emitted by the generator with its exact bounding box and its label-to-value relation — including the late-fee prose, so a model can be trained to classify it as boilerplate rather than silently extract it as a field.
- Are the service descriptions realistic?
- They are drawn from engagement catalogs for consulting, legal, accounting, and creative work, so the vocabulary matches what a services extractor sees in production. They are fabricated: no real client, matter, or engagement is represented.
- Can I use this data commercially?
- Yes. All synthetic data is generated from statistical models, contains no real client or billing data, and is licensed for commercial use including ML model training and benchmarking.