Website v20.0.38 - 12 February 2026
On this page
This patch release resolves critical issues with tax group application at checkout and Apple Pay merchant validation for Westpac (Verifone). Windcave payment gateway credentials have been updated to support separate API key and secret fields. A fix has also been included for dynamic promotion discounts that were silently failing to apply.
Enhancements
Windcave: Separate API Key and Secret Credential Fields Windcave payment gateway configuration now supports entering the API key and API secret as separate fields, consistent with how credentials are managed for other gateways. The system constructs the required authentication at runtime. Existing credentials stored as a single pre-encoded value continue to work without any changes required.
Deprecated Fields
No deprecated fields in this release.
Fixed Bugs
Tax Groups Not Applying at Checkout Tax groups were not being applied correctly during checkout in certain scenarios. The root cause was that the tax and tax group associations were being cached from the initial (empty) state of the cart and not re-queried when new items were added. Tax calculations now always fetch up-to-date tax data from the database, ensuring that tax groups are applied accurately as the cart is built.
Westpac Apple Pay: Merchant Validation Failing in Production Apple Pay merchant validation via Westpac (Verifone) was failing in production environments. The Westpac sandbox expects a full URL for domain validation, while the production environment requires a bare hostname — but the system was always sending a full URL. The fix sends the correct format depending on the environment (bare hostname for production, full URL for sandbox), and uses the browser’s actual hostname to ensure accuracy when behind proxies or CDNs.
Dynamic Promotions: Discount Not Applied at Checkout
When a promotion was configured with a “Dynamic Amount” calculation type and a liquid template for the discount amount, no promotion credit was being created after checkout. The cause was a mismatch between the calculation types supported by promotion actions and those supported by promotion credit records — the dynamic type was not recognized when saving the credit, causing the creation to fail silently. The dynamic calculation type is now correctly supported on promotion credits, allowing dynamic discount promotions to work as expected.