Currently tax_behavior (inclusive/exclusive) only resolves from ProductPrice.tax_behavior falling back to Organization.default_tax_behavior. There's no way to override it per checkout link or checkout session.
Use case: merchant's org default is exclusive, but wants a specific checkout link (e.g. for an upsell or A/B test) to render inclusive of VAT, without creating a separate price/product.
Add a tax_behavior override field to CheckoutLinkCreate/CheckoutLinkUpdate and/or CheckoutCreate/CheckoutUpdate, and thread it into CheckoutService._update_checkout_tax (checkout/service.py) with precedence over the price-level and org-level defaults.
Related: #4788 (original tax_behavior design), #13470 (tax_behavior checkout calculation edge case).
Sent by @allison-polar from VAT inclusive checkout link implementation.
Plain ticket
Currently
tax_behavior(inclusive/exclusive) only resolves fromProductPrice.tax_behaviorfalling back toOrganization.default_tax_behavior. There's no way to override it per checkout link or checkout session.Use case: merchant's org default is exclusive, but wants a specific checkout link (e.g. for an upsell or A/B test) to render inclusive of VAT, without creating a separate price/product.
Add a
tax_behavioroverride field toCheckoutLinkCreate/CheckoutLinkUpdateand/orCheckoutCreate/CheckoutUpdate, and thread it intoCheckoutService._update_checkout_tax(checkout/service.py) with precedence over the price-level and org-level defaults.Related: #4788 (original tax_behavior design), #13470 (tax_behavior checkout calculation edge case).
Sent by @allison-polar from VAT inclusive checkout link implementation.
Plain ticket