Skip to content
Documentation

Sample Data

Populate a company with months or years of realistic, ready-made books so you can explore Caydem without entering data by hand.

The fastest way to explore Caydem is with a company that already has a full set of books. Caydem ships a sample-data generator that fills a company with months — or years — of realistic activity: bills and vendor payments, invoices and customer receipts, deposits, credit memos, voided entries, fixed-asset depreciation, approvals, bank-feed lines, and closed prior periods.

Every document is posted through the same accounting engine your own entries use, so each journal is balanced, hash-chained into the ledger, and audited exactly like real data. Reports, aging, and the trial balance all reflect a coherent set of books — nothing is faked or short-circuited.

Development mode only. Sample data is a tool for evaluating and developing against Caydem, not a production feature. The generator refuses to run outside development mode, and the reset actions require an elevated database role — so this can never touch a production company. If you are setting up real books, follow Company Setup instead.

What gets created

The generator creates a fresh company (a fictional distribution business) and posts a stream of everyday activity across the chosen time span, anchored so that due dates, aging buckets, and the “current open period” stay meaningful relative to today:

  • Opening balances, then a monthly rhythm of bills and vendor payments (some paid, some left open to age).
  • Sales invoices with customer payments that land in Undeposited Funds and are then batched into a deposit — the same clearing-account flow described in Journals & Entries.
  • Credit memos and vendor credits, and voided documents (reversing entries that net to zero).
  • A fixed asset with monthly straight-line depreciation posted through the recurring/allocation engine.
  • An approval workflow with a few approval-gated bills — some approved and posted, one left pending so the approvals queue has live work.
  • Imported bank-feed lines for the operating account, ready to reconcile.
  • Progressively closed periods — older months are closed while the most recent stay open, so you can see both a locked history and current, editable activity.

Choose a profile

ProfileSpanVolumeBest for
Smoke~3 monthsa couple dozen documentsA quick look; fast to load.
Standard~2 years~200 documentsThe default — exercises every workflow, including credits, voids, depreciation, approvals, and period close.
Large~5 years~900 documentsStress-testing list views, filtering, and reports at volume.

Load it from the app

In a development build, open the Developer item in the sidebar (it appears only in development mode).

  1. Under Load demo data, pick a profile and, optionally, a company name.
  2. Click Load demo data. Caydem creates the company and posts the activity, then shows a summary of what it produced.
  3. Open the new company from the list below the form and explore its books.

The signed-in development user is granted Company Admin on the new company, so it opens immediately.

Load it from the command line

If you run Caydem’s server or work from the repository, the same generator is available as a command:

make seed-demo                            # smoke profile (~3 months)
make seed-demo ARGS="-profile standard"   # ~2 years
make seed-demo ARGS="-profile large"      # ~5 years

Each run prints the new company’s id and a summary of the documents it posted.

Start over

You will often want to reset a demo company and try something else. From the Developer screen, each company row offers:

  • Reseed — clears the company’s data and refills it in place (the company, its chart of accounts, and its parties are kept).
  • Wipe — clears the company’s transactional data but keeps the set-up company, ready to post into again.
  • Delete — removes the company entirely.

The same actions are available from the command line:

make seed-demo ARGS="-list"                 # list companies to find an id
make seed-demo ARGS="-reseed <company-id>"  # wipe and regenerate in place
make seed-demo ARGS="-wipe <company-id>"    # clear data, keep the company
make seed-demo ARGS="-delete <company-id>"  # remove the company entirely

Because sample data is posted into the immutable ledger like everything else, “starting over” deliberately bypasses the ledger’s append-only guarantee — it removes posted rows that the application itself has no way to change. That is why the reset actions are restricted to development and require an elevated database role. Your real companies are never affected.

Next steps

  • Company Setup — create your own company for real books.
  • Journals & Entries — how posting, undeposited funds, and voids work under the hood.
  • Period Close — the month-end workflow the sample data’s closed periods illustrate.