I'm facing a problem with "Legacy" Quote tool where I can't customize price for Line Items. To be specific: I have built custom quote with custom calculations so template display correct data but on the step when users add Line Items The TCV is wrong.
Here are some questions that may help me find correct solution:
1. Is there a way to upadte price for line item using custom calculation when we add Line Item?
2. Is it possible to hide Total Contract Value/Amount in Quote builder?
3. Is it possible to overwrite TCV/Amount and recalculate it when we add line items??
4. Is it possible to use new AI Quote tool and Old at the same time. Old for some cases and New for others?
HubSpot is opening more flexibility for using calculation properties, but you cannot change a HubSpot system property, such as "price" (or "price_usd" if you activated currencies) into a calculation property.
Price or Price USD is a "number" property. So you must use other methods such as HubSpot API to update the line item price. Warning: if your line items are associated with a Quote, you must add logic to prevent HubSpot's Quotebuilder UI from auto-saving and overwriting your price changes. We had to build robust price-lock functions into our DoPricer app to protect our custom line item price edits. Happy to discuss if that helps.
Further to making TCV accurate: TCV is a calculation property:
"calculationFormula": "round_nearest(if is_present(string(recurringbillingfrequency)) then ((amount / if string(recurringbillingfrequency) equals 'monthly' then 1\nelseif string(recurringbillingfrequency) equals 'annually' then 12\nelseif string(recurringbillingfrequency) equals 'per_five_years' then 60\nelseif string(recurringbillingfrequency) equals 'per_four_years' then 48\nelseif string(recurringbillingfrequency) equals 'per_three_years' then 36\nelseif string(recurringbillingfrequency) equals 'per_two_years' then 24\nelseif string(recurringbillingfrequency) equals 'per_six_months' then 6\nelseif string(recurringbillingfrequency) equals 'quarterly' then 3 endif) * if is_present(hs_term_in_months) then hs_term_in_months else 12) else hs_acv, if is_present(string(hs_line_item_currency_code)) then if is_present(currency_decimal_places(string(hs_line_item_currency_code))) then currency_decimal_places(string(hs_line_item_currency_code)) else 3 else 3)"
So if you edit the line item price and can protect it from Quotebuilder auto-save, TCV should automatically recalculate. Your users may need to refresh their browser to see your updated prices and correct TCV.
HubSpot is opening more flexibility for using calculation properties, but you cannot change a HubSpot system property, such as "price" (or "price_usd" if you activated currencies) into a calculation property.
Price or Price USD is a "number" property. So you must use other methods such as HubSpot API to update the line item price. Warning: if your line items are associated with a Quote, you must add logic to prevent HubSpot's Quotebuilder UI from auto-saving and overwriting your price changes. We had to build robust price-lock functions into our DoPricer app to protect our custom line item price edits. Happy to discuss if that helps.
Further to making TCV accurate: TCV is a calculation property:
"calculationFormula": "round_nearest(if is_present(string(recurringbillingfrequency)) then ((amount / if string(recurringbillingfrequency) equals 'monthly' then 1\nelseif string(recurringbillingfrequency) equals 'annually' then 12\nelseif string(recurringbillingfrequency) equals 'per_five_years' then 60\nelseif string(recurringbillingfrequency) equals 'per_four_years' then 48\nelseif string(recurringbillingfrequency) equals 'per_three_years' then 36\nelseif string(recurringbillingfrequency) equals 'per_two_years' then 24\nelseif string(recurringbillingfrequency) equals 'per_six_months' then 6\nelseif string(recurringbillingfrequency) equals 'quarterly' then 3 endif) * if is_present(hs_term_in_months) then hs_term_in_months else 12) else hs_acv, if is_present(string(hs_line_item_currency_code)) then if is_present(currency_decimal_places(string(hs_line_item_currency_code))) then currency_decimal_places(string(hs_line_item_currency_code)) else 3 else 3)"
So if you edit the line item price and can protect it from Quotebuilder auto-save, TCV should automatically recalculate. Your users may need to refresh their browser to see your updated prices and correct TCV.
I'd like to tag in some of our Top Contributors to see if they have any ideas -- Hi @ScottPennwood and @HubDoPete Do either of you have any advice for @JChmielak?
Thank you!
Cassie, Community Manager
Loop Marketing is a new four-stage approach that combines AI efficiency and human authenticity to drive growth.