Verifying Your Reports
Every TaxTrace report comes with something a spreadsheet never can: a Merkle-anchored fingerprint on-chain that shows the report wasn't altered after it was finalized.
Why this matters
If you're ever asked to substantiate your filing — by an accountant, an auditor, or the IRS — you want to show that your report reflects exactly the records that were produced, unchanged. TaxTrace backs every finalized report with an immutable on-chain anchor.
How it works (in plain terms)
- TaxTrace builds your report deterministically from indexed lot-level data (wallet or venue activity, cost-basis method, wash-sale treatment).
- When a report is finalized, TaxTrace computes a Merkle root over the report contents and anchors that hash on-chain through the canonical Reporter contract.
- Anyone with your report can recompute the Merkle root and confirm it matches the on-chain anchor. A match proves the report is authentic and unaltered.
Because the anchor lives on-chain and can't be edited after the fact, your export and the chain will agree — there's no wiggle room.
What you can prove
- Integrity: the report you hold matches the Merkle hash that was anchored on-chain.
- Timing: the anchor carries the time it was recorded on-chain.
- Authenticity: the anchor was written by TaxTrace's Reporter contract.
- Provenance of cost basis: reports surface basis-confidence labels so a reviewer can see which figures were oracle-derived, inferred, user-declared, or unknown.
Where the proof lives
Your JSON export includes the report's Merkle verification data and on-chain identifiers. Those are the values that match the Reporter anchor. Keep the JSON export with your tax records.
Technical note for the curious: the Merkle leaf is computed from underlying integer amounts and real dates — never human-formatted text — so display formatting can never change what's provable.