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
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
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
Please note:
The transactions object is required, and it contains the transaction 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:
1 - Card
2 - Voucher and Credit
3 - Wallet
4 - APM
5 - Card Token
6 - Virtual
7 - Online Banking
8 - Offline Payment
9 - Mobile Money
10 - Pay Later
11 - Point of Sale
12 - UPI
13 - EMI
Applicable to subsequent responses during split payments.
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
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
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
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
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
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
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.
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
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
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
Parent:transaction
Please note:
The performed_operations object is required; it describes the operations performed for this transaction.
The performed_operations object contains the performed_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
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 about 1 month ago
\n\n# **Form data**\n\nThe form data element that CellPoint Velocity HPP returns includes the following:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format\",\n \"h-3\": \"Description\",\n \"0-0\": \"`client_id`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"Integer\",\n \"0-3\": \"A merchant’s unique ID for Velocity, which CellPoint Digital creates.\",\n \"1-0\": \"`account_id`\",\n \"1-1\": \"**Required**\",\n \"1-2\": \"Integer\",\n \"1-3\": \"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.\",\n \"2-0\": \"`session_id`\",\n \"2-1\": \"_Optional_\",\n \"2-2\": \"Integer\",\n \"2-3\": \"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.\",\n \"3-0\": \"`sale_amount`\",\n \"3-1\": \"**Required**\",\n \"3-2\": \"**JSON string**\",\n \"3-3\": \"See the `sale_amount` section below.\",\n \"4-0\": \"`status`\",\n \"4-1\": \"**Required**\",\n \"4-2\": \"**JSON string**\",\n \"4-3\": \"See the `status` section below.\",\n \"5-0\": \"`transactions`\",\n \"5-1\": \"**Required**\",\n \"5-2\": \"**JSON string**\",\n \"5-3\": \"See the `transactions` section below.\",\n \"6-0\": \"`callback_url`\",\n \"6-1\": \"**Required**\",\n \"6-2\": \"String\",\n \"6-3\": \"The absolute URL of the server-to-server callback.
**Note**: If you do not provide this parameter, Velocity uses your default callback URL.\",\n \"7-0\": \"`session_type`\",\n \"7-1\": \"_Optional_\",\n \"7-2\": \"Integer\",\n \"7-3\": \"The numeric code for the type of payment session. Possible values: • `1` - Full payment session • `2` - Split payment session\",\n \"8-0\": \"`order_status`\",\n \"8-1\": \"**Required**\",\n \"8-2\": \"**JSON string**\",\n \"8-3\": \"See the `order_status` section below.\"\n },\n \"cols\": 4,\n \"rows\": 9,\n \"align\": [\n null,\n null,\n null,\n null\n ]\n}\n[/block]\n\n\n# **`sale_amount`**\n\nThe `sale_amount` object is **required**, and it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code for the transaction currency. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code for the transaction currency. |\n\n# **`status`**\n\nThe `status` object is **required**, and it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------- | :----------- | :-------------- | :----------------------------------------------------------------------------- |\n| `code` | **Required** | Integer | The status code for the payment session. See Reference for possible values. |\n| `message` | **Required** | String | The status message for the payment session. See Reference for possible values. |\n\n# **`transactions`**\n\nPlease note: \n\n- The `transactions` object is **required**, and it contains the `transaction` array.\n- Each object in the `transaction` array describes one transaction in a payment session.\n\nEach object in the `transaction` array contains the following:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format\",\n \"h-3\": \"Description\",\n \"0-0\": \"`id`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"Integer\",\n \"0-3\": \"The unique ID of the transaction.\",\n \"1-0\": \"`order_id`\",\n \"1-1\": \"**Required**\",\n \"1-2\": \"String\",\n \"1-3\": \"The order ID number the merchant provides when a transaction is initiated.\",\n \"2-0\": \"`fee`\",\n \"2-1\": \"**Required**\",\n \"2-2\": \"Integer\",\n \"2-3\": \"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`.\",\n \"3-0\": \"`hmac`\",\n \"3-1\": \"**Required**\",\n \"3-2\": \"String\",\n \"3-3\": \"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](https://documentation.cellpointdigital.com/v2.2/docs/appendix) 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.\",\n \"4-0\": \"`product_type`\",\n \"4-1\": \"_Optional_\",\n \"4-2\": \"Integer\",\n \"4-3\": \"The code to identify the product type.\",\n \"5-0\": \"`approval_code`\",\n \"5-1\": \"_Optional_\",\n \"5-2\": \"Integer\",\n \"5-3\": \"The unique ID that a PSP provides for a transaction.\",\n \"6-0\": \"`payment_method`\",\n \"6-1\": \"_Optional_\",\n \"6-2\": \"String\",\n \"6-3\": \"A name for the method of payment used in the transaction.\",\n \"7-0\": \"`payment_type`\",\n \"7-1\": \"**Required**\",\n \"7-2\": \"Integer\",\n \"7-3\": \"The numeric code for this payment method's type of payment (like card, wallet, or APM). Possible values:
`1` - Card
`2` - Voucher and Credit
`3` - Wallet
`4` - APM
`5` - Card Token
`6` - Virtual
`7` - Online Banking
`8` - Offline Payment
`9` - Mobile Money
`10` - Pay Later
`11` - Point of Sale
`12` - UPI
`13` - EMI
Applicable to subsequent responses during split payments.\",\n \"8-0\": \"`date_time`\",\n \"8-1\": \"**Required**\",\n \"8-2\": \"String\",\n \"8-3\": \"The date and time the transaction was initiated, expressed in GMT.\",\n \"9-0\": \"`amount`\",\n \"9-1\": \"**Required**\",\n \"9-2\": \"**JSON string**\",\n \"9-3\": \"See the `amount` section below.\",\n \"10-0\": \"`sale_amount`\",\n \"10-1\": \"**Required**\",\n \"10-2\": \"**JSON string**\",\n \"10-3\": \"See the `sale_amount` section below.\",\n \"11-0\": \"`status`\",\n \"11-1\": \"**Required**\",\n \"11-2\": \"**JSON string**\",\n \"11-3\": \"See the `status` section below.\",\n \"12-0\": \"`psp`\",\n \"12-1\": \"_Optional_\",\n \"12-2\": \"**JSON string**\",\n \"12-3\": \"See the `psp` section below.\",\n \"13-0\": \"`card`\",\n \"13-1\": \"**Required**\",\n \"13-2\": \"**JSON string**\",\n \"13-3\": \"See the `card` section below.\",\n \"14-0\": \"`customer_info`\",\n \"14-1\": \"**Conditional Requirement:** Can be mandatory or optional, based on the requirement of a merchant or PSP.\",\n \"14-2\": \"**JSON string**\",\n \"14-3\": \"See the `customer_info` section below.\",\n \"15-0\": \"`billing_address`\",\n \"15-1\": \"**Required**\",\n \"15-2\": \"**JSON string**\",\n \"15-3\": \"See the `billing_address` section below.\",\n \"16-0\": \"`pos`\",\n \"16-1\": \"**Required**\",\n \"16-2\": \"Integer\",\n \"16-3\": \"POS identification.\",\n \"17-0\": \"`ip_address`\",\n \"17-1\": \"**Required**\",\n \"17-2\": \"String\",\n \"17-3\": \"The IP address used in this transaction.\",\n \"18-0\": \"`fraud_status_code`\",\n \"18-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"18-2\": \"Integer\",\n \"18-3\": \"The fraud status code for this transaction.\",\n \"19-0\": \"`fraud_status_desc`\",\n \"19-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"19-2\": \"String\",\n \"19-3\": \"The fraud status description for this transaction.\",\n \"20-0\": \"`route_config_id`\",\n \"20-1\": \"**Required**\",\n \"20-2\": \"Integer\",\n \"20-3\": \"The route configuration ID.\",\n \"21-0\": \"`fraud`\",\n \"21-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"21-2\": \"**JSON string**\",\n \"21-3\": \"See the `fraud` section below.\",\n \"22-0\": \"`installment`\",\n \"22-1\": \"_Optional_\",\n \"22-2\": \"Integer\",\n \"22-3\": \"This is no longer used in a transaction.\",\n \"23-0\": \"`accept_url`\",\n \"23-1\": \"**Required**\",\n \"23-2\": \"String\",\n \"23-3\": \"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.\",\n \"24-0\": \"`cancel_url`\",\n \"24-1\": \"**Required**\",\n \"24-2\": \"String\",\n \"24-3\": \"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.\",\n \"25-0\": \"`txn_type_id`\",\n \"25-1\": \"**Required**\",\n \"25-2\": \"Integer\",\n \"25-3\": \"The numeric code describing the transaction type. See Reference for possible values.\",\n \"26-0\": \"`performed_operations`\",\n \"26-1\": \"**Required**\",\n \"26-2\": \"**JSON string**\",\n \"26-3\": \"See the `performed_operations` section below.\",\n \"27-0\": \"`performed_operation_time`\",\n \"27-1\": \"**Required**\",\n \"27-2\": \"String\",\n \"27-3\": \"The completion date and time of all the transaction's operations, expressed in GMT.\"\n },\n \"cols\": 4,\n \"rows\": 28,\n \"align\": [\n null,\n null,\n null,\n null\n ]\n}\n[/block]\n\n\n## `amount`\n\n**Parent:** `transaction`\n\nThe `amount` object is **required**; it has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :---------------- | :----------- | :-------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code. |\n| `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`. |\n\n## `sale_amount`\n\n**Parent:** `transaction`\n\nThe `amount` object is **required**; it has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code. |\n\n## `status`\n\n**Parent:** `transaction`\n\nThe `status` object in `transaction` is **required**; it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------- | :----------- | :-------------- | :-------------------------------------------------------------------------- |\n| `code` | **Required** | Integer | The status code for this transaction. See Reference for possible values. |\n| `message` | **Required** | String | The status message for this transaction. See Reference for possible values. |\n\n## `psp`\n\n**Parent:** `transaction`\n\nThe `psp` object is **optional**; it describes the payment service provider (PSP) associated with this transaction. It contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :------------------------------------------------------------------------------------------------------------------------------------- |\n| `id` | **Required** | Integer | The numeric code for the PSP or ACQ. See Reference for possible values. |\n| `name` | **Required** | String | The name of the PSP or ACQ used for completing the transaction. For example, 2C2P, 2C2P-ALC, GlobalPayment, Worldpay, or ChasePayment. |\n| `external_id` | **Required** | Integer | ID of the transaction at the PSP or ACQ. |\n\n## `card`\n\n**Parent:** `transaction`\n\nThe `card` object is **required**; it describes the payment method used in this transaction. It has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------------- | :----------- | :-------------- | :---------------------------------------------------------------------------------------------------- |\n| `id` | **Required** | Integer | A numeric code for the method of payment used in this transaction. See Reference for possible values. |\n| `card_name` | _Optional_ | String | A name assigned to this method of payment. |\n| `masked_card_number` | **Required** | String | The masked card number for this method of payment. |\n| `expiry` | **Required** | String | The expiration date of this method of payment. |\n\n## `customer_info`\n\n**Parent:** `transaction`\n\nThe `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:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format of value\",\n \"h-3\": \"Description of value\",\n \"0-0\": \"`language`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"String\",\n \"0-3\": \"The default language that Velocity uses when translating the payment pages. Velocity language codes are based on the ISO-639-1 standard.
Refer to for details.\",\n \"1-0\": \"`email`\",\n \"1-1\": \"_Optional_\",\n \"1-2\": \"String\",\n \"1-3\": \"The customer's email address.\",\n \"2-0\": \"`mobile`\",\n \"2-1\": \"_Optional_\",\n \"2-2\": \"Integer\",\n \"2-3\": \"The customer's mobile phone number, including the International Dialing Code.\",\n \"3-0\": \"`device_id`\",\n \"3-1\": \"_Optional_\",\n \"3-2\": \"String\",\n \"3-3\": \"The device ID of the device used for this transaction.\"\n },\n \"cols\": 4,\n \"rows\": 4,\n \"align\": [\n \"left\",\n \"left\",\n \"left\",\n \"left\"\n ]\n}\n[/block]\n\n\n## `billing_address`\n\n**Parent:** `transaction`\n\nThe `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:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :----------------------------------------------------------------------------- |\n| `first_name` | **Required** | String | The customer's first name. |\n| `last_name` | **Required** | String | The customer's last name. |\n| `street` | **Required** | String | The first line of the customer's street address. |\n| `street2` | _Optional_ | String | The second line of the customer's street address. |\n| `city` | **Required** | String | The city in the customer's mailing address. |\n| `state` | **Required** | String | The state in the customer's mailing address. |\n| `postal_code` | **Required** | Integer | The zip code or postal code for the customer's mailing address. |\n| `country` | **Required** | String | The country in the customer's mailing address. |\n| `mobile` | _Optional_ | Integer | The customer's mobile phone number, including the International Dialing Code. |\n| `email` | _Optional_ | String | The customer's email address. |\n| `billing_idc` | _Optional_ | String | Billing IDC identification. |\n| `alpha2code` | _Optional_ | Integer | The two-letter numeric code for the country in the customer's mailing address. |\n\n## `fraud`\n\n**Parent:** `transaction`\n\nThe `fraud` object is required if the merchant uses a fraud detection feature. It contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------------------- | :---------------------------------------------------------------------- | :-------------- | :------------------------------------------------- |\n| `status_code` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The fraud status code for this transaction. |\n| `status_desc` | **Conditional Requirement:** Required if using fraud detection feature. | String | The fraud status description for this transaction. |\n| `pre_auth_ext_id` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization ID. |\n| `pre_auth_ext_status_code` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization status code. |\n| `pre_auth_provider_id` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The ID of the pre-authorization provider. |\n| `pre_auth_fraud_status` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization fraud status code. |\n\n## `performed_operations`\n\n**Parent:** `transaction`\n\nPlease note:\n\n- The `performed_operations` object is **required**; it describes the operations performed for this transaction.\n- The `performed_operations` object contains the `performed_operations` array.\n- Each object in the `performed_operations` array describes one operation.\n\nEach object in the `performed_operations` array contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------------------- | :----------- | :-------------- | :--------------------------------------------------------------------- |\n| `amount` | **Required** | Integer | The transaction amount handled by this operation. |\n| `created` | **Required** | String | The date and time that this operation commenced, expressed in GMT. |\n| `performedOperations` | **Required** | Integer | A numeric code for the operation performed. |\n| `modified` | **Required** | String | The date and time that this operation was completed, expressed in GMT. |\n| `status` | **Required** | String | The status of the operation. |\n\n# **`order_status`**\n\nThe `order_status` object is **required**, and it contains the following name-value pair:\n\n| Name | Requirement | Format of value | Description of value |\n| :----- | :----------- | :-------------- | :--------------------- |\n| `code` | **Required** | Integer | The order status code. |","dehydrated":{"toc":"","body":"
This page defines the parameters received from Velocity HPP. For sample code, see HPP.
\n \n
Form data
\n
The form data element that CellPoint Velocity HPP returns includes the following:
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.
\n
sale_amount
\n
The sale_amount object is required, and it contains the following name-value pairs:
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.
\n
status
\n
The status object is required, and it contains the following name-value pairs:
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
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.
\n
transactions
\n
Please note:
\n
\n
The transactions object is required, and it contains the transaction array.
\n
Each object in the transaction array describes one transaction in a payment session.
\n
\n
Each object in the transaction array contains the following:
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:
1 - Card
2 - Voucher and Credit
3 - Wallet
4 - APM
5 - Card Token
6 - Virtual
7 - Online Banking
8 - Offline Payment
9 - Mobile Money
10 - Pay Later
11 - Point of Sale
12 - UPI
13 - EMI
Applicable to subsequent responses during split payments.
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.
\n
amount
\n
Parent:transaction
\n
The amount object is required; it has the following name-value pairs:
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.
\n
sale_amount
\n
Parent:transaction
\n
The amount object is required; it has the following name-value pairs:
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.
\n
status
\n
Parent:transaction
\n
The status object in transaction is required; it contains the following name-value pairs:
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
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.
\n
psp
\n
Parent:transaction
\n
The psp object is optional; it describes the payment service provider (PSP) associated with this transaction. It contains the following name-value pairs:
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.
\n
billing_address
\n
Parent:transaction
\n
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:
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.
\n
order_status
\n
The order_status object is required, and it contains the following name-value pair:
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
Name
Requirement
Format of value
Description of value
code
Required
Integer
The order status code.
"},"mdx":false,"opts":{"alwaysThrow":false,"compatibilityMode":false,"copyButtons":true,"correctnewlines":false,"markdownOptions":{"fences":true,"commonmark":true,"gfm":true,"ruleSpaces":false,"listItemIndent":"1","spacedTable":true,"paddedTable":true},"normalize":true,"lazyImages":true,"reusableContent":{"tags":{}},"safeMode":false,"settings":{"position":true},"theme":"light","customBlocks":{},"resourceID":"683f3826ef2131005dc4aaa2","resourceType":"page","baseUrl":"/","terms":[{"_id":"65df740c7c4f340018cb407a","term":"HPP","definition":"Hosted Payment Pages"},{"_id":"65df74177c4f340018cb429f","term":"PSP","definition":"Payment Service Provider"},{"_id":"65df74258dd4bf0ee8d44494","term":"ACQ","definition":"Acquirer"}],"variables":{"user":{},"defaults":[{"source":"security","type":"oauth2","_id":"685aab9a0e9689004bb02198","name":"cpdIssuedJWT","apiSetting":"685aab990e9689004bb02194"},{"source":"security","type":"http","_id":"685aab9a0e9689004bb02197","name":"merchantIssuedJWT","scheme":"bearer","apiSetting":"685aab990e9689004bb02194"}]}},"terms":[{"_id":"65df740c7c4f340018cb407a","term":"HPP","definition":"Hosted Payment Pages"},{"_id":"65df74177c4f340018cb429f","term":"PSP","definition":"Payment Service Provider"},{"_id":"65df74258dd4bf0ee8d44494","term":"ACQ","definition":"Acquirer"}],"variables":{"user":{},"defaults":[{"source":"security","type":"oauth2","_id":"685aab9a0e9689004bb02198","name":"cpdIssuedJWT","apiSetting":"685aab990e9689004bb02194"},{"source":"security","type":"http","_id":"685aab9a0e9689004bb02197","name":"merchantIssuedJWT","scheme":"bearer","apiSetting":"685aab990e9689004bb02194"}]}},"doc":{"metadata":{"image":[],"title":"","description":"","keywords":"","robots":"index"},"mdx":{"altBody":"","status":"rdmd"},"api":{"method":"get","url":"","auth":"required","params":[]},"next":{"description":"","pages":[]},"algolia":{"publishPending":false,"recordCount":15,"updatedAt":"2025-06-03T19:01:01.495Z","translationFailure":false},"_id":"683f3826ef2131005dc4aaa2","title":"Response Parameters","icon":"","updates":[],"type":"basic","slug":"hpp-response","excerpt":"HPP Reference","body":"This page defines the parameters received from Velocity HPP. For sample code, see [HPP](doc:hpp-reference).\n\n \n\n# **Form data**\n\nThe form data element that CellPoint Velocity HPP returns includes the following:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format\",\n \"h-3\": \"Description\",\n \"0-0\": \"`client_id`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"Integer\",\n \"0-3\": \"A merchant’s unique ID for Velocity, which CellPoint Digital creates.\",\n \"1-0\": \"`account_id`\",\n \"1-1\": \"**Required**\",\n \"1-2\": \"Integer\",\n \"1-3\": \"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.\",\n \"2-0\": \"`session_id`\",\n \"2-1\": \"_Optional_\",\n \"2-2\": \"Integer\",\n \"2-3\": \"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.\",\n \"3-0\": \"`sale_amount`\",\n \"3-1\": \"**Required**\",\n \"3-2\": \"**JSON string**\",\n \"3-3\": \"See the `sale_amount` section below.\",\n \"4-0\": \"`status`\",\n \"4-1\": \"**Required**\",\n \"4-2\": \"**JSON string**\",\n \"4-3\": \"See the `status` section below.\",\n \"5-0\": \"`transactions`\",\n \"5-1\": \"**Required**\",\n \"5-2\": \"**JSON string**\",\n \"5-3\": \"See the `transactions` section below.\",\n \"6-0\": \"`callback_url`\",\n \"6-1\": \"**Required**\",\n \"6-2\": \"String\",\n \"6-3\": \"The absolute URL of the server-to-server callback.
**Note**: If you do not provide this parameter, Velocity uses your default callback URL.\",\n \"7-0\": \"`session_type`\",\n \"7-1\": \"_Optional_\",\n \"7-2\": \"Integer\",\n \"7-3\": \"The numeric code for the type of payment session. Possible values: • `1` - Full payment session • `2` - Split payment session\",\n \"8-0\": \"`order_status`\",\n \"8-1\": \"**Required**\",\n \"8-2\": \"**JSON string**\",\n \"8-3\": \"See the `order_status` section below.\"\n },\n \"cols\": 4,\n \"rows\": 9,\n \"align\": [\n null,\n null,\n null,\n null\n ]\n}\n[/block]\n\n\n# **`sale_amount`**\n\nThe `sale_amount` object is **required**, and it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code for the transaction currency. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code for the transaction currency. |\n\n# **`status`**\n\nThe `status` object is **required**, and it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------- | :----------- | :-------------- | :----------------------------------------------------------------------------- |\n| `code` | **Required** | Integer | The status code for the payment session. See Reference for possible values. |\n| `message` | **Required** | String | The status message for the payment session. See Reference for possible values. |\n\n# **`transactions`**\n\nPlease note: \n\n- The `transactions` object is **required**, and it contains the `transaction` array.\n- Each object in the `transaction` array describes one transaction in a payment session.\n\nEach object in the `transaction` array contains the following:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format\",\n \"h-3\": \"Description\",\n \"0-0\": \"`id`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"Integer\",\n \"0-3\": \"The unique ID of the transaction.\",\n \"1-0\": \"`order_id`\",\n \"1-1\": \"**Required**\",\n \"1-2\": \"String\",\n \"1-3\": \"The order ID number the merchant provides when a transaction is initiated.\",\n \"2-0\": \"`fee`\",\n \"2-1\": \"**Required**\",\n \"2-2\": \"Integer\",\n \"2-3\": \"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`.\",\n \"3-0\": \"`hmac`\",\n \"3-1\": \"**Required**\",\n \"3-2\": \"String\",\n \"3-3\": \"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](https://documentation.cellpointdigital.com/v2.2/docs/appendix) 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.\",\n \"4-0\": \"`product_type`\",\n \"4-1\": \"_Optional_\",\n \"4-2\": \"Integer\",\n \"4-3\": \"The code to identify the product type.\",\n \"5-0\": \"`approval_code`\",\n \"5-1\": \"_Optional_\",\n \"5-2\": \"Integer\",\n \"5-3\": \"The unique ID that a PSP provides for a transaction.\",\n \"6-0\": \"`payment_method`\",\n \"6-1\": \"_Optional_\",\n \"6-2\": \"String\",\n \"6-3\": \"A name for the method of payment used in the transaction.\",\n \"7-0\": \"`payment_type`\",\n \"7-1\": \"**Required**\",\n \"7-2\": \"Integer\",\n \"7-3\": \"The numeric code for this payment method's type of payment (like card, wallet, or APM). Possible values:
`1` - Card
`2` - Voucher and Credit
`3` - Wallet
`4` - APM
`5` - Card Token
`6` - Virtual
`7` - Online Banking
`8` - Offline Payment
`9` - Mobile Money
`10` - Pay Later
`11` - Point of Sale
`12` - UPI
`13` - EMI
Applicable to subsequent responses during split payments.\",\n \"8-0\": \"`date_time`\",\n \"8-1\": \"**Required**\",\n \"8-2\": \"String\",\n \"8-3\": \"The date and time the transaction was initiated, expressed in GMT.\",\n \"9-0\": \"`amount`\",\n \"9-1\": \"**Required**\",\n \"9-2\": \"**JSON string**\",\n \"9-3\": \"See the `amount` section below.\",\n \"10-0\": \"`sale_amount`\",\n \"10-1\": \"**Required**\",\n \"10-2\": \"**JSON string**\",\n \"10-3\": \"See the `sale_amount` section below.\",\n \"11-0\": \"`status`\",\n \"11-1\": \"**Required**\",\n \"11-2\": \"**JSON string**\",\n \"11-3\": \"See the `status` section below.\",\n \"12-0\": \"`psp`\",\n \"12-1\": \"_Optional_\",\n \"12-2\": \"**JSON string**\",\n \"12-3\": \"See the `psp` section below.\",\n \"13-0\": \"`card`\",\n \"13-1\": \"**Required**\",\n \"13-2\": \"**JSON string**\",\n \"13-3\": \"See the `card` section below.\",\n \"14-0\": \"`customer_info`\",\n \"14-1\": \"**Conditional Requirement:** Can be mandatory or optional, based on the requirement of a merchant or PSP.\",\n \"14-2\": \"**JSON string**\",\n \"14-3\": \"See the `customer_info` section below.\",\n \"15-0\": \"`billing_address`\",\n \"15-1\": \"**Required**\",\n \"15-2\": \"**JSON string**\",\n \"15-3\": \"See the `billing_address` section below.\",\n \"16-0\": \"`pos`\",\n \"16-1\": \"**Required**\",\n \"16-2\": \"Integer\",\n \"16-3\": \"POS identification.\",\n \"17-0\": \"`ip_address`\",\n \"17-1\": \"**Required**\",\n \"17-2\": \"String\",\n \"17-3\": \"The IP address used in this transaction.\",\n \"18-0\": \"`fraud_status_code`\",\n \"18-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"18-2\": \"Integer\",\n \"18-3\": \"The fraud status code for this transaction.\",\n \"19-0\": \"`fraud_status_desc`\",\n \"19-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"19-2\": \"String\",\n \"19-3\": \"The fraud status description for this transaction.\",\n \"20-0\": \"`route_config_id`\",\n \"20-1\": \"**Required**\",\n \"20-2\": \"Integer\",\n \"20-3\": \"The route configuration ID.\",\n \"21-0\": \"`fraud`\",\n \"21-1\": \"**Conditional Requirement:** Required if using fraud detection feature.\",\n \"21-2\": \"**JSON string**\",\n \"21-3\": \"See the `fraud` section below.\",\n \"22-0\": \"`installment`\",\n \"22-1\": \"_Optional_\",\n \"22-2\": \"Integer\",\n \"22-3\": \"This is no longer used in a transaction.\",\n \"23-0\": \"`accept_url`\",\n \"23-1\": \"**Required**\",\n \"23-2\": \"String\",\n \"23-3\": \"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.\",\n \"24-0\": \"`cancel_url`\",\n \"24-1\": \"**Required**\",\n \"24-2\": \"String\",\n \"24-3\": \"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.\",\n \"25-0\": \"`txn_type_id`\",\n \"25-1\": \"**Required**\",\n \"25-2\": \"Integer\",\n \"25-3\": \"The numeric code describing the transaction type. See Reference for possible values.\",\n \"26-0\": \"`performed_operations`\",\n \"26-1\": \"**Required**\",\n \"26-2\": \"**JSON string**\",\n \"26-3\": \"See the `performed_operations` section below.\",\n \"27-0\": \"`performed_operation_time`\",\n \"27-1\": \"**Required**\",\n \"27-2\": \"String\",\n \"27-3\": \"The completion date and time of all the transaction's operations, expressed in GMT.\"\n },\n \"cols\": 4,\n \"rows\": 28,\n \"align\": [\n null,\n null,\n null,\n null\n ]\n}\n[/block]\n\n\n## `amount`\n\n**Parent:** `transaction`\n\nThe `amount` object is **required**; it has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :---------------- | :----------- | :-------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code. |\n| `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`. |\n\n## `sale_amount`\n\n**Parent:** `transaction`\n\nThe `amount` object is **required**; it has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `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`. |\n| `currency_id` | **Required** | Integer | The currency code. |\n| `decimals` | **Required** | Integer | The currency precision; for example, `2` for USD (which is written with two units after the decimal, as in $1.00.) |\n| `alpha3code` | **Required** | String | The three-letter currency code. |\n\n## `status`\n\n**Parent:** `transaction`\n\nThe `status` object in `transaction` is **required**; it contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------- | :----------- | :-------------- | :-------------------------------------------------------------------------- |\n| `code` | **Required** | Integer | The status code for this transaction. See Reference for possible values. |\n| `message` | **Required** | String | The status message for this transaction. See Reference for possible values. |\n\n## `psp`\n\n**Parent:** `transaction`\n\nThe `psp` object is **optional**; it describes the payment service provider (PSP) associated with this transaction. It contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :------------------------------------------------------------------------------------------------------------------------------------- |\n| `id` | **Required** | Integer | The numeric code for the PSP or ACQ. See Reference for possible values. |\n| `name` | **Required** | String | The name of the PSP or ACQ used for completing the transaction. For example, 2C2P, 2C2P-ALC, GlobalPayment, Worldpay, or ChasePayment. |\n| `external_id` | **Required** | Integer | ID of the transaction at the PSP or ACQ. |\n\n## `card`\n\n**Parent:** `transaction`\n\nThe `card` object is **required**; it describes the payment method used in this transaction. It has the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------------- | :----------- | :-------------- | :---------------------------------------------------------------------------------------------------- |\n| `id` | **Required** | Integer | A numeric code for the method of payment used in this transaction. See Reference for possible values. |\n| `card_name` | _Optional_ | String | A name assigned to this method of payment. |\n| `masked_card_number` | **Required** | String | The masked card number for this method of payment. |\n| `expiry` | **Required** | String | The expiration date of this method of payment. |\n\n## `customer_info`\n\n**Parent:** `transaction`\n\nThe `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:\n\n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Name\",\n \"h-1\": \"Requirement\",\n \"h-2\": \"Format of value\",\n \"h-3\": \"Description of value\",\n \"0-0\": \"`language`\",\n \"0-1\": \"**Required**\",\n \"0-2\": \"String\",\n \"0-3\": \"The default language that Velocity uses when translating the payment pages. Velocity language codes are based on the ISO-639-1 standard.
Refer to for details.\",\n \"1-0\": \"`email`\",\n \"1-1\": \"_Optional_\",\n \"1-2\": \"String\",\n \"1-3\": \"The customer's email address.\",\n \"2-0\": \"`mobile`\",\n \"2-1\": \"_Optional_\",\n \"2-2\": \"Integer\",\n \"2-3\": \"The customer's mobile phone number, including the International Dialing Code.\",\n \"3-0\": \"`device_id`\",\n \"3-1\": \"_Optional_\",\n \"3-2\": \"String\",\n \"3-3\": \"The device ID of the device used for this transaction.\"\n },\n \"cols\": 4,\n \"rows\": 4,\n \"align\": [\n \"left\",\n \"left\",\n \"left\",\n \"left\"\n ]\n}\n[/block]\n\n\n## `billing_address`\n\n**Parent:** `transaction`\n\nThe `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:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------ | :----------- | :-------------- | :----------------------------------------------------------------------------- |\n| `first_name` | **Required** | String | The customer's first name. |\n| `last_name` | **Required** | String | The customer's last name. |\n| `street` | **Required** | String | The first line of the customer's street address. |\n| `street2` | _Optional_ | String | The second line of the customer's street address. |\n| `city` | **Required** | String | The city in the customer's mailing address. |\n| `state` | **Required** | String | The state in the customer's mailing address. |\n| `postal_code` | **Required** | Integer | The zip code or postal code for the customer's mailing address. |\n| `country` | **Required** | String | The country in the customer's mailing address. |\n| `mobile` | _Optional_ | Integer | The customer's mobile phone number, including the International Dialing Code. |\n| `email` | _Optional_ | String | The customer's email address. |\n| `billing_idc` | _Optional_ | String | Billing IDC identification. |\n| `alpha2code` | _Optional_ | Integer | The two-letter numeric code for the country in the customer's mailing address. |\n\n## `fraud`\n\n**Parent:** `transaction`\n\nThe `fraud` object is required if the merchant uses a fraud detection feature. It contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :------------------------- | :---------------------------------------------------------------------- | :-------------- | :------------------------------------------------- |\n| `status_code` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The fraud status code for this transaction. |\n| `status_desc` | **Conditional Requirement:** Required if using fraud detection feature. | String | The fraud status description for this transaction. |\n| `pre_auth_ext_id` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization ID. |\n| `pre_auth_ext_status_code` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization status code. |\n| `pre_auth_provider_id` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The ID of the pre-authorization provider. |\n| `pre_auth_fraud_status` | **Conditional Requirement:** Required if using fraud detection feature. | Integer | The pre-authorization fraud status code. |\n\n## `performed_operations`\n\n**Parent:** `transaction`\n\nPlease note:\n\n- The `performed_operations` object is **required**; it describes the operations performed for this transaction.\n- The `performed_operations` object contains the `performed_operations` array.\n- Each object in the `performed_operations` array describes one operation.\n\nEach object in the `performed_operations` array contains the following name-value pairs:\n\n| Name | Requirement | Format of value | Description of value |\n| :-------------------- | :----------- | :-------------- | :--------------------------------------------------------------------- |\n| `amount` | **Required** | Integer | The transaction amount handled by this operation. |\n| `created` | **Required** | String | The date and time that this operation commenced, expressed in GMT. |\n| `performedOperations` | **Required** | Integer | A numeric code for the operation performed. |\n| `modified` | **Required** | String | The date and time that this operation was completed, expressed in GMT. |\n| `status` | **Required** | String | The status of the operation. |\n\n# **`order_status`**\n\nThe `order_status` object is **required**, and it contains the following name-value pair:\n\n| Name | Requirement | Format of value | Description of value |\n| :----- | :----------- | :-------------- | :--------------------- |\n| `code` | **Required** | Integer | The order status code. |","order":1,"isReference":false,"deprecated":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"reusableContent":[],"previousSlug":"","slugUpdatedAt":"2025-05-21T18:04:35.914Z","revision":15,"user":"62991f19b6f06d0085f6b293","project":"637d11f8234e9b0099697a18","parentDoc":"683f3826ef2131005dc4aa85","category":{"_id":"683f3826ef2131005dc4aa38","title":"Reference","slug":"reference","order":6,"reference":false,"project":"637d11f8234e9b0099697a18","version":"683f3826ef2131005dc4aaa4","createdAt":"2024-06-12T20:02:20.959Z","__v":0,"type":"guide","id":"683f3826ef2131005dc4aa38"},"createdAt":"2025-05-21T20:10:27.250Z","updatedAt":"2025-06-03T19:01:01.503Z","version":{"_id":"683f3826ef2131005dc4aaa4","version":"2.2.1","version_clean":"2.2.1","codename":"published 6/2025","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","683f3826ef2131005dc4aa36","683f3826ef2131005dc4aa37","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","683f3826ef2131005dc4aa38","683f3826ef2131005dc4aa39","683f3826ef2131005dc4aa3a","683f3826ef2131005dc4aa3b","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","source":"readme","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2025-06-03T18:00:06.642Z","__v":1,"updatedAt":"2025-06-09T15:29:41.078Z","forked_from":"67192ae574588c0045a0ba54","apiRegistries":[]},"lastUpdatedHash":"05b57fdef6e84ab1bb8f7c812b311c0119ee69ab","__v":0,"isApi":false,"tutorials":[],"id":"683f3826ef2131005dc4aaa2"},"hideTOC":false,"meta":{"_id":"683f3826ef2131005dc4aaa2","description":"HPP Reference","hidden":false,"image":[],"keywords":"","metaTitle":"Response Parameters","parent":"683f3826ef2131005dc4aa85","robots":"index","slug":"hpp-response","title":"Response Parameters","type":"docs"},"slugUrl":"/docs/hpp-response","config":{"algoliaIndex":"readme_search_v2","amplitude":{"apiKey":"dc8065a65ef83d6ad23e37aaf014fc84","enabled":true},"asset_url":"https://cdn.readme.io","domain":"readme.io","domainFull":"https://dash.readme.com","encryptedLocalStorageKey":"ekfls-2025-03-27","fullstory":{"enabled":true,"orgId":"FSV9A"},"liveblocks":{"copilotId":"co_11Q0l0JJlkcBhhAYUFh8s"},"metrics":{"billingCronEnabled":"true","dashUrl":"https://m.readme.io","defaultUrl":"https://m.readme.io","exportMaxRetries":12,"wsUrl":"wss://m.readme.io"},"proxyUrl":"https://try.readme.io","readmeRecaptchaSiteKey":"6LesVBYpAAAAAESOCHOyo2kF9SZXPVb54Nwf3i2x","releaseVersion":"5.420.0","sentry":{"dsn":"https://3bbe57a973254129bcb93e47dc0cc46f@o343074.ingest.sentry.io/2052166","enabled":true},"shMigration":{"promoVideo":"","forceWaitlist":false,"migrationPreview":false},"sslBaseDomain":"readmessl.com","sslGenerationService":"ssl.readmessl.com","stripePk":"pk_live_5103PML2qXbDukVh7GDAkQoR4NSuLqy8idd5xtdm9407XdPR6o3bo663C1ruEGhXJjpnb2YCpj8EU1UvQYanuCjtr00t1DRCf2a","superHub":{"newProjectsEnabled":true},"wootric":{"accountToken":"NPS-122b75a4","enabled":true}},"context":{"labs":{},"user":{},"terms":[{"_id":"65df740c7c4f340018cb407a","term":"HPP","definition":"Hosted Payment Pages"},{"_id":"65df74177c4f340018cb429f","term":"PSP","definition":"Payment Service Provider"},{"_id":"65df74258dd4bf0ee8d44494","term":"ACQ","definition":"Acquirer"}],"variables":{"user":{},"defaults":[{"source":"security","type":"oauth2","_id":"685aab9a0e9689004bb02198","name":"cpdIssuedJWT","apiSetting":"685aab990e9689004bb02194"},{"source":"security","type":"http","_id":"685aab9a0e9689004bb02197","name":"merchantIssuedJWT","scheme":"bearer","apiSetting":"685aab990e9689004bb02194"}]},"project":{"_id":"637d11f8234e9b0099697a18","appearance":{"rdmd":{"callouts":{"useIconFont":false},"theme":{"background":"","border":"","markdownEdge":"","markdownFont":"","markdownFontSize":"","markdownLineHeight":"","markdownRadius":"","markdownText":"","markdownTitle":"","markdownTitleFont":"","mdCodeBackground":"","mdCodeFont":"","mdCodeRadius":"","mdCodeTabs":"","mdCodeText":"","tableEdges":"","tableHead":"","tableHeadText":"","tableRow":"","tableStripe":"","tableText":"","text":"","title":""}},"main_body":{"type":"links"},"colors":{"highlight":"","main":"#000000","main_alt":"","header_text":"","body_highlight":"#8f45e6","custom_login_link_color":""},"typography":{"headline":"Open+Sans:400:sans-serif","body":"Open+Sans:400:sans-serif","typekit":false,"tk_key":"","tk_headline":"","tk_body":""},"header":{"style":"solid","img":[],"img_size":"auto","img_pos":"tl","linkStyle":"buttons"},"body":{"style":"none"},"global_landing_page":{"html":"","redirect":""},"referenceSimpleMode":true,"referenceLayout":"row","link_logo_to_url":true,"theme":"line","colorScheme":"light","overlay":"triangles","landing":true,"sticky":false,"hide_logo":true,"childrenAsPills":false,"subheaderStyle":"links","splitReferenceDocs":false,"showMetricsInReference":true,"logo":["https://files.readme.io/d20d0d2-small-CPD_C-Logo_RGB_low.png","CPD_C-Logo_RGB_low.png",80,80,"#000000","https://files.readme.io/945d379-CPD_C-Logo_RGB_low.png"],"loginLogo":[],"logo_white":["https://files.readme.io/9f504ea-small-CPD_C-Logo_RGB_low.png","CPD_C-Logo_RGB_low.png",80,80,"#000000","https://files.readme.io/37519c1-CPD_C-Logo_RGB_low.png"],"logo_white_use":false,"logo_large":true,"favicon":["https://files.readme.io/5f4c175-small-cpd_favicon.png","cpd_favicon.png",32,32,"#000000","https://files.readme.io/43707bd-cpd_favicon.png"],"stylesheet":"","stylesheet_hub2":".markdown-body { \n font-family: \"Open Sans\",\"Helvetica Neue\",\"Helvetica\",\"Arial\",sans-serif !important;\n}\n\nh1, h2, h3, h4, h5, h6 {font-family: \"Open Sans\",\"Helvetica Neue\",\"Helvetica\",\"Arial\",sans-serif !important;}\n\n.heading-1 {\n padding-top: .4em;\n\tpadding-bottom: .5em; \n}\n\n.heading-2 {\n padding-top: .4em;\n\tpadding-bottom: .4em;\n}\n\n.heading-3, .heading-4 {\n padding-top: .5em;\n\tpadding-bottom: .3em;\n}\n\n\n.main-table tr .sub-heading{\n \n text-align : left;\n}\n\n.round-dots{\nlist-style-type: circle;\n\n}\n.col-txt{\n vertical-align: top;\n}\n.text-block{\n display : block; \n}\n\n.bullet-list{\n margin: 0 40px;\n list-style: circle !important;\n}\n\n.bullet-list.less-spacing{\n margin: 0 50px;\n padding: 0 !important;\n}\n\n.nested-table-wrapper{\n padding-bottom: 280px;\n position: relative;\n}\n\n.nested-table{\n\tposition: absolute;\n margin-top: -145px;\n}\n\n@media only screen and (max-width: 1300px){\n.nested-table{\n\tposition: static;\n margin-top: 0;\n}\n .nested-table-wrapper{\n \tpadding-bottom: 0;\n }\n}\n\n/**Helpers***/\n.left{\ntext-align: left;\n}\n.underline-text {\ntext-decoration: underline;\n display: inline;\n}\n.style-circle li {\n list-style: circle !important;\n}\n.style-alpha li {\n\t\tlist-style: lower-alpha;\n}\n/**Helpers-End***/","stylesheet_hub3":"","javascript":"","javascript_hub2":"","html_promo":"","html_body":"","html_footer":"","html_head":"\n\n","html_footer_meta":"","html_hidelinks":false,"showVersion":false,"hideTableOfContents":false,"nextStepsLabel":"","promos":[{"extras":{"type":"search","buttonPrimary":"get-started","buttonSecondary":""},"title":"CellPoint Digital: Developer Documentation","text":"Unlock the power of seamless payment orchestration with CellPoint Digital's comprehensive suite of integration solutions.","_id":"637d11f8234e9b0099697a1a"}],"changelog":{"layoutExpanded":false,"showAuthor":true,"showExactDate":false},"allowApiExplorerJsonEditor":false,"ai_dropdown":"disabled","ai_options":{"chatgpt":"enabled","claude":"enabled","clipboard":"enabled","view_as_markdown":"enabled","copilot":"enabled"},"showPageIcons":true,"layout":{"full_width":false,"style":"classic"}},"custom_domain":"documentation.cellpointdigital.com","childrenProjects":[],"derivedPlan":"business2018","description":"","isExternalSnippetActive":false,"error404":"","experiments":[],"first_page":"landing","flags":{"allowApiExplorerJsonEditor":false,"allowDarkMode":true,"alwaysShowDocPublishStatus":false,"allowXFrame":false,"correctnewlines":false,"dashReact":false,"disablePasswordlessLogin":false,"directGoogleToStableVersion":false,"disableAnonForum":false,"enterprise":false,"graphql":false,"migrationRun":false,"migrationSwaggerRun":false,"myDevelopers":false,"newEditor":true,"newEditorDash":true,"newMarkdownBetaProgram":true,"newSearch":true,"oauth":false,"oldMarkdown":false,"rdmdCompatibilityMode":false,"reviewWorkflow":true,"singleProjectEnterprise":false,"speedyRender":false,"staging":false,"star":false,"swagger":false,"translation":false,"useReactApp":true,"useReactGLP":false,"superHub":false,"developerDashboard":false,"allowReusableOTPs":false,"allowUnsafeCustomHtmlSuggestionsFromNonAdmins":false,"apiV2":false,"customBlocks":false,"disableAutoTranslate":false,"disableSAMLScoping":false,"git":{"read":false,"write":false},"owlbotAi":false,"superHubBeta":false,"apiAccessRevoked":false,"passwordlessLogin":"default","disableSignups":false,"billingRedesignEnabled":true,"developerPortal":false,"mdx":false,"superHubDevelopment":false,"annualBillingEnabled":true,"devDashBillingRedesignEnabled":false,"enableOidc":false,"customComponents":false,"disableDiscussionSpamRecaptchaBypass":false,"developerViewUsersData":false,"changelogRssAlwaysPublic":false,"bidiSync":false,"superHubMigrationSelfServeFlow":true,"apiDesigner":false,"hideEnforceSSO":false,"localLLM":false,"superHubManageVersions":false,"gitSidebar":false,"superHubGlobalCustomBlocks":false,"childManagedBidi":false,"superHubBranches":false,"externalSdkSnippets":false,"requiresJQuery":false,"migrationPreview":false,"superHubPreview":false,"superHubBranchReviews":false,"superHubMergePermissions":false},"fullBaseUrl":"https://documentation.cellpointdigital.com/","git":{"migration":{"createRepository":{},"transformation":{},"migratingPages":{},"enableSuperhub":{}},"sync":{"linked_repository":{},"installationRequest":{},"connections":[],"providers":[]}},"glossaryTerms":[{"_id":"65df740c7c4f340018cb407a","term":"HPP","definition":"Hosted Payment Pages"},{"_id":"65df74177c4f340018cb429f","term":"PSP","definition":"Payment Service Provider"},{"_id":"65df74258dd4bf0ee8d44494","term":"ACQ","definition":"Acquirer"}],"graphqlSchema":"","gracePeriod":{"enabled":false,"endsAt":null},"shouldGateDash":false,"healthCheck":{"provider":"","settings":{}},"intercom_secure_emailonly":false,"intercom":"","is_active":true,"integrations":{"login":{}},"internal":"","jwtExpirationTime":0,"landing_bottom":[{"type":"text","alignment":"left","text":"CellPoint Digital's comprehensive suite of integration solutions offers payment solutions for high-volume merchants with complex requirements, merchants looking for a hands-off Hosted Payment Page (HPP) option, or merchants seeking bespoke payment experiences:"},{"type":"three","alignment":"left","pageType":"Reference","group0":{"title":"[API Integration](doc:orchestration-overview#api-integration)","text":"For high-volume merchants who prioritize full control over their online channel's user interface and experience."},"group1":{"title":"[HPP](doc:orchestration-overview#hosted-payment-page-hpp)","text":"A hassle-free payment integration for merchants seeking a hands-off approach to payment acceptance."},"group2":{"title":"[Custom HPP](doc:orchestration-overview#custom-hosted-payment-page-hpp)","text":"Provide your customers a customized payment experience while offloading payment management to a trusted partner."}},{"type":"text","alignment":"left","text":" "},{"type":"docs","alignment":"left","pageType":"Documentation"},{"type":"docs","alignment":"left","pageType":"Reference"}],"mdxMigrationStatus":"rdmd","metrics":{"monthlyLimit":0,"planLimit":5000000,"thumbsEnabled":true,"monthlyPurchaseLimit":0,"meteredBilling":{}},"modules":{"landing":true,"docs":true,"examples":true,"reference":false,"graphql":false,"changelog":false,"discuss":false,"suggested_edits":true,"logs":false,"custompages":true,"tutorials":false},"name":"CellPoint Documentation","nav_names":{"docs":"","reference":"","changelog":"","discuss":"","tutorials":"","recipes":""},"oauth_url":"","onboardingCompleted":{"documentation":true,"appearance":true,"jwt":false,"api":true,"logs":false,"domain":false,"metricsSDK":false},"owlbot":{"enabled":false,"isPaying":false,"customization":{"answerLength":"long","customTone":"","defaultAnswer":"","forbiddenWords":"","tone":"neutral"},"copilot":{"enabled":false,"hasBeenUsed":false,"installedCustomPage":""}},"owner":{"id":null,"email":null,"name":null},"plan":"business2018","planOverride":"","planSchedule":{"stripeScheduleId":null,"changeDate":null,"nextPlan":null},"planStatus":"active","planTrial":"business2018","readmeScore":{"components":{"newDesign":{"enabled":true,"points":25},"reference":{"enabled":false,"points":50},"tryItNow":{"enabled":false,"points":35},"syncingOAS":{"enabled":false,"points":10},"customLogin":{"enabled":false,"points":25},"metrics":{"enabled":false,"points":40},"recipes":{"enabled":false,"points":15},"pageVoting":{"enabled":true,"points":1},"suggestedEdits":{"enabled":true,"points":10},"support":{"enabled":false,"points":5},"htmlLanding":{"enabled":false,"points":5},"guides":{"enabled":true,"points":10},"changelog":{"enabled":false,"points":5},"glossary":{"enabled":true,"points":1},"variables":{"enabled":false,"points":1},"integrations":{"enabled":true,"points":2}},"totalScore":49},"reCaptchaSiteKey":"","reference":{"alwaysUseDefaults":true,"defaultExpandResponseExample":false,"defaultExpandResponseSchema":false,"enableOAuthFlows":false},"seo":{"overwrite_title_tag":false},"stable":{"_id":"683f3826ef2131005dc4aaa4","version":"2.2.1","version_clean":"2.2.1","codename":"published 6/2025","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","683f3826ef2131005dc4aa36","683f3826ef2131005dc4aa37","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","683f3826ef2131005dc4aa38","683f3826ef2131005dc4aa39","683f3826ef2131005dc4aa3a","683f3826ef2131005dc4aa3b","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","source":"readme","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2025-06-03T18:00:06.642Z","__v":1,"updatedAt":"2025-06-09T15:29:41.078Z","forked_from":"67192ae574588c0045a0ba54","apiRegistries":[]},"subdomain":"cellpoint-documentation","subpath":"","superHubWaitlist":false,"topnav":{"left":[],"right":[{"type":"user","text":"User","url":"/login?redirect_uri=/docs/hpp-response"}],"bottom":[],"edited":false},"trial":{"trialDeadlineEnabled":true,"trialEndsAt":"2022-12-06T18:16:24.937Z"},"translate":{"provider":"transifex","show_widget":false,"key_public":"","org_name":"","project_name":"","languages":[]},"url":"https://cellpointdigital.com","versions":[{"_id":"65b283ae7a6d4a000fdf71ea","version":"0.0","version_clean":"0.0.0","codename":"test","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["65b283ae7a6d4a000fdf7183","65b283ae7a6d4a000fdf7183","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65b283af7a6d4a000fdf71ec"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2024-01-25T15:52:14.865Z","__v":0,"forked_from":"637d11f9234e9b0099697a1d","updatedAt":"2024-02-28T16:59:25.329Z"},{"_id":"637d11f9234e9b0099697a1d","version":"1.0","version_clean":"1.0.0","codename":"Amsterdam","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["637d11f9234e9b0099697a1f","637d11f9234e9b0099697a1f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2022-11-22T18:16:25.273Z","__v":1,"updatedAt":"2024-07-08T18:41:39.309Z"},{"_id":"63fd68df5d1cbe0011aa89e6","version":"1.1","version_clean":"1.1.0","codename":"","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["63fd68df5d1cbe0011aa89da","63fd68df5d1cbe0011aa89da","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","63fd68df5d1cbe0011aa89e8"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2022-11-22T18:16:25.273Z","__v":1,"forked_from":"637d11f9234e9b0099697a1d","updatedAt":"2024-02-28T16:59:27.097Z"},{"_id":"6435ab5ef8d79800298c8f79","version":"1.2","version_clean":"1.2.0","codename":"API update","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["6435ab5ef8d79800298c8f14","6435ab5ef8d79800298c8f14","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","6435ab5ff8d79800298c8f7b"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2022-11-22T18:16:25.273Z","__v":0,"forked_from":"637d11f9234e9b0099697a1d","updatedAt":"2024-02-28T16:59:30.557Z"},{"_id":"65df665dc0373e0012b26786","version":"2.0","version_clean":"2.0.0","codename":"","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","65df673f4fef960011de01a6","65ea0e104ca63e004a1d8f12","685aab990e9689004bb02196"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2024-02-28T16:59:09.739Z","__v":0,"updatedAt":"2025-06-24T13:43:53.372Z","forked_from":"637d11f9234e9b0099697a1d","pdfStatus":""},{"_id":"663a80d460cde70067708aa8","version":"2.1","version_clean":"2.1.0","codename":"consolidated, published til 6/2025","is_stable":false,"is_beta":false,"is_hidden":true,"is_deprecated":true,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","663a80d460cde70067708aaa","663d0ee0650a360011f3a208","663d0ef859318f004e1ec2cb","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","6669feadd423ef0019cfdb71","6669feccffcc2a00110fcd26","666ae70996d0670027097975","670e8de65acfcd0011b138f2","670e8ff8d3021400114cabae","670e91c1e468070019583aa7"],"project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2024-05-07T19:28:20.054Z","__v":2,"updatedAt":"2025-06-09T15:29:24.614Z","forked_from":"65df665dc0373e0012b26786","pdfStatus":"complete","apiRegistries":[],"source":"readme"},{"_id":"67192ae574588c0045a0ba54","version":"2.2","version_clean":"2.2.0","codename":"reorganize, to-do list","is_stable":false,"is_beta":true,"is_hidden":true,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","67192ae574588c0045a0b9cb","67192ae574588c0045a0b9cc","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","67192ae574588c0045a0b9cf","67192ae574588c0045a0b9d0","67192ae574588c0045a0b9d1","67192ae574588c0045a0b9d2","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2024-10-23T16:57:09.294Z","__v":2,"updatedAt":"2025-06-03T17:53:46.693Z","forked_from":"663a80d460cde70067708aa8","apiRegistries":[],"source":"readme"},{"_id":"683f3826ef2131005dc4aaa4","version":"2.2.1","version_clean":"2.2.1","codename":"published 6/2025","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","683f3826ef2131005dc4aa36","683f3826ef2131005dc4aa37","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","683f3826ef2131005dc4aa38","683f3826ef2131005dc4aa39","683f3826ef2131005dc4aa3a","683f3826ef2131005dc4aa3b","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","source":"readme","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2025-06-03T18:00:06.642Z","__v":1,"updatedAt":"2025-06-09T15:29:41.078Z","forked_from":"67192ae574588c0045a0ba54","apiRegistries":[]}],"variableDefaults":[{"source":"security","type":"oauth2","_id":"685aab9a0e9689004bb02198","name":"cpdIssuedJWT","apiSetting":"685aab990e9689004bb02194"},{"source":"security","type":"http","_id":"685aab9a0e9689004bb02197","name":"merchantIssuedJWT","scheme":"bearer","apiSetting":"685aab990e9689004bb02194"}],"webhookEnabled":false,"isHubEditable":true},"projectStore":{"data":{"allow_crawlers":"disabled","canonical_url":null,"default_version":{"name":"2.2.1"},"description":null,"glossary":[{"_id":"65df740c7c4f340018cb407a","term":"HPP","definition":"Hosted Payment Pages"},{"_id":"65df74177c4f340018cb429f","term":"PSP","definition":"Payment Service Provider"},{"_id":"65df74258dd4bf0ee8d44494","term":"ACQ","definition":"Acquirer"}],"homepage_url":"https://cellpointdigital.com","id":"637d11f8234e9b0099697a18","name":"CellPoint Documentation","parent":null,"redirects":[],"sitemap":"disabled","llms_txt":"disabled","subdomain":"cellpoint-documentation","suggested_edits":"enabled","uri":"/projects/me","variable_defaults":[{"name":"cpdIssuedJWT","source":"security","type":"oauth2","id":"685aab9a0e9689004bb02198"},{"name":"merchantIssuedJWT","scheme":"bearer","source":"security","type":"http","id":"685aab9a0e9689004bb02197"}],"webhooks":[],"api_designer":{"allow_editing":"enabled"},"custom_login":{"login_url":null,"logout_url":null},"features":{"mdx":"disabled"},"mcp":{},"onboarding_completed":{"api":true,"appearance":true,"documentation":true,"domain":false,"jwt":false,"logs":false,"metricsSDK":false},"pages":{"not_found":null},"privacy":{"openapi":"admin","password":null,"view":"public"},"refactored":{"status":"disabled","migrated":"unknown"},"seo":{"overwrite_title_tag":"disabled"},"plan":{"type":"business2018","grace_period":{"enabled":false,"end_date":null},"trial":{"expired":false,"end_date":"2022-12-06T18:16:24.937Z"}},"reference":{"api_sdk_snippets":"enabled","defaults":"always_use","json_editor":"disabled","oauth_flows":"disabled","request_history":"enabled","response_examples":"collapsed","response_schemas":"collapsed","sdk_snippets":{"external":"disabled"}},"health_check":{"provider":"none","settings":{"manual":{"status":"down","url":null},"statuspage":{"id":null}}},"integrations":{"aws":{"readme_webhook_login":{"region":null,"external_id":null,"role_arn":null,"usage_plan_id":null}},"bing":{"verify":null},"google":{"analytics":null,"site_verification":null},"heap":{"id":null},"koala":{"key":null},"localize":{"key":null},"postman":{"key":null,"client_id":null,"client_secret":null},"recaptcha":{"site_key":null,"secret_key":null},"segment":{"key":null,"domain":null},"speakeasy":{"key":null,"spec_url":null},"stainless":{"key":null,"name":null},"typekit":{"key":null},"zendesk":{"subdomain":null},"intercom":{"app_id":null,"secure_mode":{"key":null,"email_only":false}}},"permissions":{"appearance":{"private_label":"enabled","custom_code":{"css":"enabled","html":"enabled","js":"disabled"}},"branches":{"merge":{"admin":true}}},"appearance":{"brand":{"primary_color":null,"link_color":"#8f45e6","theme":"light"},"changelog":{"layout":"collapsed","show_author":true,"show_exact_date":false},"layout":{"full_width":"disabled","style":"classic"},"markdown":{"callouts":{"icon_font":"emojis"}},"table_of_contents":"enabled","whats_next_label":null,"footer":{"readme_logo":"hide"},"logo":{"size":"large","dark_mode":{"uri":null,"url":"https://files.readme.io/9f504ea-small-CPD_C-Logo_RGB_low.png","name":"CPD_C-Logo_RGB_low.png","width":80,"height":80,"color":"#000000","links":{"original_url":"https://files.readme.io/37519c1-CPD_C-Logo_RGB_low.png"}},"main":{"uri":null,"url":"https://files.readme.io/d20d0d2-small-CPD_C-Logo_RGB_low.png","name":"CPD_C-Logo_RGB_low.png","width":80,"height":80,"color":"#000000","links":{"original_url":"https://files.readme.io/945d379-CPD_C-Logo_RGB_low.png"}},"favicon":{"uri":null,"url":"https://files.readme.io/5f4c175-small-cpd_favicon.png","name":"cpd_favicon.png","width":32,"height":32,"color":"#000000","links":{"original_url":"https://files.readme.io/43707bd-cpd_favicon.png"}}},"custom_code":{"css":".markdown-body { \n font-family: \"Open Sans\",\"Helvetica Neue\",\"Helvetica\",\"Arial\",sans-serif !important;\n}\n\nh1, h2, h3, h4, h5, h6 {font-family: \"Open Sans\",\"Helvetica Neue\",\"Helvetica\",\"Arial\",sans-serif !important;}\n\n.heading-1 {\n padding-top: .4em;\n\tpadding-bottom: .5em; \n}\n\n.heading-2 {\n padding-top: .4em;\n\tpadding-bottom: .4em;\n}\n\n.heading-3, .heading-4 {\n padding-top: .5em;\n\tpadding-bottom: .3em;\n}\n\n\n.main-table tr .sub-heading{\n \n text-align : left;\n}\n\n.round-dots{\nlist-style-type: circle;\n\n}\n.col-txt{\n vertical-align: top;\n}\n.text-block{\n display : block; \n}\n\n.bullet-list{\n margin: 0 40px;\n list-style: circle !important;\n}\n\n.bullet-list.less-spacing{\n margin: 0 50px;\n padding: 0 !important;\n}\n\n.nested-table-wrapper{\n padding-bottom: 280px;\n position: relative;\n}\n\n.nested-table{\n\tposition: absolute;\n margin-top: -145px;\n}\n\n@media only screen and (max-width: 1300px){\n.nested-table{\n\tposition: static;\n margin-top: 0;\n}\n .nested-table-wrapper{\n \tpadding-bottom: 0;\n }\n}\n\n/**Helpers***/\n.left{\ntext-align: left;\n}\n.underline-text {\ntext-decoration: underline;\n display: inline;\n}\n.style-circle li {\n list-style: circle !important;\n}\n.style-alpha li {\n\t\tlist-style: lower-alpha;\n}\n/**Helpers-End***/","js":null,"html":{"header":"\n\n","home_footer":null,"page_footer":null}},"header":{"type":"line","gradient_color":null,"link_style":"buttons","overlay":{"fill":"auto","type":"triangles","position":"top-left","image":{"uri":null,"url":null,"name":null,"width":null,"height":null,"color":null,"links":{"original_url":null}}}},"ai":{"dropdown":"disabled","options":{"chatgpt":"enabled","claude":"enabled","clipboard":"enabled","copilot":"enabled","view_as_markdown":"enabled"}},"navigation":{"first_page":"landing_page","left":[],"logo_link":"homepage","page_icons":"enabled","right":[{"type":"user_controls","title":null,"url":null,"custom_page":null}],"sub_nav":[],"subheader_layout":"links","version":"disabled","links":{"home":{"label":"Home","visibility":"enabled"},"graphql":{"label":"GraphQL","visibility":"disabled"},"guides":{"label":"Guides","alias":null,"visibility":"enabled"},"reference":{"label":"API Reference","alias":null,"visibility":"disabled"},"recipes":{"label":"Recipes","alias":null,"visibility":"disabled"},"changelog":{"label":"Changelog","alias":null,"visibility":"disabled"},"discussions":{"label":"Discussions","alias":null,"visibility":"disabled"}}}},"git":{"connection":{"repository":{},"organization":null,"status":"inactive"}}}},"version":{"_id":"683f3826ef2131005dc4aaa4","version":"2.2.1","version_clean":"2.2.1","codename":"published 6/2025","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","683f3826ef2131005dc4aa36","683f3826ef2131005dc4aa37","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","683f3826ef2131005dc4aa38","683f3826ef2131005dc4aa39","683f3826ef2131005dc4aa3a","683f3826ef2131005dc4aa3b","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","source":"readme","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2025-06-03T18:00:06.642Z","__v":1,"updatedAt":"2025-06-09T15:29:41.078Z","forked_from":"67192ae574588c0045a0ba54","apiRegistries":[]}},"is404":false,"isDetachedProductionSite":false,"lang":"en","langFull":"Default","reqUrl":"/docs/hpp-response","version":{"_id":"683f3826ef2131005dc4aaa4","version":"2.2.1","version_clean":"2.2.1","codename":"published 6/2025","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["65df665dc0373e0012b2671f","65df665dc0373e0012b2671f","637d11f9234e9b0099697a21","63f9089917a2c3000bb745ec","63f908a35c346f005ec48f8f","63f908a936e4890026cac28c","63f908b7104d73003b29a9dd","63f908c5488146003e11bc4a","63f908d190690f0018740987","63f908e45c346f005ec49118","63f908f2b46e8e0018c64334","63f9090188b25e0075bfb6fd","640233f1779f9600650a94fd","64089ed25ba213087efa7e2e","65df5c9d2f41d000111baa93","65df665ec0373e0012b26788","663a80d460cde700677088fb","65ea0e104ca63e004a1d8f12","683f3826ef2131005dc4aa36","683f3826ef2131005dc4aa37","67192ae574588c0045a0b9cd","66674781e10aad001eda7959","6669fd16bcf40100183d7130","6669fd1a47cf690019d619c6","67192ae574588c0045a0b9ce","683f3826ef2131005dc4aa38","683f3826ef2131005dc4aa39","683f3826ef2131005dc4aa3a","683f3826ef2131005dc4aa3b","67192ae574588c0045a0b9d3"],"pdfStatus":"complete","source":"readme","project":"637d11f8234e9b0099697a18","releaseDate":"2022-11-22T18:16:25.273Z","createdAt":"2025-06-03T18:00:06.642Z","__v":1,"updatedAt":"2025-06-09T15:29:41.078Z","forked_from":"67192ae574588c0045a0ba54","apiRegistries":[]}}">