You're absolutely right — documentation and examples around the Subscription Billing module in Business Central (especially post-Singhammer integration) are still limited and evolving.
For mid-cycle changes like license upgrades or additions (e.g., M365 upsell mid-month), here's the most realistic and recommended approach:
✔ Best Practice for Mid-Cycle Changes:
1. Use Amendments (Amend Subscription feature):
Instead of editing the existing line, create a new Subscription Line with a different start date (e.g., the date of change) and end the previous line at that same date. This maintains auditability and allows proration if needed.
2. Enable Proration Rules in Billing Templates:
Make sure your Billing Template is set up to Prorate based on calendar days or 30/360 convention — this allows the system to calculate the correct amount for partial periods.
3. Billing Proposal Picks Up Changes:
When you run Billing Proposal, the system will:
Bill the original line up to the change date.
Start billing the new line from that date forward, applying your pricing and proration logic.
4. Don’t delete original lines – always end-date them.
---
✅ Key Tips:
Use line status and effective dates smartly.
Avoid overlapping date ranges between lines for the same item — that causes issues in revenue recognition.
Keep detailed audit trail via new lines, instead of editing the current one.
Test with different scenarios — e.g., downgrades, upgrades, added quantity — to see how your proration settings behave.
If you're comfortable with AL, you can also automate this amendment logic via a simple codeunit or page action, but it’s doable through UI.
Let me know if you'd like a walk-through or sample template settings.
✅ Mark this answer as verified if it helps you.