Billing Date Alignment for WHMCS
Move each client's WHMCS services to one billing day, with prorated charges or credits worked out for you, so they get one invoice per cycle.
What will the billing date alignment module do?
Clients who add services over the months end up with renewals on many different days and an invoice for each one. This module moves a client's recurring services and product addons to one billing day you choose, from the 1st to the 28th. For each service it works out the change in days at that service's own recurring price: if the new date is later, the extra days are billed as a prorated charge; if it is earlier, the unused days go to the client's credit balance. Services on longer cycles move to the same day of their own renewal month. Once everything shares a date, WHMCS's own grouping puts it on one invoice per cycle.
This product is built to order: you get the license key at purchase and the download within 10 business days.
What does WHMCS already do, and what does this add?
WHMCS puts products, addons, domains and billable items that are due on the same date, with the same payment method, for the same client, on a single invoice. Its Prorata Billing setting bills a product on one day of the month, but changes to it apply to new orders only, and it sets the same day for every client who buys that product. Product addons follow the prorata date of their parent service. Changing a service's Next Due Date by hand moves the date but raises no prorated charge or credit. This module adds what is missing: moving existing services to a day chosen per client, with the money worked out and a preview first.
What is included?
| Part | What you get |
|---|---|
| Billing day | Chosen per client, or one day for a whole bulk run |
| Scope | Recurring services and product addons |
| Proration | Charge for extra days, credit for unused days, at each service's recurring price |
| Direction | Move to the next occurrence of the day only, or to the nearest one |
| Charges | Invoiced at once, or added to the client's next invoice |
| Preview | Every service with old date, new date, days moved and amount, before anything is saved |
| Bulk run | Existing clients aligned in batches, filtered by client group or product |
| New services | Optional: an aligned client's new services moved to their day after the first payment |
| Log | Each change recorded with old date, new date and amount |
Who is it for?
Hosts whose long-standing clients hold several services bought at different times, and business clients whose accounts teams ask for one invoice a month. Fewer invoices mean fewer payment transactions and gateway fees, fewer reminder emails, and fewer tickets asking what each invoice is for.
What do you need, and what are the limits?
Requirements: WHMCS 8.13 or 9.x (I confirm your exact version at purchase), PHP 8.1 or newer, and the standard WHMCS cron.
Limits: WHMCS only groups items that share a payment method, so a client who pays different services through different gateways still gets one invoice per method. The preview flags those clients, and clients set to Separate Invoices, so you can fix them first. Domains keep their own dates, because their renewal has to follow the expiry date at the registry. Services with an unpaid renewal invoice are skipped until it is paid, and free or one-time products are left alone. My Bulk Edit tool pushes due dates out by a fixed period; this module is for when the money has to follow the date.
It costs $39 once for a lifetime license with twelve months of updates and support, the license key at purchase and the download within 10 business days, and a seven-day refund window.
Key features
- One billing day per client, from the 1st to the 28th
- Prorated charge for extra days, credit for unused days
- Amounts worked out from each service's own recurring price
- Preview of every date and amount before anything changes
- Bulk run for existing clients, filtered by group or product
- Charges invoiced at once or added to the next invoice
- Flags for mixed payment methods and Separate Invoices clients
- Optional alignment of new services after their first payment
- Log of every change with old and new dates
Why customers buy this module
- →Clients get one invoice per cycle instead of many
- →Fewer payment transactions and gateway fees
- →No prorated amounts worked out by hand
- →Every change is visible before it is saved
Frequently asked questions
Isn't this what WHMCS prorata billing already does?
Only for new orders. Prorata Billing is a product setting that bills everyone who buys that product on one day, and changes to it apply to new orders only. It does not move services clients already have, and it cannot give each client their own day. This module moves existing services to a day you pick per client and charges or credits the difference.
How is the prorated amount worked out?
From the service's recurring amount and billing cycle: its price per day for that cycle, times the number of days the due date moves. Moving a $30 monthly service forward by 10 days in a 30-day month adds a $10 charge, and moving it back by 10 days gives the client $10 in credit. Tax follows the service's own tax setting, and the preview shows every figure before you apply it.
When will I get it, and what if you can't deliver?
It is built to order. You get the license key at purchase and the download within 10 business days of purchase. If I do not deliver it in that time, you get a full refund. Once it is delivered, the store's 7-day refund window applies.
Technical specifications
- WHMCS
- 8.13 and 9.x (confirmed at purchase)
- PHP
- 8.1+
- Billing day
- 1st to 28th of the month
- Scope
- Recurring services and product addons
- Availability
- Built to order, delivered in 10 business days
- License
- Lifetime, 1 year of updates and support included
- Delivery
- Instant download and license key
- Refund window
- 7 days
Related modules
SM Reseller Hub: White-Label Reseller Platform for WHMCS
SM Reseller Hub lets your WHMCS clients resell hosting, servers, licences, SSL and domains under their own brand. They get a white-label store and client area on their own domain, a REST API for their own website and a reseller dashboard, while you keep control of prices, margins, payments and every customer.
Abandoned Cart Recovery Emails for WHMCS
I built this module to win back WHMCS orders that stall at checkout. It detects abandoned carts, sends an email sequence you write, can add a discount code, and reports which emails bring buyers back.
Bulk Edit and Mass Update Tool for WHMCS
An admin-only WHMCS module I built for changes too large to click through and too risky for raw SQL. Filter the records, preview the result, apply it as a background job, and reverse it later if needed.
