Hey Shopify Developers,
There are some changes today to how addresses are validated when importing Orders through the Order API.
Shipping and billing addresses are now being validated to ensure the presence of the following fields:
If the address validation fails, the order will still be created but the address import will fail silently – that is, the order will be created but the Order record in Shopify won't contain a shipping_address or billing_address (depending on which address failed validation).
If you have any questions or concerns, feel free to reply to this thread.
why does Province need to be present? It's not part of the default address format in many countries, including Germany. So when importing from some other system into Shopify, that field is likely going to be empty or missing entirely. What's the advice for handling such a scenario?
Thanks for changing this, but we still need to see if everything works correctly now.
I'm very suprised how this was implemented by Shopify. It was by coincidence that I was subscribed to this forum,
AND clicked the link in the email, that I found this out. I think there are a lot of developers/owners out there who don't know why their address is missing (which is the case with quite a few orders for us). Shouldn't shopify provide a warning or implementation time for this kind of thing?
I agree that ideally there should be a warning in place before such changes are made – these changes were partially made to solve a bug in the Orders API with Billing Address validation. We felt that the value of fixing the issue was worth pushing out the change ASAP.
These changes with address validation affect less than 1% of orders being imported through the Orders API. In fact, address validation has always failed silently so there isn't a major change here but I do empathize with the fact that any changes in the API can potentially cause a headache for developers on the platform.
Thanks for your understanding, everyone.
What does this means for Orders that get downloaded from the /admin/orders.json endpoint? Might they lack addresses? Or will they never reach an order status that gets them downloaded until the address is corrected? If so, will the storefront manager get notified?