Checkout block due to out-of-stock (pending)
Normally, we will check to see if the location selected can provide the stock necessary for the order. Even if only 1 variant of that item is out of stock, we will temporary disabled the check out button.
Because only 1 fulfillment method can be chosen, the rules for checkout blocking are as followed.
If every single item in the cart is available at any single location, checkout per usual.
If 1 item in the cart cannot be fulfilled, an error message will be shown and checkout button will be temporarily disabled.
For delivery date, customers have to input their postal code/address before selecting date.
If the postal code/address is valid, the location responsible for that order will be checked to see if it can fulfill the order adequately. If yes, proceed per usual. If not, an error message will be shown and customers can use a different postal code/address.
Same as delivery, upon selecting pickup location, the app will check if the chosen location can sufficiently fulfill the entire order.
If yes, proceed with checkout per usual. If not, an error message will be shown and the checkout button will be temporarily disabled. Customers can choose another location.