> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pureclarity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# customer_details

> The customer_details tracking event is used when a customer logs in on the site or the site is aware of who the customer is, such as when a user registers on the site.

The customer\_details tracking event is used when a customer logs in on the site or the site is aware of who the customer is, such as when a user registers on the site.

At least one of email, userid or accid must be sent:

* If accid is sent, then userid will be ignored – as all subsequent events will be tracked against the account.

* If userid is sent, then this will be taken as an identifier for the user across the site. Use this same identifier when the user logs in; makes an order; or in any offline orders that are submitted.

* If neither accid or userid is sent, then email will be used as the unique identifier for the user. This should be used whenever the user logs in; makes an order; or in any offline orders that are submitted.

* If accid or userid is set – and email is set as well – then the email address will just be stored against the user. It will be used if any Triggered Emails are sent.

* Best practice is to send the userid (or accid if using accounts). This is because it will remain unique to that user – email addresses may well be changed over time.

* The Id should match the Id sent in the user feed.

<Note>
  If you are passing groupid, then this must match one of the groups sent in the GroupPricing field in the Product Feed.
</Note>

## Properties

<ParamField body="userid" type="string">
  A unique ID for the user
</ParamField>

<ParamField body="email" type="string">
  The users email address
</ParamField>

<ParamField body="accid" type="string">
  If the user is part of business account this value can be used to ensure customer specific account pricing, and personalization at the account level rather than the user level.
</ParamField>

<ParamField body="group_id" type="string">
  Optional user group. Used to support price banding (prices per user group)
</ParamField>

<ParamField body="firstname" type="string">
  First name of the user
</ParamField>

<ParamField body="lastname" type="string">
  Last name of the user
</ParamField>

<ParamField body="title" type="string">
  The prefix of the user

  **Example:** `Mr`
</ParamField>

## Example

```json theme={null}
{
  "userid": "USR123",
  "email": "fred@smith.com",
  "firstname": "Fred",
  "lastname": "Smith",
  "title": "Mr"
}
```

### With Account and Group

```json theme={null}
{
  "accid": "ACCID123",
  "groupid": "group10",
  "email": "fred@smith.com",
  "firstname": "Fred",
  "lastname": "Smith",
  "title": "Mr"
}
```
