[SalesForce] CPQ How Net Total is Calculated

I have observed one thing When calculating Net Total, following things I did

  1. For Start Date – 8/1/2020 and End Date 3/15/2024
    I added segments as follow
    Product Segments

Now, when I hit Save for Term of Every year(Span of 12 Months) its showing me USD 959,354.38
enter image description here

This is one part.

Now I went ahead and I changed the segments for Term starting from 3/16/2021 to 3/15/2023 segment like following, earlier therew were Two segments each of 12 Months now its one segment of 24 Months and one Segment of 12 Month for Same Product

enter image description here
When I hit Save it gave me output like following
enter image description here

So whats happening is for the Term of 12 Months when all segments added are of 12 Months each it is showing the Amount as USD 959,354.38 but for same product when I added segment for 24 Months what I am expecting it would show me as
USD 959,354.38 * 2 = 19,18,708.76' but the actual value got displayed on Quote Line is1,918,674.49'

If I take out difference its 19,18,708.76 - 1,918,674.49 = 34.27 .
I wanted to understand how does CPQ calculates in background , whats the logic behind ? for Same product AMount for 12 Months showing correct but when the segment is of 24 months I am expecting it to be multiplied by 2 but amount is something different.

I know the formula is
IF(AND(SBQQ__Renewal__c, !SBQQ__Existing__c, ISBLANK(SBQQ__PriorQuantity__c)), 0, SBQQ__NetPrice__c * SBQQ__EffectiveQuantity__c)

For more details I have added more details around calculations , check following:
enter image description here
But I am just trying to understand if logically its correct or not.
If any one could explain me this logic for Net Total it will be really appreciated.

Best Answer

There is setting in CPQ Unit Price Scale which tells system how many decimal places system needs to consider when calculating amount. enter image description here

Salesforce I think internally considers decimals up to 30 so I did update the Unit Price Scale to 30 and it brought me to more close number. Earlier it was up to 2 decimals that is why there was difference in amount. enter image description here

Related Topic