Hi,
Well, before a button is pressed, the address is not sent to your website by your browser. So, it is normal that the system on the server is not able to display shipping methods restricted based on information provided in the address.
However, there are several things you can do:
- Once you have your shipping methods setup, you can turn off the "display errors" of your shipping view in the Checkout workflow of your HikaShop configuration. That way, before a shipping address is provided, the system won't display the error in the shipping methods selection area, and once the address is provided with the button below the address form, the shipping method will appear.
- You didn't provide a screenshot of your checkout settings in the HikaShop configuration, nor a link to your shop, so I can't say for sure how your checkout is setup. However, by default you have the address form, then the "next" / "register" button, then the shipping methods / payment methods selection and only then the main "next" / finish" button. There is an option in the "login" view to remove the "next" / "register" button below the address form, forcing the user to scroll down to the bottom of the page to use the main "next" / "finish" button. If you've activated that option, I understand that it is quite disconcerting for the user to see that shipping method error before clicking on the next button at the bottom as it feels the address has been taken into account and he doesn't understand clearly what will happen when he presses the main at the bottom.
- Also, you can configure your checkout to be in several steps:
www.hikashop.com/support/documentation/4...eckout-workflow.html
When you have a situation, like yours, when some parts of the checkout depends on other parts of the checkout, it makes sense to have several steps, with the depending parts in different steps. That way, you avoid this kind of confusion on the user end. Plus, with a checkout in several steps, you can display a progress bar which makes it a lot more clearer to the user where he is at and where he is going. I would recommend looking into this.
Auto submitting the not necessarily completely filled address once the zip code is provided so that the shipping methods area can be refreshed is not a solution I would recommend. This will generate error messages because some of the address required fields are not filled. And even if you add some check to only submit the address once every required address field is filled, this means the user won't be able to review his address or fill other non required fields before the interface changes. While this is fine to auto submit when it is a filter on a listing of products, or when it is an input field for a security code, you normally don't want to auto submit a whole address form for the user.