Skip to content

Customer Module

Provides the basic customer domain, which is required in other e-commerce related packages.

A customer represents the legal entity of a single person and is normally used in a "my account" area.

Secondary Ports

An implementation needs to provide an adapter for the CustomerService as well as an implementation of the Customer interface.

A typical implementation would fetch the Token from the auth object and with that information call a microservice that will return the customer data (authorized by the token).

Your specific implementation of a customer can also include much more properties - as long as the two interfaces (ports) are implemented.

No customer data needed?

You can enable the provided adapter for the customerService with:

commerce.customer.useNilCustomerAdapter: true

GraphQL

Queries: * Commerce_Customer_Status returns the customer's login status * Commerce_Customer returns the logged-in customer