Invoke CellPoint's HPP

To integrate Hosted Payment Page (HPP) with your Digital Web Channel or Storefront, you can use the simple form that CPD provides. When you redirect customers to HPP as they check out to make a payment; a payment page opens outside your shopping cart page.

After completion of the payment, the control is passed back to the merchant URL. The customer is redirected to one of the following merchant URLs:

Merchant URLTransaction status
Accept-URLPayment is successful.
Cancel-URLPayment fails or customers cancels a transaction.

When Velocity receives a payment request, it performs an extensive validation of the received data. The validation ensures the following:

  • The payment page is rendered correctly on a customer’s mobile device.
  • The transaction has the maximum chance of succeeding when sent to the PSP or Acquirer for clearance.

The callback request informs you about the payment status as an HTTP POST. Your technical team can customize the transaction details that you view. This is an asynchronous message in a separate HTTP transaction initiated from Velocity. The message is in addition to the original synchronous response to the payment request and the user redirect to confirmation page.

🚧

Note: Consider the following:

  • The callback response parameter is customizable.
  • Velocity accepts the parameters if they are lowercase only.
  • The request contains body with URL encoded format. Therefore, all the parameters may not be visible in the URL.

Sample Request

To redirect your customers to Velocity HPP, send the following request syntax to invoke Velocity HPP as a request.

<!DOCTYPE HTML>
<html>
	<body>
		<form action="https://{HPP_HOST}/views/web.php" method="POST" id="order-form">
			<input type="hidden" name="country" value="200"/>
			<input type="hidden" name="clientid" value="10022"/>
			<input type="hidden" name="account" value="100220"/>
			<input type="hidden" name="accept-url" value="{accept-url}"/>
			<input type="hidden" name="cancel-url" value="{cancel-url}"/>
			<input type="hidden" name="callback-url" value="{callback-url}"/>
			<input type="hidden" name="orderid" value="1561120588855"/>
			<input type="hidden" name="operator" value="20000"/>
			<input type="hidden" name="language" value="us"/>
			<input type="hidden" name="customer-ref" value="test"/>
			<input type="hidden" name="email" value="[email protected]"/>
			<input type="hidden" name="mobile-country" value="200"/>
			<input type="hidden" name="mobile" value="9898989898"/>
			<input type="hidden" name="amount" value="1.232"/>
			<input type="hidden" name="auth-token" value="E814B1DE-2A6A-4A09-B522-13D5CD9829D1"/>
			<input type="hidden" name="init-token" value="f26ebd24d623f228cb8bc37f30939003ffd1c98b2d24ab8be35e9a881521fc1b4b3f82bf131471ff68a9c716c20af08141ff4a1337f0c31ee8ddc75bedb35fd8"/>
			<input type="hidden" name="nonce" value="12345"/>
			<input type="hidden" name="orderdata" value="{JSON order-data}"/>
			<input type="hidden" name="gtm-data" value="{gtmData}"/>
			<input type="hidden" name="profile-id" value="XC2G6BYDBqibRdO06G1OGZq6OBxM"/>
			<input type="hidden" name=response-content-type" value=" 2"/>
			<input type="hidden" name="txntype" value="1|3|5"/>
			<input type="hidden" name="additionaldata" value='{
  "additional_data": {
    "param": [
      {
        "name": "session_token",
        "text": "2A6A4A09B52213D5CD9829D1"
      },
      {
        "name": "hold_fee_amount",
        "text": "150"
      },
      {
        "name": "hold_fee_currency_code",
        "text": "608"
      },
      {
        "name": "hold_period",
        "text": "8"
      },
      {
        "name": "stepper",
        "text": "1"
      }   
    ]
  }
}'/>
			<input type="submit" value="Pay" class="btn-link"/>
		</form>
	</body>
</html>
Request Parameters

Request Parameters

The following tables describe the parameters sent in a request:

