Before installing XSender, make sure your server meets the following requirements.
The installer will automatically check most of these during setup.
PHP 8.2 or higher
If your PHP version is lower than 8.2, installation will fail.
The following extensions must be enabled:
bcmath
openssl
pdo_mysql
mbstring
tokenizer
json
curl
gd
zip
Most hosting providers enable these by default.
The installer will automatically verify all extensions.
If any extension is missing, it will show which one needs to be enabled.
πΈ Screenshot: Installer requirements verification page
You must have one of the following:
MySQL 5.7 or higher
MariaDB 10.3 or higher
Before starting installation:
Create an empty database
Create a database user
Assign full privileges to the user
The installer will automatically create all tables.
XSender supports:
Apache (recommended)
Nginx
URL rewriting must be enabled.
For Apache:
mod_rewrite must be enabled
For Nginx:
Proper rewrite rules must be configured
XSender uses clean URLs, so rewrite support is required.
Only required if you want to use the WhatsApp QR Scan feature.
If you only use:
WhatsApp Cloud API
SMS
Then Node.js is NOT required.
Node.js 18.x to 21.x
NPM 9.0 or higher
PM2 (installed globally)
Without Node.js, WhatsApp QR self-hosted feature will not work.
The following files and folders must be writable:
.env β Permission 644 or 666
storage/ β Permission 775
bootstrap/cache/ β Permission 775
On cPanel, these are usually set automatically.
If needed, you can change permissions via:
cPanel File Manager
SSH command line
Ubuntu 20.04+ or any Linux with PHP 8.2
Apache or Nginx
MySQL or MariaDB
PM2 for queue workers
SSL certificate (required for WhatsApp webhook)
At least 1 GB RAM
For high-volume sending:
2 GB RAM or higher recommended
PHP 8.2 selected
MySQL database created
Cron job access (1-minute interval recommended)
Minimum 256 MB PHP memory limit
File upload limit at least 50 MB (for updates)
πΈ Screenshot: cPanel PHP version selector
Shared hosting works, but performance will be slower than VPS.
XSender works on all modern browsers:
Google Chrome (Recommended)
Mozilla Firefox
Microsoft Edge
Safari
For best experience, use the latest version of Chrome.
If you want, I can now:
Merge Requirements + Installation into a clean structured GitBook flow
Create a short Pre-Installation Checklist page
Or make a visual system architecture section π
XSender is not a simple CMS or static website.
It is a real-time messaging system that continuously:
Sends WhatsApp messages
Processes email queues
Runs SMS campaigns
Executes automation workflows
Handles scheduled tasks
Your hosting environment is extremely important.
We strongly recommend using a VPS or dedicated server.
XSender runs multiple queue workers simultaneously for:
SMS
Campaigns
Automations
On a VPS, these workers run 24/7 using PM2, ensuring instant processing.
The WhatsApp QR scan feature requires:
Node.js running continuously
Terminal access
Long-lived background processes
This is fully supported only on VPS or dedicated servers.
On VPS:
Scheduler runs continuously
Campaigns execute exactly on time
No cron delays
Each channel has its own dedicated worker:
SMS queue
Email queue
WhatsApp queue
Automation queue
No slow channel blocks another.
VPS allows:
Custom PHP memory limits
Higher process counts
Full system optimization
For high-volume sending (thousands per day), VPS is essential.
DigitalOcean
Vultr
Hetzner
Linode
AWS Lightsail
1 CPU
1 GB RAM
25 GB Storage
Ubuntu 20.04+
Root access
2 CPU
2 GB RAM or higher
XSender works on shared hosting with limitations.
Without SSH access:
WhatsApp QR feature will not work
Cannot run artisan commands
Cannot manage Node.js
Many shared hosting providers block:
Node.js
Long-running processes
Confirm with your hosting provider before purchasing.
Your hosting must allow cron jobs every 1 minute.
If your host only allows:
Every 5 minutes
Every 15 minutes
It is NOT suitable.
Queue processing runs once per minute
Up to 60-second delay per message
Scheduled campaigns may start 1 minute late
WhatsApp feels slower
For best performance β Use VPS.
Before you start the installation, make sure you have:
- PHP 8.2 or higher with required extensions.
- An empty MySQL or MariaDB database.
- Database username and password with full privileges.
- Apache mod_rewrite enabled (or Nginx rewrite rules).
- File permissions set for .env, storage, and bootstrap/cache.
- Your Envato purchase code ready (from CodeCanyon).
- Your Envato username.