# Client-maintained customer login

If you maintain the master record for the customer login credentials, the payload must contain the `externalReferenceId`.

{% tabs %}
{% tab title="Payload example" %}

```json
{
	"shopper": {
		"firstName": "John",
		"lastName": "Johnson",
		"externalReferenceId": "abc123",
		"emailAddress": "jjohnson@myCompany.com",
		"locale": "en_US",
		"currency": "USD"
	 }
 }
```

{% endtab %}
{% endtabs %}

The response returns an HTTP Status 201 Created from the server.

After you create a base customer record, you can get an authenticated customer token and call the `GET shoppers/me/account` resource to allow the customer to log in and configure their account information. The account information associated with a customer includes the shipping address, billing address, and payment options.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.digitalriver.com/commerce-api/general-resources/global-commerce/customers/client-maintained-customer-login.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