ParameterTypeRequiredDescription
clientidIntegerYesA merchant’s unique ID for Velocity, which CPD creates.
accountIntegerYesThe ID of a sub-account with which a payment transaction is associated. The account ID is an integer greater than 100000 and account number is an integer smaller than 1000. CPD provides the account number.
orderidStringYesThis is a unique order identification string.
operatorIntegerNoThe ID of a customer’s mobile network operator. CPD recommends including this parameter in the request to ensure Velocity interacts with the operator accurately.

A typical value is (’country id’ multiplied by 100).
countryIntegerYesThe ID of a country from which a customer creates a transaction. It is based on the International Organization for Standardization (ISO) country standard numeric code.
currency-codeIntegerNoThe ID of a currency using which a customer creates a transaction. CPD provides this ID.

Note: The list of supported currency is based on the agreement between a merchant and CPD. If you do not provide any currency code, Velocity uses the default client country for the payment routing.
mobileIntegerNoThe MSISDN of a customer without the International Dialling Code.
emailStringNoThe email address of a customer.
customer-refStringNoA unique merchant’s reference ID for a customer. Velocity uses this token to identify a customer. Additionally, the customer reference is included in the request to the specified auth-URL to authenticate the customer when paying with a stored card through the mVault module if single sign-on is used.

Note: If neither country nor currency-code is provided, then the default client country is used for the payment routing.
amountDecimalYesThe total amount that a customer is charged for a payment transaction in a country’s currency.
languageStringNoThe default language that Velocity uses when translating the payment pages. Velocity language codes are based on the ISO-639-1 standard.

Refer to http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes for details.
accept-urlStringNoThe absolute URL where Velocity directs the customer after successfully completing a payment transaction.

Note: If you do not provide this parameter, Velocity uses your default accept URL.
cancel-urlStringNoThe absolute URL where Velocity directs customers if they cancel a payment transaction midway.

Note: If you do not provide this parameter, Velocity uses your default cancel URL.
callback-urlStringNoThe absolute URL of the server-to-server callback.

Note: If you do not provide this parameter, Velocity uses your default call back URL.
auth-tokenStringNoThe token sent to a specified auth-URL to authenticate a customer when paying with a stored card through the mVault module if single sign-on is used.
hmacStringYesThe Message Authentication Code. It is calculated by creating a SHA512 hash comprising the input fields in the order listed in the Message Authentication Code table.

Using MAC calculation secures the information sent by the merchant to Velocity. It applies the SHA-512 encryption algorithm on key parts of the information sent to protect against tampering. The ‘salt’ is a merchant's shared secret string used to ensure that the provided MAC is unique.
order dataJSON stringNoThe order details, which contains event, location, date or time, ticket type, cost, booking fee, quantity, and total price. Sample code is given in Display Order Data .
gtm-dataJSON stringNoIt is a payload for Google Analytics, the details of which are given in another document. The document can be made available on request.
response-content-typeIntegerNoThe format in which merchant gets the redirect response:
Array content type = 1 (default value).
JSON content type = 2.
txntypeIntegerNoA value to indicate the purchase type such as Search and Book (S&B), Managed My Booking (MYB). The values are:
• 1 - S & B.
• 3 - MYB.
• 5 - MYB (Disable PCH).
• 6 - CPL Transaction.
• 7 - Call Centre Transaction.
additionaldataJSON stringNoThe additional data sent from a merchant.
nonceStringYesTimestamp / random string.
init-tokenStringYesThis is a combination of SHA512 (clientid+username+password+nonce+accepturl) encryption.

Example:
clientid=10007
username = CPM
password = TEST
nonce = 123435

The above combination generates the following token:
SHA512(10007CPMTEST123435).
profile-idStringNoThe profile ID of a customer which is used for fetching the customer’s profile from an external system or Velocity.

Note: This field is mandatory only if merchant wants user profile authentication.

additionaldata JSON

