Sign in with your admin password
Fill the 4 required fields below. On submit we:
1. Log the request in the registry's Onboarding Requests tab
2. Email the dev team with all the customer details and a one-click provisioning snippet
3. Email the customer (if provided) confirming their store will be ready within 30 minutes
The store is not provisioned automatically — the dev team handles that to verify each shop manually. Configure the dev email via Script Property ONBOARDING_NOTIFICATION_EMAIL on the master registry.
SHA-256 hash of a dashboard PIN. Use this to manually reset a tenant's PIN:
1. Type or generate a PIN below → copy the hash
2. Open the tenant's Apps Script editor → ⚙ Project Settings → Script Properties
3. Set DASHBOARD_PIN_HASH = the hash
4. Optional: delete the DASHBOARD_TOKEN property to kick out logged-in dashboards
Reads a tenant's Telegram bot updates and lists every chat that has messaged the bot — so you can grab the shopkeeper's TELEGRAM_CHAT_IDS without opening JSON URLs.
1. Shopkeeper opens their bot in Telegram and presses Start (or sends any message)
2. Paste the bot token below → Fetch chats
3. Click any row to copy that chat ID
4. Save it: tenant Apps Script → ⚙ Project Settings → Script Properties → TELEGRAM_CHAT_IDS = the ID(s)
Empty result? Either the polling trigger already consumed all messages, or the shopkeeper hasn't messaged the bot yet. Have them send /start to the bot and re-fetch within a few seconds. If polling is running, temporarily run removeTelegramPollingTrigger in the tenant's Apps Script before fetching, then re-install after.
Migrate Schema adds missing columns to the Stores tab. Idempotent. Recalc Health reads each tenant's Orders tab and updates LastOrderAt, TotalOrders, etc.