Developed by InsightSphere Technologies

ChatCart Public Launch Checklist

This runbook is the final go-live checklist for ChatCart after PayFast integration. It is ordered for real deployment work, from environment setup through sandbox verification, live payment confirmation, and launch signoff.

Launch runbook Product: ChatCart Billing: PayFast Audience: Internal team

Contents

1. Hosting and production environment setup

  1. Set up the production host for the web app on Vercel.
  2. Set up the production PostgreSQL database on Railway.
  3. Point the real production domain to the Vercel deployment.
  4. Add all production environment variables before the first live deploy.
Required variablePurpose
DATABASE_URLProduction PostgreSQL connection
APP_URLLive app URL used by redirects, auth, and webhooks
APP_NAMEPublic app name, set to ChatCart
BILLING_PROVIDERMust be payfast for the production launch path
SESSION_SECRETProduction session signing secret
APP_ENCRYPTION_KEYPrimary encryption key for sensitive values
CRON_SECRETInternal cron route protection
META_APP_ID, NEXT_PUBLIC_META_APP_IDMeta/WhatsApp app connection
META_APP_SECRETMeta app secret
META_EMBEDDED_SIGNUP_CONFIG_ID, NEXT_PUBLIC_META_EMBEDDED_SIGNUP_CONFIG_IDEmbedded Signup configuration
META_BUSINESS_IDMeta business ID
META_SYSTEM_USER_ACCESS_TOKENSystem user token for WhatsApp operations
META_WEBHOOK_VERIFY_TOKENWhatsApp webhook verification
META_GRAPH_API_VERSIONMeta Graph version pin
PAYFAST_MERCHANT_IDPayFast merchant identifier
PAYFAST_MERCHANT_KEYPayFast merchant key
PAYFAST_PASSPHRASEPayFast signing passphrase
PAYFAST_RETURN_URLReturn URL after successful payment flow
PAYFAST_CANCEL_URLCancel URL when payment is abandoned
PAYFAST_NOTIFY_URLPayFast ITN notify endpoint
EMAIL_WEBHOOK_URLEmail delivery endpoint for reset and report emails

Recommended: PAYFAST_SANDBOX, EMAIL_WEBHOOK_SECRET, APP_ENCRYPTION_KEYS, PLATFORM_ADMIN_EMAILS, SECURITY_ALERT_EMAIL, and BACKUP_STORAGE_PATH.

2. Database and Prisma preparation

  1. Deploy production environment variables first.
  2. Run npm run prisma:push against the production database.
  3. Run npm run prisma:seed only if you intentionally need demo or bootstrap data.
  4. Confirm the PayFast-related schema defaults and billing tables are present before customer testing.
Important: Run schema updates before the first live payment test so subscription state transitions are stored correctly.

3. First deployment checks

Homepage loads
Login page loads
Signup page loads
Admin login loads
/manifest.json loads
/offline loads

Do this before webhook registration so you know the production deployment is healthy on its own.

4. Webhook and callback setup

Confirm all live URLs are public, reachable, and using the final production domain.

5. PayFast sandbox verification

Complete sandbox verification before switching to live merchant credentials.

Starter test

  • Create or log into a customer workspace
  • Select Starter
  • Start secure payment
  • Complete sandbox payment
  • Confirm ITN reaches ChatCart
  • Confirm the workspace becomes active

Growth test

  • Repeat the flow for Growth
  • Confirm the correct price
  • Confirm the correct plan mapping
  • Confirm full access is restored automatically
Cancel flow: customer sees a clear message and is not activated by mistake.
Failed payment: no full access is granted.
Pending payment: customer sees the waiting state clearly.
Duplicate ITN: no duplicate activation or double billing event is created.

6. Customer and operator flow checks

Customer flows

  • Signup
  • Login
  • Forgot password
  • Reset password
  • Workspace creation
  • Logout

Workspace flows

  • WhatsApp onboarding
  • Inbox and reply composer
  • Orders
  • Customers
  • Products/catalog
  • Reports and settings

Operator flows

  • Admin login
  • Tenant list
  • Trial and subscription visibility
  • Platform admin access
  • Deletion requests
  • Support views

7. Mobile and PWA checks

8. Live payment verification

After sandbox passes, switch PayFast to live mode and run one small controlled real transaction.

  1. Replace sandbox merchant values with live values.
  2. Confirm live return, cancel, and notify URLs.
  3. Run one real low-value payment on either Starter or Growth.
  4. Confirm payment capture, ITN receipt, subscription activation, and workspace unlock.

9. Final go-live signoff

Sandbox payment passed
Live payment passed
Webhooks passed
Billing lock and unlock passed
Password reset passed
Mobile and PWA checks passed
Admin oversight checks passed
Production env values reviewed and no test credentials remain

Decision rule: if sandbox passes but live payment has not been tested, ChatCart is ready only for private beta. If both sandbox and one live payment pass, ChatCart is ready for a controlled public launch.