ParameterTypeRequiredDescription
session_tokenStringNoAn authentication token for validating a user.
hold_fee_amountDecimalYesThe holding fee amount that a customer is charged for an offline payment transaction in a country’s currency.
hold_fee_currency_codeIntegerNoThe ID of a currency from which a customer creates a transaction. CPD provides this ID.

Note: The list of supported currency is based on the agreement between a merchant and CPD. This field is optional if holding fee currency is assumed as transaction currency.
hold_periodIntegerNoThe number of hours for which the booking is reserved for offline payment transaction completion.

Note: The information is shown on HPP only.
stepperIntegerNoThe default value = 1 It depends on merchant specification related to breadcrumbs for HPP UI.

Note: Merchants can request for specific breadcrumbs shown to customers on the top of HPP payment page. Such as booking, add-ons, payment, and so on.

JSON - Sample Response

Following is a sample POST data to accept or cancel URL in HPP redirect callback for split payment. It is not visible in the URL.

[redirect] => {
  "order_status": {
    "code": "1/0"
  },
  "session_id": "21465",
  "session_type": "1",
  "sale_amount": {
    "value": "8716000",
    "currency_id": "170",
    "decimals": "2",
    "alpha3code": "COP"
  },
  "status": {
    "code": "4030",
    "message": "Session Complete"
  },
  "additional_data": {
    "params": [
      {
        "name": "platform",
        "text": "WEBB2C"
      },
      {
        "name": "hold_fee_currency_code",
        "text": "COP"
      }
    ]
  },
  "transactions": {
    "transaction": [
      {
        "id": "32629",
        "order_id": "3J6POZ",
        "hmac": "f7ef5a949c37068bad50e9e15d735eef827b108009825c0ee630db257ac58dacb91fe3cebdcec39d5549e0b1bcc39297f752d29a512e09815805e20219b4cfd1",
        "payment_method": "CASH",
        "payment_type": "8",
        "date_time": "2021-07-12T05:25:15+00:00",
        "issuing_bank": "Efecty",
        "installment": "2",
        "ip_address": "123.203.28.127",
        "service_type_id": "1",
        "amount": {
          "text": "8716000",
          "currency_id": "170",
          "decimals": "2",
          "alpha3code": "COP",
          "conversion_rate": "1"
        },
        "status": {
          "code": "2001",
          "message": "Payment captured by PSP"
        },
        "psp": {
          "id": "70",
          "name": "SafetyPay",
          "external_id": "469537"
        },
        "card": {
          "id": "7",
          "name": "VISA",
          "mask_card_number": "4444********1111",
          "expiry": "********"
        },
        "additional_data": {
          "params": [
            {
              "name": "platform",
              "text": "WEBB2C"
            },
            {
              "name": "_ga",
              "text": "2.164258751.1803897181.1625637105-1001259588.1622795959"
            },
            {
              "name": "office_id",
              "text": "BOGAV08AK"
            },
            {
              "name": "hold_fee_currency_code",
              "text": "COP"
            },
            {
              "name": "kpi_used",
              "text": "true"
            },
            {
              "name": "Response_Code",
              "text": "101"
            },
            {
              "name": "CUS",
              "text": "469537"
            },
            {
              "name": "NIT",
              "text": "9006166521"
            },
            {
              "name": "coupon_issue_timestamp",
              "text": "2021-07-12T05:27:14"
            },
            {
              "name": "coupon_expiry",
              "text": "2021-07-13T03:01:10"
            },
            {
              "name": "coupon_id",
              "text": "110924"
            },
            {
              "name": "receipt_filename",
              "text": "prdcpr_8f64d5c3-8575-460a-994b-52eeddd01702.pdf"
            }
          ]
        },
        "billing_address": {
          "first_name": "First",
          "last_name": "Last",
          "street": "Street Road",
          "city": "New York",
          "state": "New York",
          "country": "US",
          "postal_code": "01234"
        },
        "fraud": {
          "status_code": "Post Auth Success",
          "status_desc": "Post Auth Success",
          "post_auth_ext_id": "6255590973676885104011",
          "post_auth_ext_status_code": "ACCEPT"
        }
      }
    ]
  }
}
JSON - Response Parameters

