Skip to main content

Changelog

This page summarises what changed in each release of Better Bulk Price for WHMCS. For installation and upgrade instructions, see Installation.


Version 1.9

Released: March 19, 2026

Campaign Templates

Better Bulk Price now supports reusable campaign templates so teams can standardise recurring pricing workflows.

  • Campaign Templates section — create, edit, use, and delete reusable campaign blueprints from a dedicated admin area.
  • Template-based campaign creation — start a new draft from a saved template and pre-fill the campaign form with filters, pricing rules, email template selection, and batch settings.
  • Template lineage tracking — campaigns created from a template keep a reference to their source template for better operational traceability.

Campaign Cloning

You can now clone an existing campaign into a new draft.

  • Clone action — available from the campaign detail page.
  • Fresh timing review — cloned campaigns keep configuration but clear timing fields so teams can review schedule decisions separately.

Admin Experience Improvements

  • Expanded navigation — the admin header now includes a dedicated Campaign Templates section alongside Campaigns and Email Templates.
  • Guarded template deletion — templates cannot be deleted while campaigns created from them still exist, helping preserve traceability.

Version 1.8

Released: March 19, 2026

Phased Batch Execution

Large campaigns can now be rolled out in controlled execution slices instead of one all-at-once run.

  • Batch size — define how many frozen targets are processed in a single execution run.
  • Pause between batches — stop each batch in paused status so operations teams can review results before continuing.
  • Manual resume — resume the next batch directly from the campaign execution view.
  • Deterministic batch ordering — targets are processed in ascending service ID order for predictable phased rollouts.

Dry Run Mode

Approved campaigns can now be simulated before any service price is changed.

  • Dry Run action — launch a no-mutation execution from the campaign detail page.
  • Persistent run records — dry runs are stored in execution history so teams can review what would have happened.
  • Clear labelling — run history and run detail pages display a Dry Run badge.
  • Safe isolation — dry-run outcomes do not count as real execution success, so they never interfere with idempotency or campaign completion.

Operational Improvements

  • The scheduler now treats paused runs as in-progress so the daily cron does not auto-dispatch them again.
  • Campaign create and edit forms now include the Batch Size field and Pause Between Batches toggle.

Version 1.7

Released: March 2026

Financial Impact Simulator

Before approving a price campaign, you can now see a Financial Impact Summary directly on the preview page. This gives your team the key numbers needed to make an informed decision:

  • Estimated MRR change — how much monthly recurring revenue will increase or decrease across all matched services.
  • Estimated ARR change — the annualised equivalent of the MRR change.
  • Unique clients affected — the number of distinct clients with at least one matched service (a client with three affected services is counted once).
  • Immediate vs. deferred — how many services can be updated in the current billing window and how many will be deferred to a later cycle, including the revenue attributed to each group.
  • Risk level — a colour-coded Low, Medium, or High badge that reflects how broadly and how significantly the campaign affects your service base. A brief explanation of the rating is shown below the badge.
  • Per-currency breakdown — when a campaign spans more than one currency, a table shows the service count and estimated MRR change for each currency separately.

The same summary is stored when you approve a campaign. You can open any approved, active, or completed campaign at any time and see the original financial figures from when it was approved — even if service data has changed since.


Version 1.6

Released: March 2026

Advanced Campaign Filters

Campaigns can now use a broader set of targeting criteria, giving you much more control over which services are included:

  • Multi-product targeting — select multiple products in a single campaign instead of creating one campaign per product.
  • Multi-status targeting — include services in more than one status (for example, both Active and Suspended) in the same campaign.
  • Price range — limit the campaign to services whose current price falls between a minimum and maximum value.
  • Next due date window — restrict targets to services renewing within a specific date range.
  • Client group — scope a campaign to services belonging to clients in a particular client group.
  • Service exclusion list — explicitly remove specific services from the campaign even if they match all other criteria.

Version 1.5

Released: March 2026

Flexible Pricing Rules

Instead of always setting a fixed target price, you can now define how the new price is calculated:

  • Absolute — set the new price to a specific value (same behaviour as before).
  • Percentage — raise or lower the current price by a percentage (for example, +10%).
  • Delta — add or subtract a fixed amount from each service's current price (for example, +R$ 5.00).

You can also set floor and ceiling limits so no service ends up below a minimum or above a maximum price, and choose a rounding option to keep prices clean (for example, round to the nearest R$ 0.50).