REST Interface

The use of the functions or functionality of the system not described in this document is not allowed.

Request for order registration (REST)

The register.do request is used to register an order (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
token AN..30 no A public key that can be used to register an order. If login and password are used for authentication during order registration, the token parameter does not need to be passed.
orderNumber AN..32 yes The order number (identifier) in the store's system is unique for each store within the system
amount N..12 yes Payment amount in kopecks (or cents)
currency N3 no The payment currency code is ISO 4217. If not specified, it is considered equal to 810 (Russian rubles).
returnUrl AN..512 yes The address to which the user must be redirected in case of successful payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
failUrl AN..512 no The address to which the user must be redirected in case of failed payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
description ANS..512 no Description of the order in any form
ip ANS..39 no The buyer's IP address
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
pageView ANS..20 no

The value of this parameter determines which pages of the payment interface should be loaded for the client. Possible values are:

  • DESKTOP – for pages designed to be displayed on PC screens (pages with payment_<locale>.html and errors_<locale>.html will be searched for in the archive of the payment interface pages);
  • MOBILE – for pages designed to be displayed on mobile devices (pages with names mobile_payment_<locale>.html and mobile_errors_<locale>.html will be searched for in the archive of the payment interface pages);
  • If the store has added arbitrary prefixes to their page file names, value of the desired prefix should be passed in the pageView parameter for the corresponding pages to be loaded. For example, if iphone is passed in the parameter, pages with names iphone_payment_<locale>.html and iphone_error_<locale>.html will be searched for in the archive of the payment interface pages.
    where:

    • locale – language of the page encoded in ISO 639-1. For example, ru for Russian or en for English.

If the parameter is missing or does not match the format, the default value is pageView=DESKTOP.

clientId AN..255 no

The client's number (ID) in the store's system. It is used to implement the functionality of bindings. It can be present if creating bindings is allowed for the store.

Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be failed.

merchantLogin AN..255 no To register an order on behalf of a child merchant, specify the merchant login in this parameter.
jsonParams AN..1024 no

A block for passing additional merchant parameters. The fields for additional information and its subsequent storage are passed as:

        {"<name1>":"<value1>",...,"<nameN>":"<valueN>"}
    

These fields can be passed to the Bank processing system to be subsequently displayed in the registries. This functionality can be enabled upon additional agreement with the bank during the integration period.
If sending notifications to a buyer is set up for a seller, the email address of a buyer must be passed in this block in the email parameter.

sessionTimeoutSecs N...9 no The order lifetime in seconds. If the parameter is not specified, the value specified in the merchant's settings or the default time (1200 seconds = 20 minutes) will be used. If the expirationDate parameter is present in the request, the value of the sessionTimeoutSecs parameter is ignored.
expirationDate ANS no Date and time of the order lifetime expiration. Format: yyyy-MM-DDThh:mm:ss. If this parameter is not passed in the request, then sessionTimeoutSecs is used to determine the end-of-life time of the order.
bindingId AN..255 no ID of the binding created earlier. It can only be used if the store has permission to work with bindings. If this parameter is passed in this request, it means: 1. This order can only be paid using a binding; 2. The payer will be redirected to the payment page, where only CVC input is required.
features ANS..255 no AUTO_PAYMENT – if the request for order registration initiates auto-payments. VERIFY – if this parameter is specified, after the request for order registration, the cardholder is to be verified without debiting funds from the cardholder account. Thus, it is possible to pass a zero amount in the request.
dynamicCallbackUrl AN..512 no This parameter allows you to use the dynamic callback notification sending functionality. All payment-related callbacks enabled for the merchant could be directed to the address passed in this parameter. Payment-related notifications are callback notifications about the following events: successful hold, payment rejected by timeout, successful debit, refund, reversal. Notably, payment-unrelated callbacks that are active for the merchant (enabling/disabling a binding, binding creation) will be sent to static callback address. It is necessary to contact technical support for configuration.
email ANS..40 no Buyer's email address.
phone ANS.12 no Buyer's phone number. If the phone includes a country code, the number must begin with a plus sign (+). If the phone is passed without a plus sign (+), the country code should not be specified. Thus, the following options are acceptable: +79998887766; 9998887766.

By default the following fields are passed to the bank processing system:

  • orderNumber – order number in the store system;
  • description – order description (no more than 99 characters; %, +, carriage return \r, and line feed \n cannot be used).

If an additional parameter named merchantOrderId is passed in the order, then its value will be passed to the processing system as the order number (instead of the value of the orderNumber field).
Response parameters:

Name Type Mandatory Description
orderId ANS36 no The order number in the payment system. It is unique within the system. It is missing if the order registration failed due to an error detailed in ErrorCode.
formUrl AN..512 no URL of the payment form to which the client's browser is to be redirected. It is not returned if the order registration failed due to an error detailed in ErrorCode.
errorCode N3 no Error code.
errorMessage AN..512 no Error description in the language passed in the language parameter in the request.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 Order with given order number is processed already
1 An order with this number was registered, but was not paid for
1 Invalid order number
3 Currency is not defined
4 The order number cannot be empty
4 The merchant's name cannot be empty
4 Empty amount
4 The return URL cannot be empty
4 The password cannot be empty
5 The seller's login is incorrect
5 Incorrect amount
5 Incorrect 'Language' parameter
5 Access denied
5 The user must change password
5 Access denied
5 jsonParams is invalid
7 System error
13 Using both values, Features FORCTDS/FORCESSL and AUTO_PAYMENT, is not allowed
13 The Merchant does not have the permission to process auto-payments
13 The Merchant does not have the permission to process verification payments
14 Features are specified incorrectly

Example of a POST request:

        amount=100&currency=810&language=ru&orderNumber=87654321&returnUrl=[https://tws.egopay.ru/ab/finish.html&pageView=DESKTOP&](https://tws.egopay.ru/ab/finish.html&pageView=DESKTOP&){jsonParams="param1":"value1","param2":"value2"}&expirationDate=2014-09-08T14:14:14&merchantLogin=merch_child&features=AUTO_PAYMENT
    

Response example:

        {"orderId":"70906e55-7114-41d6-8332-4609dc6590f4","formUrl":"https://tws.egopay.ru/ab/merchants/test/payment_ru.html?mdOrder=70906e55-7114-41d6-8332-4609dc6590f4"}
    

Request for order registration with pre-authorization (REST)

The registerPreAuth.do request is used to request registration of an order with pre-authorization (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
token AN..30 no A public key that can be used to register an order. If login and password are used for authentication during order registration, the token parameter does not need to be passed.
orderNumber AN..32 yes The order number (identifier) in the store's system is unique for each store within the system
amount N..12 yes Payment amount in kopecks (or cents)
currency N3 no The payment currency code is ISO 4217. If not specified, it is considered equal to the default currency code.
returnUrl AN..512 yes The address to which the user must be redirected in case of successful payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
failUrl AN..512 no The address to which the user must be redirected in case of failed payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
description ANS..512 no Description of the order in any form
ip ANS..39 no The buyer's IP address
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
pageView ANS..20 no

The value of this parameter determines which pages of the payment interface should be loaded for the client. Possible values are:

  • DESKTOP – for pages designed to be displayed on PC screens (pages with payment_<locale>.html and errors_<locale>.html will be searched for in the archive of the payment interface pages);
  • MOBILE – for pages designed to be displayed on mobile devices (pages with names mobile_payment_<locale>.html and mobile_errors_<locale>.html will be searched for in the archive of the payment interface pages);
  • If the store has added arbitrary prefixes to their page file names, value of the desired prefix should be passed in the pageView parameter for the corresponding pages to be loaded. For example, if iphone is passed in the parameter, pages with names iphone_payment_<locale>.html and iphone_error_<locale>.html will be searched for in the archive of the payment interface pages.
    where:

    • locale – language of the page encoded in ISO 639-1. For example, ru for Russian or en for English.

If the parameter is missing or does not match the format, the default value is pageView=DESKTOP.

clientId AN..255 no

The client's number (ID) in the store's system. It is used to implement the functionality of bindings. It can be present if creating bindings is allowed for the store.

Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be failed.

merchantLogin AN..255 no To register an order on behalf of a child merchant, specify the merchant login in this parameter.
jsonParams AN..1024 no

A block for passing additional merchant parameters. The fields for additional information and its subsequent storage are passed as:

        {"<name1>":"<value1>",...,"<nameN>":"<valueN>"}
    

These fields can be passed to the Bank processing system to be subsequently displayed in the registries. This functionality can be enabled upon additional agreement with the bank during the integration period.
If sending notifications to a buyer is set up for a seller, the email address of a buyer must be passed in this block in the email parameter.

sessionTimeoutSecs N...9 no The order lifetime in seconds. If the parameter is not specified, the value specified in the merchant's settings or the default time (1200 seconds = 20 minutes) will be used. If the expirationDate parameter is present in the request, the value of the sessionTimeoutSecs parameter is ignored.
expirationDate ANS no Date and time of the order lifetime expiration. Format: yyyy-MM-DDThh:mm:ss. If this parameter is not passed in the request, then sessionTimeoutSecs is used to determine the end-of-life time of the order.
autocompletionDate ANS..19 no The date and time of completion of the two-phase payment in the following format: 2017-12-29T13:02:51. To enable this functionality, contact technical support.
bindingId AN..255 no ID of the binding created earlier. It can only be used if the store has permission to work with bindings. If this parameter is passed in this request, it means: 1. This order can only be paid using a binding; 2. The payer will be redirected to the payment page, where only CVC input is required.
features ANS..255 no AUTO_PAYMENT – if the request for order registration initiates auto-payments. VERIFY – if this parameter is specified, after the request for order registration, the cardholder is to be verified without debiting funds from the cardholder account. Thus, it is possible to pass a zero amount in the request.
dynamicCallbackUrl AN..512 no This parameter allows you to use the dynamic callback notification sending functionality. All payment-related callbacks enabled for the merchant could be directed to the address passed in this parameter. Payment-related notifications are callback notifications about the following events: successful hold, payment rejected by timeout, successful debit, refund, reversal. Notably, payment-unrelated callbacks that are active for the merchant (enabling/disabling a binding, binding creation) will be sent to static callback address. It is necessary to contact technical support for configuration.
email ANS..40 no Buyer's email address.
phone ANS.12 no Buyer's phone number. If the phone includes a country code, the number must begin with a plus sign (+). If the phone is passed without a plus sign (+), the country code should not be specified. Thus, the following options are acceptable: +79998887766; 9998887766.

By default the following fields are passed to the bank processing system:

  • orderNumber – order number in the store system;
  • description – order description (no more than 99 characters; %, +, carriage return \r, and line feed \n cannot be used).

If an additional parameter named merchantOrderId is passed in the order, then its value will be passed to the processing system as the order number (instead of the value of the orderNumber field).

Response parameters:

Name Type Mandatory Description
orderId ANS36 no The order number in the payment system. It is unique within the system. It is missing if the order registration failed due to an error detailed in ErrorCode.
formUrl AN..512 no URL of the payment form to which the client's browser is to be redirected. It is not returned if the order registration failed due to an error detailed in ErrorCode.
errorCode N3 no Error code.
errorMessage AN..512 no Error description in the language passed in the language parameter in the request.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 Order with given order number is processed already
1 An order with this number was registered, but was not paid for
1 Invalid order number
3 Currency is not defined
4 The order number cannot be empty
4 The merchant's name cannot be empty
4 Empty amount
4 The return URL cannot be empty
4 The password cannot be empty
5 Incorrect amount
5 Incorrect 'Language' parameter
5 The seller's login is incorrect
5 Access denied
5 The user must change password
5 Access denied
5 jsonParams is invalid
7 System error
13 Using both values, Features FORCTDS/FORCESSL and AUTO_PAYMENT, is not allowed
13 The Merchant does not have the permission to process auto-payments
13 The Merchant does not have the permission to process verification payments
14 Features are specified incorrectly

Example of a POST request:

        amount=100&currency=810&language=ru&orderNumber=87654321&returnUrl=https://tws.egopay.ru/ab/finish.html&pageView=MOBILE&{jsonParams="param1":"value1","param2":"value2"}&merchantLogin=merch_child&features=AUTO_PAYMENT
    

Response example:

        {"orderId":"61351fbd-ac25-484f-b930-4d0ce4101ab7","formUrl":"https://tws.egopay.ru/ab/merchants/test/mobile_payment_ru.html?mdOrder=61351fbd-ac25-484f-b930-4d0ce4101ab7"}
    

Request for Order Payment Completion (REST)

The deposit.do request is used to request the completion of a previously pre-authorized order (see the Connection coordinates section).
This operation can be performed if there are appropriate rights in the system.

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes The order number in the payment system. It is unique within the system.
amount N..12 yes Payment amount in kopecks (or cents)

If zero is specified in the amount parameter, the completion will occur for the entire pre-authorized amount.

Response parameters:

Name Type Compulsoriness Description
errorCode N3 no Error code.
errorMessage AN..512 no Description of the error in the language.

Error codes (ErrorCode field):
Classification:

Meaning Description
0 Request processing took place without system errors
5 Incorrect value of a request parameter
6 Unregistered OrderId
7 System error

Decoding:

Meaning Description
5 Access denied
5 The user must change password
5 Incorrect amount
5 The deposit amount must be equal to zero or at least one ruble
6 Invalid order number
7 The payment must be in the correct state
7 System error

Example of a POST request:

        amount=100&currency=810&language=ru&orderId=e5b59d3d-746b-4828-9da4-06f126e01b68
    

Response example:

        {"errorCode":0}
    

Order Status Request (REST)

The getOrderStatus.do request is used to get the current order status (see the Connection coordinates section).
The order status must be determined by the value of the OrderStatus parameter. The AuthCode field is deprecated.

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes The order number in the payment system. It is unique within the system.
language A2 no The language is encoded in ISO 639-1. If not specified, it is assumed that the language is Russian. The error message will be returned in this language.

Response parameters:

Name Type Compulsoriness Description
OrderStatus N2 no The value of this parameter determines the order status in the payment system. The list of possible values is given in the table below. It is missing if the order has not been found.
ErrorCode N3 no Error code.
ErrorMessage AN..512 no Error description in the language passed in the Language parameter in the request.
OrderNumber AN..32 yes Order number (ID) in the store's system
Pan N..19 no The masked number of the card that was used for payment. It is specified only after payment of the order.
expiration N6 no Card expiration date in the YYYYMM format. It is specified only after payment of the order.
cardholderName A..64 no Cardholder's name. It is specified only after payment of the order.
Amount N..12 yes Payment amount in kopecks (or cents)
currency N3 no The payment currency code is ISO 4217. If not specified, it is considered equal to 810 (Russian rubles).
approvalCode AN6 no IPS authorization code. This field has a fixed length (6 characters) and can contain digits and Latin letters.
authCode N3 no This field is deprecated. Its value is always "2", regardless of the order status and the authorization code of the processing system.
Ip AN..20 no The IP address of the user who paid for the order
BindingInfo - no

The element consists of the following parameters:

Name Type Mandatory Description
clientId AN..255 no The client's number (ID) in the store's system, transmitted during the order registration. Present only if the store is allowed to create bindings.
bindingId AN..255 no ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.

The OrderStatus field can have the following values:

Status number Description
0 The order is registered, but not paid for
1 The pre-authorized amount is reserved (for two-phase payments)
2 Full authorization of the order amount has been carried out
3 Authorization canceled
4 A refund operation was performed on the transaction
5 Authorization initiated through the issuing bank's ACS
6 Authorization denied

Error codes ( ErrorCode) field:

Meaning Description
0 Request processing took place without system errors
2 The order was rejected due to an error in the payment details
5 Access denied
5 The user must change password
5 orderId not specified
6 Invalid order number
7 System error

Example of a POST request:

        orderId=b8d70aa7-bfb3-4f94-b7bb-aec7273e1fce&language=ru
    

Response example:

        {"expiration":"201512","cardholderName":"tr tr","depositAmount":789789,"currency":"810","approvalCode":"123456","authCode":2,"clientId":"666","bindingId":"07a90a5d-cc60-4d1b-a9e6-ffd15974a74f","ErrorCode":"0","ErrorMessage":"Success","OrderStatus":2,"OrderNumber":"23asdafaf","Pan":"411111**1111","Amount":789789}
    

Advanced Order Status Request (REST)

The getOrderStatusExtended.do request is used to request the status of a registered order (see the Connection coordinates section).

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes* The order number in the payment system. It is unique within the system.
orderNumber AN..32 yes* Order number (ID) in the store's system.
language A2 no The language is encoded in ISO 639-1. If not specified, it is assumed that the language is Russian. The error message will be returned in this language.

The request must contain either orderId or orderNumber. If both parameters are present in the request, the OrderID is prioritized.
There are several sets of response parameters. Exactly what kind of sets of parameters will be returned depends on the version of getOrderStatusExtended specified in the seller's settings.

Name Type Mandatory Description
orderNumber AN..32 yes The order number (ID) in the store's system.
orderStatus N2 no

The value of this parameter determines the order status in the payment system. List of possible values:

  • '0' The order is registered, but not paid for;
  • '1' The pre-authorized amount is reserved (for two-phase payments);
  • '2' Full authorization of the order amount has been carried out;
  • '3' Authorization canceled;
  • '4' A refund operation was performed on the transaction;
  • '5' Authorization has been initiated through the issuing bank's ACS;
  • '6' Authorization denied.

It is missing if the order has not been found.

actionCode N3 yes Response code.
actionCodeDescription AN..512 yes Decryption of the response code in the language transmitted in the Language parameter in the request.
errorCode N3 no

Error code. The following options are possible:

  • '0' Request processing took place without system errors;
  • '1' orderId or orderNumber expected;
  • '5' Access denied;
  • '5' The user must change password;
  • '6' Order not found;
  • '7' System error.
errorMessage AN..512 no Error description in the language passed in the Language parameter in the request.
amount N..12 yes Payment amount in kopecks (or cents)
currency N3 no The payment currency code is ISO 4217. If not specified, it is considered equal to 810 (Russian rubles).
date ANS yes Order registration date.
orderDescription AN..512 no Description of the order transmitted during its registration
ip AN..20 yes The buyer's IP address.
merchantOrderParams no

It is present in the response if the order contains additional parameters of the seller.
Each additional order parameter is presented in a separate element of merchantOrderParams.

Name Type Mandatory Description getOrderStatusExtended version
name AN..20 no Name of the additional parameter All versions.
value AN..1024 no Value of the additional parameter All versions.
cardAuthInfo no

The element contains a structure consisting of a list of the secureAuthInfo element and the following parameters:

Name Type Mandatory Description getOrderStatusExtended version
maskedPan N..19 no The masked number of the card that was used for payment. It is specified only after payment of the order. All versions.
expiration N6 no Card expiration date in the YYYYMM format. It is specified only after payment of the order. All versions.
cardholderName A..64 no Cardholder's name. It is specified only after payment of the order. All versions.
approvalCode AN6 no Payment authorization code. This field has a fixed length (6 characters) and can contain digits and Latin letters. It is specified only after payment of the order. All versions.
chargeback A..5 no Whether the funds were forcibly returned to the buyer by the bank. The following values are possible: true, false. 06 and above.
paymentSystem N..10 yes Payment system name. The following options are available: VISA, MASTERCARD, AMEX, JCB, CUP, MIR. 08 and above.
product AN..255 yes Additional information about corporate cards. This information is filled in by the technical support in the management console. If there is no such information, an empty value is returned. 08 and above.
paymentWay AS..14 yes The method of making the payment (payment with the input of card data, payment by bindings, etc.). 09 and above.
secureAuthInfo - no

The element consists of an eci element and a threeDSInfo element, which is a list of the cavv and xid parameters:


Name Type Mandatory Description
eci N..4 no Electronic commercial indicator. It is specified only after the order payment and in case of appropriate permission.
cavv ANS..200 no The value of checking the authentication of the cardholder. It is specified only after the order payment and in case of appropriate permission.
xid ANS..80 no Electronic commercial transaction ID. It is specified only after the order payment and in case of appropriate permission.
-



bindingInfo - no

The element consists of the following parameters:

Name Type Mandatory Description getOrderStatusExtended version
clientId AN..255 no The client's number (ID) in the store's system, transmitted during the order registration. Present only if the store is allowed to create bindings. All versions.
bindingId AN..255 no ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings. All versions.
authDateTime ANS no Date/time of authorization. 02 and above.
authRefNum AN..24 no Reference number. 02 and above.
terminalId AN..10 no Terminal ID. 02 and above.
paymentAmountInfo - no

The element consists of the following parameters:

Name Type Mandatory Description getOrderStatusExtended version
approvedAmount N..12 no The amount reserved on the card (used only for two-phase payments). 03 and above.
depositedAmount N..12 no The amount confirmed for debiting from the card. 03 and above.
refundedAmount N..12 no Refund amount. 03 and above.
paymentState A..10 no Order status. 03 and above.
feeAmount N..12 no Fee amount. 11 and above.
bankInfo - no

The element consists of the following parameters:

Name Type Mandatory Description getOrderStatusExtended version
bankName AN..200 no Name of the Issuing bank. 03 and above.
bankCountryCode AN..4 no Country code of the issuing bank. 03 and above.
bankCountryName AN..160 no Name of the issuing bank's country in the language passed in the language parameter in the request, or in the language of the user who called the method, if the language is not specified in the request. 03 and above.

Example of a POST request:

        orderId=b9054496-c65a-4975-9418-1051d101f1b9&language=ru&merchantOrderNumber=0784sse49d0s134567890
    

Response example:

        {"errorCode":"0","errorMessage":"Success","orderNumber":"0784sse49d0s134567890","orderStatus":6,"actionCode":-2007,"actionCodeDescription":"Session time expired","amount":33000,"currency":"810","date":1383819429914,"orderDescription":" ","merchantOrderParams":[{"name":"email","value":"yap"}],"attributes":[{"name":"mdOrder","value":"b9054496-c65a-4975-9418-1051d101f1b9"}],"cardAuthInfo":{"expiration":"201912","cardholderName":"Ivan","secureAuthInfo":{"eci":6,"threeDSInfo":{"xid":"MDAwMDAwMDEzODM4MTk0MzAzMjM="}},"pan":"411111**1111"},"terminalId":"333333"}
    

Request for order payment cancellation (REST)

The reverse.do request is used to cancel the order payment (see the Connection coordinates section).
The cancellation function is available within a limited time after payment, the exact terms must be specified in the Bank.
The payment cancellation operation can be performed only once. If it ends with an error, the repeated payment cancellation operation will fail.
This function is available to stores in agreement with the Bank. To perform the cancellation operation, the user must have the appropriate rights.

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes The order number in the payment system. It is unique within the system.
language A2 no The language is encoded in ISO 639-1. The error description is returned in this language. If the parameter is not available, the default language specified in the merchant's settings is used.
jsonParams AN..1024 no

A block for passing additional merchant parameters. The fields for additional information and its subsequent storage are passed as:

        {"<name1>":"<value1>",...,"<nameN>":"<valueN>"}
    

Data type: name ANS..255; value ANS..1024
These fields can be passed to the Bank processing system to be subsequently displayed in the registries. This functionality can be enabled upon additional agreement with the bank during the integration period.

Response parameters:

Name Type Compulsoriness Description
errorCode N3 no Error code.
errorMessage AN..512 no Description of the error in the language.

Error codes (ErrorCode field):
Classification:

Meaning Description
0 Request processing took place without system errors
5 Incorrect value of a request parameter
6 Unregistered OrderId
7 System error

Decoding:

Meaning Description
0 Request processing took place without system errors
5 Access denied
5 The user must change password
5 orderId not specified
6 Invalid order number
7 The operation is not possible for the current payment status
7 Reversal is impossible. Reason: incorrect internal values, check the amount of hold, deposit
7 System error

Example of a POST request:

        language=ru&orderId=9231a838-ac68-4a3e-bddb-d9781433d852
    

Response example:

        {"errorCode":"0","errorMessage":"Success"}
    

Request for a refund of the order payment (REST)

The refund.do request is used for the refund (see the Connection coordinates section).
Upon this request, the funds for the specified order will be returned to the payer. The request will end with an error if the funds for this order have not been debited. The system allows to return funds more than once, but in total no more than the initial amount of the debited amount.
When processing a refund for housing and utilities services, only a full refund is available.
To perform the refund operation, one must have the appropriate rights in the system.

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes The order number in the payment system. It is unique within the system.
amount N..12 yes Payment amount in kopecks (or cents)
jsonParams AN..1024 no

A block for passing additional merchant parameters. The fields for additional information and its subsequent storage are passed as:

        {"<name1>":"<value1>",...,"<nameN>":"<valueN>"}
    

Data type: name ANS..255; value ANS..1024
These fields can be passed to the Bank processing system to be subsequently displayed in the registries. This functionality can be enabled upon additional agreement with the bank during the integration period.

Response parameters:

Name Type Compulsoriness Description
errorCode N3 no Error code.
errorMessage AN..512 no Description of the error in the language.

Error codes (ErrorCode field):
Classification:

Meaning Description
0 Request processing took place without system errors
5 Incorrect value of a request parameter
6 Unregistered OrderId
7 System error

Decoding:

Meaning Description
0 Request processing took place without system errors
5 Access denied
5 The user must change password
5 orderId not specified
6 Invalid order number
7 The payment must be in the correct state
7 Incorrect deposit amount (less than one ruble)
7 System error

Example of a POST request:

        amount=500&currency=810&language=ru&orderId=5e97e3fd-1d20-4b4b-a542-f5995f5e8208
    

Response example:

        {"errorCode":0}
    

Request to verify the card's enrolment in 3DS (REST)

The verifyEnrollment.do request is used to verify the card's enrolment in 3DS (see the Connection coordinates section).

Request parameters:

Name Type Compulsoriness Description
userName AN..30 yes User login (API)
password AN..30 yes User password (API)
pan N12...19 yes Card number

Response parameters:

Name Type Compulsoriness Description
errorCode N3 no Error code.
errorMessage AN..512 no Error description.
enrolled A1 no A sign of the card's enrolment in 3DS. Possible values: Y, N, U.
emitterName AN..160 no Name of the Issuing bank.
emitterCountryCode AN..4 no Country code of the issuing bank.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 The card number is not specified
1 The card number must be a number containing from 13 to 19 digits
5 The user must change password.
5 Access denied
6 No information was found for the specified card number.
7 System error.

Example of a POST request:

         pan=4111111111111111
    

Response example:

        {"errorCode":"0","errorMessage":"Success","emitterName":"TEST CARD","emitterCountryCode":"RU","enrolled":"Y"}
    

Request to add additional parameters to the order (REST)

The addParams.do request is used to add new additional parameters to the order (see the Connection coordinates section).
If an additional parameter already exists in the order, then when adding a parameter with the same name, the last transferred value will be saved in the order.

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
orderId ANS36 yes The order number in the payment system. It is unique within the system.
language A2 no The language is encoded in ISO 639-1. The error description is returned in this language. If the parameter is not available, the default language specified in the merchant's settings is used.
params AN..1024 yes Fields for transferring additional parameters, such as {"param":"value","param2":"value2"}.

Response parameters

Name Type Mandatory Description
errorCode N3 yes Error code.
errorMessage AN..512 no Error description. Not available if the request is successful.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
5 Access denied
5 The user must change password
6 orderId not set
6 Invalid order number
7 System error

Example of a POST request:

        language=ru&orderId=769b8dad-2318-4c01-bfc4-94532522fa68&params={"addParams1":"value1","addParams2":"value2"}
    

Response example:

        {"errorCode":0}
    

Request for statistics on payments for the period (REST)

The getLastOrdersForMerchants.do request is used to get statistics on payments for a certain period (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
language A2 no The language is encoded in ISO 639-1. If not specified, it is assumed that the language is Russian. The error message will be returned in this language.
page N no When processing the request, a list will be generated, divided into pages (with the number of size records per page). The response returns a page with the number specified in the page parameter. Page numbering starts from 0. If the parameter is not specified, the page number 0 will be returned.
size N..3 yes The number of elements on the page (maximum value = 200).
from ANS yes Date and time of the start of the period for sampling orders in the YYYYMMDDHHmmss format.
to ANS yes Date and time of the end of the period for sampling orders in the YYYYMMDDHHmmss format.
transactionStates A..9 yes In this block, it is necessary to list the required order states. Only orders that are in one of the specified states will be included in the report. Multiple values shall be separated by commas. Possible values: CREATED, APPROVED, DEPOSITED, DECLINED, REVERSED, REFUNDED.
merchants ANS yes A list of logins of merchants whose transactions should be included in the report. Multiple values shall be separated by commas. Leave this field empty to get a list of reports on all available merchants (subsidiary merchants and merchants specified in the user settings).
searchByCreatedDate A..5 no Possible values: • true – search for orders whose creation date falls within the specified period. • false – search for orders whose payment date falls within the specified period (thus, orders with the CREATED and DECLINED status cannot be present in the report). The default value – false.

Response parameters:

Name Type Mandatory Description
errorCode N..2 yes Error code. The description of possible codes is given below in the "Error codes (ErrorCode field)" table
errorMessage AN..512 no Error description. It is present only if there is an error (errorCode is not equal to 0).
orderStatuses - - The block containing information about orders included in the report. See the "orderStatuses block parameters" table below.
totalCount N yes The total number of items in the report (on all pages).
page N yes The number of the current page (equal to the page number transferred in the request).
pageSize N..3 yes The maximum number of records per page (equal to the page size transferred in the request).

Parameters of the orderStatuses block:

Name Type Mandatory Description
orderNumber AN..32 yes The order number (ID) in the store's system.
orderStatus N..2 yes The order status in the payment system. Possible values are shown below in the "orderStatus field" table.
actionCode N..3 yes Response code.
actionCodeDescription AN..512 yes Decryption of the response code.
amount N..12 yes Payment amount in minimum currency units.
currency N3 yes The payment currency code is ISO 4217. If not specified, it is considered equal to the default currency.
date ANS yes Order registration date.
orderDescription AN..512 no Description of the order transmitted during its registration
ip AN..20 no The buyer's IP address. Specified only after payment.
errorCode N..2 yes Error code.
merchantOrderParams - no A tag with attributes that transfer additional merchant parameters. See the "Parameters of the merchantOrderParams block" table below.
attributes - yes Order attributes in the payment system (order number). See the "Attributes block parameters" table below.
cardAuthInfo - no A tag with payment attributes. See the "cardAuthInfo block parameters" table below.
bindingInfo - no A tag with information about the binding that was used to make the payment. See the "bindingInfo block parameters" table below.
authDateTime ANS no Date/time of authorization
terminalId AN..10 no Terminal Id
authRefNum AN..24 no Reference number
paymentAmountInfo - no A tag with information about the amounts of confirmation, debiting, and refund. See the "paymentAmountInfo block parameters" table below.
bankInfo - no A tag with information about the Issuing bank. See the "bankInfo block parameters" table below.

Parameters of the merchantOrderParams block:

Name Type Mandatory Description
name AN..20 yes Name of the merchant's additional parameter
value AN..1024 yes The value of the merchant's additional parameter


Attributes block parameters:

Name Type Mandatory Description
name A7 yes The attribute name - "mdOrder".
value ANS36 yes The attribute value is the order number in the payment system (unique within the system).

cardAuthInfo block parameters:

Name Type Mandatory Description
pan N..19 no The masked number of the card that was used for payment.
expiration N6 no Card expiration date in the YYYYMM format.
cardholderName A..64 no Cardholder's name.
approvalCode AN6 no Payment authorization code. This field has a fixed length (6 characters) and can contain digits and Latin letters.

bindingInfo block parameters:

Name Type Mandatory Description
clientId AN..255 no The client's number (ID) in the store's system.
bindingId AN..255 no ID of the binding used for payment.

paymentAmountInfo block parameters:

Name Type Mandatory Description
paymentState N..9 no Payment status
approvedAmount N..12 no The amount confirmed for debiting.
depositedAmount N..12 no The amount debited from the card.
refundedAmount N..12 no Refund amount.

bankInfo block parameters:

Name Type Mandatory Description
bankName AN..200 no Name of the Issuing bank.
bankCountryCode AN..4 no Country code of the Issuing Bank
bankCountryName AN..160 no Name of the issuing bank's country in the language passed in the language parameter in the request, or in the language of the user who called the method, if the language is not specified in the request.

The OrderStatus field can have the following values:

Meaning Description
0 The order is registered, but not paid for
1 The pre-authorized amount is reserved (for two-phase payments)
2 Full authorization of the order amount has been carried out
3 Authorization canceled
4 A refund operation was performed on the transaction
5 Authorization initiated through the issuing bank's ACS
6 Authorization denied

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
5 One of the required fields is not filled in
5 Invalid format of the transactionStates parameter
5 Access denied
7 System error
10 The value of the size parameter exceeds the maximum allowed
10 Insufficient rights to view transactions of the specified merchant

Example of a POST request:

        language=ru&page=0&size=100&from=20141009160000&to=20141111000000&transactionStates=DEPOSITED,REVERSED&merchants=SevenEightNine&searchByCreatedDate=false
    

Response example:

        {"errorCode":0, 
 
"orderStatuses":[
 
{"errorCode":"0","orderNumber":"58drs0Pes459Hdsddd0567a0","orderStatus":2,"actionCode":0,"actionCodeDescription":"Request successfully processed","amount":250000,"currency":"810","date":1414485649233,"orderDescription":"Opisanie","ip":"212.5.125.194","merchantOrderParams":[{"name":"registr1","value":"registr1"}],"attributes":[{"name":"mdOrder","value":"f1a3365b-542c-4c8d-b34c-e9a7ee8dbc9c"}],"cardAuthInfo":{"expiration":"201512","cardholderName":"Ivan","approvalCode":"123456","pan":"411111**1111"},"bindingInfo":{"clientId":"666","bindingId":"1eabfb8e-b90e-4dc8-bef6-14bd392b1cec"},"authDateTime":1414485661207,"terminalId":"111113","authRefNum":"111111111111","paymentAmountInfo":{"paymentState":"DEPOSITED","approvedAmount":250000,"depositedAmount":250000,"refundedAmount":0},"bankInfo":{"bankName":"TEST CARD","bankCountryCode":"RU","bankCountryName":"Russia"}}, 
 
{"errorCode":"0","orderNumber":"57drs0Pes459Hdsddd0567a0","orderStatus":2,"actionCode":0,"actionCodeDescription":"Request successfully processed","amount":250000,"currency":"810","date":1414485277286,"orderDescription":"Opisanie","ip":"212.5.125.194","merchantOrderParams":[{"name":"registr1","value":"registr1"}],"attributes":[{"name":"mdOrder","value":"09489184-bc5e-44a7-b6c4-3ca1feb8ef69"}],"cardAuthInfo":{"expiration":"201512","cardholderName":"Ivan","approvalCode":"123456","pan":"411111**1111"},"bindingInfo":{"clientId":"666","bindingId":"1eabfb8e-b90e-4dc8-bef6-14bd392b1cec"},"authDateTime":1414485296046,"terminalId":"111113","authRefNum":"111111111111","paymentAmountInfo":{"paymentState":"DEPOSITED","approvedAmount":250000,"depositedAmount":250000,"refundedAmount":0},"bankInfo":{"bankName":"TEST CARD","bankCountryCode":"RU","bankCountryName":"Russia"}}], 
 
"totalCount":2,"page":0,"pageSize":100}
    

Request for payment via an external payment system (REST)

The paymentotherway.do request with special parameters is used to pay for an order via an external payment system (see the Connection coordinates section). Only a POST request is possible. This operation is available if you have the appropriate rights in the system.
This operation is available if you have the appropriate rights in the system.

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
MDORDER ANS36 yes Order number received during order registration
paymentWay ANS..* yes The payment method is passed in this parameter. Possible values: ALFA_ALFACLICK – for payment using Alfa-Click (via the PayByClik system); UPOP – for payment via the UPOP system, available for China UnionPay cardholders.
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.

Response parameters:

Name Type Mandatory Description
errorCode N1 yes Error code
error ANS..* (in case of error) Error message
info ANS..* no

With a successful response. The result of the payment attempt. The possible values are shown below:

  • Your payment is proceeded, redirecting...
  • The operation was rejected. Check the entered data, the sufficiency of funds on the card and repeat the operation. Redirecting...
  • Sorry, the payment cannot be made. Redirecting...
  • The operation was rejected. Contact the store. Redirecting...
  • The operation was rejected. Contact the bank that issued the card. Redirecting...
  • The operation is impossible. Cardholder authentication failed. Redirecting...
  • No connection with the bank. Repeat later. Redirecting...
  • Data entry timeout. Redirecting...
  • No response was received from the bank. Repeat later. Redirecting...
redirect ANS..* no Return address after payment

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 Payment method is not specified or the value is incorrect
2 Order not found
5 Session timeout
5 Access denied
5 The user must change password
5 System error

Example of a POST request:

        language=ru&MDORDER=c96a734c-e2c9-429c-8fda-aaa0030c8a92&paymentWay=ALFA_ALFACLICK
    

Response example:

        {"redirect":"http://testjmb.alfabank.ru/PayByClick/login.jsp?orderId=b37da970-e2b8-4729-a196-b4c2ab5bb401&backUrl=+","info":"Your
 order is proceeded, redirecting...","errorCode":0}
    

Request to make a binding payment (REST)

The paymentOrderBinding.do request is used to make a payment by bindings (see the Connection coordinates section).

After the card expires, the binding becomes unavailable for use in payment.

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
mdOrder ANS36 yes The order number in the payment system. It is unique within the system.
bindingId AN..255 yes ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
ip NS..15 yes payer's ip address.
cvc N..3 no CVC code. This parameter is required if the merchant does not have the "Can make payment without CVC confirmation" permission selected.
email ANS..* no The payer's email address.

Response parameters:

Name Type Mandatory Description
redirect ANS..* no With a successful response in the case of an SSL payment. The URL to which the redirection is made after the payment.
info ANS..* no

With a successful response. The result of the payment attempt. The possible values are shown below:

  • Your payment is proceeded, redirecting...
  • The operation was rejected. Check the entered data, the sufficiency of funds on the card and repeat the operation. Redirecting...
  • Sorry, the payment cannot be made. Redirecting...
  • The operation was rejected. Contact the store. Redirecting...
  • The operation was rejected. Contact the bank that issued the card. Redirecting...
  • The operation is impossible. Cardholder authentication failed. Redirecting...
  • No connection with the bank. Repeat later. Redirecting...
  • Data entry timeout. Redirecting...
  • No response was received from the bank. Repeat later. Redirecting...
errorCode N1 yes Error code.
errorMessage AN..* no When responding with an error. Error message.
error AN..* no When responding with an error. Error message.
processingErrorType ANS..* no Processing system error type. It is transferred when an error occurs on the processing system side, and not in the payment gateway, despite the fact that payment attempts have not yet been exhausted and redirects to the final page do not occur. The error decryption is transferred in the error parameter.
acsUrl ANS..* no With a successful response in the case of a 3DS payment. URL to go to ACS.
paReq ANS..* no With a successful response in the case of a 3DS payment. Payment Authentication Request.
termUrl ANS..* no With a successful response in the case of a 3DS payment. URL to return from ACS.

Error codes (success field):

Meaning Description
0 Request processing took place without system errors
1 It is necessary to specify the CVC2/CVV2, since the merchant does not have permission to make a payment without CVC
1 Invalid CVC format
1 Wrong language
2 The binding was not found
2 Order with given order number was not found
5 Access denied
5 The user calling the service must change password
7 System error

Example of a POST request:

        mdOrder=eb49300c-95b7-4dcd-9739-eee6c61f2ac4&bindingId=308042e8-2b28-484a-811e-f786c9776c3b&cvc=123
    

Example of a successful response for an SSL payment:

        {"redirect":"http://ya.ru?orderId=eb49300c-95b7-4dcd-9739-eee6c61f2ac4","info":"Your payment is proceeded, redirecting...","errorCode":0}
    

Example of a successful response for a 3DS payment:

        {"info":"Your payment is proceeded, redirecting...","acsUrl":"https://tws.egopay.ru/ab/acs/auth/start.do","paReq":"eJxVUdtugkAQ/RXCOy7LRdQMa2ixKU28pGrfyTICqSzKpcW/765AbR8mOWcyOWfmDCy74qx9YVXn\npfB1OjF1DQUvk1ykvn48vBgzfcngkFWI4R55WyGDNdZ1nKKWJ74+TVz05tPE8NyZbThOfDJmFjcN\ni55Mz+MJzu25zmAXvOOVwWDEpM/EAjJSqVjxLBYNg5hfn6INcyxvappABgoFVlHIPCA9ABEXyPb4\nhWKVp1mzyQUCuTeBl61oqhubOjaQkUBbnVnWNJcFId5sPuFlAUT1gDy8d61CtdTo8oStw+C7r5W5\nCVNZx9v6ENmyfCBqApK4QWaZ1KXUcjVqLVx7Ycu77n2IC2XOqDqjh3BRDsGj/5eDDLeS2Y+bjwyw\nu5QC5YRU/sVAHts+v6rceCODyfbb7m3bfmzD22dnlycaFHF+DGl0y6hK8z6kFHMZity7l1QEiJIh\nw6PI8GOJ/v3+BweMtyE=","termUrl":"https://tws.egopay.ru/:443/ab/rest/finish3ds.do","errorCode":0}
    

Example of a response with an error:

        {"error":"Access denied","errorCode":5,"errorMessage":"Access denied"}
    

Request to deactivate a binding (REST)

The unBindCard.do request is used to make an existing binding inactive unBindCard.do (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
bindingId AN..255 yes ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.

Response parameters:

Name Type Mandatory Description
errorCode N3 no Error code.
errorMessage AN..512 no Error description.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
2 Incorrect binding state (when trying to deactivate an inactive binding)
2 The binding was not found
5 Access denied
5 The user must change password
7 System error

Example of a POST request:

        bindingId=fd3afc57-c6d0-4e08-aaef-1b7cfeb093dc
    

Response example:

        {"errorCode":"2","errorMessage":"Binging isn't active"}
    

Request to activate a binding (REST)

The bindCard.do request is used to activate a previously deactivated binding (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
bindingId AN..255 yes ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.

Response parameters:

Name Type Mandatory Description
errorCode N3 no Error code.
errorMessage AN..512 no Error description.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
2 Incorrect binding state (when trying to activate an active binding)
2 The binding was not found
5 Access denied
5 The user must change password
7 System error

Example of a POST request:

        bindingId=fd3afc57-c6d0-4e08-aaef-1b7cfeb093dc
    

Response example:

        {"errorCode":"2","errorMessage":"Binding is active"}
    

Request to change the validity period of a binding (REST)

The extendBinding.do request is used to extend the validity period of a binding (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
bindingId ANS36 yes ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.
newExpiry N6 yes New expiration date (year and month) of the binding in the YYYYMM format
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.

Response parameters:

Name Type Mandatory Description
errorCode N1 yes Completion code
errorMessage ANS..* (in case of error) Error message

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 One or more required parameters are not specified or incorrectly specified
2 The binding was not found
5 Access denied
5 The user must change password
7 System error

Example of a POST request:

        bindingId=1eabfb8e-b90e-4dc8-bef6-14bd392b1cec&newExpiry=201612&language=ru
    

Response example:

        {"errorCode":"0","errorMessage":"Success"}
    

Request for a list of client bindings (REST)

The getBindings.do request is used to get a list of bindings by client ID (see the Connection coordinates section).

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting.
password AN..30 yes The store's password received when connecting.
clientId AN..255 yes The client's number (ID) in the store's system, transmitted during the order registration. Present only if the store is allowed to create bindings.

Response parameters:

Name Type Mandatory Description
errorCode N1 yes Completion code
errorMessage ANS..* (in case of error) Error message

Binding element (consists of bindingId, maskedPan and ExpiryDate):

Name Type Mandatory Description
bindingId AN..255 no ID of the binding created when paying for the order or used for payment. Present only if the store is allowed to create bindings.
maskedPan N..19 no The masked number of the card that was used for payment. It is specified only after payment of the order.
expiryDate N6 no Card expiration date in the YYYYMM format. It is specified only after payment of the order.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors
1 clientId not set
2 Information not found
5 Access denied
5 The user must change password
7 System error

Example of a POST request:

        clientId=client
    

Response example:

        {"bindings":[{"bindingId":"fd3afc57-c6d0-4e08-aaef-1b7cfeb093dc","maskedPan":"4000 00** **** **02","expiryDate":"201512"}],"errorCode":"0","errorMessage":"Success"}
    

Request for a list of bank card bindings (REST)

The getBindingsByCardOrId.do method is used to get a list of bank card bindings (see the Connection coordinates section).
If the appropriate permissions are available, the store can request a list of all bindings related to a particular bank card. This can be done by card number or by a known binding identifier. If the appropriate permissions are available, the store can request a list of all bindings related to a particular bank card. One can do this by card number or by a known binding identifier.
The response returns all bindings available to the merchant in accordance with its settings.

Request parameters:

Name Type Mandatory Description
userName AN..30 yes The store's login received when connecting
password AN..30 yes The store's password received when connecting
pan N..19 no Card number. Required if bindingId is not specified. The search by the full card number is available to stores only if they have the appropriate permission.
bindingId AN..255 no Binding identifier. Required if pan is not specified. If pan is transferred in the request, the bindingId value is ignored.
showExpired boolean no This parameter determines whether to display bindings with expired cards. Possible values: true, false. By default, the parameter have the "false" value.

Response parameters:

Name Type Mandatory Description
errorCode N1 yes Completion code.
errorMessage ANS..* yes Completion code description.

The bindings element (contains blocks consisting of the bindingId, maskedPan, expiryDate and clientId parameters):

Name Type Mandatory Description
bindingId AN..255 no Binding identifier.
maskedPan N..19 no The masked number of the card that was used for payment.
expiryDate N6 no Card expiration date in the YYYYMM format.
clientId AN..255 no The client's number (ID) in the merchant's system.

Error codes (ErrorCode field):

Meaning Description
0 Request processing took place without system errors.
1 Neither the card number nor the binding ID is specified.
2 Information not found.
5 Access denied.
5 The user must change password.
7 System error.

Request example:

        https://tws.egopay.ru/ab/rest/getBindingsByCardOrId.do?userName=login&password=password&pan=4111111111111111
    

Response parameters:

        {"errorCode":"0","errorMessage":"Success","bindings":[{"bindingId":"0b8edeb2-8380-4092-bf7e-1e1a78f2b15e","maskedP
an":"411111**1111","expiryDate":"201912","clientId":"12"},{"bindingId":"6a8c0738-cc88-4200-acf6-afc264d66cb0","mas
kedPan":"411111**1111","expiryDate":"201912","clientId":"666"},{"bindingId":"97a70989-c1fb-49f7-8a42-27c19dc160dw"
,"maskedPan":"411111**1111","expiryDate":"201512","clientId":"666"}]}
    

Request for payment via Apple Pay (REST)

The payment.do request is used to register an order (see the Connection coordinates section).
For cancellation, refund and payment completion operations, standard requests to the payment gateway should be used.

Example of a POST request

        {"merchant":"merchant_name","orderNumber":"applepay123456794","description":"descritpion_text", "paymentToken":"eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiNTFhUTNGOXl0Q1YwYTdpQS9mMUh0RGc1TnBvSVZtc2RFa1FvTlpoOW95ZVA3eGgvVDk4dXJkenJDN0dOQ3o4c1FodXpXOVZNWUhGU25DTytTWXo0eDYrTnZwZjdCUzhOcnlUWk1Keldtcml0VUZJVytwVjNvNWY4M0F3OU55c1BCMlAxZGZicS9hZDVzV1RwZTMwTnV2UDltRGhaUStET1M3RzB6MDZSNHRXY0R0VFErT0U5YlI1OHFQRUdnTTRiSmRmUklZb25oQlJrdWY2cGw4aU9PQ0VvS01QN2lRck84Z2IrVGNnSjVZSDdDL3J3enBDUVZjMGQxNWJuME9wbE1SOGwxMDcrMDR4ZVVWT3BUMGI3cHRmYnA3VmVaeHVXaHhSTTlHYlF5QmVkVlJHQ2toN3kyREtZY3BRdjJqM1h2L0NjNzRKaVBZM09DTFVEMEIvS0UwUFo1TnJvUEJFUmZ2a1B4WUFzV1ZmM1E3UUtTcTk4Z3p5UXlrWEpwTmFwcEt6cENDMkNKU09XdzVkenNPWjAiLCAic2lnbmF0dXJlIjoiTUlBR0NTcUdTSWIzRFFFSEFxQ0FNSUFDQVFFeER6QU5CZ2xnaGtnQlpRTUVBZ0VGQURDQUJna3Foa2lHOXcwQkJ3RUFBS0NBTUlJRDVqQ0NBNHVnQXdJQkFnSUlhR0QybWRuTXB3OHdDZ1lJS29aSXpqMEVBd0l3ZWpFdU1Dd0dBMVVFQXd3bFFYQndiR1VnUVhCd2JHbGpZWFJwYjI0Z1NXNTBaV2R5WVhScGIyNGdRMEVnTFNCSE16RW1NQ1FHQTFVRUN3d2RRWEJ3YkdVZ1EyVnlkR2xtYVdOaGRHbHZiaUJCZFhSb2IzSnBkSGt4RXpBUkJnTlZCQW9NQ2tGd2NHeGxJRWx1WXk0eEN6QUpCZ05WQkFZVEFsVlRNQjRYRFRFMk1EWXdNekU0TVRZME1Gb1hEVEl4TURZd01qRTRNVFkwTUZvd1lqRW9NQ1lHQTFVRUF3d2ZaV05qTFhOdGNDMWljbTlyWlhJdGMybG5ibDlWUXpRdFUwRk9SRUpQV0RFVU1CSUdBMVVFQ3d3TGFVOVRJRk41YzNSbGJYTXhFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRWdqRDlxOE9jOTE0Z0xGRFptMFVTNWpmaXFRSGRiTFBnc2MxTFVtZVkrTTlPdmVnYUphakNIa3d6M2M2T0twYkM5cStoa3dORnhPaDZSQ2JPbFJzU2xhT0NBaEV3Z2dJTk1FVUdDQ3NHQVFVRkJ3RUJCRGt3TnpBMUJnZ3JCZ0VGQlFjd0FZWXBhSFIwY0RvdkwyOWpjM0F1WVhCd2JHVXVZMjl0TDI5amMzQXdOQzFoY0hCc1pXRnBZMkV6TURJd0hRWURWUjBPQkJZRUZBSWtNQXVhN3UxR01aZWtwbG9wbmtKeGdoeEZNQXdHQTFVZEV3RUIvd1FDTUFBd0h3WURWUjBqQkJnd0ZvQVVJL0pKeEUrVDVPOG41c1QyS0d3L29ydjlMa3N3Z2dFZEJnTlZIU0FFZ2dFVU1JSUJFRENDQVF3R0NTcUdTSWIzWTJRRkFUQ0IvakNCd3dZSUt3WUJCUVVIQWdJd2diWU1nYk5TWld4cFlXNWpaU0J2YmlCMGFHbHpJR05sY25ScFptbGpZWFJsSUdKNUlHRnVlU0J3WVhKMGVTQmhjM04xYldWeklHRmpZMlZ3ZEdGdVkyVWdiMllnZEdobElIUm9aVzRnWVhCd2JHbGpZV0pzWlNCemRHRnVaR0Z5WkNCMFpYSnRjeUJoYm1RZ1kyOXVaR2wwYVc5dWN5QnZaaUIxYzJVc0lHTmxjblJwWm1sallYUmxJSEJ2YkdsamVTQmhibVFnWTJWeWRHbG1hV05oZEdsdmJpQndjbUZqZEdsalpTQnpkR0YwWlcxbGJuUnpMakEyQmdnckJnRUZCUWNDQVJZcWFIUjBjRG92TDNkM2R5NWhjSEJzWlM1amIyMHZZMlZ5ZEdsbWFXTmhkR1ZoZFhSb2IzSnBkSGt2TURRR0ExVWRId1F0TUNzd0thQW5vQ1dHSTJoMGRIQTZMeTlqY213dVlYQndiR1V1WTI5dEwyRndjR3hsWVdsallUTXVZM0pzTUE0R0ExVWREd0VCL3dRRUF3SUhnREFQQmdrcWhraUc5Mk5rQmgwRUFnVUFNQW9HQ0NxR1NNNDlCQU1DQTBrQU1FWUNJUURhSEdPdWkrWDJUNDRSNkdWcE43bTJuRWNyNlQ2c01qT2haNU51U28xZWd3SWhBTDFhKy9ocDg4REtKMHN2M2VUM0Z4V2NzNzF4bWJMS0QvUUozbVdhZ3JKTk1JSUM3akNDQW5XZ0F3SUJBZ0lJU1cwdnZ6cVkycGN3Q2dZSUtvWkl6ajBFQXdJd1p6RWJNQmtHQTFVRUF3d1NRWEJ3YkdVZ1VtOXZkQ0JEUVNBdElFY3pNU1l3SkFZRFZRUUxEQjFCY0hCc1pTQkRaWEowYVdacFkyRjBhVzl1SUVGMWRHaHZjbWwwZVRFVE1CRUdBMVVFQ2d3S1FYQndiR1VnU1c1akxqRUxNQWtHQTFVRUJoTUNWVk13SGhjTk1UUXdOVEEyTWpNME5qTXdXaGNOTWprd05UQTJNak0wTmpNd1dqQjZNUzR3TEFZRFZRUUREQ1ZCY0hCc1pTQkJjSEJzYVdOaGRHbHZiaUJKYm5SbFozSmhkR2x2YmlCRFFTQXRJRWN6TVNZd0pBWURWUVFMREIxQmNIQnNaU0JEWlhKMGFXWnBZMkYwYVc5dUlFRjFkR2h2Y21sMGVURVRNQkVHQTFVRUNnd0tRWEJ3YkdVZ1NXNWpMakVMTUFrR0ExVUVCaE1DVlZNd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFUd0Z4R0VHZGRraGRVYVhpV0JCM2JvZ0tMdjNudXVUZUNOL0V1VDRUTlcxV1piTmE0aTBKZDJEU0pPZTdvSS9YWVh6b2pMZHJ0bWNMN0k2Q21FLzFSRm80SDNNSUgwTUVZR0NDc0dBUVVGQndFQkJEb3dPREEyQmdnckJnRUZCUWN3QVlZcWFIUjBjRG92TDI5amMzQXVZWEJ3YkdVdVkyOXRMMjlqYzNBd05DMWhjSEJzWlhKdmIzUmpZV2N6TUIwR0ExVWREZ1FXQkJRajhrbkVUNVBrN3lmbXhQWW9iRCtpdS8wdVN6QVBCZ05WSFJNQkFmOEVCVEFEQVFIL01COEdBMVVkSXdRWU1CYUFGTHV3M3FGWU00aWFwSXFaM3I2OTY2L2F5eVNyTURjR0ExVWRId1F3TUM0d0xLQXFvQ2lHSm1oMGRIQTZMeTlqY213dVlYQndiR1V1WTI5dEwyRndjR3hsY205dmRHTmhaek11WTNKc01BNEdBMVVkRHdFQi93UUVBd0lCQmpBUUJnb3Foa2lHOTJOa0JnSU9CQUlGQURBS0JnZ3Foa2pPUFFRREFnTm5BREJrQWpBNnozS0RVUmFac1liN05jTld5bUsvOUJmdDJROTFUYUtPdnZHY2dWNUN0NG40bVBlYldaK1kxVUVOajUzcHd2NENNREl0MVVRaHNLTUZkMnhkOHpnN2tHZjlGM3dzSVcyV1Q4WnlhWUlTYjFUNGVuMGJtY3ViQ1lraFlRYVpEd21TSFFBQU1ZSUJYekNDQVZzQ0FRRXdnWVl3ZWpFdU1Dd0dBMVVFQXd3bFFYQndiR1VnUVhCd2JHbGpZWFJwYjI0Z1NXNTBaV2R5WVhScGIyNGdRMEVnTFNCSE16RW1NQ1FHQTFVRUN3d2RRWEJ3YkdVZ1EyVnlkR2xtYVdOaGRHbHZiaUJCZFhSb2IzSnBkSGt4RXpBUkJnTlZCQW9NQ2tGd2NHeGxJRWx1WXk0eEN6QUpCZ05WQkFZVEFsVlRBZ2hvWVBhWjJjeW5EekFOQmdsZ2hrZ0JaUU1FQWdFRkFLQnBNQmdHQ1NxR1NJYjNEUUVKQXpFTEJna3Foa2lHOXcwQkJ3RXdIQVlKS29aSWh2Y05BUWtGTVE4WERURTJNVEV3TVRBNU5UY3dObG93THdZSktvWklodmNOQVFrRU1TSUVJQWpSdk9nWkxDa0w5ZmNCZjdOSm5RY3hsd2ltL09ieHkrcEltZ1M0TGRUYU1Bb0dDQ3FHU000OUJBTUNCRWN3UlFJZ1BKaHlkTXE5UDdTaHJFT2RxVk5KUk84QnN1MC93SXNCS0Y1cnlFR0JPSDRDSVFEeWo4Wml3VVV5alRJUFRUZDBKTTlaMExIdGZTQVhOWVN2T0t4eGN3MTlod0FBQUFBQUFBPT0iLCJoZWFkZXIiOnsiZXBoZW1lcmFsUHVibGljS2V5IjoiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFNUdmb2t2U2Z3WnV3aXYwSGxKVE1MS0dlMS96dWtjejczSFlvVjh5cjNGNWdmZmthVmNQTmptNjFhdFNOZm9UZUxiSnQ1aHBLWkJuSWlwZlVXSXZxMmc9PSIsInB1YmxpY0tleUhhc2giOiJLMG9KcmJiYURVUDh6YitSUEZhTmxVUTdTU2I3T1FEWERVeU9vM0JXdDJzPSIsInRyYW5zYWN0aW9uSWQiOiIyYTNkZjhjNDg0Y2JmMDg1OTgyN2Y0ZDBkZjhkYjY4YjYyNjBlNTIxYWUwZmI4YjI1NDRmNzNiM2RlMDVlYjE5In19","language":"ru","additionalParameters":{},"preAuth":"true"}
    

The request parameters are described in the table below.

To process the request correctly, one needs to add a header with the definition of the content type - Content-Type: application/json.

Parameter Data type Mandatory parameter Description
merchant AN..30 yes Merchant's login name in the payment gateway system.
orderNumber AN..32 yes A unique order number on the seller's side.
description ANS..512 no Order description.
language A2 no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
additionalParameters AN..1024 no Additional order parameters that are saved for viewing from the merchant's personal area. Additional parameters should be specified in the following format. "parameter name": "parameter value" Each new pair of parameter name and value should be separated by a comma.
clientId ANS..255 no The number of the client for whom one should create a binding for making regular payments. It should be indicated only if a technical payment is made for subsequent regular payments.
preAuth A..5 no Parameter that determines the need for pre-authorization (blocking funds on the client's account before they are debited). The following values are available: • true - the parameter is enabled, the payment is made with preauthorization (the client's funds are blocked before being debited); • false - the parameter is disabled (debiting is made immediately). If the parameter is not specified in the request, the debiting is made immediately.
paymentToken AN..8192 yes

The paymentToken parameter must contain the Base64 encoded value of the paymentData property obtained from the PKPaymentToken Object from the Apple Pay system (for more information, see Apple Pay documentation).
Thus, in order to make a payment request to the payment gateway, the seller must:

  • 1. get the PKPaymentToken Object containing the paymentData property from the Apple Pay system;
  • 2. extract the value of the paymentData property and encode it in Base64;
  • 3. include the encoded value of the paymentData property as the value of the paymentToken parameter in the payment request that the seller will send to the payment gateway.
dynamicCallbackUrl AN..512 no This parameter allows you to use the dynamic callback notification sending functionality. All payment-related callbacks enabled for the merchant could be directed to the address passed in this parameter. Payment-related notifications are callback notifications about the following events: successful hold, payment rejected by timeout, successful debit, refund, reversal. Notably, payment-unrelated callbacks that are active for the merchant (enabling/disabling a binding, binding creation) will be sent to static callback address. It is necessary to contact technical support for configuration.

An example of a PKPaymentToken Object received by a seller from Apple looks as follows:

        {
  "paymentData": {
    "data": "vj5Uvux7Im8DD8YhSOsJvw5lWmfl2HMUnTNWJhVfTehvFffRhDo54mfpjxMt9vJdp6DwD7fgcNHDxBvnj56qYG4DpOxg1fTSdXgPFrezprZHCrRxPhN/aQQEThe2pQ0c7hgzzZlA6TpkIR/Xtk6CTcEbD1W6znFVdvMgX8G96Gg4OAGl8GaTXdSU3wlMQL5E63CLQzPi1xHVErWl1OOn6hYQuREUDGc7mAjmqMyLwXp6mOwJZ6ZFO/b9HkgFi428rqtOH08AfqkfaIWwIIAz2w3xEoZrDXbgFpNBnN7F2oretCU1/dFvQJjDYbMorKQ8GJbWtlsVbKsy0U91eoUetDcyMpB9zc139STYVoC8yp6Yk6Mn3icCLY0ZBujq7/404kMGpnHgkNVqFc/4SN0U2XQ5rrb14DM8M69w=",
    "signature": "MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCAMIID4jCCA4igAwIBAgIIJEPyqAad9XcwCgYIKoZIzj0EAwIwejEuMCwGA1UEAwwlQXBwbGUgQXBwbGljYXRpb24gSW50ZWdyYXRpb24gQ0EgLSBHMzEmMCQGA1UECwwdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMB4XDTE0MDkyNTIyMDYxMVoXDTE5MDkyNDIyMDYxMVowXzElMCMGA1UEAwwcZWNjLXNtcC1icm9rZXItc2lnbl9VQzQtUFJPRDEUMBIGA1UECwwLaU9TIFN5c3RlbXMxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwhV37evWx7Ihj2jdcJChIY3HsL1vLCg9hGCV2Ur0pUEbg0IO2BHzQH6DMx8cVMP36zIg1rrV1O/0komJPnwPE6OCAhEwggINMEUGCCsGAQUFBwEBBDkwNzA1BggrBgEFBQcwAYYpaHR0cDovL29jc3AuYXBwbGUuY29tL29jc3AwNC1hcHBsZWFpY2EzMDEwHQYDVR0OBBYEFJRX22\/VdIGGiYl2L35XhQfnm1gkMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUI/JJxE+T5O8n5sT2KGw/orv9LkswggEdBgNVHSAEggEUMIIBEDCCAQwGCSqGSIb3Y2QFATCB/jCBwwYIKwYBBQUHAgIwgbYMgbNSZWxpYW5jZSBvbiB0aGlzIGNlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRlIHBvbGljeSBhbmQgY2VydGlmaWNhdGlvbiBwcmFjdGljZSBzdGF0ZW1lbnRzLjA2BggrBgEFBQcCARYqaHR0cDovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3JpdHkvMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwuYXBwbGUuY29tL2FwcGxlYWljYTMuY3JsMA4GA1UdDwEB/wQEAwIHgDAPBgkqhkiG92NkBh0EAgUAMAoGCCqGSM49BAMCA0gAMEUCIHKKnwSoyq5mXQr1V62c0BXKpaHodYu9TWXEPUWPpbpAiEAkTecfW6+W5l0r0ADfzTCPq2YtbS39w01XIayqBNy8bEwggLuMIICdaADAgECAghJbS+/OpjalzAKBggqhkjOPQQDAjBnMRswGQYDVQQDDBJBcHBsZSBSb290IENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzAeFw0xNDA1MDYyMzQ2MzBaFw0yOTA1MDYyMzQ2MzBaMHoxLjAsBgNVBAMMJUFwcGxlIEFwcGxpY2F0aW9uIEludGVncmF0aW9uIENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABPAXEYQZ12SF1RpeJYEHduiAou\/ee65N4I38S5PhM1bVZls1riLQl3YNIk57ugj9dhfOiMt2u2ZwvsjoKYT/VEWjgfcwgfQwRgYIKwYBBQUHAQEEOjA4MDYGCCsGAQUFBzABhipodHRwOi8vb2NzcC5hcHBsZS5jb20vb2NzcDA0LWFwcGxlcm9vdGNhZzMwHQYDVR0OBBYEFCPyScRPk+TvJ+bE9ihsP6K7\/S5LMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUu7DeoVgziJqkipnevr3rr9rLJKswNwYDVR0fBDAwLjAsoCqgKIYmaHR0cDovL2NybC5hcHBsZS5jb20vYXBwbGVyb290Y2FnMy5jcmwwDgYDVR0PAQH/BAQDAgEGMBAGCiqGSIb3Y2QGAg4EAgUAMAoGCCqGSM49BAMCA2cAMGQCMDrPcoNRFpmxhvs1w1bKYr/0F+3ZD3VNoo6+8ZyBXkK3ifiY95tZn5jVQQ2PnenC/gIwMi3VRCGwowV3bF3zODuQZ/0XfCwhbZZPxnJpghJvVPh6fRuZy5sJiSFhBpkPCZIdAAAxggGMMIIBiAIBATCBhjB6MS4wLAYDVQQDDCVBcHBsZSBBcHBsaWNhdGlvbiBJbnRlZ3JhdGlvbiBDQSAtIEczMSYwJAYDVQQLDB1BcHBsZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTETMBEGA1UECgwKQXBwbGUgSW5jLjELMAkGA1UEBhMCVVMCCCRD8qgGnfV3MA0GCWCGSAFlAwQCAQUAoIGVMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MDMxNzEwMzgzOVowKgYJKoZIhvcNAQk0MR0wGzANBglghkgBZQMEAgEFAKEKBggqhkjOPQQDAjAvBgkqhkiG9w0BCQQxIgQgvL+q07/reM0N/5b0hwWT7TJReVTdS9QX5SPhiqeie+cwCgYIKoZIzj0EAwIERzBFAiEAttC68Xyzs6I0+tAKmg6x+0UrqmkQN/V5c8RMMIEJHooCIHIgUHbAt2p5WrFHQKrAVL4c7nohRplZWVbVu6wbBeCgAAAAAAAA",
    "header": {
      "publicKeyHash": "fpvAnSDwQFX4NX4pghdjpNwUFhoTH/DDGhew94uJaRA=",
      "ephemeralPublicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErKZUfqvhlieGAOaCKeTB/oDEo29fS1jWSKemNDh3fIqmbfs86nL4BGtRsWRxWcMnHN6GFOQm1MEj4m7ZHxe78g==",
      "transactionId": "38e4c267ef1de62a343d0eccada3f7e19f6b22ffc7ede899c039865432ba6aa2"
    },
    "version": "EC_v1"
  },
  "transactionIdentifier": "38E4C267EF1DE62A343D0ECCADA3F7E19F6B22FFC7EDE899C039865432BA6AA2",
  "paymentMethod": {
    "network": "Visa",
    "type": "debit",
    "displayName": "Visa5223"
  }
}
    

The value of the paymentData property (from the example above), which needs to be encoded in Base64 and passed in a payment request to the payment gateway, looks as follows:

        {
	"data": "vj5Uvux7Im8DD8YhSOsJvw5lWmfl2HMUnTNWJhVfTehvFffRhDo54mfpjxMt9vJdp6DwD7fgcNHDxBvnj56qYG4DpOxg1fTSdXgPFrezprZHCrRxPhN\/aQQEThe2pQ0c7hgzzZlA6TpkIR\/Xtk6CTcEbD1W6znFVdvMgX8G96Gg4OAGl8GaTXdSU3wlMQL5E63CLQzPi1xHVErWl1OOn6hYQuREUDGc7mAjmqMyLwX+p6mOwJZ6ZFO\/b9HkgFi428rqtOH08AfqkfaIWwIIAz2w3xEoZrDXbgFpNBnN7F2oretCU1\/dFvQJjDYbMorKQ8+GJbWtlsVb+Ksy0U91eoUetDcyMpB9zc139STYVoC8yp6Yk6Mn3icCLY0ZBujq7\/404kMGpnHgkNVqFc\/4SN0U2XQ5rrb14DM8M69w=","signature":"MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCAMIID4jCCA4igAwIBAgIIJEPyqAad9XcwCgYIKoZIzj0EAwIwejEuMCwGA1UEAwwlQXBwbGUgQXBwbGljYXRpb24gSW50ZWdyYXRpb24gQ0EgLSBHMzEmMCQGA1UECwwdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMB4XDTE0MDkyNTIyMDYxMVoXDTE5MDkyNDIyMDYxMVowXzElMCMGA1UEAwwcZWNjLXNtcC1icm9rZXItc2lnbl9VQzQtUFJPRDEUMBIGA1UECwwLaU9TIFN5c3RlbXMxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwhV37evWx7Ihj2jdcJChIY3HsL1vLCg9hGCV2Ur0pUEbg0IO2BHzQH6DMx8cVMP36zIg1rrV1O\/0komJPnwPE6OCAhEwggINMEUGCCsGAQUFBwEBBDkwNzA1BggrBgEFBQcwAYYpaHR0cDovL29jc3AuYXBwbGUuY29tL29jc3AwNC1hcHBsZWFpY2EzMDEwHQYDVR0OBBYEFJRX22\/VdIGGiYl2L35XhQfnm1gkMAwGA1UdEwEB\/wQCMAAwHwYDVR0jBBgwFoAUI\/JJxE+T5O8n5sT2KGw\/orv9LkswggEdBgNVHSAEggEUMIIBEDCCAQwGCSqGSIb3Y2QFATCB\/jCBwwYIKwYBBQUHAgIwgbYMgbNSZWxpYW5jZSBvbiB0aGlzIGNlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRlIHBvbGljeSBhbmQgY2VydGlmaWNhdGlvbiBwcmFjdGljZSBzdGF0ZW1lbnRzLjA2BggrBgEFBQcCARYqaHR0cDovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3JpdHkvMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwuYXBwbGUuY29tL2FwcGxlYWljYTMuY3JsMA4GA1UdDwEB\/wQEAwIHgDAPBgkqhkiG92NkBh0EAgUAMAoGCCqGSM49BAMCA0gAMEUCIHKKnw+Soyq5mXQr1V62c0BXKpaHodYu9TWXEPUWPpbpAiEAkTecfW6+W5l0r0ADfzTCPq2YtbS39w01XIayqBNy8bEwggLuMIICdaADAgECAghJbS+\/OpjalzAKBggqhkjOPQQDAjBnMRswGQYDVQQDDBJBcHBsZSBSb290IENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzAeFw0xNDA1MDYyMzQ2MzBaFw0yOTA1MDYyMzQ2MzBaMHoxLjAsBgNVBAMMJUFwcGxlIEFwcGxpY2F0aW9uIEludGVncmF0aW9uIENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABPAXEYQZ12SF1RpeJYEHduiAou\/ee65N4I38S5PhM1bVZls1riLQl3YNIk57ugj9dhfOiMt2u2ZwvsjoKYT\/VEWjgfcwgfQwRgYIKwYBBQUHAQEEOjA4MDYGCCsGAQUFBzABhipodHRwOi8vb2NzcC5hcHBsZS5jb20vb2NzcDA0LWFwcGxlcm9vdGNhZzMwHQYDVR0OBBYEFCPyScRPk+TvJ+bE9ihsP6K7\/S5LMA8GA1UdEwEB\/wQFMAMBAf8wHwYDVR0jBBgwFoAUu7DeoVgziJqkipnevr3rr9rLJKswNwYDVR0fBDAwLjAsoCqgKIYmaHR0cDovL2NybC5hcHBsZS5jb20vYXBwbGVyb290Y2FnMy5jcmwwDgYDVR0PAQH\/BAQDAgEGMBAGCiqGSIb3Y2QGAg4EAgUAMAoGCCqGSM49BAMCA2cAMGQCMDrPcoNRFpmxhvs1w1bKYr\/0F+3ZD3VNoo6+8ZyBXkK3ifiY95tZn5jVQQ2PnenC\/gIwMi3VRCGwowV3bF3zODuQZ\/0XfCwhbZZPxnJpghJvVPh6fRuZy5sJiSFhBpkPCZIdAAAxggGMMIIBiAIBATCBhjB6MS4wLAYDVQQDDCVBcHBsZSBBcHBsaWNhdGlvbiBJbnRlZ3JhdGlvbiBDQSAtIEczMSYwJAYDVQQLDB1BcHBsZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTETMBEGA1UECgwKQXBwbGUgSW5jLjELMAkGA1UEBhMCVVMCCCRD8qgGnfV3MA0GCWCGSAFlAwQCAQUAoIGVMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MDMxNzEwMzgzOVowKgYJKoZIhvcNAQk0MR0wGzANBglghkgBZQMEAgEFAKEKBggqhkjOPQQDAjAvBgkqhkiG9w0BCQQxIgQgvL+q07\/reM0N\/5b0hwWT7TJReVTdS9QX5SPhiqeie+cwCgYIKoZIzj0EAwIERzBFAiEAttC68Xyzs6I0+tAKmg6x+0UrqmkQN\/V5c8RMMIEJHooCIHIgUHbAt2p5WrFHQKrAVL4c7nohRplZWVbVu6wbBeCgAAAAAAAA",
	"header": {
		"publicKeyHash":"fpvAnSDwQFX4NX4pghdjpNwUFhoTH\/DDGhew94uJaRA=",
		"ephemeralPublicKey":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErKZUfqvhlieGAOaCKeTB\/oDEo29fS1jWSKemNDh3fIqmbfs86nL4BGtRsWRxWcMnHN6GFOQm1MEj4m7ZHxe78g==",
		"transactionId":"38e4c267ef1de62a343d0eccada3f7e19f6b22ffc7ede899c039865432ba6aa2"
	},
	"version":"EC_v1"
}
    

Response examples and description

Successful payment

        {
"success":true,
"data": {
    "orderId": "12312312123"
  }
}
    

Unsuccessful payment

        {
  "error": {
    "code": 1,
    "description": "Processing Error",
    "message": "Insufficient funds on the card"
  },
  "success": false
}
    

The description of the response parameters is given in the table below.

Parameter Nested parameter Data type Mandatory parameter Description
success Not relevant A..5 yes Indicates the success of the payment. The following values are available: true - the request was processed successfully; false - the request failed.
data (returned only if the payment was successful) orderId ANS36 yes The order number unique to the seller in the payment system.
error (returned only if the payment failed) code N..2 yes Error code.
description ANS..512 yes Detailed technical explanation of the error - the contents of this parameter are not intended to be displayed to the user..
message AN..512 yes Clear error description - designed to be displayed to the user.
orderStatus (Contains the order status parameters and is returned only if the payment gateway has recognized all the request parameters as correct.) errorCode N3 no Error code.
orderNumber AN..32 no The order number (identifier) in the store's system is unique for each store within the system.
orderStatus N..2 no The value of this parameter determines the order status in the payment system. It is missing if the order has not been found. The following values are possible:
0 - The order is registered, but not paid for;
1 - The pre-authorized amount is reserved (for two-phase payments);
2 - authorization of the order amount has been carried out;
3 - Authorization canceled;
4 - A refund operation was performed on the transaction;
5 - Authorization has been initiated through the issuing bank's ACS;
6 - Authorization denied.
actionCode N..5 no Response codes are a digital designation of the result that the user's access to the system led to.
actionCodeDescription AN..512 no Decryption of the response code in the language passed in the language request parameter.
amount N..20 no Payment amount in minimum units of currency (e.g., kopecks or cents).
currency N3 no Payment currency.
date ANS no Date of order registration in UNIX-time (POSIX-time) format.
ip AN..20 no The IP address of the user who paid for the order. IPv6 is supported in all requests.
merchantOrderParams AN..1024 no Parameter containing attributes where additional seller parameters are transferred: name - additional parameter name; value - additional parameter value.
attributes AN..1024 no Order attributes in the payment system (order number): name - the name of the attribute, always have the mdOrder value; value - the order number in the payment system (unique within the system).
cardAuthInfo - no Information about the buyer's payment card:
expiration (ANS) - year and month of expiration of the payment card;
cardholderName (A..64) - name of the cardholder, if available;
approvalCode (AN6) - payment authorization code, may contain digits and Latin letters;
pan (NS..19) - masked DPAN: a number linked to the buyer's mobile device and performing the functions of a payment card number in the Apple Pay system.
authDateTime ANS no Date and time of authorization in UNIX-time (POSIX-time) format.
terminalId AN..10 no ID of the processing system terminal through which the payment was made.
authRefNum AN..24 no The authorization account number that is assigned when registering the payment.
paymentAmountInfo - no Parameter containing nested parameters with information about the amounts of confirmation, debiting, refund:
paymentState (A..10) - payment status;
approvedAmount (N..12) - amount confirmed for debiting;
depositedAmount (N..12) - amount debited from the card;
refundedAmount (N..12) - Refund amount.
totalAmount (N..12) - order amount + fee (fee if it was used in the order).
bankInfo - no Contains a nested parameter bankCountryName (AN..160) - if available, the name of the issuing bank's country is transferred in the parameter in the language transferred in the "language" parameter in the request, or in the language of the user who called the method, if the language is not specified in the request.

Request for recurrent payments via Apple Pay and Google Pay (REST)

This functionality supports recurrent payments with MasterCard and Visa cards

The recurrentPayment.do request is used to register an order (see the Connection coordinates section).

Example of a POST request

        {
  "userName": "userName",
  "password": "password",
  "orderNumber": "UAF-203974-DE-12",
  "language": "RU",
  "bindingId": "binding_id",
  "amount": 12300,
  "currency": "810",
  "description" : "Test description",
  "additionalParameters": {
    "firstParamName": "firstParamValue",
    "secondParamName": "secondParamValue"
  }
 }
    

The parameters are described in the table below.

Parameter Mandatory Description
userName yes The name of the user with access to the payment gateway API.
password yes The password of the user with access to the payment gateway API.
orderNumber yes Order number.
language no Two-letter language code.
bindingId yes Binding identifier.
amount yes Order amount in minimum units of currency (e.g., kopecks).
currency no Digital currency code as per ISO 4217.
description no Order description.
additionalParameters no "parameter name 1": "parameter value 1", "parameter name 2": "parameter value 2"

Response examples and descriptions
Below is an example of a successful payment.

        {"success":true,"data":{"orderId":"f7beebe4-7c9a-43cf-8e26-67ab741f9b9e"},"orderStatus":{"errorCode":"0","orderNumber":"UAF-203974-DE-12","orderStatus":2,"actionCode":0,"actionCodeDescription":"","amount":12300,"currency":"810","date":1491333938243,"orderDescription":"Test description","merchantOrderParams":[{"name":"firstParamName","value":"firstParamValue"},{"name":"secondParamName","value":"secondParamValue"}],"attributes":[],"cardAuthInfo":{"expiration":"201912","cardholderName":"sdf sdf","approvalCode":"123456","paymentSystem":"VISA","pan":"411111**1111"},"authDateTime":1491333939454,"terminalId":"11111","authRefNum":"111111111111","paymentAmountInfo":{"paymentState":"DEPOSITED","approvedAmount":12300,"depositedAmount":12300,"refundedAmount":0},"bankInfo":{"bankCountryName":"<Unknown>"},"chargeback":false,"operations":[{"amount":12300,"cardHolder":"sdf sdf","authCode":"123456"}]}}
    

Below is an example of an unsuccessful payment.

        {
  "error": {
    "code": "10",
    "description": "An order with this number has already been registered.",
    "message": "An order with this number has already been registered."
  },
  "success": false
}
    

The description of the response parameters is given in the table below.

Parameter Nested parameter Mandatory parameter Description
success Not relevant yes Indicates the success of the payment. The following values are available: true - the request was processed successfully; false - the request failed.
data (returned only if the payment was successful) orderId yes The order number unique to the seller in the payment system.
error (returned only if the payment failed) code yes Error code.
description - yes Detailed technical explanation of the error - the contents of this parameter are not intended to be displayed to the user..
message - yes Clear error description - designed to be displayed to the user.

Error codes

Error code Message
0 Processing took place without system errors.
1 Incorrect payment details.
1 It is not possible to use a binding for recurring payments.
1 Invalid payment parameters.
1 Invalid order number.
4 Invalid binding ID.
5 The ability to use bindings is disabled.
5 Incorrect amount.
5 Invalid user name.
5 Invalid password.
5 Authentication error.
5 Authentication error.
10 An order with this number has already been registered.

Request for payment via Google Pay (REST)

The payment.do request is used to register an order (see the Connection coordinates section).
For cancellation, refund and payment completion operations, standard requests to the payment gateway should be used.

The parameters are described in the table below.

to which the user must be redirected in case of failed payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
        See also the 3DS payment block - for one-phase and two-phase payments. 
failUrl is used in the same way as in step 11 in the specified patterns.
    
Parameter Mandatory Description
merchant Yes Merchant's login name in the payment gateway system.
orderNumber Yes A unique order number on the seller's side.
description No Order description.
language No The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
additionalParameters No

Additional order parameters that are saved for viewing from the merchant's personal area. Additional parameters should be specified in the following format.

        "parameter_name": "parameter_value" 
    

Each new pair of parameter name and value should be separated by a comma.
If the seller has fiscalization configured, when specifying email (the buyer's email address) and/or phone (the buyer's cell phone number) as additional parameters, these parameters are primarily used to send a fiscal receipt.

preAuth No Parameter that determines the need for pre-authorization (blocking funds on the client's account before they are debited). The following values are available: • true - the parameter is enabled, the payment is made with preauthorization (the client's funds are blocked before being debited); • false - the parameter is disabled (debiting is made immediately). If the parameter is not specified in the request, the debiting is made immediately.
clientId No The number of the client for whom one should create a binding for making regular payments. It should be indicated only if a technical payment is made for subsequent regular payments.
paymentToken Yes A token received from Google Pay and encoded in Base64.
ip Yes Payer's IP address.
amount Yes Payment amount in minimum units of currency (e.g., kopecks).
currencyCode No The payment currency digital code as per ISO 4217. If not specified, it is considered equal to 643 (Russian ruble).
email No (see description) Email address. Required if the online store has fiscalization configured and no phone number is specified.
phone No (see description) Phone number. Required if the online store has fiscalization configured and no email address is specified.
failUrl No
returnUrl Yes The address to which the user must be redirected in case of successful payment. The address must be specified in full, including the protocol used (for example, https://test.ru instead of test.ru). Otherwise, the user will be redirected to the address of the following type: http://<payment_gateway_address>/<merchant_address>.
        See also the 3DS payment block - for one-phase and two-phase payments. 
returnUrl is used in the same way as in step 11 in the specified patterns.
    
dynamicCallbackUrl no This parameter allows you to use the dynamic callback notification sending functionality. All payment-related callbacks enabled for the merchant could be directed to the address passed in this parameter. Payment-related notifications are callback notifications about the following events: successful hold, payment rejected by timeout, successful debit, refund, reversal. Notably, payment-unrelated callbacks that are active for the merchant (enabling/disabling a binding, binding creation) will be sent to static callback address. It is necessary to contact technical support for configuration.


Below is an example of a request for payment.

To process the request correctly, one needs to add a header with the definition of the content type - Content-Type: application/json.

        {
    "merchant": "OurBestMerchantLogin",
    "orderNumber": "UAF-203974-DE",
    "language": "RU",
    "preAuth": true,
    "returnUrl":"https://test.ru",
    "description" : "Test description",
    "additionalParameters":
    {
        "firstParamName": "firstParamValue",
        "secondParamName": "secondParamValue"
    },
    "paymentToken": "eyJtZXJjaGFudCI6ICJrdXBpdmlwIiwib3JkZXJOdW1iZXIiOiAyMDUxOTIzMzkxLCJwYXltZW50VG9rZW4iOiAie1wiZXBoZW1lcmFsUHVibGljS2V5XCI6XCJrZXlcIixcImVuY3J5cHRlZE1lc3NhZ2VcIjpcIm1lc3NhZ2VcIixcInRhZ1wiOlwidGFnXCJ9In0=",
    "ip" : "127.0.0.1",
    "amount" : "230000",
    "currencyCode" : 643
}
    


The description of the response parameters is given in the table below..

Parameter Nested parameter Mandatory parameter Description
success Not relevant Yes Indicates the success of the payment. The following values are available: true - the request was processed successfully; false - the request failed.
data (returned only if the payment was successful) orderId Yes The order number unique to the seller in the payment system.
error (returned only if the payment failed) code Yes Error code.
error description Yes Detailed technical explanation of the error - the contents of this parameter are not intended to be displayed to the user.
error message Yes Clear error description - designed to be displayed to the user.
termUrl Not relevant No It is not used for payments that do not require additional authentication through the Issuing Bank's ACS.
acsUrl Not relevant No It is not used for payments that do not require additional authentication through the Issuing Bank's ACS.
paReq Not relevant No It is not used for payments that do not require additional authentication through the Issuing Bank's ACS.

Response examples and description


Successful payment

        {
"success":true,
"data": {
 "orderId": "12312312123"
 }
    

Unsuccessful payment

        {
  "error": {
    "code": 1,
    "description":
"Processing Error",
    "message":
"Insufficient funds on the card"
  },
  "success": false
}
    


Possible error codes are described in the table below.

Error code Error message
0 Request processing took place without system errors
1 Insufficient funds on the card
5 Access denied
5 The user must change password
7 System error
10 Invalid value of the paymentToken parameter
10 Invalid value of the orderNumber parameter
10 Invalid value of the merchant parameter
10 Invalid ip parameter value
10 Decryption of the transferred data failed
10 No private key

Request for payment via Samsung Pay (REST)

The payment.do request is used to register an order in Samsung Pay (see the Connection coordinates section).
For cancellation, refund and payment completion operations, standard requests to the payment gateway should be used.

Below is an example of a request for payment via Samsung Pay.

To process the request correctly, one needs to add a header with the definition of the content type - Content-Type: application/json.

        {
    "merchant": "OurBestMerchantLogin",
    "orderNumber": "UAF-203974-DE",
    "language": "RU",
    "preAuth": true,
    "description" : "Test description",
    "additionalParameters":
    {
        "firstParamName": "firstParamValue",
        "secondParamName": "secondParamValue"
    },
    "paymentToken": "ew0KICB7DQoJICAidmVyc2lvbiI6ICJSU0FfdjEiLA0KCSAgInNpZ25hdHVyZSI6ICJabUZyWlNCemFXZHVZWFIxY21VPSIsDQoJICAiaGVhZGVyIjogew0KCQkiZXBoZW1lcmFsUHVibGljS2V5IjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRW14Q2hDcGpLemY5YVh6MjZXVDZaVE4yekUzaUdYUWpjWlJZWUFkUUlURFgyUmtBTmJ0N2s5cmFoRjFoempqbWVWVHhjZ0NvZkg4MXprMkdOVFozZHRnPT0iICAgICAgIA0KCQkid3JhcHBlZEtleSI6ICJYejI2V1Q2WlROMnpFM2lHWFFqYz0iDQoJCSJwdWJsaWNLZXlIYXNoIjogIk9yV2dqUkdrcUVXamRrUmRVclhmaUxHRDBoZS96cEV1NTEyRkpXckdZRm89IiwNCgkJInRyYW5zYWN0aW9uSWQiOiAiYXBwbGUtMTIzNDU2Nzg5MEFCQ0RFRiINCgkgIH0sDQoJICAiZGF0YSI6ICIxZFhFMTNrdnpUVlA2bldFTjhEMnBoclBsZlFjR3I4VzN5ajJTSFlZai9QeWNIV1RqbnBWN3ovRXI3OGJyaT09Ig0KICB9DQp9",
    "ip" : "127.0.0.1"
}
    

The description of the parameters is given in the table below.

Name Mandatory Description
merchant yes Merchant's login name in the payment gateway system.
orderNumber yes A unique order number on the seller's side.
description no Order description.
language no The language is encoded in ISO 639-1. If not specified, the default language specified in the store settings will be used.
additionalParameters no Additional order parameters that are saved for viewing from the merchant's personal area. Additional parameters should be specified in the following format. "parameter name": "parameter value" Each new pair of parameter name and value should be separated by a comma.
preAuth no Parameter that determines the need for pre-authorization (blocking funds on the client's account before they are debited). The following values are available: • true - the parameter is enabled, the payment is made with preauthorization (the client's funds are blocked before being debited); • false - the parameter is disabled (debiting is made immediately). If the parameter is not specified in the request, the debiting is made immediately.
clientId no The number of the client for whom one should create a binding for making regular payments. It should be indicated only if a technical payment is made for subsequent regular payments.
paymentToken yes The contents of the 3ds.data parameter from the response received from Samsung Pay.
ip yes Payer's IP address.
currencyCode no The payment currency digital code as per ISO 4217. If not specified, it is considered equal to the default currency code.

Response examples and description
Successful payment

html
        {
"success":true,
"data": {
    "orderId": "12312312123"
  }
}
    

Unsuccessful payment

        {
  "error": {
    "code": 1,
    "description": "Processing Error",
    "message": "Insufficient funds on the card"
  },
  "success": false
}
    

The description of the response parameters is presented in the table below.

Parameter Nested parameter Mandatory Description
success Not relevant yes Indicates the success of the payment. The following values are available: true - the request was processed successfully; false - the request failed.
data (returned only if the payment was successful) orderId yes The order number unique to the seller in the payment system.
error (returned only if the payment failed) code yes Error code.
description - yes Detailed technical explanation of the error - the contents of this parameter are not intended to be displayed to the user..
message - yes Clear error description - designed to be displayed to the user.

Possible error codes are described in the table below.

Code Description
0 Request processing took place without system errors
1 Insufficient funds on the card
5 Access denied
5 The user must change password
7 System error
10 Invalid value of the paymentToken parameter
10 Invalid value of the orderNumber parameter
10 Invalid value of the merchant parameter
10 Invalid ip parameter value
10 Invalid value of the paymentToken parameter.header.alg
10 Invalid value of the paymentToken parameter.header.enc
10 Invalid value of the paymentToken parameter.header.typ
10 Invalid value of the paymentToken parameter.header.channelSecurityContext
10 Invalid value of the paymentToken parameter.header.kid
10 Decryption of the transferred data failed