Hi @bklogos
There are several reasons for that behavior.
- WooCommerce performs checkout field validations server side when the customer clicks the place order button. That is the best method for ensuring all required fields have valid inputs.
- Client side validation is not reliable and is subject to how 3rd party plugins interact with and manipulate the checkout page.
- Wallet based payment methods like Apple Pay and GPay have the ability to auto-populate the checkout fields which increases conversion rate. You wouldn’t want to restrict a customer from using that functionality since it saves them having to manually enter address data.
Kind Regards
I understand that, but it I want that behavior.
It is a multi-currency based on country issue.
Have you considered using the checkout block instead of the checkout shortcode? The checkout block has this client side address validation built in.
The PayPal plugin we use is a wallet based method, BUT it does perform the checkout field validations server side when the customer clicks the place order button.
The PayPal plugin we use is a wallet based method
You can’t compare Stripe and PayPal, they are built on different technologies stacks. What works for PayPal doesn’t work for Stripe and vice versa.
With PayPal, you can make requests to the server for validation because they don’t have internal validations for the click event.
With Stripe, the wallet must open as the result of a button click and therefore it’s impossible to perform the same types of validations because you can’t use a Promise that resolves.