FIRMLEDGE — CONNECTED RECORDS EXAMPLE, VERSION 1
Created October 7, 2026. Package ID: firmledge-connected-records-example-v1

ORIGIN AND SCOPE
Every company, customer, transaction, identifier and amount in this package is
constructed for this public demonstration. No acquired, client or
third-party dataset was used. These are authored miniature records, not exports
from a real accounting system. No personal or confidential source data was
sanitized; synthetic IDs are authored labels, not replacements for real IDs.

Coverage is January 1–31, 2026, in USD: 3 invoices, 2 explicitly allocated
receipts, 6 journal entries / 12 journal lines, and 4 accounts. All opening
balances are zero by construction. Only the transactions shown are included;
taxes, costs, other assets, liabilities and real-world operating context are
outside this miniature scenario. It is not a complete operating-company model.

WHAT CAN BE INSPECTED
Invoices total $25,000. Explicitly matched receipts total $18,000. Invoice-backed
open AR is $7,000: INV-001 $2,000; INV-002 $0; INV-003 $5,000. The journal also
contains J006, a $500 debit to AR and credit to other income. No support for
that manual entry is provided. Journal AR and trial-balance AR both equal
$7,500. The full mini-trial-balance has $25,500 on each side.

J006 explains the $500 arithmetic difference but does not establish that the
entry is valid, collectible or erroneous. It remains in the prepared records
with a support question; there is no automatic adjustment. Missing support is
an intentional feature of this constructed example, not an empirical finding.

FILES AND FIELD DEFINITIONS
CSV files use UTF-8, a header row, comma separators, decimal USD amounts with two
decimal places, ISO dates, and empty source_id only for the manual entry. CSV
money has no thousands separators. JSON money uses integer cents (100 = $1).

invoices.csv — Authored invoice extract.
  invoice_id: unique invoice key. customer_id: consistent fictional customer
  key. invoice_date: transaction date. currency: USD. amount: invoice total.

receipts.csv — Authored receipt-allocation extract, one invoice per receipt.
  receipt_id: unique receipt key. receipt_date: transaction date. invoice_id:
  explicit allocation to invoices.csv; not an inferred match. currency: USD.
  amount: entire receipt amount, allocated to that one invoice.

journal.csv — Authored double-entry ledger; each entry has two lines.
  journal_id: entry key. line_id: unique line key. entry_date: posting date.
  account_code: joins account-map.csv and trial-balance.csv. debit and credit:
  nonnegative USD amounts, one nonzero side per line. source_type: invoice,
  receipt or manual. source_id: the invoice/receipt key, or blank for manual.
  memo: authored description; it is not independent support for an entry.

trial-balance.csv — Authored period-end balance extract, with zero openings.
  as_of: period end. account_code: unique account key. account_name: source
  label. currency: USD. debit_balance and credit_balance: ending USD balances,
  one nonzero side per row. This table's arithmetic tie is not substantive
  verification of every posting and is not a full financial statement.

account-map.csv — Explicit authored preparation mapping; no inferred judgment.
  account_code: source account key. source_account_name: original label.
  normalized_account: normalized field label. statement_group: presentation
  group only, not an issued statement. normal_balance: debit or credit.
  mapping_basis: why the mapping exists in this constructed example.

prepared-records.json — Derived, inspectable output with source pointers.
  package_id, origin, period, currency, amount_unit: scope/provenance.
  invoice_records: each invoice's amount less explicitly allocated receipts,
  linked receipt_ids/journal_ids, and calculated open_balance_cents.
  source_refs: filename#field=value references identify rows, not new files.
  ar_reconciliation: opening + invoices - receipts + manual debit = GL = TB;
  difference fields preserve the gap versus invoice-backed open balances.
  evidence.supported: support within the authored records, not external proof.
  evidence.inferred: empty because no matching or adjustment is inferred.
  evidence.unresolved: missing support, question and retained-entry treatment.
  transformations: operations applied, with changes to values distinguished.
  limits: boundaries of the miniature demonstration.

manifest.json — Provenance, scope, assumptions, limitations, file roles and
  SHA-256 hashes. Hashes cover the other seven public files, not this manifest
  or the ZIP containing it. They detect file changes, not commercial rights.

TRANSFORMATIONS AND CHECKS
Amounts are parsed exactly to cents. Explicit mappings and keys are applied;
no estimated matching, corrections, imputation, redaction or changed dates or
values are applied. Derived totals are labeled as derived. Checks cover unique
keys, valid joins, one posting per invoice/receipt, balanced journal entries,
all four GL-to-TB balances, the AR bridge, prepared-output arithmetic, public
file hashes and the ZIP contents. These checks are reproducible arithmetic and
structure checks, not independent practitioner review or buyer acceptance.

PUBLIC DEMONSTRATION AND COMMERCIAL SCOPE
This package is provided to inspect the example shown on FirmLedge's website.
It is publicly accessible and unsuitable as a private holdout or exclusive
evaluation set; disclose its public origin in any evaluation using it. Its
design and checks do not establish model performance, benchmark difficulty,
production scale, actual licensing transactions or acceptance by a buyer.
Commercial datasets, custom work and their permitted uses are scoped and
licensed separately. Nothing here grants rights to any other company's data.
