Skip to content

Install ClientFence on your server

The web installer sets up your database and first admin account. Check the server requirements first.

In your hosting panel or database tool, create a MySQL or MariaDB database and a user with full rights on it. Keep the connection details for the installer.

Choose Hosting control panel (no SSH) or SSH / terminal to put the files on your server. Both paths use the same web installer.

  1. Open Download ClientFence and download the ZIP.

    https://clientfence.com/download/
  2. Open File Manager and go to the document root for your domain or subdomain.

  3. Upload and extract the ZIP there. Confirm index.php, install/ and .htaccess are directly in the document root. Enable Show hidden files if your file manager hides .htaccess.

  4. Remove the uploaded ZIP from the document root and continue to the web installer.

  1. Sign in as the website user. If you signed in as root on Enhance, switch to the website user first. Replace username with your website’s system username.

    Terminal window
    su - username
  2. Download the latest stable release to your home directory.

    Terminal window
    wget -O ~/clientfence.zip https://clientfence.com/download/latest.zip
  3. Once the download finishes, go to your domain or subdomain’s document root. Replace ~/public_html if your host uses a different path.

    Terminal window
    cd ~/public_html
  4. Once you’re in the document root, extract the ZIP.

    Terminal window
    unzip ~/clientfence.zip
  5. List the files, including hidden ones.

    Terminal window
    ls -la

    Confirm index.php, install/ and .htaccess are directly in the document root and continue to the web installer.

Open the installer in your browser. Replace billing.example.com with your domain or subdomain.

https://billing.example.com/install/
  1. License Agreement. Read and accept the licence, then select Next.

  2. System Requirements. Confirm the server meets the basic requirements and select Next. The screen flags optional extensions separately.

    The installer reports that the server meets the basic requirements and marks Imagick as optional.

    Check the results before continuing to Database Connection.
  3. Database Connection. Enter the hostname, port, database name, username, and password for the database you created. Use the connection details from your host, then select Next.

    Database Connection fields for the hostname, port, database name, username and password.

    Enter the details for your database. This example uses the hostname db.
  4. Admin Account. Enter your name, email address, and a strong password for the first admin account, then select Next.

    Admin Account fields with an example name and email and a blank password field.

    Use this account to sign in to the admin area after installation.
  5. Options. Confirm your default billing currency and the public ClientFence URL. Use your own domain or subdomain in this address. Select Install and wait for Installation Completed.

    https://billing.example.com/

    Options showing USD and an example HTTPS ClientFence URL.

    Use the address customers and staff will use to reach your installation.

Installation Completed screen with the final setup checklist and links to the customer and admin areas.

Installation Completed shows the final checks and the link to your admin dashboard.
  1. Use File Manager or your shell to remove the install folder if it is still there. Restrict write access to config.php and keep it readable by PHP.

  2. Select Admin Dashboard on the completion screen or open your site’s admin URL. Quick setup walks you through the basics.

    https://billing.example.com/admin
  3. Set up scheduled tasks using your hosting panel or SSH.

In ClientFence, open System → Settings → Scheduled Tasks and find Recommended Schedule. Use the cron.php path shown there and the same PHP version your website runs.

Set the job to run every five minutes (*/5 * * * *). If your panel has a separate command field, enter the PHP command with the path from Recommended Schedule.

Terminal window
php /path/to/clientfence/cron.php

If your host provides user crontabs, run crontab -e as the website user and add the full line from Recommended Schedule.

*/5 * * * * php /path/to/clientfence/cron.php

After five minutes, confirm Last Scheduled Execution shows a recent run. See Scheduled tasks for troubleshooting.

Before opening sales, confirm the client sign-in page loads and check System Health.