Response Parameters
HPP Reference
This page defines the parameters received from Velocity HPP. For sample code, see HPP.
Form data
The form data element that CellPoint Velocity HPP returns includes the following:
Name | Requirement | Format | Description |
---|---|---|---|
client_id | Required | Integer | A merchant’s unique ID for Velocity, which CellPoint Digital creates. |
account_id | Required | Integer | The ID of a sub-account with which a payment transaction is associated. The account ID is an integer greater than 100000, and the account number is an integer smaller than 1000. CellPoint Digital provides the account number. |
session_id | Optional | Integer | The internal ID of a session used for multiple payment transactions during one payment flow. For example, a split payment or a retry of a failed payment transaction. |
sale_amount | Required | JSON string | See the sale_amount section below. |
status | Required | JSON string | See the status section below. |
transactions | Required | JSON string | See the transactions section below. |
callback_url | Required | String | The absolute URL of the server-to-server callback. Note: If you do not provide this parameter, Velocity uses your default callback URL. |
session_type | Optional | Integer | The numeric code for the type of payment session. Possible values: • 1 - Full payment session• 2 - Split payment session |
order_status | Required | JSON string | See the order_status section below. |
sale_amount
sale_amount
The sale_amount
object is required, and it contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
value | Required | Integer | The amount of the transaction, expressed as an integer including the precision in this object's decimals field. For example, if decimals is 2 and value is 12030 , the transaction amount is 120.30 . |
currency_id | Required | Integer | The currency code for the transaction currency. |
decimals | Required | Integer | The currency precision; for example, 2 for USD (which is written with two units after the decimal, as in $1.00.) |
alpha3code | Required | String | The three-letter currency code for the transaction currency. |
status
status
The status
object is required, and it contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
code | Required | Integer | The status code for the payment session. See Reference for possible values. |
message | Required | String | The status message for the payment session. See Reference for possible values. |
transactions
transactions
Please note:
- The
transactions
object is required, and it contains thetransaction
array. - Each object in the
transaction
array describes one transaction in a payment session.
Each object in the transaction
array contains the following:
Name | Requirement | Format | Description |
---|---|---|---|
id | Required | Integer | The unique ID of the transaction. |
order_id | Required | String | The order ID number the merchant provides when a transaction is initiated. |
fee | Required | Integer | The amount of any fees or taxes added to the price of the item, , expressed as an integer including the precision of decimals in amount . For example, if decimals is 2 and fee is 12030 , the fee is 120.30 . |
hmac | Required | String | The Message Authentication Code (MAC). It is calculated by creating a SHA-512 hash comprising the input fields in the order listed in the Message Authentication Code table. MAC calculation secures the information sent by the merchant to Velocity by applying the SHA-512 encryption algorithm on key parts of the information sent to protect against tampering. The "salt" is the merchant's shared secret string used to ensure that MAC is unique. Note: CPD provides the salt value to merchants. Conditional parameters in the Message Authentication Code table are optional if not provided in request; if the conditional parameters are present in request, they are mandatory here. |
product_type | Optional | Integer | The code to identify the product type. |
approval_code | Optional | Integer | The unique ID that a PSP provides for a transaction. |
payment_method | Optional | String | A name for the method of payment used in the transaction. |
payment_type | Required | Integer | The numeric code for this payment method's type of payment (like card, wallet, or APM). Possible values:
|
date_time | Required | String | The date and time the transaction was initiated, expressed in GMT. |
amount | Required | JSON string | See the amount section below. |
sale_amount | Required | JSON string | See the sale_amount section below. |
status | Required | JSON string | See the status section below. |
psp | Optional | JSON string | See the psp section below. |
card | Required | JSON string | See the card section below. |
customer_info | Conditional Requirement: Can be mandatory or optional, based on the requirement of a merchant or PSP. | JSON string | See the customer_info section below. |
billing_address | Required | JSON string | See the billing_address section below. |
pos | Required | Integer | POS identification. |
ip_address | Required | String | The IP address used in this transaction. |
fraud_status_code | Conditional Requirement: Required if using fraud detection feature. | Integer | The fraud status code for this transaction. |
fraud_status_desc | Conditional Requirement: Required if using fraud detection feature. | String | The fraud status description for this transaction. |
route_config_id | Required | Integer | The route configuration ID. |
fraud | Conditional Requirement: Required if using fraud detection feature. | JSON string | See the fraud section below. |
installment | Optional | Integer | This is no longer used in a transaction. |
accept_url | Required | String | The absolute URL to which 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_url | Required | String | The absolute URL to which Velocity directs the customer if they cancel a payment transaction midway. Note: If you do not provide this parameter, Velocity uses your default cancel URL. |
txn_type_id | Required | Integer | The numeric code describing the transaction type. See Reference for possible values. |
performed_operations | Required | JSON string | See the performed_operations section below. |
performed_operation_time | Required | String | The completion date and time of all the transaction's operations, expressed in GMT. |
amount
amount
Parent: transaction
The amount
object is required; it has the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
value | Required | Integer | The amount of the transaction, expressed as an integer including the precision in this object's decimals field. For example, if decimals is 2 and value is 12030 , the product price is 120.30 . |
currency_id | Required | Integer | The currency code. |
decimals | Required | Integer | The currency precision; for example, 2 for USD (which is written with two units after the decimal, as in $1.00.) |
alpha3code | Required | String | The three-letter currency code. |
conversion_rate | Required | Integer | The currency exchange rate given by FX. If you do not subscribe to FX, the value of this field is 1 . |
sale_amount
sale_amount
Parent: transaction
The amount
object is required; it has the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
value | Required | Integer | The amount of the transaction, expressed as an integer that includes the precision in this object's decimals field. For example, if decimals is 2 and value is 12030 , the transaction amount is 120.30 . |
currency_id | Required | Integer | The currency code. |
decimals | Required | Integer | The currency precision; for example, 2 for USD (which is written with two units after the decimal, as in $1.00.) |
alpha3code | Required | String | The three-letter currency code. |
status
status
Parent: transaction
The status
object in transaction
is required; it contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
code | Required | Integer | The status code for this transaction. See Reference for possible values. |
message | Required | String | The status message for this transaction. See Reference for possible values. |
psp
psp
Parent: transaction
The psp
object is optional; it describes the payment service provider (PSP) associated with this transaction. It contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
id | Required | Integer | The numeric code for the PSP or ACQ. See Reference for possible values. |
name | Required | String | The name of the PSP or ACQ used for completing the transaction. For example, 2C2P, 2C2P-ALC, GlobalPayment, Worldpay, or ChasePayment. |
external_id | Required | Integer | ID of the transaction at the PSP or ACQ. |
card
card
Parent: transaction
The card
object is required; it describes the payment method used in this transaction. It has the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
id | Required | Integer | A numeric code for the method of payment used in this transaction. See Reference for possible values. |
card_name | Optional | String | A name assigned to this method of payment. |
masked_card_number | Required | String | The masked card number for this method of payment. |
expiry | Required | String | The expiration date of this method of payment. |
customer_info
customer_info
Parent: transaction
The customer_info
object can be mandatory or optional, based on the requirement of a merchant or a PSP. It has the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
language | Required | String | The 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. |
email | Optional | String | The customer's email address. |
mobile | Optional | Integer | The customer's mobile phone number, including the International Dialing Code. |
device_id | Optional | String | The device ID of the device used for this transaction. |
billing_address
billing_address
Parent: transaction
The billing_address
object is required; it describes the billing address associated with the payment method used in this transaction. It has the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
first_name | Required | String | The customer's first name. |
last_name | Required | String | The customer's last name. |
street | Required | String | The first line of the customer's street address. |
street2 | Optional | String | The second line of the customer's street address. |
city | Required | String | The city in the customer's mailing address. |
state | Required | String | The state in the customer's mailing address. |
postal_code | Required | Integer | The zip code or postal code for the customer's mailing address. |
country | Required | String | The country in the customer's mailing address. |
mobile | Optional | Integer | The customer's mobile phone number, including the International Dialing Code. |
email | Optional | String | The customer's email address. |
billing_idc | Optional | String | Billing IDC identification. |
alpha2code | Optional | Integer | The two-letter numeric code for the country in the customer's mailing address. |
fraud
fraud
Parent: transaction
The fraud
object is required if the merchant uses a fraud detection feature. It contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
status_code | Conditional Requirement: Required if using fraud detection feature. | Integer | The fraud status code for this transaction. |
status_desc | Conditional Requirement: Required if using fraud detection feature. | String | The fraud status description for this transaction. |
pre_auth_ext_id | Conditional Requirement: Required if using fraud detection feature. | Integer | The pre-authorization ID. |
pre_auth_ext_status_code | Conditional Requirement: Required if using fraud detection feature. | Integer | The pre-authorization status code. |
pre_auth_provider_id | Conditional Requirement: Required if using fraud detection feature. | Integer | The ID of the pre-authorization provider. |
pre_auth_fraud_status | Conditional Requirement: Required if using fraud detection feature. | Integer | The pre-authorization fraud status code. |
performed_operations
performed_operations
Parent: transaction
Please note:
- The
performed_operations
object is required; it describes the operations performed for this transaction. - The
performed_operations
object contains theperformed_operations
array. - Each object in the
performed_operations
array describes one operation.
Each object in the performed_operations
array contains the following name-value pairs:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
amount | Required | Integer | The transaction amount handled by this operation. |
created | Required | String | The date and time that this operation commenced, expressed in GMT. |
performedOperations | Required | Integer | A numeric code for the operation performed. |
modified | Required | String | The date and time that this operation was completed, expressed in GMT. |
status | Required | String | The status of the operation. |
order_status
order_status
The order_status
object is required, and it contains the following name-value pair:
Name | Requirement | Format of value | Description of value |
---|---|---|---|
code | Required | Integer | The order status code. |
Updated 13 days ago