Overview of the concepts related to customers purchasing products offered in your Project.
Customers represent data about a specific customer in your Project. In addition to the relationship to other resources, such as Carts and Orders, the Customer contains information about their name, email address, any addresses associated with them, and more.
Typically, customers self-register through your storefront, often including email verification.
Customer uniqueness
Email case-insensitivity
- Signing up
- Authenticating
- Creating password reset tokens
Email@example.com...- Authenticating with
email@example.comorEMAIL@example.comsucceeds - Sign-up attempts with
email@example.comorEMAIL@example.comfail unless Stores are in use - Generating a password reset token with
email@example.comorEMAIL@example.comsucceeds
Global versus Store-specific Customers
Customers can either be global or Store-specific:
-
Global Customers are unique to a Project. Since global Customers are not assigned to any particular Store, they have broad access to all Stores within the Project. A global Customer cannot create an account in a Store using the same email address.
-
Store-specific Customers are unique to a specific Store in your Project. Store-specific Customers can create an account in another Store using the same email address.
Store-specific Customers are unique in a specific Store and only have access to resources inside that Store.
Example
For example, if you do the following:
- Register
email@example.comas a global Customer. - Try to register
email@example.comin a specific Store.
The second registration fails because as a global Customer the same email address cannot be used to create an account in a specific Store.
email@example.com in a Store in a Project, then attempt to register email@example.com globally, the second attempt to register fails.We recommend deciding whether to create Customers per-store or globally during your initial Project configuration.
Customer authentication (sign-in)
During the sign-in process, Customers may be assigned resources created prior to the sign-in. Customers can have one or more Carts assigned from an earlier session.
Cart merge during sign-in and sign-up
A Customer with an active Cart may continue shopping in an anonymous session. The API provides the capability to merge the anonymous Cart with the Customer's active Cart when the Customer signs in or signs up at the storefront.
Customer permissions
Customer information can contain sensitive data, therefore you need to ensure that a customer can only access their own personal information.
Resources that may contain or refer to customer data:
- Business Unit B2B
- Cart
- Customer
- Custom Object
- Discount Code
- Message
- Order
- Order Edit
- Payment
- Quote
- Quote Request
- Review
- Shopping List
- Staged Quote
Customer-specific products, prices, and discounts
Customer Groups
A Customer can be assigned to one or more Customer Groups. You can assign Customer Groups to a Business Unit.
Customer Search
Customer Search enables merchants to search across a large number of Customers in a Project, supporting back-office use cases.