Workflow

Account & Language Setup

Follow the sequence below, then use API Reference for payload schema and response details.

Steps

  1. With the signed-in user's Supabase access token, resolve or create the default customer workspace:

    Operation IDs: accounts.claim

  2. With the same Supabase access token, list the user's active workspace memberships:

    Operation IDs: workspaces.list

  3. With the same Supabase access token, mint a dashboard token or bootstrap the dashboard for the

    Operation IDs: auth.token.mint, dashboard.bootstrap

  4. Fetch the selected account context, entitlements, and quotas with the dashboard token:

    Operation IDs: accounts.me

  5. Load supported locale options for onboarding forms:

    Operation IDs: meta.languages.list

  6. Read the current agency payout-onboarding state with `operationId`: `agency.payoutOnboarding.get`.

  7. For each requested tax, bank, or document item, POST the raw bounded PDF, PNG, or JPEG bytes

    Operation IDs: agency.payoutDocuments.create

  8. Refresh `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.

Related Docs