Not a log
A log shows events. A Receipt interprets them — comparing the operation’s
expected flow against what was actually observed and stating a verdict.
Not a merchant receipt
A merchant issues its own receipt. A Trace Receipt is built from your
observations, so it holds up in a dispute with that merchant.
Not a dashboard
Not trends across many operations — the full, evidence-backed account of
one.
How it fits together
Events are the source of truth; a Receipt is derived and reproducible — the same NDJSON always assembles to the same Receipt.The packages
@usehaia/trace-cli
The
haia-trace command — assembles and renders receipts.@usehaia/trace-x402
Capture adapter for the x402 payment SDK.
@usehaia/trace-core
Contracts and the deterministic receipt assembler.
Haia Trace is pre-1.0. The
trace-core contracts and assembler and the
haia-trace CLI (sample, build, templates) are in place, and the
trace-x402 adapter records the x402 lifecycle hooks passively as normalized,
redacted events into .trace/events. Receipts assemble against the per-role
x402-buyer / x402-seller templates — a clean payment assembles as full.
See Connect x402.