Documentation Index
Fetch the complete documentation index at: https://swiftchats-documentation.axis96.com/llms.txt
Use this file to discover all available pages before exploring further.
Before beginning the installation, make sure your environment meets System requirements.
1. Obtain the package
After purchasing Swiftchats, you will get a zipped folder. After unzipping the folder, you will get three folders, the source code folder, update folder and the documentation folder.Documentation
Source-code
Update
2. Database setup (MySQL)
- Create a new MySQL database.
- Create a new MySQL username and password.
- Assign full privileges to your database username.
3. Uploading code
Before starting to upload the files, please make sure your file explorer has the option to view hidden files turned on. On some operating systems, the dotfiles are hidden by default.
- Git (recommended on Linux servers): Create a private repository, add the Swiftchats source code (including dotfiles your workflow requires), deploy keys or SSH access on the server, then
git cloneinto your web root or project directory (for example/var/www/your-site). - Manual upload (alternative): Copy the source-code folder to your project directory on the server (for example under
/var/www/) using SFTP or rsync. Ensure hidden files are included. - Ensure you have already created the MySQL database and DB user on the server and assigned that user to the database (see section 2).
4. Installer setup
Once you have configured the steps above, go to your domain or subdomain which should redirect you to the installation page. Go through each installation step and grant folder permissions where necessary.5. Evolution API on Ubuntu (Docker)
The WhatsApp QR connect add-on uses Evolution API as the WhatsApp Web gateway. On Ubuntu, the recommended approach is to run Evolution API with Docker and Docker Compose alongside your Swiftchats stack.Install Docker Engine and Compose
On Ubuntu 20.04 or 22.04 LTS:Log out and back in (or open a new SSH session) so the
docker group applies. Verify:Create the Evolution API project directory
Create the project under The next steps assume your shell is inside
/opt/evolution-api (default path used by Evolution API):/opt/evolution-api.Configure environment variables
Create or edit Paste these variables into your Replace
.env in /opt/evolution-api:.env file:your-authentication-api-key and your-whatsapp-business-token-webhook with real secrets (for example strong random values from generate-random.org API keys).Save
AUTHENTICATION_API_KEY somewhere secure after you set it. Later, set EVOLUTION_API_KEY in the Swiftchats .env to the same value (see Connect Swiftchats to the WhatsApp gateway at the end of this section).Create YAML file for Docker
In Paste this into the file:Save and exit the editor.
/opt/evolution-api (same directory as .env), create docker-compose.yaml:Start the services
From This starts:
/opt/evolution-api, launch Evolution API with Docker Compose:- Evolution API (port 8080)
- PostgreSQL (port 5432 on localhost)
- Redis (port 6379 on localhost)
Reverse proxy (Nginx)
Create a reverse proxy to expose the API safely.Paste this:Enable the site and reload Nginx:Replace
evolution.yourdomain.com with the same hostname you set in Nginx server_name. For more options or troubleshooting, see How to install in Nginx.Connect Swiftchats to the WhatsApp gateway
In the Swiftchats
.env file on the server, set:EVOLUTION_BASE_URL— Same base URL asSERVER_URLin the Evolution API gateway (for examplehttps://evolution.yourdomain.com).EVOLUTION_API_KEY— Must matchAUTHENTICATION_API_KEYfrom the gateway’s.env(use the value you saved when configuring Evolution API).
For the latest Evolution API options, environment variables, and troubleshooting, see the Evolution API installation documentation.
6. Laravel jobs and queues
To ensure successful delivery of WhatsApp campaigns, it’s essential to set up a queue system that runs at scheduled intervals to dispatch campaigns efficiently. On a VPS, use Supervisor to run Laravel queue workers and a cron entry for Laravel’s scheduler (see step 6 below). If you decide to use Laravel queues, go to your.env file and change the following:
Install Supervisor
On Ubuntu or Debian:After installation, start Supervisor and enable it to run on boot:
Create a Supervisor configuration file for Laravel queues
Create a new configuration file inside Add the following content:Replace
/etc/supervisor/conf.d/:/path-to-your-project/ with your actual Laravel project path.Apply Supervisor changes
After creating the configuration file, run the following commands to update and start Supervisor:To check if Supervisor is running correctly, use:
Monitoring and logs
You can check the logs if anything goes wrong:If the queue worker stops unexpectedly, restart Supervisor:
Ensure Supervisor starts on boot
To prevent queue workers from stopping after a reboot, enable Supervisor:
7. Trouble-shooting your installation
If you are facing issues with the installer, try the following: Grant access to your.env file — from your project directory, run:
storage folder and delete the installed file.
Retry the installation in your browser.