Skip to main content
Every calculation carries a record object describing what produced it. It is present both on creation and on retrieval, so the two bodies are the same document.

Why a fingerprint and not a version label

A version label is written by one person and forgotten by the next. Under the single label version: "2026.1", four different contents of rules/MX/2026/ordinario.yml have shipped — and five for Colombia, seven for Chile, five for Argentina. At least two of those changes moved amounts. A label that four different rule sets have shared is not an identity. The fingerprint is the SHA-256 of the rule file itself, so two calculations carrying the same fingerprint ran against byte-identical rules. That is a claim you can check.

Verifying a calculation later

Keep the content_digest you received. Fetch the calculation any time afterwards and compare: if the digests match, what you are being handed now is what you were handed then.

Labelling calculations with metadata

options.metadata accepts up to 20 keys, values up to 500 characters. Use it for a payroll run id, a cost centre, a "test" marker — anything you will want to filter or recognise later. It is echoed back in record.metadata.
Never put personal data in metadata. It is stored verbatim.

What provenance does not give you

Provenance lets you prove which rules ran. It does not let you re-run them.