JSON - Response Parameters

The following tables describe the redirect parameters.

ParameterChild ParameterDescription
order_statuscodeAn integer code indicating the status of the transaction
1 = Success
0 = Failed.
session_idThe Velocity session ID for the payment transaction.
session_typeAn integer that defines split payment type.

session_type = 1 ; User has opted to pay with split payment.
session_type = 2 ; User has not opted to pay with split payment.
sale_amounttextThe total amount that the customer was charged for the payment transaction in a country’s currency.
currency_idThe currency ID , which the customer was charged for the payment.
alpha3codeThe three-letter country codes.
decimalsThe currency precision. For example, 2 for the USD currency parameter.
statuscodeAn integer code indicating the status of the session.
messageThe status message of the session.
additional_datasession_tokenThe merchant's unique token.
hold_fee_amountThe holding fee amount.
hold_fee_currency_codeThe holding fee currency.
hold_periodThe hold period.

transactions

ParameterChild ParameterDescription
idVelocity’s unique ID for the payment transaction.
order_idThe order ID the merchant provides when a transaction is initiated. In case of airlines, this will be the passenger name record (PNR).
hmacThe Message Authentication Code. It is calculated by creating a SHA512 hash comprising the input fields in the order listed in the Message Authentication Code table.

Using MAC calculation secures the information sent by Velocity to the merchant by applying the SHA-512 encryption algorithm on key parts of the information sent to protect against tampering. The “salt” is a merchant's shared secret string used to ensure that the provided MAC is unique.
payment_methodThe type of methods used for payment. The values are
• Direct Debit (Online payment) - DD.
• Credit/Debit Card (Card payment) - CD.
• Wallet - eWallet.
• Other payment methods – CASH.
payment_typeThe type of payments

1. Card
2. Voucher
3. Wallet
4. APM
5. Card Token
6. Virtual
7. OnlineBanking
8. Offline Payment
ip_addressThe IP address of the transaction initiation.
date_timeThe date and time when the transaction was initiated in UTC.
installmentThe payment is done through instalments.
issuing_bankThe bank name for PSE or the Onsite Center name for Onsite Payment. This parameter is sent for Safety Pay transactions only.

Note: For Card transactions, this parameter is not sent in the redirect callback.
approval_codeThe issuer approval code provided by the PSP for a transaction. Available for card payments only.
fraudstatus_codeThe final fraud status code. For example, 3011/3111. Refer to Fraud Status Codes for the complete set of error codes.

Note: If Fraud is not enabled , then this parameter is not sent in the redirect callback.
status_descThe final fraud status description. For example, Accepted / Review.

Note: If Fraud is not enabled , then this parameter is not sent in the redirect callback.
pre_auth_ext_status_codeThe pre-auth fraud check system response code, if available.
pre_auth_ext_idThe pre-auth fraud check system transaction ID, if available.
post_auth_ext_idThe post-auth fraud check system transaction ID, if available.
post_auth_ext_status_codeThe post-auth fraud check system response code, if available.
service_type_idThe type of exchange services that can be applied to a transaction. The FX Services (DCC, MCP, and PCC) is applied in a manner whether it is opted or not.

The ID will be a 2-digit XY.
• X - Represents which exchange service is applicable for a transaction.
• Y - Represents the exchange is used or not (opt or not opt).

For example, The ID will be 11 for DCC opt in and 12 for DDC Not opt.

