pilot

Request Parameters {#uctp-java-checkout}
========================================

Your checkout() request can include these parameters:

Request Parameters
------------------

|                               Field                               |                                    Required?                                    |                                                                                Description                                                                                |
|-------------------------------------------------------------------|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| srcDigitalCardId **Type**: String                                 | Required for checkout when a card is selected from a candidate list.            | A reference identifier of the card to be used for checkout. > IMPORTANT > If srcDigitalCardId and encryptedCard both are provided then srcDigitalCardId takes precedence. |
| encryptedCard **Type**: JWE                                       | Required for a combined flow where this card is being enrolled during checkout. | The card being enrolled with the SRC System. > IMPORTANT > If srcDigitalCardId and encryptedCard both are provided then srcDigitalCardId takes precedence.                |
| consumer **Type** : Consumer                                      | Optional                                                                        | Consumer identity or profile information collected by an SRCi.                                                                                                            |
| complianceSettings **Type** : ComplianceSettings                  | Conditional                                                                     | The consumer's compliance settings.                                                                                                                                       |
| assuranceData **Type** : AssuranceData                            | Optional                                                                        | Assurance data supplied to support risk management.                                                                                                                       |
| dpaTransactionOptions **Type** : DpaTransactionOptions            | Optional                                                                        | Options to override DPA‑registered transaction settings.                                                                                                                  |
| transactionAmount **Type** : TransactionAmount                    | Optional                                                                        |                                                                                                                                                                           |
| paymentOptions **Type** : List\&lt;PaymentOptions\&gt;            | Optional                                                                        |                                                                                                                                                                           |
| payloadTypeIndicatorCheckout **Type** : PayloadTypeIndicator enum | Optional                                                                        | Indicates the scope of encrypted payload in the response. Possible values: * `FULL` * `SUMMARY`                                                                           |
| windowRef **Type** : Window                                       | Conditional                                                                     | Reference to a browsing context (iframe, popup, etc.).                                                                                                                    |
[Request Parameters and Descriptions]

Card
----

|                                         Data Element                                         |  Required?  |           Description            |
|----------------------------------------------------------------------------------------------|-------------|----------------------------------|
| primaryAccountNumber **Type**: String (Numeric) **Minimum Length**: 9 **Maximum Length**: 19 | Required    | The account number of the card.  |
| panExpirationMonth **Type**: String (Numeric) **Length**: 2                                  | Conditional | Expiration month in MM format.   |
| panExpirationYear **Type**: String (Numeric) **Length**: 4                                   | Conditional | Expiration year in YYYY format.  |
| cardSecurityCode **Type**: String (Numeric) **Maximum Length**: 4                            | Conditional | Card security code.              |
| cardholderFullName **Type**: String **Maximum Length**: 100                                  | Conditional | Cardholder name.                 |
| cardholderFirstName **Type**: String **Maximum Length**: 50                                  | Optional    | Cardholder first name.           |
| cardholderLastName **Type**: String **Maximum Length**: 50                                   | Optional    | Cardholder last name.            |
| billingAddress **Type**: Address                                                             | Optional    | Billing address.                 |
| paymentAccountReference **Type**: String **Maximum Length**: 29                              | Optional    | Reference linking PAN to tokens. |

BillingAddress
--------------

|           Data Element           |  Required?  |                Description                |
|----------------------------------|-------------|-------------------------------------------|
| billingAddress **Type**: Address | Conditional | Billing address associated with the card. |

Address
-------

The allowed characters for the address line 1, 2, and 3 are: .',:_#/()ÁáÀàÂâÄäÃãÇçÉéÈèÊêËëÍíÎîÏïÑñÓóÔôÕõOEoeÚúÙùÛûÜüŸÿÆæĄąĆćĘęŁłŃńŚśŹźŻż/

|                          Data Element                           |                Required?                 |                            Description                            |
|-----------------------------------------------------------------|------------------------------------------|-------------------------------------------------------------------|
| addressId **Type**: String Universally Unique Identifier (UUID) | Optional                                 | Reference identifier of the address in the SRC System.            |
| name **Type**: String **Maximum Length**: 100                   | Optional                                 | Name of the consumer.                                             |
| line1 **Type**: String **Maximum Length**: 75                   | Required if this is a shipping address.  | Address line 1                                                    |
| line2 **Type**: String **Maximum Length**: 75                   | Optional                                 | Address line 2.                                                   |
| line3 **Type**: String **Maximum Length**: 75                   | Optional                                 | Address line 3.                                                   |
| city **Type**: String **Maximum Length**: 50                    | Required if this is a shipping address.  | Address city.                                                     |
| state **Type**: String **Maximum Length**: 30                   | Required if this is a shipping address.  | Address state.                                                    |
| zip **Type**: String **Maximum Length**: 16                     | Required if applicable for that country. | Address zip/postal code.                                          |
| countryCode **Type**: String                                    | Required                                 | Address country code in ISO 3166‑1 alpha‑2 country code format.   |
| createTime **Type**: String (Numeric)                           | Optional                                 | Date and time the address was created in UTC Unix epoch format.   |
| lastUsedTime **Type**: String (Numeric)                         | Optional                                 | Date and time the address was last used in UTC Unix epoch format. |

Consumer
--------

|                        Data Element                        |  Required?  |                               Description                               |
|------------------------------------------------------------|-------------|-------------------------------------------------------------------------|
| consumerIdentity **Type** : ConsumerIdentity               | Required    | Primary verifiable consumer identity.                                   |
| firstName **Type**: String **Maximum Length**: 50          | Optional    | Consumer-provided first name.                                           |
| lastName **Type**: String **Maximum Length**: 50           | Optional    | Consumer-provided last name.                                            |
| fullName **Type**: String **Maximum Length**: 100          | Conditional | Consumer-provided full name.                                            |
| emailAddress **Type**: String **Maximum Length**: 255      | Optional    | Consumer email address.                                                 |
| mobileNumber **Type** : PhoneNumber                        | Conditional | Consumer mobile number.                                                 |
| nationalIdentifier **Type**: String **Maximum Length**: 20 | Optional    | National identifier.                                                    |
| countryCode **Type**: String                               | Optional    | Country code associated with the consumer in ISO 3166‑1 alpha‑2 format. |
| locale **Type**: String                                    | Optional    | Consumer locale.                                                        |

ConsumerIdentity
----------------

|                      Data Element                      | Required? |                                      Description                                      |
|--------------------------------------------------------|-----------|---------------------------------------------------------------------------------------|
| identityProvider **Type** : IdentityProvider           | Optional  | Entity or organization that verified the identity. Possible value: * `SRC`            |
| identityType **Type** : ConsumerIdentityType           | Required  | Type of consumer identity. Possible values: * `EMAIL_ADDRESS` * `MOBILE_PHONE_NUMBER` |
| identityValue **Type**: String **Maximum Length**: 255 | Required  | Consumer identity value.                                                              |

PhoneNumber
-----------

|                               Data Element                                | Required? |                               Description                               |
|---------------------------------------------------------------------------|-----------|-------------------------------------------------------------------------|
| countryCode **Type**: String **Minimum Length**: 1 **Maximum Length**: 4  | Required  | Phone number country code per ITU in international calling code format. |
| phoneNumber **Type**: String **Minimum Length**: 4 **Maximum Length**: 14 | Required  | Phone number without country code.                                      |

ComplianceSettings
------------------

|                          Data Element                           | Required? |            Description            |
|-----------------------------------------------------------------|-----------|-----------------------------------|
| complianceResources **Type** : List\&lt;ComplianceResource\&gt; | Required  | One or more compliance resources. |

ComplianceResource
------------------

|                  Data Element                   | Required? |                                          Description                                          |
|-------------------------------------------------|-----------|-----------------------------------------------------------------------------------------------|
| complianceType **Type** : ComplianceType        | Required  | Compliance type. Possible values: * `PRIVACY_POLICY` * `REMEMBER_ME` * `TERMS_AND_CONDITIONS` |
| uri **Type**: String **Maximum Length**: 1024   | Required  | URI or URL.                                                                                   |
| version **Type**: String **Maximum Length**: 10 | Optional  | Version.                                                                                      |
| datePublished **Type**: String                  | Optional  | Date published in UTC Unix epoch.                                                             |

AssuranceData
-------------

|                        Data Element                        | Required? |             Description              |
|------------------------------------------------------------|-----------|--------------------------------------|
| verificationData **Type** : List\&lt;VerificationData\&gt; | Required  | Verification data structures.        |
| eci **Type**: String **Maximum Length**: 2                 | Optional  | E-commerce authentication indicator. |

