Dev panel

The Dev panel is how you populate, evolve, and wipe the sandbox. Three buttons drive the entire workflow: Generate, Advance lifecycle, and Reset. Each is also a single HTTP endpoint, so agents drive the same actions from the API without opening the portal.

Generate

Creates a batch of synthetic transactions plus a configurable proportion of disputes, evidence-required records, and the matching payment-event timeline.

POST /v1/dev/generate

FieldTypeConstraint
countinteger1 – 5,000
disputeRatenumber0 – 1 (e.g. 0.15 = 15%)
currencystringUSD | EUR | GBP | CAD | AUD | JPY
rangeDaysinteger1 – 365 (spreads createdAt over the last N days)

Card-brand distribution: ~60% Visa, ~30% Mastercard, ~7% Amex, ~2% Discover, ~1% JCB. Cardholder names and merchants are drawn from fixed synthetic sets that pass format checks but are never real parties.

Advance lifecycle

Runs the hourly background job on demand. Useful when you don't want to wait for the cron tick. It does three things:

  • Expires rfi_open disputes past their RFI window → rfi_expired.
  • Expires evidence_required disputes past their respondByexpired.
  • Rules on under_review disputes whose 55-day issuer window has elapsed: ~60% → won, ~40% → lost.

POST /v1/dev/advance-lifecycle

Returns { rfiExpired, expired, ruled } — counts of rows in each transition so the UI can show what moved.

Reset

Wipes the synthetic data inside your tenant — transactions, disputes, evidence records, payment events, reports. Your account, your workspace, and any team members survive.

POST /v1/dev/reset

The reset is scoped to the calling tenant. Other tenants on the same instance are not affected.