See the Exchange Service ID table for possible values.
billing_addressfirst_nameThe billing address first name, if available.
last_nameThe billing address last name, if available.
streetThe billing address street address, if available.
cityThe billing address city name, if available.
countryThe billing address country name, if available.
stateThe billing address state or region value, if available.
postal_codeThe billing address zip code, if available.
amounttextThe total amount that the customer was charged for the payment transaction in a country’s currency.
currency_idThe currency ID , which the customer was charged for the payment.
decimalsThe currency precision. For example, 2 for USD for the currency parameter.
alpha3codeThe three-letter country codes.
conversion_rateDefault value = 1.

This field contains the conversion rate given by the FX Service in decimals. If the FX Service is not used/opted, then the value of this field is 1.
statuscodeThe status code of the transaction. Refer to Transaction Status Codes for the complete set of status codes.

Note: For the payment status timeout scenario, state_id = 0 is sent in the response.
messageThe status message of the transaction.
pspidVelocity’s unique ID for the PSP.
nameThe name of the PSP or ACQ used for completing the transaction. This is present in the callback if it is configured during onboarding. For example, 2C2P, 2C2P-ALC, GlobalPayment, Worldpay, and ChasePayment. The list of psp-name is provided at the time of implementation.
reference_idThe transaction ID received from the PSP or ACQ. This is present in the redirect if it is configured during onboarding.
cardidThe Velocity Card ID to identify the card scheme. For example, Mastercard or Visa. If the transaction is abandoned, then this attribute is not present. The list of card IDs is provided at the time of implementation.
mask_card_numberThe masked card of the transaction. For example, 4444XXXXXXX1111.

Note: For APM, PSE, and Onsite transactions, this parameter is not sent in the redirect callback.
expiryThe card expiration date of the transaction. For example, 01/21.

Note: For APM, PSE, and Onsite transactions, this parameter is not sent in the redirect callback.
nameThe card scheme or network of the transaction. For example, Visa or Mastercard.

Note: For APM, PSE, and Onsite transactions, this parameter is not sent in the redirect callback.
additional_data
NITThe Merchants Code at PSE. This parameter is sent for PSE transactions only.
coupon_issue_timestampThe Date Time of coupon issue by Safety Pay. This parameter is sent for Safety Pay onsite payment transactions only.
coupon_expiryThe Date Time of coupon expiry by Safety Pay. This parameter is sent for Safety Pay onsite payment transactions only.
coupon_idThe AgreementCode by SafetyPay. This parameter is sent for Safety Pay onsite payment transactions only.
receipt_filenameThe filename of the coupon generated.

Array Format - Sample Response

Following is a sample POST data to accept or cancel URL in HPP redirect callback for split payment. It is not visible in URL.

session_id = 50787
session_type = 2
order_id = SAWEQD1
transaction_status = 1
 
transaction_data[9018273][state_id] = 2000
transaction_data[9018273][amount] = 100965
transaction_data[9018273][sign] = 7d777e2f338c8db976e39312445484f3
transaction_data[9018273][currency] = 840
transaction_data[9018273][decimals] = 2
transaction_data[9018273][payment_method] = Card
transaction_data[9018273][card_name] = VISA
transaction_data[9018273][masked_card] = 411234******4113
transaction_data[9018273][dcc_card_currency] = 123
transaction_data[9018273][dcc_card_amount] = 100
transaction_data[9018273][dcc_card_decimals] = 2
transaction_data[9018273][dcc_exchange_rate] = 45.78
transaction_data[9018273][fraud_status_code] = 3111
transaction_data[9018273][fraud_status_desc] = Accepted
transaction_data[9018273][pre_auth_ext_id] = 5900006009536418604009
transaction_data[9018273][pre_auth_ext_status_code] = 105
transaction_data[9018273][post_auth_ext_id] = 5900006009536418604009
transaction_data[9018273][post_auth_ext_status_code] = ACCEPT
transaction_data[9018273][approval_code] = 776441
transaction_data[9018273][psp_name] = Wire-Card
transaction_data[9018273][psp_ref_id]=34535343
transaction_data[9018273][expiration_date] = 01/21
transaction_data[9018273][first_name] = Sam
transaction_data[9018273][last_name] = Ryan
transaction_data[9018273][street_address] = 253 M.L. Quezon Street
transaction_data[9018273][city] = Makati City
transaction_data[9018273][country] = Philippines
transaction_data[9018273][province] = CEB
transaction_data[9018273][postal_code] = 12345
transaction_data[9018273][session_token] = 2A6A4A09B52213D5CD9829D1
transaction_data[9018273][hold_fee_amount] = 100.20
transaction_data[9018273][hold_fee_currency_code] = 608
transaction_data[9018273][hold_period] = 8
 
