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

# Enroll a cardholder to Click to Pay for Visa

> Use this endpoint to enroll a new cardholder in Click to Pay for Visa.

POST/digitalwallets/clicktopay/visa/enroll

Use this endpoint to enroll a new cardholder in Click to Pay for Visa.

For more information about this ecommerce checkout solution, see [Click to Pay](https://www.marqeta.com/docs/developer-guides/digital-wallets-and-tokenization.md#_click_to_pay).

## Header parameter

| Fields | Description |
| - | - |
| req-sys-id string  Required | Identifier generated by the card program. These identifiers are used for troubleshooting requests between the card program and Marqeta. **Allowable Values:**  36 char max |
| external-consumer-id-owner-bid string  Required | Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs. **Allowable Values:**  1–8 chars |

## Request body

| Fields | Description |
| - | - |
| card object  Required | Card information for Visa Click to Pay. **Allowable Values:**  `cardToken`, `nameOnCard` |
| card.**cardToken** string  Required | Unique identifier of the card. **Allowable Values:**  1–36 chars |
| card.**nameOnCard** string  Required | Name of the cardholder that appears on the card. **Allowable Values:**  1–120 chars |
| card.**billingAddress** object  Required | Billing address for Visa Click to Pay. **Allowable Values:**  `address1`, `city`, `state`, `country`, `postalCode` |
| card.billingAddress.**address1** string  Optional | First line of the billing address. **Allowable Values:**  1–64 chars |
| card.billingAddress.**address2** string  Optional | Optional second line of the billing address. **Allowable Values:**  1–64 chars |
| card.billingAddress.**city** string  Optional | City of the billing address. **Allowable Values:**  1–32 chars |
| card.billingAddress.**state** string  Optional | State of the billing address. **Allowable Values:**  1–3 chars |
| card.billingAddress.**country** string  Required | Country of the billing address. **Allowable Values:**  3 chars |
| card.billingAddress.**postalCode** string  Optional | Postal code of the billing address. **Allowable Values:**  1–9 chars |
| user object  Required | User's email address, mobile phone number without country code, first name, last name, locale, and country. **Allowable Values:**  `userToken`, `email`, `phone`, `firstName`, `lastName`, `locale`, `country` |
| user.**userToken** string  Required | Unique identifier of the cardholder. **Allowable Values:**  1–36 chars |
| user.**email** string  Required | User's email address. **Allowable Values:**  255 char max |
| user.**phone** string  Required | User's mobile phone number according to ITU-T E.164 (2010) number structure. **NOTE:** In the E.164 format, the "+" sign is not included. **Allowable Values:**  1–16 chars |
| user.**firstName** string  Required | User's first name. **Allowable Values:**  1–35 chars |
| user.**lastName** string  Required | User's last name. **Allowable Values:**  1–35 chars |
| user.**locale** string  Required | The user-provided language choice. The ISO 639-2 language code is a two-letter country code that represents a language. The ISO maintains the [ISO 639-2 language codes](https://id.loc.gov/vocabulary/iso639-2.html). **Allowable Values:**  2–5 chars |
| user.**country** string  Required | ISO 3166-1 alpha-3 country code. **Allowable Values:**  3 chars |

## Sample request body

```json JSON expandable lines wrap theme={null}
{
  "user": {
    "userToken": "1234567890",
    "firstName": "John",
    "lastName": "Smith",
    "email": "example@email.com",
    "phone": "111-111-1111",
    "locale": "en_US",
    "country": "USA"
  },
  "card": {
    "cardToken": "2345678910",
    "nameOnCard": "John Smith",
    "billingAddress": {
      "address1": "123 Elm Street",
      "address2": "APT 1",
      "city": "Oakland",
      "state": "CA",
      "country": "USA",
      "postalCode": "94607"
    }
  }
}
```

## Response body

| Fields | Description |
| - | - |
| requestTraceId string  Returned | Unique identifier of the Visa Click to Pay request. **Allowable Values:**  1–36 chars |

## Sample response body

```json JSON expandable lines wrap theme={null}
{
  "requestTraceId": "2b6f0cc904d137be2e1730235f5664094b83"
}
```


## Related topics

- [Click to Pay for Visa Overview](https://www.marqeta.com/docs/core-api/digital-wallets-management/click-to-pay-visa.md)
- [Digital Wallets Management Overview](https://www.marqeta.com/docs/core-api/digital-wallets-management.md)
- [Enroll a card to Click to Pay for Visa](https://www.marqeta.com/docs/core-api/digital-wallets-management/click-to-pay-visa/enroll-card-click-pay-visa.md)
- [Enroll a card to Click to Pay for Mastercard](https://www.marqeta.com/docs/core-api/digital-wallets-management/click-to-pay-mastercard/enroll-card-click-pay-mastercard.md)
- [Delete cardholder information for Click to Pay for Visa](https://www.marqeta.com/docs/core-api/digital-wallets-management/click-to-pay-visa/delete-cardholder-information-click-pay-visa.md)
