Value Aggregation
To support reporting purposes, for example, you can set up JustOn Billing & Invoice Management to aggregate invoice and invoice line item fields on related object records. Generally, there are two ways to do so:
- Value aggregation using prefixed aggregation fields upon invoice finalization
- Value aggregation using a flow for any defined fields
Value Aggregation Using Prefixed Fields
JustOn Billing & Invoice Management allows for aggregating the values of specific invoice line item fields on subscriptions or items.
To this end, you configure aggregation fields on the item or subscription, where the API name is the same as the invoice line item field, prefixed with CALC_
. To aggregate, for example, the quantity of a particular line item, you map the field Quantity__c
(the API name) of the invoice line item to the field CALC_Quantity__c
(again, the API name) of the item.
The aggregation is executed during the finalization of the invoice.
Rules and limitations
- You can only aggregate number fields (currency, number, percent and formula fields).
- Decimal places of aggregation fields must be equal to the source fields to avoid rounding issues.
- Empty fields result in
CALC_
fields with a zero (0
) value. - Canceled invoices and cancellation invoices are ignored by the calculation.
- Partial credits are included in the calculation, so check beforehand how it will affect the calculated quantities, that is, when refunding only a currency amount.
- The limit of aggregation fields per subscription or item is 100.
- The limit of invoices per subscription or item is 50.000.
Examples
Subscription Field (API Name) | Description |
---|---|
CALC_PosTotalNet__c |
Calculates the sum of the PosTotalNet__c field of all invoice line items that belong to the same subscription whose invoice status is either Open , Paid or Settled . |
Item Field (API Name) | Description |
---|---|
CALC_Quantity__c |
Calculates the sum of the Quantity__c field for all invoice line items of this item. |
CALC_PosTotalNet__c |
Calculates the sum of the PosTotalNet__c field of all invoice line items that belong to the same item whose invoice status is either Open , Paid or Settled . |
Value Aggregation Using Prefixed Fields
Flow-Based Value Aggregation
Your business may require to show certain information of related invoices on an account or the source object based on which invoices are generated, like opportunities or contracts. To this end, you can set up a flow that calculates an aggregation on invoices and writes the result to fields on a source object.
Think of the following example: You (repeatedly) generate invoices based on opportunities, that is, you produce multiple invoices from one opportunity. Now you want to show the number of generated invoices and the sum of the invoice totals on the corresponding opportunity record.
Aggregating invoice values on a related parent record
If configured accordingly, the flow counts the produced invoices as well as sums up the grand total of all produced invoices, and then writes the result to the corresponding fields of the opportunity.
Info
The implemented aggregation uses SOQL aggregate queries internally where the result is grouped by the field that points to the parent.
Rules and limitations
- The flow ignores draft invoices.
- Aggregating blank fields may produce a blank result.
- The limit of records per parent is 50.000.