transaction_data[9018274][state_id] = 2000
transaction_data[9018274][amount] = 100
transaction_data[9018274][sign] = 7d777e2f338c8db976e39312445484f3
transaction_data[9018274][currency] = 840
transaction_data[9018274][decimals] = 2
transaction_data[9018274][payment_method] = Voucher
transaction_data[9018274][card_name] = Voucher
transaction_data[9018274][approval_code] = 776441
transaction_data[9018274][psp_name] = Travel-Fund

Array Format - Response Parameters

Array Format Parameters

The following is a description of the parameters.

ParameterDescription
order_idThe order ID that a merchant provides after initializing a transaction.
transaction_statusAn integer code indicating the status of the transaction, where 1 = Success and 0 = Fail.
transaction_data[transaction_id][state_id]The status of the transaction. Refer to Transaction Status Codes for details.

For the payment status timeout scenario, state_id = 0 is sent in the response.
transaction_data[transaction_id][currency]The numeric ISO currency code in which the customer was charged for non-DCC transactions. If DCC was selected this parameter provides the pricing currency, the charged currency is provided in dcc_card_currency.

Note: See https://en.wikipedia.org/wiki/ISO_4217 for details.
transaction_data[transaction_id][amount]The total amount that the customer was charged for the payment transaction in a country’s currency. If DCC was selected, this parameter provides the pricing amount, the amount charged is in dcc_card_amount.
transaction_data[transaction_id][sign]The Unique MD5 string for the transaction combination of (orderid+stateid+currency+ and so on).
transaction_data[transaction_id][decimals]The currency decimal precision. For example, 2 for USD for the currency parameter.
transaction_data[transaction_id][payment_method]The payment method used for a transaction. For example, Card, or PayPal.
transaction_data[transaction_id][card_name]The card scheme or network of the transaction. For example, Visa or Mastercard. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][masked_card]Masked card of the transaction. For example, 4444XXXXXXX1111. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_currency]The ISO numeric card currency number if DCC is selected for a transaction. If DCC is not selected, this parameter is not sent in the redirect callback.

Note: See https://en.wikipedia.org/wiki/ISO_4217 for details.
transaction_data[transaction_id][dcc_card_amount]The total amount that a customer was charged for a payment transaction if DCC is selected for the transaction. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_decimals]DCC currency decimal precision. For example, 2 for GBP for dcc_card_currency. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_exchange_rate]The DCC currency exchange rate as returned by a DCC provider. For example, 54.777. If DCC is selected, this parameter is sent in the redirect callback.
transaction_data[transaction_id][fraud_status_code]The final fraud status code. For example, 3011, 3111. Refer to Transaction Status Codes for details. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][fraud_status_desc]The final fraud status. For example, Accepted or Review. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][pre_auth_ext_status_code]The pre-auth fraud check system response code.
transaction_data[transaction_id][pre_auth_ext_id]The pre-auth fraud check system transaction ID.
transaction_data[transaction_id][card_name]The card scheme or network of the transaction. For example, Visa or Mastercard. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][masked_card]The masked card number of a transaction. For example, 4444XXXXXXX1111. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_currency]The ISO numeric card currency code if DCC is selected for a transaction. If DCC is not selected, this parameter is not sent in the redirect callback.

