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_amountsection below. | 
| status | Required | JSON string | See the statussection below. | 
| transactions | Required | JSON string | See the transactionssection 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_statussection below. | 
sale_amount
sale_amountThe 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 decimalsfield. For example, ifdecimalsis2andvalueis12030, the transaction amount is120.30. | 
| currency_id | Required | Integer | The currency code for the transaction currency. | 
| decimals | Required | Integer | The currency precision; for example, 2for 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
statusThe 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
transactionsPlease note:
- The transactionsobject is required, and it contains thetransactionarray.
- Each object in the transactionarray 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 decimalsinamount. For example, ifdecimalsis2andfeeis12030, the fee is120.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 amountsection below. | 
| sale_amount | Required | JSON string | See the sale_amountsection below. | 
| status | Required | JSON string | See the statussection below. | 
| psp | Optional | JSON string | See the pspsection below. | 
| card | Required | JSON string | See the cardsection below. | 
| customer_info | Conditional Requirement: Can be mandatory or optional, based on the requirement of a merchant or PSP. | JSON string | See the customer_infosection below. | 
| billing_address | Required | JSON string | See the billing_addresssection 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 fraudsection 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_operationssection below. | 
| performed_operation_time | Required | String | The completion date and time of all the transaction's operations, expressed in GMT. | 
amount
amountParent: 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 decimalsfield. For example, ifdecimalsis2andvalueis12030, the product price is120.30. | 
| currency_id | Required | Integer | The currency code. | 
| decimals | Required | Integer | The currency precision; for example, 2for 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_amountParent: 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 decimalsfield. For example, ifdecimalsis2andvalueis12030, the transaction amount is120.30. | 
| currency_id | Required | Integer | The currency code. | 
| decimals | Required | Integer | The currency precision; for example, 2for USD (which is written with two units after the decimal, as in $1.00.) | 
| alpha3code | Required | String | The three-letter currency code. | 
status
statusParent: 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
pspParent: 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
cardParent: 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_infoParent: 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_addressParent: 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
fraudParent: 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_operationsParent: transaction
Please note:
- The performed_operationsobject is required; it describes the operations performed for this transaction.
- The performed_operationsobject contains theperformed_operationsarray.
- Each object in the performed_operationsarray 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_statusThe 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 3 months ago
