This change has been reverted for now. This is not a permanent reversion, it will return in the future, but we've decided to put that on hold until after BFCM.
Effective immediately, we are adding a limit of 100 addresses per customer. This will be implemented through a validation on customer address creation.
Here are a few clarifications:
This should improve performance on API calls involving customer addresses.
If you have any questions or concerns please comment in the thread below. Cheers!
Sorry to hear that Adam, could you please expand a little on why your customers had more than 100 addresses? It's possible there is a better method of handling your use case. The customer endpoint isn't intended for any cases where they would have more than 100 addresses listed.
This broke an app we offer to customers who run their own Shopify stores. Orders from their store are tracked within our Shopify store as being under a single Customer record for the store owner. The orders API seems to automatically create CustomerAddress records for shipping addresses with no option to avoid it (we never explicitly create CustomerAddress records for these orders), which means that suddenly anybody with more than a 100 distinct customers can no longer place new orders. There are quite a few places in our system that rely on the fact that these orders are all under a single customer record, and obviously we need accurate shipping addresses on the orders.
Having this rather major change happen with no notification is ruining quite a few people's days. Why was such a major change rolled out with no prior communication? If we had any kind of warning we could have made updates if necessary, or you may have heard from enough people about why this isn't workable and reconsidered this breaking change for a performance optimization issue. Finding out now after you've already broken people's businesses isn't what I'd expect from Shopify.
So at least you posted what you did after the fact. But, as far as I know, customers are linked via email addresses when creating an order via the API. So if I want to create an order with the same email (ie firstname.lastname@example.org) I would now hit a limit of 100 orders with that email address.
^ IssacM - This is about customer addresses (eg: customer.addresses ) - not Orders. Nothing stopping you from having a customer with more than 100 orders.
Yes, I understand, we import orders from a 3rd party marketplace. We were using the same email address for each of these orders since the 3rd party marketplace doesn't provide them. This groups all of those orders under "one" customer with a ton of different mailing addresses.
This isn't really an issue because we just needed to make the email addresses in the create order call unique, but a heads up / warning would have been nice.
Ryan O — This is shocking! A heads up or warning is definitely needed. Or at least research which accounts have customers with over 100 addresses to see if there is a use-case not know to Shopify.
Dissapointing on Shopifies behalf! This has ruined the last 3 days for us, not to mention our end customers :(
I have emailed support@shopify requesting a temporary removal of the limit on our account