Skip to main content

v1.7.0

Version 1.7.0 of Medusa introduces a breaking change in the CustomerService.

Overview

In this new version, the method retrieveByEmail in the Customer Service has been deprecated in favor of other methods. Read the actions required below to learn which methods to use instead.

In addition, after introducing the Claim Order feature, this version of Medusa introduces changes in the database that allows two customers having the same email based on the value of the has_account field. This change requires running migrations after the update.


Actions Required

Run Migrations

Run the following command to run migrations:

medusa migrations run
Report Incorrect CodeReport Incorrect CodeCopy to ClipboardCopy to Clipboard

Change Used Methods

Instead of using customerService.retrieveByEmail, you should now use the methods customerService.retrieveRegisteredByEmail or customerService.retrieveUnregisteredByEmail.

The customerService.retrieveRegisteredByEmail method allows you to retrieve a registered customer by email:

customerService.retrieveRegisteredByEmail("example@gmail.com")
Report Incorrect CodeReport Incorrect CodeCopy to ClipboardCopy to Clipboard

On the other hand, the retrieveUnregisteredByEmail method allows to retrieve guest customers by email:

customerService.retrieveUnregisteredByEmail("example@gmail.com")
Report Incorrect CodeReport Incorrect CodeCopy to ClipboardCopy to Clipboard

To retrieve a customer by email regardless of whether they are registered or not, you can use the customerService.list method instead:

customerService.list({
email: "example@gmail.com",
})
Report Incorrect CodeReport Incorrect CodeCopy to ClipboardCopy to Clipboard