Customer email & phone uniqueness
Shopify requires each customer's email and phone number to be unique. Here's how that affects creating customers from applications, and how to resolve conflicts.
Shopify enforces a rule that catches many B2B stores off guard: every customer's email address and phone number must be unique across your entire store. No two customers can share an email, and no two customers can share a phone number.
This matters whenever a customer is created from a sign-up form application — whether the app creates it automatically, or you create it yourself while reviewing the application.
The rule, in detail
- Email must be unique. If a customer already exists with the applicant's email, Shopify won't let you create a second one.
- Phone must be unique too — and this is the part that surprises people. A phone number counts as "taken" if it appears on any customer's profile, including on the customer's default address or any of their secondary addresses, not just the main phone field.
So a conflict can happen even when the emails are completely different. For example: an applicant signs up with email A and phone A, but a customer already exists with email B that has phone A saved on one of their addresses. Shopify will reject phone A as already taken.
How Wholesale GOAT handles it
The app's guiding principle is that a form submission should never be lost, and we should never quietly change another customer's details on your behalf. Here's what happens in each case.
When auto-create is on
If auto-creation is enabled and a conflict comes up, the submission is always saved, and:
- Phone already taken (or not a valid format): the customer is still created, but without the phone number. The application is flagged with a warning so you can decide what to do — the applicant's submitted phone is preserved in the application's form data, it just isn't written to the new customer profile.
- Email matches an existing customer with a different phone on file: the application is linked to that existing customer, and the customer's existing phone number is left untouched. The application is flagged so you know the numbers didn't match.
In both cases you'll see a "Applicant's phone number needs attention" banner at the top of the application when you open it, explaining exactly what happened.

The app never automatically moves or clears a phone number from another customer. That's a decision only you should make, because it changes another customer's record. The app surfaces the conflict and leaves the resolution to you.
When you create a customer manually
If you're assigning a customer yourself during review and there's a conflict, Shopify returns the error directly — you'll see a message like "Email has already been taken" or "Phone has already been taken" — and the customer isn't created. Adjust the details and try again, or resolve the conflict using one of the options below.
Resolving a conflict
When a phone (or email) is genuinely needed on the new customer but it's already in use elsewhere, you have two options:
- Move it. Open the customer that currently holds the phone number, remove it from their profile (including any address that carries it), then add it to the correct customer. Once it's free, Shopify will accept it.
- Reject the application. If the conflict means this is a duplicate or the applicant already has an account, denying the application may be the right call.
If the phone number isn't essential, you can simply leave the auto-created customer without it — the application is still fully usable and you can approve it as normal.
Related
Emailing applicants your decision
Tell wholesale applicants they've been approved, denied, or need to send more information, using your own branded emails through Klaviyo.
Migrate existing wholesale customers
Bulk upload your existing wholesale customers into Wholesale GOAT with a CSV file to migrate your Shopify B2B program without re-entering data.