Element Types
Address Data Elements
The following structure details the Address object.
Address Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | name | String | Optional | Name of the organization/entity at the address |
2 | line1 | String | Conditional | Line 1 of the address Condition: Returned if billingPreference is ALL |
3 | line2 | String | Optional | Line 2 of the address |
4 | line3 | String | Optional | Line 3 of the address |
5 | city | String | Conditional | Name of the city Condition: Returned if billingPreference is ALL |
6 | state | String | Conditional | Name of the state Condition: Returned if billingPreference is ALL |
7 | zip | String | Required | Postal code for this address |
8 | countryCode | String | Required | Country code for this address (ISO 3166-1 alpha-2 format) |
Address Elements Code Example
dictionary Address {
optional String name;
conditional String line1;
optional String line2;
optional String line3;
conditional String city;
conditional String state;
required String zip;
required String countryCode;
}
Transaction Options Data Elements
This structure represents the transaction configuration parameters specific to the payment transaction being requested by the Merchant.
Transaction Options Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | merchantCategoryCode | String | Optional | MCC of the Merchant. |
2 | billingPreference | Enum | Optional | Verbosity of billing address required by the Merchant. Valid values: ALL (default) ZIP_COUNTRY \ NONE |
3 | payloadTypeIndicator | Enum | Optional | Verbosity of payload requested. Valid values: ID – Returns payloadId only (default) PAYMENT – Returns payloadId, sessionId (if applicable), and securedPayload |
Transaction Options Data Elements Code Example
dictionary TransactionOptions {
optional String merchantCategoryCode;
optional Enum billingPreference;
optional Enum payloadTypeIndicator;
}
Transaction Value Data Elements
This structure represents the transaction value as split into its components. It is used in Checkout for display purposes and in Complete to submit a transaction for tokenization. For the Paze initial release, the only supported transactionCurrencyCode is “USD”.
Transaction Value Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | transactionCurrencyCode | String | Required | Currency code of the transaction. |
2 | transactionAmount | String | Required | The amount of the transaction. Must include dollars and cents in proper format. |
Transaction Value Data Elements Code Example
dictionary TransactionValue {
required String transactionCurrencyCode;
required String transactionAmount;
}
Cobrand Elements
This structure details the Cobrand object.
Cobrand Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | cobrandName | String | Required | Product name of the cobrand card. Must match exactly with the card name received from the network. |
2 | benefitsOffered | Boolean | Optional | Default value is FALSE. Note: This value will not drive variation in the Paze UX until a future release. |
Cobrand Elements Code Example
dictionary Cobrand {
required String cobrandName;
optional Boolean benefitsOffered;
}
Enhanced Transaction Data Elements
This structure represents optional parameters specific to the payment transaction being requested by the Merchant. These parameters may impact fraud decisioning and will be retained to inform the Paze fraud risk decision engine.
Enhanced Transaction Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | ecomData | Object(EcomData) | Optional | Details pertaining to electronic commerce purchases. |
2 | travelData | Object(TravelData) | Optional | Details pertaining to travel bookings. |
Enhanced Transaction Data Code Example
dictionary EnhancedTransactionData {
optional EcomData ecomData;
optional TravelData travelData;
}
Ecom Data Elements
This structure represents optional electronic commerce-related parameters within the Enhanced Transaction Data object.
Ecom Data Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | cartContainsGiftCard | Boolean | Optional | Whether current transaction includes a gift card purchase. |
2 | orderForPickup | Boolean | Optional | Whether consumer order will be picked up rather than shipped. |
3 | orderQuantity | String | Optional | Number of items ordered. |
4 | orderHighestCost | String | Optional | Dollar value of most expensive item ordered. |
5 | finalShippingAddress | Object(Address) | Optional | Destination of items ordered. Recommended if the Merchant does not intend to use Paze for shipping address collection. |
Ecom Data Code Example
dictionary EcomData {
optional Boolean cartContainsGiftCard;
optional Boolean orderForPickup;
optional String orderQuantity;
optional String orderHighestCost;
optional Address finalShippingAddress;
}
Travel Data Elements
This structure represents optional travel-related parameters within the Enhanced Transaction Data object.
Travel Data Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | passengerName | String | Optional | Traveler name. |
2 | roundTrip | Boolean | Optional | Whether departure and return trips are being purchased in the same transaction. |
3 | departureDate | String | Optional | Date and time of departure in ISO 8601 format. |
4 | returnDate | String | Optional | Date and time of return in ISO 8601 format. |
5 | departureLocation | Object(Address) | Optional | Location from which the traveler is departing. |
6 | returnLocation | Object(Address) | Optional | Location from which the traveler is returning. |
Travel Data Code Example
dictionary TravelData {
optional String passengerName;
optional Boolean roundTrip;
optional String departureDate;
optional String returnDate;
optional Address departureLocation;
optional Address returnLocation;
}
Client Data Elements
This structure details the client (Merchant) integrating with Paze.
Client Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | id | String | Required | Client identifier. This is generated by Paze and shared with the client during onboarding. |
2 | name | String | Optional | Display name associated with the Client for presentation within the user experience. |
3 | profileId | String | Optional | The client’s profile to be used during checkout. ProfileId may not be provided during Initialize. |
Client Data Elements Code Example
dictionary Client {
required String id;
optional String name;
optional String profileId;
}
Masked Card Data Elements
This structure details the non-sensitive masked token details.
Masked Card Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | digitalCardId | String | Required | Unique Identifier of the card (UUID). |
2 | panLastFour | String | Required | Last 4 digits of the card. |
3 | paymentAccountReference | String | Required | Payment Account Reference (PAR) – uniquely identifies the underlying account for the Payment Card. |
4 | panExpirationMonth | String | Conditional | 2-digit PAN expiration month. Condition: Required if card supports expiry. |
5 | panExpirationYear | String | Conditional | 4-digit PAN expiration year. Condition: Required if card supports expiry. |
6 | paymentCardDescriptor | String | Required | A free-form string (max 32 characters) used for card/program recognition (e.g., “Travel Rewards”, “Cashback Rewards”). |
7 | digitalCardData | Object(DigitalCardData) | Required | Digital Card Art. See Digital Card Data Elements for more information. |
8 | billingAddress | Object(Address) | Conditional | Billing address for display purposes. Condition: Provided if billingPreference is not NONE. |
9 | paymentCardType | Enum | Required | Valid values: CREDIT DEBIT |
10 | paymentCardBrand | Enum | Required | Brand of payment instrument. Valid values: VISA MASTERCARD |
11 | paymentCardNetwork | Enum | Required | Valid values: VISA MASTERCARD Note: Debit credentials may allow processing on alternative networks. |
Masked Card Data Elements Code Example
dictionary MaskedCard {
required String digitalCardId;
required String panLastFour;
required String paymentAccountReference;
conditional String panExpirationMonth;
conditional String panExpirationYear;
required String paymentCardDescriptor;
required Enum paymentCardType;
required Enum paymentCardBrand;
required Enum paymentCardNetwork;
required DigitalCardData digitalCardData;
conditional Address billingAddress;
}
Digital Card Data Elements
Digital Card Data contains digital card art for presentation. This structure details the Digital Card Data object.
Digital Card Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | artUri | URL | Required | HTTPS URL for the card art. Can be card or issuer specific. Example: https://www.staticv.me/lg_non-visa_card.png |
2 | artHeight | Number | Required | Height of the card art image in pixels. |
3 | artWidth | Number | Required | Width of the card art image in pixels. |
Digital Card Data Elements Code Example
dictionary DigitalCardData {
required URL artUri;
required Number artHeight;
required Number artWidth;
}
Token Data Elements
This structure details the Token object.
Token Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | paymentToken | String | Required | This is the tokenized payment instrument. |
2 | tokenExpirationMonth | String | Required | Two-digit expiration month. |
3 | tokenExpirationYear | String | Required | Four-digit expiration year. |
4 | paymentAccountReference | String | Required | (See above) |
Token Data Elements Code Example
dictionary Token {
required String paymentToken;
required String tokenExpirationMonth;
required String tokenExpirationYear;
required String paymentAccountReference;
}
Checkout Response Data Elements
This structure details the Checkout Response object.
Checkout Response Data Elements
Seq. # | Element Name | Element Type | Field Usage | Description |
---|---|---|---|---|
1 | sessionId | String | Conditional | Session reference identifier generated by the Merchant. Returned when provided in the Checkout request. (Max length 255 characters) |
2 | consumer | Object(Consumer) | Required | Details associated with the authenticated consumer. |
3 | maskedCard | Object(MaskedCard) | Required | Masked card details of the selected card. See Masked Card Data Elements for more information. |
4 | shippingAddress | Object(ShippingAddress) | Conditional | The selected shipping address. Returned only when shippingPreference is not NONE. |
Checkout Response Data Elements Code Example
dictionary CheckoutResponse {
conditional String sessionId;
required Consumer consumer;
required MaskedCard maskedCard;
conditional ShippingAddress shippingAddress;
}
Complete Response Data Elements
This structure details the Complete Response object.
Complete Response Data Elements
Seq. # | Element Name | Element Type | Field Usage | Description |
---|---|---|---|---|
1 | payloadId | String | Required | Unique identifier generated by Paze to track and link wallet transaction-specific messages. (Max length 50 characters) |
2 | sessionId | String | Conditional | Session reference identifier generated by the Merchant. Returned if provided (echoed from Complete request). (Max length 255 characters) |
3 | securedPayload | Object(SecuredPayload) | Conditional | Information necessary to process payment. Returned when transactionOptions.payloadTypeIndicator is PAYMENT. |
Complete Response Data Elements Code Example
dictionary completeResponse {
required String payloadId;
conditional String sessionId;
conditional JWE<JWS<Payload>> securedPayload;
}
Secured Payload Data Elements
This section details the structure of the encrypted Payload object within the JWE claims. The JWEs must have their signatures validated before being decrypted.
Encrypted Signed Payload Data Elements
Seq. # | Element Name | Element Type | Element Status | Description |
---|---|---|---|---|
1 | clientId | String | Required | Client identifier generated by PazeSM and shared with the Merchant during onboarding. |
2 | profileId | String | Required | The Client profile used during checkout. |
3 | token | Object(Token) | Required | A token payload that contains the token number and associated attributes. |
4 | paymentCardNetwork | Enum | Required | Valid values: VISA MASTERCARD |
5 | dynamicData | List(DynamicData) | Required | Dynamic data applicable for a consumer-initiated payment or card-on-file request. See Dynamic Data Elements for details. |
6 | billingAddress | Object(Address) | Conditional | Billing address of the card selected, at the verbosity indicated by transactionOptions.billingPreference. Provided when billingPreference is not NONE. |
7 | consumer | Object(Consumer) | Required | Information about the consumer who completed the checkout. |
8 | eci | String | Conditional | Electronic Commerce Indicator. Provided when the transaction for PURCHASE or BOTH is submitted. |
Secured Payload Data Elements Code Example
dictionary Payload {
required String clientId;
required String profileId;
required Token token;
required Enum paymentCardNetwork;
required List<DynamicData> dynamicData;
conditional Address billingAddress;
required Consumer consumer;
conditional String eci;
}
Dynamic Data Elements
This structure details the Dynamic Data object used for cryptographic verification during authorization.
Table 33. Dynamic Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | dynamicDataValue | String | Required | The dynamic data value (structure dependent on Card Network). |
2 | dynamicDataType | Enum | Required | Valid values: PURCHASE CARD_ON_FILE |
3 | dynamicDataExpiration | String | Optional | Indicates validity period for the dynamic data. |
Dynamic Data Elements Code Example
dictionary DynamicData {
required String dynamicData;
required Enum dynamicDataType;
optional String dynamicDataExpiration;
}
Consumer Data Elements
This structure details the Consumer object.
Consumer Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | firstName | String | Optional | First name of the consumer |
2 | lastName | String | Optional | Last name of the consumer |
3 | fullName | String | Required | Full name of the consumer |
4 | emailAddress | String | Required | Email address of the consumer |
5 | mobileNumber | Object(PhoneNumber) | Optional | Mobile number of the consumer See Phone Number Data Elements for details. |
6 | countryCode | String | Optional | Consumer provided country code (ISO 3166-1 alpha-2 format), e.g., "US" |
7 | languageCode | String | Optional | Consumer’s preferred language (e.g., "en_US"). |
Consumer Data Elements Code Example
dictionary Consumer {
optional String firstName;
optional String lastName;
required String fullName;
required String emailAddress;
optional PhoneNumber mobileNumber;
optional String countryCode;
optional String languageCode;
}
Phone Number Data Elements
This structure details the Phone Number object.
Phone Number Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | countryCode | String | Required | Phone number country code (International dialing code, e.g., “1” for the US). |
2 | phoneNumber | String | Required | Phone number. |
Phone Number Data Elements Code Example
dictionary PhoneNumber {
required String countryCode;
required String phoneNumber;
}
Shipping Address Data Elements
This structure details the Shipping Address object.
Shipping Address Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | name | String | Required | The name of the organization/entity at the address. |
2 | line1 | String | Required | Line 1 of the address. |
3 | line2 | String | Optional | Line 2 of the address. |
4 | line3 | String | Optional | Line 3 of the address. |
5 | city | String | Required | Name of the city. |
6 | state | String | Required | Name of the state. |
7 | zip | String | Required | Zip code for this address. |
8 | countryCode | String | Required | Country code for this address (ISO 3166-1 alpha-2 format). |
9 | deliveryContactDetails | Object(DeliveryContactDetails) | Optional | Delivery contact details for a shipping address. See Delivery Contact Details Data Elements for more information. |
Shipping Address Data Elements Code Example
dictionary ShippingAddress {
required String name;
required String line1;
optional String line2;
optional String line3;
required String city;
required String state;
required String zip;
required String countryCode;
optional DeliveryContactDetails deliveryContactDetails;
}
Delivery Contact Details Data Elements
This structure details the DeliveryContactDetails object.
Delivery Contact Details Data Elements
Seq. # | Element Name | Element Type | Element Usage | Description |
---|---|---|---|---|
1 | contactFullName | String | Optional | Consumer-provided name of the contact person. |
2 | contactPhoneNumber | Object(PhoneNumber) | Optional | Consumer-provided phone number of the contact person. |
Delivery Contact Details Data Elements Code Example
dictionary DeliveryContactDetails {
optional String contactFullName;
optional PhoneNumber contactPhoneNumber;
}
Updated 19 days ago