One-Stage Payment
A one-stage payment is configured using the prepare_payment
method by setting the parameter auto_capture = true
, which is the default value in the request body. In this payment process, funds are debited immediately without requiring additional confirmation of the amount by the Partner.
User Flows
Payment via the Partner's website - Humo/Uzcard (Processing Center - PC)
- The User selects a product/service.
- Clicks "Pay" in the basket.
- The Partner's website initiates the transaction using the
prepare_payment
method. - Our Back-end (BE) confirms the creation of the transaction.
- The Client sends the card details from the Partner's payment page.
- The Partner sends the card details via the
pay
method, confirming the transaction. - Our BE sends a confirmation.
- The Partner initiates the
verificationInfo
method to receive the payment ID. - Our BE sends a confirmation.
- The Processing Center (PC) sends the OTP code to the Client.
- The Client sends the code.
- The Partner initiates verification of the OTP code through the
check_sms_key
method. - Our BE sends a confirmation.
- Our BE sends a write-off request to the PC.
- The PC confirms the write-off/rejection.
- We notify the Partner about the successful/unsuccessful write-off.
- The Client is redirected to the Partner's website.
Note
If the verificationInfo
response is unsuccessful, you will receive the same response format as in the case of a successful one, but the secondsLeft
parameter will have a value of 0.
Payment via the Partner's website - Visa/MC (Processing Center - PC)
- The client selects a product/service;
- Clicks "Pay" in the shopping cart;
- The Partner initiates the transaction using the
prepare_payment
method; - Our Back-end (BE) sends a confirmation;
- The client fills in and sends the bank card details on the Partner's page;
- The Partner conducts the transaction by initiating the
pay
method; - Our BE sends a request to write off funds to the Visa/MC PC;
- The Visa/MC PC sends a link to the OTP code entry form;
- Our BE confirms the transaction and sends a link to the on-screen OTP code entry form;
- The Partner displays the OTP code entry page to the client;
- Visa/MC PC sends the OTP code to the client;
- The client sends the OTP code to Visa/MC PC;
- Visa/MC PC sends us a notification about the confirmation of the withdrawal of funds;
- We notify the Partner about the successful/unsuccessful withdrawal;
Methods
prepare_payment
- URL:
https://secure.octo.uz/prepare_payment
- Method:
POST
- Content-type:
application/json
Test transactions
To conduct a test transaction, when initiating the prepare_payment
method, you must specify the test
parameter with the value true
in the request body. This parameter is optional. If it is not specified, a real transaction will be created.
To conduct a test transaction, specify - test: true
{
"auto_capture": true,
"test": true,
"init_time": "2024-05-02 09:17:00"
}
Example request
Important!
One-stage payment - auto_capture: true
Two-stage payment - auto_capture: false
{
"octo_shop_id": 123,
"octo_secret": "537da54b-835a-4968-9864-c2ae02c5902e",
"shop_transaction_id": "0000_0000_0000_0000_0010",
"auto_capture": true,
"test": false,
"init_time": "2024-05-02 09:17:00",
"user_data": {
"user_id": "Johnny Depp",
"phone": "998901234567",
"email": "octo@mail.com"
},
"total_sum": 1000.0,
"currency": "UZS",
"description": "TEST_PAYMENT",
"basket": [
{
"position_desc": "Йогурт MANON клубничный",
"count": 2,
"price": 10.0,
"spic": "special_information_for_position"
},
{
"position_desc": "Йогурт MANON банановый",
"count": 1,
"price": 20.0,
"spic": "special_information_for_position"
}
],
"payment_methods": [
{
"method": "bank_card"
},
{
"method": "uzcard"
},
{
"method": "humo"
}
],
"tsp_id": 18,
"return_url": "https://octo.uz" // (URL must always be complete),
"notify_url": "https://notify-url.uz",
"language": "uz",
"ttl": 15
}
Request parameters
Parameter | Type | Required | Description |
---|---|---|---|
octo_shop_id | Integer | Yes | The shop's unique ID (available in the Personal Account). |
octo_secret | String | Yes | The shop's personal secret key, generated in the Personal Account. Must be kept securely. |
shop_transaction_id | String | Yes | The unique transaction ID on the shop's side. Used to prevent duplication. |
auto_capture | Boolean | Yes | If true, funds are automatically written off. If false, additional confirmation is required. |
test | Boolean | Yes | Indicates if it is a test payment. |
init_time | Datetime | Yes | Time of payment creation (format: yyyy-MM-dd HH:mm:ss). |
user_data | Object | No | Information about the customer, displayed on the payment page. |
user_data.user_id | String | Yes (if present) | User's ID in the shop's database. |
user_data.phone | String | Yes (if present) | User's phone number. |
user_data.email | String | Yes (if present) | User's email address. |
total_sum | Double | Yes | Total payment amount. |
currency | String | Yes | Payment currency (e.g., USD, UZS, RUB). |
description | String | Yes | Description of the product. |
basket | Array | Yes | Detailed information about the basket. |
basket.position_desc | String | Yes (if present) | Item name in the receipt. |
basket.count | Integer | Yes (if present) | Quantity of the item. |
basket.price | Double | Yes (if present) | Price per item. |
basket.spic | String | No | Additional field for item details. |
payment_methods | Array | No | Available payment methods (e.g., bank_card, uzcard, humo). |
tsp_id | Integer | No | ID of the sales and service provider. |
return_url | String | Yes | URL to redirect the customer after payment. Must identify the specific payment. |
notify_url | String | No | URL for payment status notifications. |
language | String | Yes | Language of the payment form (e.g., en, uz, ru). |
ttl | Integer | No | Payment lifetime in minutes. |
Successful response example
{
"error": 0,
"data": {
"shop_transaction_id": "c9211e0f-c6ba-4d97-b8be-fb230ef3985b",
"octo_payment_UUID": "e3f40dc3-4955-412a-853a-2ddd28d3201f",
"status": "created",
"octo_pay_url": "https://pay2.octo.uz/pay/e3f40dc3-4955-412a-853a-2ddd28d3201f?language=uz",
"refunded_sum": 0,
"total_sum": 1000.0
},
"apiMessageForDevelopers": "",
"shop_transaction_id": "c9211e0f-c6ba-4d97-b8be-fb230ef3985b",
"octo_payment_UUID": "e3f40dc3-4955-412a-853a-2ddd28d3201f",
"status": "created",
"octo_pay_url": "https://pay2.octo.uz/pay/e3f40dc3-4955-412a-853a-2ddd28d3201f?language=uz",
"refunded_sum": 0,
"total_sum": 1000.0
}
Successful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | Integer | Yes | Error code (0 indicates success). |
data | Object | Yes | Main object with payment details. |
data.shop_transaction_id | String | Yes | Shop's transaction ID. |
data.octo_payment_UUID | String | Yes | Octo's payment ID. |
data.status | String | Yes | Payment status. |
data.octo_pay_url | String | Yes | URL to access the payment in Octo. |
data.refunded_sum | Double | No | Amount refunded, if any. |
data.total_sum | Double | Yes | Total payment amount. |
apiMessageForDevelopers | String | No | Message for developers (empty if successful). |
Unsuccessful response example
{
"error": 2,
"errMessage": "Wrong secret",
"data": null,
"errorMessage": "Wrong secret",
"apiMessageForDevelopers": "The ErrorMessage field is outdated. Please switch to errMessage for unification of the responses. Also, please know that in the future, all fields except error and errMessage will be passed to data. For more information, please contact the technical support of the service."
}
Unsuccessful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | Integer | Yes | Error code. |
errMessage | String | Yes | Error message. |
data | Object | No | Main transaction data. |
errorMessage | String | Yes | Error message (deprecated, use errMessage ). |
apiMessageForDevelopers | String | No | Technical message for developers. |
Important
In the future, all fields except error
and errMessage
will be passed to the data
object. If you have any questions about the response structure, please contact Octo's technical support.
pay
- URL:
https://secure.octo.uz/pay/{octo_payment_UUID}
- Method:
POST
- Content-type:
application/json
Request example
{
"pan": "8600313260861293",
"exp": "2602",
"method": "uzcard",
"cvc2": "",
"cardHolderName": "CardHolder Name",
"email": "client@mail.com"
}
Request parameters
Parameter | Type | Required | Description |
---|---|---|---|
pan | string | Yes | The customer's card number used for the transaction. |
exp | string | Yes | Card validity period in YYYY format (year/month). |
method | string | Yes | Payment method. Acceptable values: bank_card , uzcard , humo . |
cvc2 | string | Yes | Card's CVC2 code. |
cardHolderName | string | Yes | Cardholder's name (as indicated on the card). |
string | Yes | User's email address. Required if the user_data block was provided earlier. |
Successful response example
{
"error": 0,
"errMessage": "",
"data": {
"id": 5520,
"uuid": "04b7f6dd-4693-4afa-96e9-f42790413de7",
"processorKey": null,
"merchantId": 242,
"merchant": null,
"merchantTransId": "638421f6-dbc0-4875-8ff9-c6ffe3766087",
"initialSum": 1000.00,
"totalSum": 1000.00,
"splittedSum": 1000.00,
"currency": "UZS",
"convertSum": null,
"convertRate": null,
"convertCurrency": null,
"selectedMethod": null,
"createTime": 1732700367802,
"expireTime": 1732701267781,
"peyedTime": null,
"expiredHoldTime": null,
"merCreateTime": 15420000,
"description": "TEST_PAYMENT",
"autoCapture": true,
"withoutSite": false,
"isTest": false,
"refundLocked": false,
"returnUrl": "octo.uz",
"redirectUrl": "https://pay2.octo.uz/uzcard/sms/04b7f6dd-4693-4afa-96e9-f42790413de7",
"details": {
"cardInfo": {
"first6": "860031",
"last4": "1293",
"issuerCountryCode": "UZ",
"cardHolder": "CardHolder Name",
"saveToken": null
},
"transType": "SMS"
},
"hold": null,
"payMethods": [
{
"only": null,
"method": "bank_card"
},
{
"only": null,
"method": "uzcard"
},
{
"only": null,
"method": "humo"
}
],
"status": "created",
"basket": null,
"user": {
"email": "client@mail.com",
"phone": "998901234567",
"user_id": "Elbek"
},
"language": "uz",
"tariffId": 2,
"fee": null,
"refundedSum": 0.00,
"bankCode": "RB",
"cardInputType": "merchant_site",
"tag": "ticket",
"test": false
}
}
Successful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | int | Yes | Error code: 0 means no errors. |
errMessage | string | No | Error message, empty if there is no error. |
data | object | Yes | An object containing transaction details. |
data.id | int | Yes | Unique transaction ID. |
data.uuid | string | Yes | Unique UUID for transaction identification. |
data.processorKey | string | No | Processing ID, if applicable. |
data.merchantId | int | Yes | Merchant ID associated with the transaction. |
data.merchant | object | No | Merchant information. |
data.merchantTransId | string | Yes | Unique transaction ID from the merchant. |
data.initialSum | decimal | Yes | Initial transaction amount. |
data.totalSum | decimal | Yes | Total transaction amount, including fees. |
data.splittedSum | decimal | Yes | Amount split among multiple recipients (if applicable). |
data.currency | string | Yes | Transaction currency. |
data.convertSum | decimal | No | Converted amount (if applicable). |
data.convertRate | decimal | No | Conversion rate (if applicable). |
data.convertCurrency | string | No | Converted currency (if applicable). |
data.selectedMethod | string | No | Selected payment method. |
data.createTime | int | Yes | Transaction creation time (UNIX timestamp). |
data.expireTime | int | Yes | Transaction expiration time (UNIX timestamp). |
data.peyedTime | int | No | Payment time of the transaction, if paid. |
data.expiredHoldTime | int | No | Expiration time of funds retention. |
data.merCreateTime | int | Yes | Transaction creation time on the merchant’s side. |
data.description | string | Yes | Description of the transaction. |
data.autoCapture | bool | Yes | Indicates whether the payment will be automatically captured. |
data.withoutSite | bool | Yes | Indicates whether the operation is performed without a website. |
data.isTest | bool | Yes | Indicates whether the transaction is a test transaction. |
data.refundLocked | bool | Yes | Indicates whether refunds are locked. |
data.returnUrl | string | Yes | URL for redirection after payment. |
data.redirectUrl | string | Yes | URL for redirecting to the payment page. |
data.details | object | No | Additional transaction details (e.g., cardInfo ). |
data.details.cardInfo | object | No | Information about the card used for payment. |
data.details.transType | string | Yes | Type of transaction (e.g., SMS ). |
data.hold | object | No | Data regarding funds retention (if applicable). |
data.payMethods | array | Yes | List of available payment methods. |
data.status | string | Yes | Transaction status. |
data.user | object | No | User information. |
data.user.email | string | No | User’s email address. |
data.user.phone | string | No | User’s phone number. |
data.user.user_id | string | Yes | Unique user ID (provided in prepare_payment ). |
data.language | string | Yes | Interface language. Acceptable values: uz , ru , en . |
data.tariffId | int | Yes | Tariff ID. |
data.riskLevel | int | Yes | Transaction risk level. |
data.bankCode | string | Yes | Bank code. |
data.cardInputType | string | Yes | Card data entry type (merchant_site / octo_page ). |
data.tag | string | No | Tag associated with the transaction (e.g., ticket ). |
Unsuccessful response example
{
"error": 2,
"errMessage": "Wrong secret",
"data": null
}
Unsuccessful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | int | Yes | Error code. |
errMessage | string | Yes | Error message. |
data | object | No | Main transaction data, can be null if no additional data. |
verificationInfo
- URL:
https://secure.octo.uz/verificationInfo/
- Method:
POST
- Content-type:
application/json
Note
Only the octo_payment_UUID
is sent.
Successful response example
{
"error": 0,
"errMessage": "",
"data": {
"verifyId": 819,
"phone": "+998** *****33",
"secondsLeft": 221
}
}
Successful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | Integer | Yes | Error code (0 means no errors). |
errMessage | String | No | Error message, empty if no error. |
data | Object | Yes | Object with verification process details. |
verifyId | Integer | Yes | Unique ID of the verification process. |
phone | String | Yes | Phone number associated with verification (partially hidden). |
secondsLeft | Integer | Yes | Remaining time (in seconds) until the verification period expires. |
Unsuccessful response example
{
"error": 0,
"errMessage": "",
"data": {
"verifyId": 819,
"phone": "+998** *****33",
"secondsLeft": 0
}
}
Unsuccessful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | Integer | Yes | Error code (0 means no errors, but secondsLeft=0 indicates that the verification period has expired or is inactive). |
errMessage | String | No | Error message, empty if no error. |
data | Object | Yes | Object with verification process details. |
verifyId | Integer | Yes | Unique ID of the verification process. |
phone | String | Yes | Phone number associated with verification (partially hidden). |
secondsLeft | Integer | Yes | Remaining time (in seconds) until the verification period expires (0 if verification failed). |
Important!
If secondsLeft=0
, then the verification time has expired or the verification process is inactive. If you have any questions about integration, please contact Octo technical support.
check_sms_key
- URL:
https://secure.octo.uz/check_sms_key
- Method:
POST
- Content-type:
application/json
Request Example
{
"smsKey": "317168", // Confirmation code sent via SMS
"paymentId": 822, // Unique payment identifier
"verifyId": "{{verifyId}}" // Unique verification process identifier (replaced by the value from the previous step)
}
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
smsKey | string | Yes | SMS code sent for transaction confirmation. |
paymentId | int | Yes | Unique payment identifier. |
verifyId | int | Yes | Identifier for operation verification. |
Successful Response Example
{
"error": 0, // Error code: 0 means no errors
"errMessage": "", // Error message, empty if no errors
"data": {
"id": 5520, // Unique transaction identifier
"uuid": "04b7f6dd-4693-4afa-96e9-f42790413de7", // Unique UUID for transaction identification
"processorKey": "010967385013", // Identifier in the processing system
"merchantId": 242, // Merchant identifier
"merchant": null, // Merchant information
"merchantTransId": "638421f6-dbc0-4875-8ff9-c6ffe3766087", // Unique transaction ID from the merchant
"initialSum": 1000.00, // Initial transaction amount
"totalSum": 1000.00, // Total transaction amount, including fees
"splittedSum": 1000.00, // Amount distributed among several recipients
"currency": "UZS", // Transaction currency (Uzbek Sum)
"convertSum": null, // Amount in the converted currency
"convertRate": null, // Conversion rate
"convertCurrency": null, // Converted currency
"selectedMethod": "uzcard", // Selected payment method
"createTime": 1732700367802, // Transaction creation time (UNIX timestamp)
"expireTime": 1732701267781, // Transaction expiration time (UNIX timestamp)
"peyedTime": 1732700437809, // Successful payment time (UNIX timestamp)
"expiredHoldTime": null, // Funds hold expiration time
"merCreateTime": 15420000, // Transaction creation time on the merchant side
"description": "TEST_PAYMENT", // Transaction description
"autoCapture": true, // Indicates whether the payment will be auto-captured
"withoutSite": false, // Indicates whether the operation is conducted without a website
"isTest": false, // Indicates whether the transaction is a test
"refundLocked": false, // Indicates whether the refund is locked
"returnUrl": "octo.uz", // Return URL after transaction completion
"redirectUrl": "https://dev-pay.octo.uz/status/04b7f6dd-4693-4afa-96e9-f42790413de7", // URL for redirecting the user
"details": {
"transType": "SMS", // Transaction type (e.g., SMS confirmation)
"commission": "2.00", // Transaction commission
"cardType": "uzcard" // Type of card used for payment
},
"hold": null, // Funds hold information
"payMethods": [ // List of available payment methods
{
"only": null,
"method": "bank_card" // Payment via bank card
},
{
"only": null,
"method": "uzcard" // Payment via Uzcard
},
{
"only": null,
"method": "humo" // Payment via Humo
}
],
"status": "succeeded", // Transaction status (successfully completed)
"basket": null, // Information about the shopping basket
"user": {
"email": "client@mail.com", // User email
"phone": "998901234567", // User phone number
"user_id": "Elbek" // User's unique identifier
},
"airline": null, // Airline information (if applicable)
"language": "uz", // Interface language
"tariffId": 2, // Tariff identifier
"fee": 20.0000, // Commission amount
"transferSum": 980.0000, // Amount to be transferred after deducting commission
"refundedSum": 0.00, // Refunded amount
"provCode": "uzcard", // Provider code
"optionalData": null, // Additional data
"forConsideration": false, // Marked for consideration
"riskLevel": 0, // Transaction risk level
"auditedAt": null, // Transaction audit time
"auditorId": null, // Auditor identifier
"bankCode": "RB", // Bank code
"merchantCardId": null, // Merchant card identifier
"processingReference": "1732700437604_5520", // Processing reference
"requestProcessingStatus": null, // Request processing status
"requestProcessingTryCount": 0, // Number of processing attempts
"currentStep": null, // Current transaction step
"tag": "ticket", // Transaction tag
"tspId": null, // TSP identifier
"cardInputType": "merchant_site", // Type of card input
"redirectTimeout": null, // Redirect timeout
"merchantStatus": null, // Merchant side status
"fiscalDetails": {
"fiscalClassifierIds": [18], // List of fiscal classifiers
"status": "success", // Fiscalization status
"errorCode": "0", // Fiscalization error code
"message": "accepted", // Fiscalization status message
"createTime": "1732700438714" // Fiscalization creation time (UNIX timestamp)
},
"showButtonSaveCard": null, // Whether to show the save card button
"test": false // Indicates whether the transaction is a test
}
}
Successful Response Parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | int | Yes | Error code. 0 means the request was successfully processed. |
errMessage | string | No | Error message. Empty if the request was successful. |
data | object | Yes | Object containing detailed information about the payment. |
data.id | int | Yes | Unique payment identifier. |
data.uuid | string | Yes | Unique UUID of the payment. |
data.processorKey | string | Yes | Processor key involved in the transaction. |
data.merchantId | int | Yes | Unique identifier of the merchant. |
data.merchant | - | Yes | Merchant information. |
data.merchantTransId | string | Yes | Unique transaction identifier provided by the merchant. |
data.initialSum | decimal | Yes | Initial payment amount. |
data.totalSum | decimal | Yes | Total payment amount. |
data.splittedSum | decimal | Yes | Split payment amount. |
data.currency | string | Yes | Payment currency. |
data.convertSum | Decimal | Yes | Amount after conversion (if applicable). |
data.convertRate | Decimal | Yes | Conversion rate. |
data.convertCurrency | String | Yes | Currency after conversion. |
data.selectedMethod | string | Yes | Selected payment method. |
data.createTime | long | Yes | Payment creation time in Unix Time format. |
data.expireTime | long | Yes | Payment expiration time in Unix Time format. |
data.peyedTime | long | Yes | Payment completion time in Unix Time format. |
data.expiredHoldTime | Long | Yes | Expiration time of funds hold (if applicable). |
data.merCreateTime | Long | Yes | Creation time on the merchant's side. |
data.description | string | Yes | Payment description. |
data.autoCapture | bool | Yes | Flag indicating whether the payment will be auto-captured. |
data.returnUrl | string | Yes | URL to return the user after payment completion. |
data.redirectUrl | string | Yes | URL to redirect the user for viewing payment status. |
data.details | object | Yes | Object with additional payment details. |
data.details.transType | string | Yes | Transaction type. |
data.details.commission | string | Yes | Transaction commission. |
data.details.cardType | string | Yes | Type of card used for the payment. |
data.hold | object | Yes | Information about funds hold, if applicable. |
data.payMethods | array | Yes | List of available payment methods. |
data.payMethods.only | string | Yes | Optional field indicating method availability for specific conditions. |
data.payMethods.method | string | Yes | Name of the payment method. |
data.status | string | Yes | Payment status. |
data.basket | List<Object> | Yes | Information about the shopping basket related to the transaction. |
data.user | object | Yes | Object containing user information. |
data.user.email | string | Yes | User email. |
data.user.phone | string | Yes | User phone number. |
data.user.user_id | string | Yes | Unique identifier of the user. |
data.airline | Object | Yes | Airline details (if applicable). |
data.language | string | Yes | Language of the payment form interface. |
data.tariffId | Integer | Yes | Tariff identifier (if applicable). |
data.fee | decimal | Yes | Amount of the fee. |
data.transferSum | decimal | Yes | Transfer amount after deducting the fee. |
data.refundedSum | Decimal | Yes | Refunded amount (if applicable). |
data.provCode | String | Yes | Code of the provider that processed the transaction. |
data.optionalData | string | Yes | Additional data sent in the request or system, may be null. |
data.forConsideration | bool | Yes | Flag indicating whether the transaction is under consideration. |
data.riskLevel | int | Yes | Risk level associated with the transaction. Usually expressed as a number. |
data.auditedAt | long | Yes | Time when the transaction was audited, in timestamp format. |
data.auditorId | Integer | Yes | Identifier of the auditor who conducted the audit. |
data.bankCode | string | Yes | Bank code. |
data.merchantCardId | string | Yes | Unique identifier of the card stored for the merchant, if applicable. |
data.processingReference | string | Yes | Unique identifier related to the transaction processing in the system. |
data.requestProcessingStatus | string | Yes | Current status of the request processing, if applicable. |
data.requestProcessingTryCount | int | Yes | Number of attempts to process the request. |
data.currentStep | string | Yes | Current step of transaction processing. May be null. |
data.tag | string | Yes | Short tag of the transaction type defined by the merchant, used for identification or filtering transactions. |
data.tspId | int | Yes | Identifier of the trade and service enterprise that provided the service or product. |
data.cardInputType | string | Yes | Type of card data input. |
data.redirectTimeout | long | Yes | Timeout for redirecting to the status or payment page, in milliseconds. |
data.merchantStatus | string | Yes | Current status of the operation on the merchant's side, if supported. |
data.fiscalDetails | object | Yes | Object containing fiscal details. |
data.fiscalDetails.fiscalClassifierIds | List<intr> | Yes | List of fiscal classifier identifiers related to the transaction. |
data.fiscalDetails.status | string | Yes | Fiscalization status. |
data.fiscalDetails.errorCode | string | Yes | Error code associated with fiscal data processing. |
data.fiscalDetails.message | string | Yes | Message from the fiscal service. |
data.fiscalDetails.createTime | long | Yes | Time when fiscal data was created, in timestamp format. |
data.showButtonSaveCard | bool | Yes | Flag indicating whether to display the save card button. |
data.test | bool | Yes | Indicates whether the transaction is a test. |
Unsuccessful response example
{
"error": 2, // Error code
"errMessage": "Wrong secret", // Error message
"data": null // Payment data object
}
Unsuccessful response parameters
Parameter | Type | Required | Description |
---|---|---|---|
error | int | Yes | Error code. |
errMessage | string | Yes | Error message. |
data | object | No | Core transaction data. Can be null . |