VAT tax calculation rules (using uc_taxes) depend on the selected billing country. We set this up using tax rule conditions, and it works. Unfortunately, when the user changes the country in the billing address pane, the overall payment total is not updated unless the whole page is reloaded. It would be great if the payment total could be updated dynamically when the selected value of the country field changes.

As an extension of this request, it would be very useful if the shown payment methods would also update when the total has changed. For example, if several payment methods are used, each with conditions dependent on the value of the order, I would expect that a change to the total should update them dynamically. Unfortunately, at present, this update only happens when the entire page is reloaded. An additional use case would be in conjunction with the uc_coupons module, which can bring an order to a zero balance, requiring no payment method other than a special "other" one. It would be great if the payment methods could be updated when the balance of the order becomes zero.

Many thanks for any suggestions how to solve this at present, perhaps by forcing a refresh of some kind from JS.

Comments

longwave’s picture

This will be fixed by #1373236: Allow multiple modules to react on checkout Ajax events but leaving this open to ensure we deal with this case.

Rafal Lukawiecki’s picture

Thank you. Do you know the time-frame to a testable dev version of that feature, yet?

For what it is worth, the technique discussed in #1373236: Allow multiple modules to react on checkout Ajax events would be useful for other fields, too. Here is another use case concerning a much-needed Customer's VAT Number field, which I hope is in the works somewhere. As the customer enters a (ideally validated) VAT number, this should trigger a conditional tax rule evaluation to decide if the VAT should or should not be charged on the order: charge VAT if: store country==shipping country || (VAT Number Provided && store country<>shipping country && shipping country is in EU). AJAX processing should update the payment total and payment methods if possible. At the moment we are trying to implement this missing field using Webforms and uc_webform_pane, but there is no way to perform AJAX updates.

longwave’s picture

Status: Active » Closed (duplicate)