Workflow
Account & Language Setup
Follow the sequence below, then use API Reference for payload schema and response details.
Steps
With the signed-in user's Supabase access token, resolve or create the default customer workspace:
Operation IDs:
accounts.claimWith the same Supabase access token, list the user's active workspace memberships:
Operation IDs:
workspaces.listWith the same Supabase access token, mint a dashboard token or bootstrap the dashboard for the
Operation IDs:
auth.token.mint,dashboard.bootstrapFetch the selected account context, entitlements, and quotas with the dashboard token:
Operation IDs:
accounts.meLoad supported locale options for onboarding forms:
Operation IDs:
meta.languages.listRead the current agency payout-onboarding state with `operationId`: `agency.payoutOnboarding.get`.
For each requested tax, bank, or document item, POST the raw bounded PDF, PNG, or JPEG bytes
Operation IDs:
agency.payoutDocuments.createRefresh `agency.payoutOnboarding.get` after each upload and preserve the returned evidence IDs.
Notes
and a stable `Idempotency-Key`. Retry the identical key after an uncertain result; registration
creates a separate free agency workspace and never converts an existing customer subscription.
the returned workspace. Before approval, use only the agency profile and verification surface.
one immutable DEC-AGENCY-008 evidence event and returns its `requestId`; it does not create a
reseller payer, quote, subscription, queue position, notification, or provider action. Retries
with the same key replay the same request ID.
the latest immutable submission, then uses `admin.agencies.verification.review` with evidence
and reason. Code issuance remains a separate audited action; payout approval is independent.
does not enable public entry, attribution, accrual, payout preparation, or money movement.
selected `actorAccountId`:
This workflow is available only to the current verified agency owner while the live payout
onboarding surface is enabled. It does not approve payouts or expose provider credentials.
Treat the response as uncached and use its request and evidence IDs when preparing the next
submission.
`evidenceKind` path values and a fresh `Idempotency-Key`; retries must reuse that key and the
identical bytes. A successful upload only records private evidence and does not approve payout
onboarding.
Operator review and payout execution remain separate, audited workflows.