Download PDF
Download page Billing Evergreen Products.
Billing Evergreen Products
Evergreen subscriptions do not end automatically. Unlike normal order line items (OLI), subscriptions for evergreen OLI are persistent unless explicitly canceled.
To know how Billing works on the Conga Platform, it is recommended to familiarize yourself with its architecture mentioned in Understanding the Billing Architecture on Conga Platform.
Depending on the origin of the order creation either from CPQ or an external system, an evergreen product is defined as:
Using CPQ functionality, if a PriceListItem of a product has the following values | Orders created from external systems without referencing a product, and if the OLI has the following fields populated |
---|---|
|
|
Evergreen-Billed Order Lines
If an OLI has a set of fields populated with the following values:
- PriceType is
Recurring
- AutoRenewal Type setup is
Evergreen
- AutoRenewalTerm is either a user-entered value or a derived term but can not be null.
When billing is initiated by calling the Initiate Billing API, the Price Type field on the billing header (BH) for this product is updated to Evergreen. The billing header of an evergreen product is activated like normal products and it fetches the details like start date, end date, quantity, current unbilled amount, net unit price, etc. from the OLI.
If any of the fields AutoRenewal Type or AutoRenewalTerm does not have a valid value or the value is missing, then the Price Type field on the billing header is marked as "Recurring".
Suppose the order line item for a standalone product has the following details:
Order No. | Order Line No. | Product | Billing Frequency | Price Type | AutoRenewalType | AutoRenewalTerm | Start Date | End Date | Quantity | List price | Net Price |
---|---|---|---|---|---|---|---|---|---|---|---|
O-1 | OLI-1 | Service | Half-yearly | Recurring | Evergreen | 2 |
|
| 1 | USD 1,200.00 | USD 1,200.00 |
When Billing is initiated, the resulting Billing Header will contain the Price Type as Evergreen instead of Recurring. The billing header shows:
Billing header ID | Order No. | Current Order Line | Product | Status | Price Type | Billing Frequency | Billing Rule | Start Date | End Date | Quantity | Net Unit Price | Total Invoiced Amount | Pending Invoiced Amount |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
BH-1 | O-1 | OLI-1 | Service | Active | Evergreen | Half-yearly | Bill In Advance |
|
| 1 | USD 1,200.00 | USD 0.00 | USD 1,200.00 |
Auto-Renewal
As the BSRs are marked as Invoiced (using the API or using the other out-of-the-box methods), additional BSRs are auto-created based on the setting value defined in Billing Settings. The setting Evergreen Billing Schedule Records Creation Option cannot be kept null simultaneously at the Billing Settings and Billing Preference level. The following table captures the business purpose of each setting value.
If you have entered the value for Evergreen Billing Schedule Records Creation Option both at the Billing Settings and Billing Preference level, then precedence is given to the value provided at the Billing Settings level.
Value | Description |
---|---|
Ahead of Time | New billing schedule records are created when the number of BSRs in Pending Billing status is less than the Auto Renewal Term. |
Only When Needed | New billing schedule records are created only after all the existing records are Invoiced. |
Pick from Billing Preference | The value is picked from the Billing Preference associated with the Billing Header. |
From the above example, when billing is initiated, two BSRs are generated in pending billing status. (BSD is not shown here to keep the example simple. It is assumed that the BSD is approved and the fee amount is rolled up to the BSR.)
Billing Schedule Record No | Billing header ID | Period Start Date | Period End Date | Actual Fee Amount | Ready for Invoice Date | Status |
---|---|---|---|---|---|---|
BSR-1 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
BSR-2 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
You called the Update Invoice API to change the status of BSR-1. The status of BSR-1 is changed to "Invoiced".
Billing Schedule Record No | Billing header ID | Period Start Date | Period End Date | Actual Fee Amount | Ready for Invoice Date | Status |
---|---|---|---|---|---|---|
BSR-1 | BH-1 |
|
| USD 600.00 |
| Invoiced |
BSR-2 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
The setting is set to Ahead of Time: You want to generate renewed BSRs ahead of time, therefore at the Billing Settings or Billing Preference level, you have selected "Ahead of Time" for the setting Evergreen Billing Schedule Records Creation Option. When the Evergreen Billing API is invoked, it creates one more BSR. This happens because the setting value is Ahead of Time, so the API creates additional BSR(s) as soon as the existing BSR(s) are marked as Invoiced. The creation of the number of additional BSRs is determined based on the field Auto Renewal Term with respect to the number of existing BSRs that are in Pending status.
In this example, the Auto-Renewal Term is 02 (refer to the Billing Header) whereas the number of Pending BSRs dropped to 01 so the engine creates the additional BSR so that the count of the Pending BSRs matches with 02 (i.e., Auto-Renewal Term).
Billing Schedule Record No | Billing header ID | Period Start Date | Period End Date | Actual Fee Amount | Ready for Invoice Date | Status |
---|---|---|---|---|---|---|
BSR-1 | BH-1 |
|
| USD 600.00 |
| Invoiced |
BSR-2 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
BSR-3 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
The date and amount fields on the BH are updated as:
BH Start Date | BH End Date | BH Total Invoiced Amount | BH Pending Invoiced Amount |
---|---|---|---|
| USD 600.00 | USD 1,200.00 |
The setting is set to Only When Needed: If you want to create BSRs when you need them, you must select "Only When Needed" at the Billing Settings or Billing Preference level, for the setting Evergreen Billing Schedule Records Creation Option. When the Evergreen Billing API is invoked, it creates BSRs according to the Auto-Renewal Term populated on the OLI.
Considering the above example, say you have invoiced both the BSRs and then invoked the Evergreen API, it creates two more BSRs. This happens because the setting value is Only When Needed, so the API creates additional BSR(s) only when all the existing BSR(s) are marked as Invoiced. The creation of the number of additional BSRs is determined based on the field Auto Renewal Term.
In this example, the Auto-Renewal Term is 02 (refer to the Billing Header) so the engine creates two more BSRs when the evergreen API is invoked after all the BSRs are invoiced.
If you set the setting to Only When Needed at the Billing settings level and invoke the evergreen API when there are one or more BSRs in Pending Billing status, the API won't execute the request and throws an error message.
Billing Schedule Record No | Billing header ID | Period Start Date | Period End Date | Actual Fee Amount | Ready for Invoice Date | Status |
---|---|---|---|---|---|---|
BSR-1 | BH-1 |
|
| USD 600.00 |
| Invoiced |
BSR-2 | BH-1 |
|
| USD 600.00 |
| Invoiced |
BSR-3 | BH-1 |
|
| USD 600.00 |
| Pending Billing |
BSR-4 | BH-1 |
|
| USD 600.00 |
| Pending Billing |