Skip to main content
The Audit page (header: “Global audit trail”, description “A single event history layer for cases, imports, integrations, and admin actions.”) gives operators and compliance teams one searchable view of every AuditEvent recorded for the organization.
The audit trail is append-only and immutable. Every significant action — submitting an expectation, processing an import, linking evidence to a case, or changing a case’s status — is recorded as an AuditEvent and can never be edited or deleted after the fact.

Data source

The table is loaded from List audit events:
GET /v1/audit-events
Each ReconciliationAuditEvent returned includes:
FieldDescription
idUnique event ID
eventTypeThe type of action recorded (see below)
actorWho or what performed the action
messageA human-readable description, if available
occurredAtTimestamp
paymentIntentIdLinked PaymentIntent, if applicable
caseIdLinked ReconciliationCase, if applicable
rawRecordIdLinked RawRecord, if applicable
importBatchIdLinked ImportBatch, if applicable
payloadAdditional structured detail for the event
This endpoint requires the audit_view or logs_view permission and is signed-in-user only (it cannot be called with an API key).

Event types

Event types observed in the system include (non-exhaustive):
eventTypeRecorded when
payment_intent.createdA new PaymentIntent is created
payment_intent.replayedA PaymentIntent is recreated idempotently from a repeated request
payment_intent.import_createdA PaymentIntent is created from an import row
payment_intent.import_replayedAn import-sourced PaymentIntent is recreated idempotently
import.batch.createdAn ImportBatch is created
import.batch.completedAn ImportBatch finishes processing
import.batch.failedAn ImportBatch fails during processing
case.evaluatedThe matching engine evaluates a case against available evidence
The Event type filter dropdown is populated dynamically from the distinct eventType values present in the currently loaded events, so it will reflect whatever event types your organization has actually generated.

Table columns

ColumnSourceNotes
Event typeeventTypeShown as a badge, colored by source (case vs. import)
ActoractorThe user, API key, importer, or system process responsible
Related casecaseIdLinks to /dashboard/cases/{caseId} when present
Related payment intentpaymentIntentIdShown as-is when present
MessagemessageHuman-readable description
Occurred timeoccurredAtFormatted timestamp

Filters

The filter bar above the table supports:
  • Event type — dropdown populated from observed event types, or “All types”
  • Actor — free-text search (e.g. api, webhook, importer)
  • Case ID — search by caseId
  • Payment intent ID — search by paymentIntentId
  • Start date / End date — restrict to a date range
All filters are reflected in the page’s URL query parameters, so a filtered view can be bookmarked or shared. A Reset filters action clears all of them at once.

Investigating a case end-to-end

Because every audit event can reference a caseId and/or paymentIntentId, the Audit page lets you reconstruct the full lifecycle of a single transaction: when the expectation was created, when each piece of evidence arrived, when the matching engine evaluated it, and any subsequent status changes — all from one filtered view. The same caseId-scoped events also appear on the Audit Timeline tab of the case detail page.

From here

List audit events

Query the audit trail directly, including by importBatchId.

Cases

View a case’s audit timeline alongside its evidence and verdict.

Overview

See aggregate operational metrics derived from the same underlying activity.

Developers

See a condensed activity feed driven by the same audit events.