InvoiceGen

Backup and restore

Keep invoice backups boring, explicit, and local.

InvoiceGen is designed so invoice records can be exported, restored, and moved deliberately. The backup workflow is important for freelancers because invoice PDFs, client records, payment notes, and store files are business records.

Export before changes

Create a backup before machine moves, bulk edits, CLI experiments, or app upgrades.

Restore deliberately

Restores replace local data and should be done only when the backup file is trusted.

Use normal Mac backups

Time Machine or encrypted external backups can capture local store files and exported PDFs.

What invoice data should be backed up?

Back up both generated invoice PDFs and the InvoiceGen local store. PDF exports are useful for sending and archiving client-facing documents. The local store is useful when you want to continue editing records, inspect invoice history, regenerate output, or move the workflow to another Mac.

Backup from the macOS app

The macOS app exposes local backup and restore workflows in Settings. This is the safest path for most users because it keeps the operation visible and deliberate. Before restoring, confirm that the backup file is the one you expect and that any newer invoices have either been exported or are intentionally being replaced.

Backup from the Rust CLI

The Rust CLI can export and restore the same local store format. Use an explicit --store path for experiments so test data does not mutate your real app data. Restore operations require --force because replacing invoice records is destructive.

invoicegen --store ~/invoices/store.json store export ~/invoices/invoicegen-backup.json
invoicegen --store ~/invoices/store.json store restore ~/invoices/invoicegen-backup.json --force

Backup checklist for freelancers

Best backlink anchors for this page: back up invoice data on Mac, restore invoice store, and InvoiceGen backup workflow.