ConverzaFlow installation
Illustrated install guide: requirements, folder layout, web installer screenshots, CLI option, cron, mail checks, and first login.
Requirements checklist
Confirm these with your host before you buy or deploy. The web installer also runs a preflight check.
- PHP 8.3 or later, Composer 2, Laravel-required extensions
- MySQL 8 (SQLite is for local tests only — not sold production)
- Document root pointed at public/ — never the repo root
- One-minute cron for php artisan schedule:run
- Queue: long-running worker OR shared-hosting database worker + cron
- HTTPS in production
- Node.js only if you rebuild frontend assets
Safer folder layout
Keep application code outside the public web root. Map the host document root (public_html or a subdomain root) to converzaflow/public.
Preferred layout
/home/account/converzaflow/ ← app, .env, vendor, storage
/home/account/public_html/ ← document root → symlink or map to converzaflow/public
/home/account/converzaflow/public/ ← only this tree is web-accessibleChoose how you install
Both options create the owner user and first workspace. Prefer the web installer unless your host blocks browser installs.
Option A — Web installer
RecommendedOpen /install in the browser. Best for most CodeCanyon buyers.
- Guided Environment → Database → License → Administrator
- Shows migration progress in the page
- Creates the first workspace automatically
Option B — CLI installer
Use when you prefer SSH / automation.
- php artisan converzaflow:install …
- Same end state as the web installer
- Pass --purchase-code for production
Step-by-step install
Follow these steps in order. Screenshots show the screens you should recognise after each major stage.
Verify and extract the archive
Check SHA256SUMS against the downloaded zip. Extract outside the public web root.
- Do not upload local .env, node_modules, or storage/logs from a development machine
- Point the site document root at <install>/public
Install PHP dependencies if needed
If vendor/autoload.php is already present, skip this step. Otherwise run Composer on PHP 8.3:
Composer
cd /home/account/converzaflow composer install --no-dev --classmap-authoritativeCreate .env and application key
Never copy credentials from another environment. Start from an example file.
- Production: APP_ENV=production, APP_DEBUG=false, APP_DEPLOYMENT=production, HTTPS APP_URL
- Demo showcase: APP_DEPLOYMENT=demo (disables live sends and secret changes)
Environment
cp .env.example .env # or: cp .env.production.example .env # or: cp .env.demo.example .env (public showcase only) php artisan key:generateCreate the database
Create an empty MySQL 8 database and a least-privilege user. On shared hosting the provider often prefixes names.
- Put DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD in .env
- PHP must write storage/ and bootstrap/cache/ — avoid chmod 777
Run the web installer (Option A)
Visit https://your-domain/install. Complete Environment, Database, License (production: paste your Envato purchase code), then Administrator.
Use Confirm password, wait for the migration banner, and do not close the tab. The installer creates the first workspace so you land on the dashboard.
Stay on this page until migrations finish. Closing early can leave a half-applied database. Or run the CLI installer (Option B)
From the application root, with .env already configured:
CLI install
php artisan converzaflow:install \ --name="Owner Name" \ --email="owner@example.com" \ --password="at-least-12-chars" \ --deployment=production \ --purchase-code="YOUR-ENVATO-CODE"Link storage and optimise
After install
php artisan storage:link php artisan optimizeAdd one-minute cron
Required on every host. Use absolute paths for PHP and artisan. On Hostinger the PHP binary is often under /opt/alt/php83/usr/bin/php.
Cron (every minute)
* * * * * /usr/bin/php /home/account/converzaflow/artisan schedule:runShared hosting queue (usually already set)
The installer writes QUEUE_CONNECTION=database and OPERATIONS_SCHEDULE_DATABASE_WORKER=true. Each cron tick also drains the queue for up to ~50 seconds — no Supervisor needed.
- If you later add Supervisor, set OPERATIONS_SCHEDULE_DATABASE_WORKER=false
- Expect up to one cron interval of automation latency on shared hosting
Validate mail
MAIL_MAILER=log never sends real mail and is rejected in production preflight. After SMTP is configured:
Mail checks
php artisan optimize:clear php artisan mail:check php artisan mail:test operator@example.com php artisan queue:restartFirst login
Sign in with the administrator you created. You should land on the dashboard with the first workspace ready.
Operator sign-in after a successful install. Confirm the dashboard
Check the setup checklist, then open Inbox before connecting live provider credentials.
Dashboard and setup checklist after the first workspace is created.
After install — smoke test
Do this in staging before connecting production Meta / Telegram credentials.
- Login, email verification, and password reset
- Workspace invitation (if you invite a second user)
- Upload a file in a conversation or settings
- Publish a simple workflow and confirm /automation/executions reaches succeeded (within ~1 minute on cron-only hosts)
- Only then connect official channel credentials
Web-server safety
Only public/ may be web-accessible. Deny .env, dotfiles, Composer metadata, storage internals, and backup archives. Disable directory listing. TLS and trusted proxies are yours to configure.
Optional — rebuild frontend assets
Shipped public/build is ready to serve. Only rebuild if you change frontend source.
Frontend rebuild
npm ci
npm run build
rm -rf node_modulesStill stuck?
Check the setup guide bundled with your download first — it is specific to the release you own. If that does not resolve it, open support and include your Envato purchase code so we can match the licence.
Go to support