Requirements
Before installing BestPDF, make sure your environment meets the following requirements.
WHMCS
- WHMCS 8.11 or newer, including 9.x
BestPDF checks this on activation and refuses to activate on anything older, so there is no risk of a half-installed module on an out-of-date system.
PHP
- PHP 8.2 or newer
- ionCube Loader 13 or newer
memory_limitof at least 512M
PHP extensions
BestPDF requires the following PHP extensions:
intlfileinfombstringimagickcurldomjson
On most systems these are already active — json, dom and curl in particular are compiled in on nearly every build. BestPDF checks them before rendering and names any that are missing, both on the addon's page in the admin area and in the log. If any are, install them as shown below.
Installing missing extensions
- Debian / Ubuntu
- RHEL / Alma / Rocky
sudo apt install php-imagick php-intl php-fileinfo php-mbstring php-curl php-xml php-json
sudo yum install php-imagick php-intl php-fileinfo php-mbstring php-curl php-xml php-json
After installing, restart your web server (or PHP-FPM) for the changes to take effect.
Enabling extensions on a control panel
On a shared or panel-managed server the extensions are usually installed already and only need ticking.
- cPanel
- Plesk
- Log in as admin
- Under Software and Services, click Select PHP Version
- Make sure
intl,fileinfo,mbstring,imagickandcurlare checked, and save
- Log in as admin
- Under Tools & Settings, click PHP Settings
- Click the version you are using
- Make sure
intl,fileinfo,mbstring,imagickandcurlare checked, and save
System locales
If you set the date or currency format to Auto-format (Country/Language), the server needs the corresponding system locales installed — otherwise PHP silently falls back to US formatting. See Configuration → Installing missing locales for the commands.
Once your environment is ready, continue to Installation.