Overview
The Customer entity holds information about the individuals or organizations who interact with the system, primarily by placing orders. It stores contact details, addresses, and other relevant personal or business information.
Entity Properties
Name | Type | Required | Description |
---|---|---|---|
customerId | UUID | Required | Unique identifier for the customer |
firstName | string | Required | Customer's first name |
lastName | string | Required | Customer's last name |
email | string | Required | Customer's primary email address (unique) |
phone | string | Optional | Customer's phone number |
addresses | array | Optional | List of addresses associated with the customer (e.g., shipping, billing) |
dateRegistered | DateTime | Required | Date and time when the customer registered |
Relationships
- Order: A customer can have multiple
Order
entities. TheOrder
entity holds a reference (customerId
) back to theCustomer
. - Address: A customer can have multiple associated
Address
value objects or entities.
Examples
- Customer A: Jane Doe, registered on 2023-01-15, with a primary shipping address and a billing address.
- Customer B: John Smith, a long-time customer with multiple past orders.