Skip to main content

Installing Better Bulk Price

This guide walks through the first-time installation and activation of Better Bulk Price in a WHMCS environment.

Step 1: Upload the Module Files

Copy the betterbulkprice directory into your WHMCS installation at:

<whmcs-root>/modules/addons/betterbulkprice/

After upload, the directory should contain the main module file, language files, templates, hooks, and the internal module libraries.

Step 2: Activate the Addon Module

  1. Log in to the WHMCS admin area.
  2. Open Setup > Addon Modules in WHMCS 7/8 or System Settings > Addon Modules in newer WHMCS 8 layouts.
  3. Find Better Bulk Price in the addon list.
  4. Click Activate.

During activation, the module creates its own data tables for campaigns, target snapshots, execution history, notifications, acknowledgements, and audit records.

Step 3: Grant Admin Access

  1. Click Configure next to Better Bulk Price.
  2. Under access control, select the admin roles that should use the module.
  3. Save the configuration.

Step 4: Verify Cron Execution

Better Bulk Price depends on the WHMCS daily cron for scheduled work.

After activation:

  1. Confirm your WHMCS cron is already running normally.
  2. Open the WHMCS Activity Log after the next cron cycle.
  3. Check for any Better Bulk Price related errors.

If you manually trigger WHMCS cron jobs in your environment, you can also verify the module after a scheduled run.

Step 5: Open the Module

  1. In the WHMCS admin area, go to Addons > Better Bulk Price.
  2. You should see the campaign list.
  3. A new installation will start with no campaigns yet.

The next step is to create your first campaign in Managing Campaigns.

Upgrade Notes

When you replace the module with a newer version, WHMCS detects the version change and runs the module upgrade routine automatically. Better Bulk Price is designed to preserve existing campaign history and operational records across upgrades.

Deactivation Notes

Deactivating the addon removes access to the module in WHMCS, but operational history is preserved unless you explicitly perform a cleanup action later.