Wire designated viewers into your integration so auditors and counterparties get scoped, verifiable access to user transactions.
Designated viewers are the simplest way to satisfy compliance requirements without making user data public. They are set per intent at submission time and grant scoped read access, viewers can see the intent details, but cannot move funds, modify the transaction, or grant onward access.For step-by-step API usage, see the viewing-permissions guide. This page focuses on the operational and compliance angle.
If your product serves an organization that needs every intent audited, configure default viewers at the workspace level so every signed intent inherits them automatically:
setDefaultViewers is a planned SDK convenience that appends default viewers to every intent.build call. Until the SDK ships, set the viewers array on each intent you construct.
If you need to provide visibility after an intent settles, for example, to a tax authority for the prior year, the user (or you on their behalf) can export verifiable records using their viewing key:
const records = await tachyon.user.exportRecords({ from: "2026-01-01", to: "2026-12-31",});
Hand the resulting object to the counterparty through whatever channel you prefer. They can verify it without it being on-chain.
Viewers added at submission time cannot be removed. If your compliance requirement might evolve, prefer post-hoc records, they are revocable in the sense that the user controls re-sharing.
The viewer must hold a Tachyon viewing key to read inbound disclosures (the SDK handles generation).
Default viewer lists apply only to intents signed after the configuration change, they do not apply retroactively.