Customer Accounts
In this document, you’ll learn how registered and unregistered accounts are distinguished in the Medusa application.
has_account
attribute
The Customer
data model has a has_account
attribute, which is a boolean that indicates whether a customer is registerd.
When a guest customer places an order, a new Customer
record is created with has_account
set to false
.
When this or another guest customer registers an account with the same email, a new Customer
record is created with has_account
set to true
.
Email Uniqueness
The above behavior means that two Customer
records may exist of the same email. However, the main difference is the has_account
attribute’s value.
So, there can only be one guest customer (having has_account=false
) and one registered customer (having has_account=true
) with the same email. If another customer tries to create an account with the same email, they’ll get an error that an account with this email already exists.