Here are some popular Bill Run and Subscription configurations used for generating invoices based on charges and usage.
Some additional configuration assumptions are required for all use cases, as these additional configurations can impact whether an invoice is generated or not, regardless of the Bill Run and Subscription parameters used:
- Account billing cycles in Account configuration are set up as required/desired. The defined billing cycle will determine if the charge tied to that account will be included in the bill run.
- All usage-related charges are marked as "Bill previous period" (Checked). This parameter is configured in the usage rate charge. If it is not checked, then usage related to that usage rate will not be included.
- The charges and usage will result in a non-zero dollar invoice greater than the minimum $ invoice amount. Note that if a zero-dollar invoice was calculated, the system will check the Administration > Billing "Minimum Amount" parameter. Depending on the value configured and the invoice $ amount, an invoice may or may not be generated.
- "Minimum account balance" parameter in Administration > Billing is either blank or threshold is low enough such that an invoice is generated.
In this case, the SB user wants the system to generate invoices where all customer accounts that have subscriptions or charges in the set will be billed with an invoice date of March 1. In the invoice, the user wishes that any usage rated by the system for the relevant subscription, up to 12 AM, Feb. 25 will be included in the invoice. Any service or product charges that were charged to the subscription with a transaction date between Mar. 1 and Mar. 31 (inclusive, in advance) will be added to the invoice.
Fields and values to check:
- Subscription.Charge.Recurring Billing Cycle: 1st of period
- Subscription.Charge.Billing Period Offset: 1 period in advance
====
- Subscription.Usage Rate.Usage Cut Off Date: 25th of period
- Subscription.Usage Rate.Billing Period Offset: 1 period in arrears
====
- Billing parameters.Billing cycle period: Mar-YYYY
- Billing parameters.Billing cycle: 1st of period
- Billing parameters.Invoice date: YYYY-03-01 (YYYY-MM-DD)
- Billing parameters.Charge Cut Off Date: YYYY-03-31
- Billing parameters.Usage Cut Off Date: YYYY-02-25
Similar to the previous use case, but taking all usage whose bill period date is up to 12 AM, Feb. 28 (the last day of the month).
Fields and values to check:
- Subscription.Charge.Recurring Billing Cycle: 1st of period
- Subscription.Charge.Billing Period Offset: 1 period in advance
====
- Subscription.Usage Rate.Usage Cut Off Date: last of period
- Subscription.Usage Rate.Billing Period Offset: 1 period in arrears
====
- Billing parameters.Billing cycle period: Mar-YYYY
- Billing parameters.Billing cycle: 1st of period
- Billing parameters.Invoice date: YYYY-03-01 (YYYY-MM-DD)
- Billing parameters.Charge Cut Off Date: YYYY-03-31
- Billing parameters.Usage Cut Off Date: YYYY-02-28 (29 for leap years)
In this use case, the SB user wants to bill recurring charges already incurred for month prior to the invoice date. They want to bill usage that was consumed the month prior to the invoice date, up to 12:00 AM of the last day of the month.
Fields and values to check:
- Subscription.Charge.Recurring Billing Cycle: 1st of period
- Subscription.Charge.Billing Period Offset: 1 period in arrears
====
- Subscription.Usage Rate.Usage Cut Off Date: last of period
- Subscription.Usage Rate.Billing Period Offset: 1 period in arrears
====
- Billing parameters.Billing cycle period: Mar-YYYY
- Billing parameters.Billing cycle: 1st of period
- Billing parameters.Invoice date: YYYY-03-01 (YYYY-MM-DD)
- Billing parameters.Charge Cut Off Date: YYYY-02-28 (29 for leap years)
- Billing parameters.Usage Cut Off Date: YYYY-02-28 (29 for leap years)
In this use case, the SB user wants to bill recurring charges for the month upcoming from the invoice date. However, they want to have different cut-off dates for data usage vs. voice usage. For the invoice dated March 1, they want to bill data that was consumed up to 12:00 AM, Feb. 28, the last day of the month. For voice usage, they want to bill voice minutes that were consumed up to 12:00 AM Feb. 25, three days earlier.
In this example, there are two different usage rates in the subscription, and the user wants to have different cut-off dates for them.
- Subscription.Charge.Recurring Billing Cycle: 1st of period
- Subscription.Charge.Billing Period Offset: 1 period in advance
====
- Subscription.Usage Rate.Usage Cut Off Date.DATA: last of period
- Subscription.Usage Rate.Billing Period Offset.DATA: 1 period in arrears
- Subscription.Usage Rate.Usage Cut Off Date.VOICE: 25th of period
- Subscription.Usage Rate.Billing Period Offset.VOICE: 1 period in arrears
====
- Billing parameters.Billing cycle period: Mar-YYYY
- Billing parameters.Billing cycle: 1st of period
- Billing parameters.Invoice date: YYYY-03-01 (YYYY-MM-DD)
- Billing parameters.Charge Cut Off Date: YYYY-02-28 (29 for leap years)
- Billing parameters.Usage Cut Off Date: YYYY-02-28 (29 for leap years)
¶ Case: It is Mar. 15. Customer XYZ started Feb. 21 but SB user agreed customer would not get billed for any charges (voice, data, and monthly recurring) until starting Mar. 1st. SB user wants create an invoice dated Mar. 15. Monthly billing, starting the first of each month hereafter.
In this example, additional assumptions need to be made:
- We assume we will bill all usage 1 period in arrears, using the same billing cycle period, which will start on March 1 and end the last day of March. Since this is the first invoice to bill, effectively this means the usage up 12 AM of the Mar 15 invoice date.
- Monthly recurring charges (MRC): It needs to be defined or assumed when the recurring charges (if any) are to be billed -- whether starting Feb. 21, and if so, whether it will be pro-rated, or if expected to be for the full month of February. Or, if the MRC is expected to be billed for the month of March, and again if it will be pro-rated or charged for the whole month. Secondly, we need to know if moving forward, whether the SB user wants to bill MRCs in advance or arrears
- Given the original use case, we see that the MRC is not to be billed for February. Which leads us to decide whether the MRC will be pro-rated up to the invoice date (Mar 1 - Mar 15); or if the SB user requires that the entire MRC fee for March is to be charged on the Mar 15 invoice.
- For this use case, assume customer is to be billed for the full amount of the MRC charges for March.
- If the assumption would be that the customer is to be billed a pro-rated amount for March 1 - March 15, then the Billing.Parameters.Charge Cut Off Date would be set to YYYY-03-15.
- Subscription.Service Start Date: YYYY-02-21
- Subscription.Billing Start Date: YYYY-03-01
====
- Subscription.Charge.Effective From: YYYY-03-01
- Subscription.Charge.Recurring Billing Cycle: 1st of period
- Subscription.Charge.Recurring Billing Period Offset: 1 period in advance
====
- Subscription.Usage Rate.Usage Cut Off Date: last of period
- Subscription.Usage Rate.Billing Period Offset.DATA: 1 period in arrears
====
- Billing parameters.Account:XYZ
- Billing parameters.Billing cycle period: Mar-YYYY
- Billing parameters.Billing cycle: 1st of period
- Billing parameters.Invoice date: YYYY-03-15 (YYYY-MM-DD)
- Billing parameters.Charge Cut Off Date: YYYY-03-31
- Billing parameters.Usage Cut Off Date: YYYY-03-31
Check all use cases for correctness.
In general, it is recommended that the subscription billing parameters are aligned with the plan's policy. However, there is some flexibility in the system to set up different billing schemes for the same plan or subscription type.