Note: See https://en.wikipedia.org/wiki/ISO_4217 for details.
transaction_data[transaction_id][dcc_card_amount]The total amount that a customer is charged for a payment transaction if DCC is selected. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_decimals]The DCC currency precision. For example, 2 for GBP for dcc_card_currency. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_exchange_rate]The DCC currency exchange rate as returned by a DCC provider. For example, 54.777. If DCC is selected, this parameter is sent in the redirect callback.
transaction_data[transaction_id][fraud_status_code]Final fraud status code. For example, 3011 or 3111. Refer to Fraud Status Codes for details. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][fraud_status_desc]The final fraud status. For example. Accepted or Review. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][pre_auth_ext_status_code]The pre-auth fraud check system response code.
transaction_data[transaction_id][pre_auth_ext_id]The pre-auth fraud check system transaction ID.
transaction_data[transaction_id][card_name]The card scheme or network of the transaction. For example, Visa or Mastercard. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][masked_card]The masked card number of a transaction. For example, 4444XXXXXXX1111. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_currency]The ISO numeric card currency code, which is shown only if DCC is selected for a transaction. If DCC is not selected, this parameter is not sent in the redirect callback.

Note: See https://en.wikipedia.org/wiki/ISO_4217 for details.
transaction_data[transaction_id][dcc_card_amount]The total amount that a customer was charged for a payment transaction if DCC is selected. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_card_decimals]The DCC currency precision. For example, 2 for GBP for dcc_card_currency. If DCC is not selected, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][dcc_exchange_rate]The DCC currency exchange rate as returned by a DCC provider. For example, 54.777. If DCC is selected, this parameter is sent in the redirect callback.
transaction_data[transaction_id][fraud_status_code]The final fraud status code. For example, 3011 or 3111. Refer to Fraud Status Codes for details. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][fraud_status_desc]The final fraud status description. For example, Accepted or Review. If Fraud is not enabled, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][pre_auth_ext_status_code]The Pre-auth fraud check system response code.
transaction_data[transaction_id][pre_auth_ext_id]The Pre-auth fraud check system transaction ID.
transaction_data[transaction_id][post_auth_ext_id]The Post-auth fraud check system transaction ID.
transaction_data[transaction_id][post_auth_ext_status_code]The Post-auth fraud check system response code.
transaction_data[transaction_id][approval_code]The Acquirer approval code for the transaction.

Note: It is provided, if available.
transaction_data[transaction_id][psp_name]Acquirer or processor name through which this transaction was processed. For example, AUB for AliPay and 2C2P for some cards.
transaction_data[transaction_id][psp_ref_id]Acquirer or processor reference ID through which this transaction was processed.
transaction_data[transaction_id][expiration_date]The card expiration date of the transaction. For example, 01/21. For APM transactions, this parameter is not sent in the redirect callback.
transaction_data[transaction_id][first_name]The billing address first name.

Note: The parameters related to billing address and contact details are sent only if they are available.
transaction_data[transaction_id][last_name]The billing address last name.
transaction_data[transaction_id][street_address]The billing address street address.
transaction_data[transaction_id][city]The billing address city name.
transaction_data[transaction_id][country]The billing address country name.
transaction_data[transaction_id][province]The billing address state/region value.
transaction_data[transaction_id][postal_code]The billing address zip code.
transaction_data[transaction_id][email]The card holder's email address.
transaction_data[transaction_id][mobile]The card holder's mobile number.
transaction_data[transaction_id][dialing_country_code]The card holder's mobile dialling country code.
transaction_data[transaction_id][session_token]transaction_data[transaction_id][hold_fee_amount]transaction_data[transaction_id][hold_fee_currency_code]transaction_data[transaction_id][hold_period]The parameter contains additional information, which is sent in the request. Examples are {"additional_data":{"param": [{"name": "session_token","text": "2A6A4A09B52213D5CD9829D1"}]}}