Payment Extension
Payment extensions are objects that can be added to the Order object to change the default behavior of a transaction. These objects need to be added to the order object before the payment brand is triggered. How a payment brand is triggered depends on the payment brand. You can find additional information on payment brand triggering in the 'Payment Brand Triggering' section found below.
An extension should be placed as a root level object in the order object. You may include more than 1 extension per order object, but each included extension can only occur once within the order object. Cardinal Cruise only processes a single transaction type at a time, so any extension found within the order object that is not for the payment brand being processed is simply ignored. This allows you to attach all your extensions up front without needing complex logic to determine which should be added to the object when.
Table of Content
Payment Brand Triggering
Payment Buttons
Payment brands that use payment buttons will start the transaction automatically when the button has been clicked. Due to this, the order object needs to either be updated before the payment button has been clicked or you need to use an event that will be called to update the order object before a request is sent to Cardinal systems. The simplest way to update the order automatically when the button is clicked is to leverage the order.update event.
Manually Started
Payment brands that are manually started require the merchant to call a function to start a transaction. An example of this is CCA which will not start until Cardina.start('cca') is called. These payment brands allow you to pass an updated order object when calling the start function. Refer to the start call documentation for more information.
Extensions
Looking implementation details on an extension?
Refer to the specific payment brand documentation for more details.
CCAExtension
Field | Type | Description |
---|---|---|
MerchantName | AN(25) | Override the Merchant name configured in the Centinel Merchant profile. |
MerchantUrl | AN(100) | Override the Merchant URL configured in the Centinel Merchant profile. |
AcquirerMerchantId | AN(25) | Override the Acquirer Merchant identifier configured in the Centinel Merchant profile. |
AcquirerId | N(6) | Override the acquiring institution identification code (the Acquirer BIN) that is currently configured in the Centinel profile. |
AcquirerPassword | AN(50) | The value in this field is used to facilitate Merchant Authentication File (MAF) authentication processing. |
CountryCodeOverride | AN(3) | Override the country code configured in the Centinel Merchant profile. |
FormId | String | |
PAResPayload | String | |
ProductCode | String | Should be set as:
|
ShippingMethod | String | |
ShippingDetails | Object | An object describing shipping details used in a 2.0 transaction |
TransactionDetails | Object | An object describing transaction details used in a 2.0 transaction |
AccountDetails | Object | An object describing account details used in a 2.0 transaction |
ShippingDetails
An object describing shipping details for CCA 2.0. These fields should match the Centinel / 2.0 spec field names. Refer to Centinel Documentation for more information on these fields type and description
Field | Description |
---|---|
ShippingNameIndicator | Indicates if the cardholder name on the account is identical to the shipping name used for the transaction.
|
ShippingMethodIndicator | Indicates shipping method chosen for the transaction.
|
ShippingAddressUsageIndicator | Indicates when the shipping address used for the transaction was first used.
|
ShippingAddressUsageDate | Date when the shipping address used for this transaction was first used. Format: YYYYMMDD |
DeliveryTimeframe | Indicates the delivery timeframe.
|
DeliveryEmail | For electronic delivery, email address to which the merchandise was delivered. |
TransactionDetails
An object describing transaction details for CCA 2.0. These fields should match the Centinel / 2.0 spec field names. Refer to Centinel Documentation for more information on these fields type and description
Field | Description |
---|---|
TransactionMode | |
ReorderIndicator | Indicates whether the cardholder is reordering previously purchased merchandise. 0 - First time ordered, 1 - Reordered |
PreOrderIndicator | Indicates whether the cardholder is placing an order with a future availability or release date.
|
PreOrderDate | Expected date that a pre-ordered purchase will be available.
|
GiftCardAmount | The purchase amount total for prepaid gift cards in major units.
|
GiftCardCurrencyCode | ISO 4217 currency code for the gift card purchased. |
GiftCardCount | Total count of individual prepaid gift cards purchased. |
FraudActivity | Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.
|
AccountDetails
An object describing account details for CCA 2.0. These fields should match the Centinel / 2.0 spec field names. Refer to Centinel Documentation for more information on these fields type and description
Field | Description |
---|---|
TransactionCountDay | The number of transactions (successful and abandoned) for this cardholder account within the last 24 hours. |
TransactionCountYear | The number of transactions (successful and abandoned) for this cardholder account within the last year. |
AddCardAttempts | The number of add card attempts in the last 24 hours. |
AccountAgeIndicator | The length of time cardholder has had an account.
|
AccountChangeIndicator | Length of time since the last change on the cardholder account. This includes shipping address, new payment account, or new user added.
|
AccountChangeDate | Date the cardholder opened the account.
|
AccountPwdChangeIndicator | Length of time since the cardholder changed or reset the password on the account.
|
AccountPwdChangeDate | Date the cardholder last changed or reset the password on the account.
|
AccountPurchases | The number of purchases with this cardholder account during the previous six months. |
PaymentAccountIndicator | Indicates the length of time that the payment account was enrolled in the merchant's account.
|
PaymentAccountAge | Date the payment account was added to the cardholder account.
|
AuthenticationIndicator | Indicates the type of Authentication request.
|
AlternateAuthenticationMethod | The mechanism used by the Cardholder to authenticate to the 3DS requestor.
|
AlternateAuthenticationDate | Date and time in UTC of the cardholder authentication.
|
AlternateAuthenticationData | Data that documents and supports a specific authentication process. |
PriorAuthenticationData | Data that documents and supports a specific authentication process. In the current version of the specification this data element is not defined in detail, however, the intention is that for each 3DS Requestor Authentication Method, this field carries data that the ACS can use to verify the authentication process. In future versions of the specification, these details are expected to be included |
PriorAuthenticationMethod | The mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.
|
PriorAuthenticationTime | Date and time in UTC of the prior cardholder authentication.
|
PriorAuthenticationRef | Date and time in UTC of the prior cardholder authentication.
|
PaypalExtension
Field | Type | Description | |
---|---|---|---|
PreventAddressOverride | Boolean | Prevent PayPal from displaying shipping information and allowing the consumer to change the shipping address. Possible Values:
| |
PayerId | String | ||
PreventAddressOverride | boolean |