Trace the original ledger posting.
Owner, Finance, Operations and Security can inspect posted journals and their complete debit/credit entries. Use a separate admin session with current passkey verification; merchant API keys and app sessions cannot access these routes.
01Find matching journals
GET /v1/admin/ledger/journals accepts assetId, workspaceId, walletId, accountId, accountKind, reference, from, until, before and limit. Account filters must match the same posting entry. References are exact. Dates are UTC ISO8601 with milliseconds; the default window is seven days and the maximum is 90 days. Pages default to 50 journals, with at most 100 per request.
02Continue the original filter boundary
Use nextCursor as before with the same account/reference filters. The cursor retains the original time window; changing filters requires a new first page. Journal sequences and money remain exact strings. The live history uses descending posting sequence. A newly committed journal may require refreshing the view; pagination is not a frozen statement export.
03Inspect every counterentry
GET /v1/admin/ledger/journals/{id} returns the complete journal even when only one entry matched the list filters. Entries include original atomic amount and recorded balance after posting, plus explicitly current workspace/wallet names. Totals are separate per asset. Do not add different asset totals together or interpret a recorded balance as a live blockchain balance.
04Review posting checks
The service checks the original posting rules, entry/account asset consistency and retained journal fingerprint. Balanced means those posting checks passed. Review-required findings preserve the original data. Detail is bounded to 500 entries; larger journals are marked incomplete with partial displayed totals and no complete fingerprint claim. Descriptions are limited to 2,000 characters and identify truncation.
05Preserve original records
Reversal links open separately retained journals. These routes provide inspection only: they cannot post, change balances, delete journals, approve a payment or resume execution. The verified current credential is checked under SQL locks. Responses use Cache-Control: private, no-store. Recovery quarantine also applies to these routes.
// Separate current operator admin session and passkey verification.
GET /v1/admin/ledger/journals?assetId=ethereum%3Asepolia%3Ausdc&limit=25
GET /v1/admin/ledger/journals?workspaceId={workspaceId}&accountKind=available
// Keep the original filters and returned cursor; its window is retained.
GET /v1/admin/ledger/journals?assetId=ethereum%3Asepolia%3Ausdc&before={nextCursor}
// Always includes all journal entries, including platform counterentries.
GET /v1/admin/ledger/journals/{journalId}
// Money and journal sequences are strings. No posting or balance-edit endpoint.Open your workspace