Skip to content

Invoicing and customs systems · Build

Invoices you can show years later exactly as issued

Each invoice is stored at the moment of issue, so later template edits can’t change it. On a customs system we checked 50,000 invoices, and none had changed.

EngagementHourly · remote
Hours9–18 CET · 4 h overlap
StackNode.js · PostgreSQL · immutable HTML snapshots
Proof3 case studies

The service in 4 parts

01 · Who it’s for

Any business or authority that may be asked, years from now, to show an invoice exactly as it was issued.

02 · What we’ve built

03 · How we work

01 · TEMPLATE AND INVOICE KEPT APARTThe template keeps changing while issued invoices stay as they were. Because each invoice is stored already rendered, a later bug in the rendering code can’t change it either.
02 · TEMPLATE VERSIONSOn a new system we would also record which template version produced each invoice, and who changed the template and when. The customs system froze invoices but never versioned its templates, and that is the gap we would close first.

04 · Stack

Node.jsPostgreSQLimmutable HTML snapshotsNestJSSAP

Proof

Where we’ve done this before

All 18 case studies
Case study 11 · Identity3 domainsCustoms invoicing that renders each invoice once, at the moment of issue, and stores it as immutable HTML. We validated it on 50,000 invoices, and none changed after issue.Read the case study →Case study 16 · Business systems150,000Invoicing, payments and a supplier ledger with accounting export, as part of a construction ERP that runs alongside SAP.Read the case study →Case study 07 · Marketplace6 jobsOn a US marketplace, the daily renewal job downgrades a listing more than seven days late, updates its invoice and re-indexes the record, by the same rule for every account.Read the case study →

FAQ

Questions about this service

Because then every change to the rendering code would also change every old invoice, and nothing would raise an error.
All services47 services, most of them backed by a case study.Back to services →How we decideEach option’s five-year cost and the point where the recommendation changes.See how we decide →

Next step

Describe the problem and we’ll come back with three options.

The first call takes 30 minutes, and you’re under no obligation.

Tell us about your projectcontact@microtech.consulting