Hello, thanks at first for the great billing software. We were a long-time user of Hostact, and there is one feature that really makes sense for us. A lot of clients are resellers, with relatively low invoices but a lot of invoices. I would love to handle it this way:
All the products, domains, and services that needs to renewed in month X will be invoiced in month X-1 on the first day of the month with a payment term of 14 days.
So an invoice at 20 December will be issued at the first of December together with the services, products, and domains that need renewal at 12 or 15 December. One invoice per month.
Could we create a module for that?
Thanks, and welcome! This makes sense for shops with many small reseller invoices.
Today PNLCS already puts everything that falls due in the same run on one invoice per client, but items renewing on different days of the month still get separate invoices.
Invoice generation lives in the core, so rather than a module we’re preparing it as a core option: an opt-in “consolidated billing” setting. You pick a day of the month (for example the 1st), and everything renewing in the following month goes on one invoice per client, due after the number of days you set (for example 14). I’ll link the pull request here once it’s up.
The pull request is up: feat(billing): a consolidated billing day, one renewal invoice a month per customer by ertugrulkeyvan · Pull Request #285 · Panelica/pnlcs · GitHub
It adds a “Consolidated billing day” setting under Setup → General Settings → Invoices (off by default). Pick the 1st, and on that day each customer gets one invoice for everything renewing before the 1st of next month, due after your invoice due days (14 in your case). If you want to bill a month ahead, as in your example, set “Raise renewal invoices (days before due)” to 31 and the invoice on 1 December also takes in January’s renewals. It’s up to the PNLCS team whether and when it ships; feedback on the PR is welcome.
1 Like
This great, @keyvanertugrul may i send you a pm? Thanks for being so helpfull. i created a module for relatime register and enhance servers, maybe you could look at it.
Thank you.. Of course, you can send a pm.