Requirements
Before installing the SaaS Module, you need to make sure your server and Perfex CRM installation meet the minimum requirements. Don't skip this step โ installing on an incompatible server will cause issues later.
Perfex CRM Requirementsโ
| Requirement | Details |
|---|---|
| Perfex CRM Version | Version 3.0.x or higher (latest recommended) |
| Valid License | Active Envato/CodeCanyon purchase code |
| Working Installation | Perfex CRM must be fully installed and working before adding this module |
Important: Do NOT install this module on a broken or partially installed Perfex CRM. Make sure Perfex CRM itself is working perfectly first. If you can log in to the admin panel and everything looks normal, you're good to go.
Server Requirementsโ
| Requirement | Minimum | Recommended |
|---|---|---|
| PHP Version | 7.4 | 8.1 or higher |
| MySQL Version | 5.7 | 8.0 or higher |
| Web Server | Apache 2.4 or Nginx | Apache 2.4+ with mod_rewrite |
| RAM | 1 GB | 2 GB or more (depends on number of tenants) |
| Disk Space | 500 MB | 5 GB+ (each tenant uses database space) |
Required PHP Extensionsโ
These PHP extensions must be enabled on your server. Most hosting providers have them enabled by default:
mysqliโ For MySQL database connectionscurlโ For external API callsjsonโ For data processingmbstringโ For multibyte string supportopensslโ For secure connectionszipโ For module installation
How to check your PHP extensions: Log in to your Perfex CRM admin panel and go to Setup โ System/Server Info. You'll see a list of all installed PHP extensions there.
MySQL Requirementsโ
This is very important โ the SaaS module creates a separate database for each tenant (optional but recommended). This means:
| Requirement | Why It's Needed |
|---|---|
| MySQL Root Access (or user with CREATE DATABASE privilege) | The module needs to create new databases automatically when tenants sign up |
| Sufficient database limit | Some shared hosting plans limit the number of databases. You need enough for all your tenants |
| Remote or local MySQL access | The module needs to connect to MySQL to create/manage tenant databases |
How to Check Your MySQL User Privilegesโ
If you're using cPanel:
- Log in to cPanel
- Go to MySQL Databases
- Look at your database user under Current Users
- Click Privileges โ make sure it has ALL PRIVILEGES or at least:
CREATE,DROP,ALTER,SELECT,INSERT,UPDATE,DELETE
If you're using a VPS/dedicated server:
-- Run this in MySQL to check privileges:
SHOW GRANTS FOR 'your_username'@'localhost';
Shared hosting limitation: Some shared hosting providers (like budget plans on GoDaddy, Bluehost, etc.) limit the number of MySQL databases you can create. Since each tenant gets their own database, you'll need a plan that allows enough databases for your expected number of tenants. We recommend a VPS or dedicated server for production SaaS platforms.
Hosting Type Comparisonโ
Not sure which hosting type to use? Here's our recommendation:
| Hosting Type | Suitable? | Notes |
|---|---|---|
| Shared Hosting | โ ๏ธ Limited | Works for testing/small deployments. Limited databases and resources. |
| VPS (Virtual Private Server) | โ Recommended | Full control, unlimited databases, affordable ($5-20/month) |
| Dedicated Server | โ Best | Maximum performance. Best for 100+ tenants. |
| Cloud (AWS, DigitalOcean, etc.) | โ Recommended | Scalable, reliable, affordable. Great starting option. |
| cPanel/WHM Hosting | โ Excellent | Easiest setup path โ our module integrates directly with cPanel |
Domain Requirementsโ
You'll need a domain pointed to your server. The module supports these URL structures:
| Structure | Example | How It Works |
|---|---|---|
| Subdirectory (default) | yoursite.com/ws/tenant-name | Easiest to set up. No DNS changes needed for tenants. |
| Subdomain | tenant-name.yoursite.com | Professional look. Requires wildcard DNS. |
| Custom Domain | tenant-own-domain.com | Tenants use their own domain. Requires DNS pointing. |
Pre-Installation Checklistโ
Before you proceed to the installation step, make sure you can check off all of these:
- Perfex CRM is installed and working (you can log in to admin panel)
- PHP version is 7.4 or higher
- MySQL version is 5.7 or higher
- Your MySQL user has CREATE DATABASE privileges
- You have FTP/SFTP access or file manager access to your server
- You have your SaaS Module purchase code from CodeCanyon
- You have at least 500 MB of free disk space
All checks passed? Great! Head over to the Installation guide to install the module.
Something doesn't meet the requirements? Contact your hosting provider and ask them to upgrade your PHP version, enable the required extensions, or increase your MySQL database limit. Most hosting providers do this for free upon request.