Hi Sydney,
An interesting problem, as it’s something we have been working on too, as it’s an area that several of our customers want streamlined.
We’re packing the features into a HubSpot Plugin we are calling “DoQuotes” which we plan to beta test this month. (Sneak peek here)
The first problem you have is the trigger, as it’s tricky to trigger a quote-based workflow when the UI offers limited editing of Quote objects.
If you trigger on quote-created, the HubSpot quotebuilder UI tends to overwrite your data. Plus, in your case, quote-created triggers too soon.
For your use case, you could have a custom property on the deal, such as “Add quote tax and freight”, as a dropdown with one option: 'Now"
When the time is right, the user selects “Now” on that dropdown deal property.
Set quote enrolment based on the associated deal having the Add Quote Tax and Freight property set to “Now”, AND the deal status is Draft.
Another deal-based workflow resets the deal property a few seconds later, in case it is to be used again.
In the long term, create a custom CRM card with a button for the user to press instead of changing a deal property.
Either method takes care of triggering your quote workflow.
We discovered in our pressure tests that taxes added to quotes via the API sometimes “disappear” without a trace.
Taxes are a pseudo object that must be associated with a quote or they disappear in HubSpot back-end data cleanup.
But even when associated with a quote, API-created taxes can still disappear. Not every time though, it is sporadic and therefore hard to reliably replicate.
So we are still troubleshooting why on some occasions, taxes added to a quote via the API simply disappear.
I’d be glad to collaborate with you on this to help you get your solution working.
As we both need to ensure that taxes and fees added via the API, remain on the quote.
best
Pete