ATLAS · P4 · TENANT ONBOARDING · LIVE ON /admin · v3.1 STYLING
Tenant Onboarding
The path from nothing to a tenant that can trade. W0, W1, W3 and W4 are wired to the real employee API and write real rows — the checklist is read from GET /admin/partners/tenant/:id/onboarding, provisioning posts to POST /admin/partners/launch, grants post to POST /admin/partners/user/:id/scopes. W2 is still a drawing and is labelled as one. Every screen names the endpoint behind it.
W0 · Checklist Home
The launch checklist, as the platform measures it
Reading…
W1 · Provision
Provision a tenant, then its first venue
2–80 CHARS · BECOMES Tenant.name
THE FIRST SIGN-IN ACCOUNT · ONE TENANT PER EMAIL
BLANK = GENERATED & SHOWN ONCE · TYPED = NEVER ECHOED BACK
THE ONLY THREE THE PROVISIONER ACCEPTS
RECORDED ON THE PARTNER AUDIT TRAIL WITH YOUR EMPLOYEE NAME
⚑ Removed — ATLAS does not record these
Legal entity, tenant slug, currency and density profile have no column anywhere in the schema, so this form no longer collects them.
Default table minimum and deposit % are not tenant-level either —
Inventory.minSpend and Inventory.deposit are per-table, and deposit is absolute integer cents, never a percentage. They are set per table, after the venue exists.
⚑ TAKE-RATE NOT SET HERE · VENUE REPORTING ONLY, NEVER MARKETED
W1b · First venue · POST /admin/partners/tenant/:tenantId/venue
2–120 CHARS · IDEMPOTENT ON (TENANT, NAME) · A REPLAY RETURNS THE EXISTING VENUE UNCHANGED, IT DOES NOT RE-HOME IT
IANA ZONE IDS ONLY · AN OFFSET (+05:30) OR ABBREVIATION (EST) IS REFUSED WITH 400 · DRIVES THE NIGHT BOUNDARY
⚑ NO TENANT IN SCOPE — PROVISION ONE ABOVE, OR PICK ONE AT THE TOP
POST /admin/partners/launch · POST /admin/partners/tenant/:tenantId/venue · both behind AdminGuard
W2 · Connectors
Connector states — live · stub · expired
● LIVE · from the checklist read
PARTNER APP DOORS FOR THIS TENANT
No tenant selected.
BELOW: ILLUSTRATIVE ONLY · NOT WIRED TO ANY ENDPOINT
◇ DRAWING · every row below is design, not state — no button here calls anything
SQ
SYNCED 2m AGO142 events today
SP
SYNCED 1h AGOconsent on file
SC
AM
TM
VIA ATLAS GUEST FEEDra-cron · nightly
EB
IG
ST
SYNCED 5m AGOholds + refunds
KL
SYNCED 12m AGOflows active
LS
TO
SYNCED 3m AGO98 events today
7R
SYNCED 4m AGOreservations mapped
RS
TK
GC
W3 · Grants
Grant model — SEE is read, DO is write
ACCOUNT
Select a tenant, then an account.
0 scopes selected · no change
W3b · CONFIRM GRANT · WHAT CHANGES
GET /admin/partners/tenant/:tenantId (accounts + grantableScopes) · POST /admin/partners/user/:userId/scopes
W4 · Data Contract
The data contract — and the gate to go live
◇ WRITTEN CONTRACT · policy, not a live reading of the wire
↓ FLOWS IN
- ● square · payments
- ● square · tab events
- ● spotify · taste (consented)
- ● ticketmaster · demand feed
- ● door · check-in scans
▲ FLOWS OUT
- ● venue-link · booking
- ● wallet pass · updates
- ● closeout · reconciliation
- ● promoter · settled receipts
- ● outcomes · pillar scores
⊘ NEVER FLOWS
- ⊘ guest PII to promoters
- ⊘ raw card data (tokenized only)
- ⊘ taste data without consent
- ⊘ cross-tenant guest graph
- ⊘ take-rate to guest surfaces
PREREQUISITES FOR GO-LIVE · goLive.outstanding, computed by the API
No tenant selected.
⚑ GATED · NO CHECKLIST READ YET
GET /admin/partners/tenant/:tenantId/onboarding · the gate is
goLive.ready from that read, and nothing else on this page can open it
ATLAS TENANT ONBOARDING · P4 · W0 W1 W3 W4 LIVE ON /admin · W2 STILL A DRAWING · RED-FREE · DARK-ONLY · MONEY FROM INTEGER CENTS · ⚑ TAKE-RATE PLACEHOLDER