Home Login Sign Up

Installation

Deploy WhatsApp SaaS on shared hosting (cPanel) or run it locally for development.

Server requirements

  • PHP 8.2 or higher
  • Extensions: BCMath, Ctype, cURL, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML
  • MySQL 5.7+ or MariaDB 10.3+
  • Writable directories: core/storage, core/bootstrap/cache
  • Composer dependencies bundled in core/vendor/
  • Pre-built frontend assets in core/public/build/ (or build locally with npm)

Folder structure

The app uses a shared-hosting layout:

public_html/          ← Web document root (upload this folder)
  index.php           ← Front controller
  setup.php           ← Pre-install diagnostics
  .htaccess           ← Rewrites & security rules
  core/               ← Laravel app (NOT web-accessible)
    app/
    config/
    database/
    public/build/     ← Compiled CSS/JS
    storage/
    vendor/
Security The core/ folder must never be directly accessible from the browser. The .htaccess file blocks /core/* requests with a 403 error.

Upload & pre-install check

  1. Upload files

    Upload the entire public_html folder to your hosting document root.

  2. Run diagnostics

    Visit https://yourdomain.com/setup.php. This page checks PHP version, extensions, folder permissions, vendor, and build assets. It can auto-fix common issues.

  3. Fix any red errors

    Ensure storage and bootstrap/cache are writable. Contact hosting support if PHP extensions are missing.

Web installer

  1. Open installer

    Visit https://yourdomain.com/install

  2. Test database

    Enter MySQL host, database name, username, and password. Click Test Connection.

  3. Run install

    The installer will migrate tables, seed default plans and settings, and create your super admin account.

  4. Complete

    After success, log in at /login. Super admin panel is at /admin.

Cron jobs (required for production)

Campaigns, subscription expiry, and queue processing rely on scheduled tasks.

  1. Log in as super admin → Admin → System Settings
  2. Copy the Cron Token
  3. Add a hosting cron job (every minute):
curl -s "https://yourdomain.com/cron/scheduler?token=YOUR_CRON_TOKEN"

Available cron endpoints:

URLPurpose
/cron/schedulerRuns all scheduled tasks (use this one)
/cron/queueProcess queued jobs
/cron/campaignsSend pending campaign messages
/cron/subscriptions/expireMark expired subscriptions
/cron/subscriptions/remindersSend expiry reminder emails

Local development

cd public_html/core
composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan serve --port=8000

For frontend hot reload: npm run dev. For production build: npm run build.

Next step After install, connect WhatsApp: WhatsApp Setup →