Quote custom pricing calculation

JChmielak
メンバー

Hi all

 

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?

 

0 いいね!
1件の承認済みベストアンサー
HubDoPete
解決策
キーアドバイザー | Gold Partner
キーアドバイザー | Gold Partner

Hi @JChmielak and thanks @chighsmith for the tag!

 

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 hope this helps!

best

Pete

元の投稿で解決策を見る

0 いいね!
2件の返信 2
HubDoPete
解決策
キーアドバイザー | Gold Partner
キーアドバイザー | Gold Partner

Hi @JChmielak and thanks @chighsmith for the tag!

 

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 hope this helps!

best

Pete

0 いいね!
chighsmith
コミュニティーマネージャー
コミュニティーマネージャー

Hi @JChmielak,

Thank you for posting to the Community!

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


Loop Marketing is a new four-stage approach that combines AI efficiency and human authenticity to drive growth.

Learn More




0 いいね!