Card payment statuses

These statuses belong to card payments only. Apple Pay and Google Pay report a different set of values on a different endpoint — see Payment statuses. The two are not interchangeable and no identifier works across both.

Transaction Statuses

In callbacks and responses, the status of a payment transaction is specified as an integer value of the status parameter. It can have one of the following values:

  • 0: the transaction was created (not processed, the customer was redirected to complete the payment, for example, 3-D Secure verification).
  • 1: successful authorization (blocking funds).
  • 2: successfully unlocking funds.
  • 3: successful payment (debiting of funds).
  • 4: successful refund.
  • 7: error in unlocking funds from the issuer.
  • 8: this status is generated in case of temporary problems during processing on the provider's side, for example, in case of increased load; the current status of the provider is checked, and the result of the transaction processing is a link with a payment form to which the customer should be redirected.
  • 15: refund processing. This status is generated if the refund takes a long time to process, approximately 1–7 days.
  • 98: expired.
  • 99: processing error (unsuccessful payment).

Requesting Transaction Info

In addition to callbacks, there are several end-points providing various information about specified transactions.

Transaction Status

Provides a status of specified orders or transactions.

POST-request for an endpoint /pay/order_status where two parameters are passed in the body:

  • data - a base64-encoded string containing JSON-document;
  • sign - a signature which is formed on the basis of the data string using the hash_hmac function to confirm the validity of data.

The following JSON-parameters and their values form the data string:

Parameter Name Description Example
api_key Merchant's key (identifier). It is a sensitive data c84f1ac0-e4f0-0131-5298-70921c57c2a2
transaction_id Transaction identifier in service provider's system, for which information should be provided 2231

Result of processing is a JSON-structure:

{
  "data": "eyJpdGVtcyI6W3sic3RhdHVzIjozLCJzdGF0dXNfbmFtZSI6InN1Y2Nlc3MiLCJ0cmFuc2FjdGlvbl9pZCI6MTA1MTM3ODcsImRlc2NyaXB0aW9uIjoi0KLQtdGB0YIg0L/Qu9Cw0YLQtdC20LAiLCJyZWZlcmVuY2UiOiJramJraHZjdHV1ZiIsImFtb3VudCI6IjEwMC4wIiwiY3VycmVuY3kiOiJFVVIifV0sInN1Y2Nlc3MiOnRydWUsInRpbWVfcHJvYyI6IjAuMTIgc2VjLiIsInJlcXVlc3RfaWQiOiI0NTk4Mjg0NDQ3In0=",
  "sign": "794316aa8a552ea8897e9fab4f43668c",
  "success": true,
  "time_proc": "0.12 sec.",
  "request_id": "4598284447"
}

As a result of decoding the data parameter, there is an array of items with a structure similar to the callback message structure (for details on the callback message structure, see Callbacks):

{
  "items": [
    {
      "status": 99,
      "status_name": "error",
      "processing_error_msg": "[3DS-VERES-N] Card not enrolled",
      "transaction_id": 10515545,
      "description": "Test payment",
      "reference": "1698837043",
      "amount": "10.78",
      "currency": "EUR"
    }
  ],
  "success": true,
  "time_proc": "0.16 sec.",
  "request_id": "1752206827"
}

Transaction Details

Provides a detailed information on selected orders or transactions.

POST-request for an endpoint pay/get_orders_data where two parameters are passed in the body:

  • data - a base64-encoded string containing JSON-document;
  • sign - a signature which is formed on the basis of the data string using the hash_hmac function to confirm the validity of data.

The following JSON-parameters and their values form the data string:

Parameter Name Description Example
api_key Merchant's key (identifier). It is a sensitive data c84f1ac0-e4f0-0131-5298-70921c57c2a2
transaction_id OR reference Transaction identifier in our system, by which information should be requested,
OR Unique order number in the merchant’s system
2231

Result of processing is a JSON-structure:

{
  "data": "eyJpdGVtcyI6W3sidHJhbnNhY3Rpb25faWQiOiIyIiwicmVmZXJlbmNlIjoi\nNTMwNjY1OCIsImFwaV9rZXkiOiIxNjk0NmVhMC03YmZjLTAxMzItYjgyMC0x\nY2I2NTQ0NTUyN2UiLCJhbW91bnQiOiI1NzYuMjUiLCJjdXJyZW5jeSI6IkVV\nUiIsInN0YXR1cyI6IjMiLCJzdGF0dXNfbmFtZSI6InN1Y2Nlc3MiLCJzeXN0\nZW1fYW1vdW50IjoiNjM3LjI0Iiwic3lzdGVtX2N1cnJlbmN5IjoiRVVSIiwi\nY29tbWlzc2lvbiI6IjYwLjk5IiwicGF5bWVudF9zeXN0ZW1faWQiOiIxIiwi\ncGF5bWVudF9zeXN0ZW1fbmFtZSI6IkRlZmF1bHQgUGF5bWVudCBTeXN0ZW0i\nLCJjYXJkX251bWJlciI6IjQwMTIwMCoqKioqKjg4ODQiLCJwcm9jZXNzaW5n\nX2Vycm9yX21zZyI6IiJ9XX0=\n",
  "sign": "5c800b95b97238dce6fb108514465dce",
  "success": true,
  "time_proc": "0.04sec."
}

As a result of decoding the data parameter, there is an array of items with a structure similar to the callback message structure (for details on the callback message structure, see Callbacks):

{
  "items": [
    {
      "amount": "576.25",
      "api_key": "16946ea0-7bfc-0132-b820-1cb65445527e",
      "card_number": "401200******8884",
      "commission": "60.99",
      "currency": "EUR",
      "payment_system_id": "1",
      "payment_system_name": "Default Payment System",
      "processing_error_msg": "",
      "reference": "5306658 ",
      "status": "3",
      "status_name": "success",
      "system_amount": "637.24",
      "system_currency": "EUR",
      "transaction_id": "2"
    }
  ]
}

Transaction Report

Provides a report on transactions for a period of time.

POST-request for an endpoint /pay/get_report where two parameters are passed in the body:

  • data - a base64-encoded string containing JSON-document;
  • sign - a signature which is formed on the basis of the data string using the hash_hmac function to confirm the validity of data.

The following JSON-parameters and their values form the data string:

Parameter Name Type Max Length/ Precision Description Example
api_key string 255 Merchant's key (identifier). It is a sensitive data c84f1ac0-e4f0-0131-5298-70921c57c2a2
time_start string - Optional. Range start time in the following format: yyyy-mm-dd HH: MM 2014-07-21 12:44
time_end string - Optional. Range end time in the following format: yyyy-mm-dd HH: MM 2014-07-21 12:45
status integer 1 See details in Transaction Statuses 99
page integer - Optional. Page number. The maximum number of items per page is 1000! 1

Example of a decoded JSON-response:

{
  "items": [
    {
      "id": 1158,
      "created_at": "2015-09-17T12:04:35.466+03:00",
      "reference": "1442480562",
      "status": 1,
      "system_amount": "327.78",
      "system_currency": "EUR"
    }
  ],
  "total_count": 1,
  "pages": 1,
  "success": true,
  "time_proc": "0.1sec."
}