WhatsMine Documentation
Home
  • What is WhatsMine?
  • Feature Tour
  • Requirements
  • Installation
  • Configuration (.env reference)
  • Going Live Checklist
Admin Guide
User Guide
Integrations
  • Architecture
  • REST API v1
  • Production Deployment
  • Frequently Asked Questions
  • Troubleshooting
  • Changelog
Home
  • What is WhatsMine?
  • Feature Tour
  • Requirements
  • Installation
  • Configuration (.env reference)
  • Going Live Checklist
Admin Guide
User Guide
Integrations
  • Architecture
  • REST API v1
  • Production Deployment
  • Frequently Asked Questions
  • Troubleshooting
  • Changelog
  • Getting Started

    • Requirements
    • Installation
    • Configuration (.env reference)
    • Going Live Checklist
    • Production Deployment
    • Demo Mode
    • Updating

Going Live Checklist

Work through this before you open WhatsMine to real customers. It covers the operational pieces that code alone can't guarantee — queue workers, cron, webhooks and email.

1. Environment

  • [ ] APP_ENV=production
  • [ ] APP_DEBUG=false
  • [ ] APP_KEY is set (the installer does this)
  • [ ] APP_URL is your real HTTPS domain
  • [ ] Database credentials are correct
  • [ ] QUEUE_CONNECTION is database or redis (not sync)
  • [ ] CACHE_STORE and SESSION_DRIVER set appropriately

2. Background processing (critical)

These two pieces power campaigns, inbound messages, AI runs and emails. If they aren't running, those features silently stop.

  • [ ] Queue worker running under a supervisor (Supervisor/systemd):
    php artisan queue:work --queue=whatsapp,broadcast,ai,social,leads,automation,default --tries=3 --max-time=3600
    
  • [ ] Scheduler cron entry added:
    * * * * * cd /path/to/app && php artisan schedule:run >> /dev/null 2>&1
    
  • [ ] Confirm the scheduler heartbeat is green in Admin → Cron Setup.

See Deployment for full Supervisor/Nginx examples.

3. Email

  • [ ] A working mail transport is configured (MAIL_MAILER ≠ log, or an active SMTP config in Admin → Email System).
  • [ ] MAIL_FROM_ADDRESS / MAIL_FROM_NAME set.
  • [ ] Sent a test email from Admin → Email System and received it.
  • [ ] Email templates are enabled (welcome, invoice, subscription lifecycle, password reset).

4. Payments (if you're charging)

  • [ ] At least one gateway enabled and configured in Admin → Payment Gateways.
  • [ ] Webhook endpoint registered in each gateway dashboard:
    • Stripe → https://your-domain.com/webhooks/stripe
    • PayPal → https://your-domain.com/webhooks/paypal
    • Paddle → https://your-domain.com/webhooks/paddle
  • [ ] Webhook signing secret stored (a missing secret rejects all webhooks in production).
  • [ ] Each plan has the correct price IDs (Stripe/Paddle) — see Plans & Billing.
  • [ ] Ran a full test-mode subscription through checkout → renewal → invoice download.

See the Payments Integration page for the exact events to subscribe to.

5. Channels (Meta / WhatsApp)

  • [ ] Meta App configured in Admin → Integrations (App ID, App Secret, verify token, config IDs).
  • [ ] App is Live in the Meta dashboard with the required permissions approved.
  • [ ] Webhook URLs reachable over HTTPS (auto-registered for embedded signup; manual for Instagram/Messenger).
  • [ ] Queue worker is consuming the whatsapp queue.

See Meta / WhatsApp and Messenger & Instagram.

6. Branding & content

  • [ ] App name, logo, favicon and primary colour set in Admin → Settings.
  • [ ] Landing page content reviewed/edited in Admin → Site Content.
  • [ ] Legal pages (Privacy, Terms, Cookies) reviewed in Admin → CMS Pages.
  • [ ] Support email set.

7. Security

  • [ ] APP_DEBUG=false (never expose stack traces).
  • [ ] HTTPS enforced (valid SSL certificate).
  • [ ] Strong Super-Admin password; consider enabling 2FA.
  • [ ] File permissions: storage/ and bootstrap/cache/ are writable by the web user.
  • [ ] Database backups scheduled (php artisan db:backup).

8. Production optimisation

Run these after each deploy:

php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan event:cache
php artisan queue:restart

9. Smoke test

  • [ ] Visit the marketing site, sign up a test customer, complete onboarding.
  • [ ] Connect a channel and send/receive a test message.
  • [ ] Create and launch a small test campaign.
  • [ ] Subscribe the test customer to a paid plan (test mode) and confirm the invoice.
  • [ ] Check Admin → Audit Log and Admin → Queue for errors.

✅ All green? You're ready to launch.

Last Updated: 6/19/26, 4:34 PM
Prev
Configuration (.env reference)
Next
Production Deployment