If you want to bill a recurring order line item on a one-time basis, Billing makes it possible with the help of the following configuration:

ConfigurationResult
Billing FrequencyPrice TypeProration allowed in one-time billing
One-TimeRecurringFalseSame behavior as a one-time order line item and there is no split of the billing schedule record. Only a single billing schedule record is generated.
One-TimeRecurringTrueThe billing schedule record is split and prorated based on the Billing Cycle Start, and Calendar Cycle Start (Calendar cut-off) dates in the Billing Preference. 

For more on how Billing works on the Conga Platform, see  Understanding the Billing Architecture on Conga Platform.

One-Time Billing Without Proration 

In this method, the behavior remains the same as billing a one-time order line item. When you initiate the order line item for billing, only one billing header, one billing schedule record, and one billing schedule detail is generated. For more details, see Billing One-Time Products.

One-Time Billing With Proration 

In this method, the billing schedule record is split and prorated. Two billing schedule records are created - one for the proration period with the prorated amount and the other for the remaining unbilled amount.

Prerequisites

  • Configure an order line item for a one-time product with the following details:
    • Billing Frequency is One Time.
    • Price Type is Recurring.
    • Proration Allowed In One-Time Billing is set to True.
  • Billing Preference settings:
    • Billing Cycle Start is set to Billing Day of Month
    • The Billing Day of Month is set to 02/05/2024 (5th February)
    • Calendar Cycle Start is set to February
    • Proration is set to True.
  • The order line item is active.

    If the OLI is active, the API will execute the logic, otherwise, it throws an error.

Based on the pricing source chosen in the Billing Settings, the pricing information is fetched from the Order Line Item (OLI) or Asset Line Item (ALI). When the pricing source is set to OLI, Billing fetches all the information, including the pricing information from the OLI. If the pricing source is set to ALI, Billing fetches the pricing information from the ALI. For more details on pricing sources, see Managing Pricing Source.

When the Pricing Source is Order Line Items

When the pricing source is set to Order Line Item in the Billing Settings, the pricing fields on the Billing Header are fetched directly from the OLI.

Initiating the Billing

When you call the Initiate Billing API for a one-time order line item with OrderLineItemIds and ReadyForBillingDate as the payload, it starts processing the OLI. It creates one billing header, two billing schedule records, and two billing schedule details. The billing schedule records are created with "Pending Billing" status.

Let's process a one-time product with the help of the following example.

Example

Suppose you have configured a one-time order line item with the following details:

Order No

Order Line No

Product

Price Type

Billing Frequency

Billing Preference

Start Date

End Date

Quantity

Per Unit price

Net Price 

Selling Term

O-0011ServiceRecurringOne TimeBilling preference ID

 

1USD 1200.00USD 1200.001.0000000000


Contact your admin will make this functionality available in your application so that upon clicking a button you should be able to call the billing service API and get the result as shown. The API creates a Billing Header, two Billing Schedule Records, and two Billing Schedule Details.

The billing header uses the information from the order line item and contains the following data. Depending upon the information given for the pricing source, It will pick up the pricing information from the order line item or the asset line item. The Billing Header shows:

Billing Header ID

Order No

Order Line Item

Product

Pricing Source

Price Type

Billing Frequency

Billing Rule

Start Date

End Date

Quantity

Currency

Net Unit Price 

Selling Term

Bill To

Billing Preference

BH-001O-001OLI-1ServiceOrder Line ItemRecurringOne TimeBill In Advance

01-January-2024 

31-December-2024

1USDUSD 1200.001.0000000000ABC CorporationBilling Preference

Since the billing preference settings for the calendar cut-off date is the 5th of February and the calendar cycle start is set to February month, the first billing schedule record is generated for the period 1st Jan 2024 to 4th February 2024 and the second record is for the period 5th of February to 31st of December. The billing schedule records show the following output:

Billing Schedule Record No

Billing Header ID

Period Start Date

Period End Date

Actual Fee Amount

Ready for Invoice Date

Status

BSR-001BH-001

01-January-2024  

04-February-2024

USD 114.2901-January-2024Pending Billing
BSR-002BH-001

05-February-2024

31-December-2024

USD 1085.7131-December-2024Pending Billing

The Actual Fee Amount shown in the billing schedule record is the amount that is billed to the customer. 

Billing Schedule Details shows the following information:

Billing Schedule Detail No

Billing Schedule Record No

Record Type

Period Start Date

Period End Date

Category 

Actual Fee Amount

BSD-001BSR-001Regular

01-January-2024  

04-February-2024

FeeUSD 114.29
BSD-002BSR-002Regular

05-February-2024

31-December-2024

FeeUSD 1085.71

When the Pricing Source is Asset Line Items

Recurring ALIs are billed in the same way as recurring OLIs. You must create an ALI that has sufficient data to populate the fields on the Billing Header (BH). During the creation of the BH, Billing fetches the pricing information from the ALI and the remaining data from the OLI.

Initiating the Billing

When you call the Initiate Billing API for this recurring OLI with AssetLineItemIds and ReadyForBillingDate as parameters, in the payload information, the system creates BH, BSRs, and BSDs. Although the BH looks similar to what is created for a regular OLI, some of the field values are fetched from the ALI. The following fields are sourced from the ALI:

BH Data

Fetched from ALI Field

BH Data

Fetched from ALI Field

Pricing SourceUpdated to Asset Line ItemBilling FrequencyFetched from the Billing Frequency field of the ALI
Price TypeFetched from the Price Type field of the ALITCV (Sales)Fetched from the Asset TCV field of ALI
Asset Line ItemThe ID of the Active ALI associated with the OLIBillable Amount from Current Order LineFetched from the Net Price field of the ALI
Billing Start DateFetched from the Original Start Date field of the ALINet Unit PriceFetched from the Net Unit Price field of the ALI
Billing End DateFetched from the End Date field of the ALI Selling TermFetched from the Selling Term field of the ALI

Consider the example:

A CPQ service has an asset TCV of USD 1,200.00.  The contract start date and end dates are 01-January-2024 and 31-December-2024. Other details of the CPQ ALI are as follows:

ALI ID

Billing Frequency

Price Type

Original Start Date

End Date

Asset TCV

Net Price

Net Unit Price

Selling Term

ALI-1One-TimeRecurring01-January-202431-December-2024USD 1,200.00USD 1,200.00USD 1,200.001.0000000000

You have initiated the billing for the OLI. Since the Price Type field is populated as One-Time, the system generates only one BH, one BSR, and one BSD. 

The BH shows the following data:

Billing Header ID

Current Order Line Item

Pricing Source

Price Type

Asset Line Item

Billing Start Date

Billing End Date

Billing Frequency

TCV (Sales)

Billable Amount from Current OLI

Net Unit Price 

Selling Term

Total Invoiced Amount

Pending Invoice Amount

Billing Rule

BH-001OLI-1Asset Line ItemRecurringALI-101-January-202431-December-2024One-TimeUSD 1,200.00USD 1,200.00USD 1,200.001.0000000000USD 0.00USD 1,200.00Bill In Advance

Two Billing Schedule Records and Billing Schedule Details are generated based on the proration settings.

When you invoice the BSRs, the Total Invoiced Amount and Pending Invoice Amount fields are updated with the rolled-up amount from the BSDs.