Transaction Registry Request

To retrieve the registry, send a GET request to the following endpoint:

GET {url_system}/reestr/{type}?service_id={service_id}&dt_start={dt_start}&dt_end={dt_end}&hash={hash}

The system will check the incoming request for validity and the correctness of the control signature. If the incoming request is incorrect, the system will respond with:

  • HTTP Status 400: for malformed requests
  • HTTP Status 401: for validation errors
  • HTTP Status 404: if the operation is not found

Request Parameters

ParameterRequiredTypeDescriptionExample
typeYesStringRegistry format. Possible values: json, csv, xmljson
service_idYesIntegerPartner's identifier within the system123456
dt_startYesStringRegistry period starting date and time. Format: DD.MM.YYYY HH:mm01.01.2024 10:00
dt_endYesStringRegistry period ending date and time. Format: DD.MM.YYYY HH:mm31.01.2024 18:00
hashYesStringControl signature. MD5-hash of the concatenation of dt_start, dt_end, and SecretKeya1b2c3d4e5f6g7h8

System will respond with transaction registry in requested format (type).


Examples of Responses

Example response in XML format:

<?xml version="1.0" encoding="UTF-8"?>
<operations>
         <operation>
                  <id>350087610</id>
                  <pid>Test_01</pid>
                  <status>PAY_OK</status>
                  <smstext>000 9001234567 1.00</smstext>
                  <phone>9001234567</phone>
                  <goodphone>000</goodphone>
                  <created>2023-10-02 14:05:29</created>
                  <changed>2023-10-02 16:10:03</changed>
                  <amount>1,00</amount>
                  <partner_notified>true</partner_notified>
                  <partnerName>AL/Test Apple</partnerName>
                  <partnerFee></partnerFee>
         </operation>
         <operation>
                  <id>350128752</id>
                  <pid>Test_02</pid>
                  <status>PAY_FAIL</status>
                  <smstext>000 9001234567 2.00</smstext>
                  <phone>9001234567</phone>
                  <goodphone>000</goodphone>
                  <created>2023-10-05 09:54:06</created>
                  <changed>2023-10-05 11:55:03</changed>
                  <amount>2,00</amount>
                  <partner_notified>true</partner_notified>
                  <partnerName>AL/Test Apple</partnerName>
                  <partnerFee></partnerFee>
         </operation>
</operations>

Example response in CSV format:

id;pid;status;smstext;phone;goodphone;created;changed;amount;partner_notified;partnerName;partnerFee 
"350087610";"Test_01";"PAY_OK";"000 9001234567 1.00";"9001234567";"000";"2023-10-02 14:05:29";"2023-10-02
16:10:03";"1,00";"true";"AL/Test Apple";"null"
"350128752";"Test_02";"PAY_FAIL";"000 9001234567 2.00";"9001234567";"000";"2023-10-05 09:54:06";"2023-10-05
11:55:03";"2,00";"true";"AL/Test Apple";"null"
"350128767";"Test_03";"INIT_FAIL";"000 9001234567 300.00";"9001234567";"000";"2023-10-05 09:55:26";"2023-10-05
12:00:03";"300,00";"true";"AL/Test Apple ";"null"

Example response in JSON format:

[
          {
                  "id": "350087610",
                  "pid": "Test_01",
                  "status": "PAY_OK",
                  "smstext": "000 9001234567 1.00",
                  "phone": "9001234567",
                  "goodphone": "000",
                  "created": "2023-10-02 14:05:29",
                  "changed": "2023-10-02 16:10:03",
                  "amount": "1,00", 
                  "partner_notified": "true", 
                  "partnerName": "AL/Test Apple", 
                  "partnerFee": "null"
          },
          {
                  "id": "350128752",
                  "pid": "Test_02", 
                  "status": "PAY_FAIL",
                  "smstext": "000 9001234567 2.00",
                  "phone": "9001234567",
                  "goodphone": "000",
                  "created": "2023-10-05 09:54:06",
                  "changed": "2023-10-05 11:55:03",
                  "amount": "2,00", 
                  "partner_notified": "true", 
                  "partnerName": "AL/Test Apple", 
                  "partnerFee": "null"
          },
          {
                  "id": "350128767",
                  "pid": "Test_03", 
                  "status": "INIT_FAIL",
                  "smstext": "000 9001234567 300.00",
                  "phone": "9001234567",
                  "goodphone": "000",
                  "created": "2023-10-05 09:55:26",
                  "changed": "2023-10-05 12:00:03",
                  "amount": "300,00", 
                  "partner_notified": "true", 
                  "partnerName": "AL/Test Apple", 
                  "partnerFee": "null"
          }
]

Response Parameters

ParameterRequiredDescription
idStringUnique operation ID in the system.
pidStringID of the operation in the Partner's system.
statusStringOperation result.
smstextStringFormat of parameter values: <Partner's Shop prefix> <space> <Account/Order ID_in_Partner’s_System> <space> <Payment Amount>, where <Partner's Shop prefix> is unique for each telecom operator and is assigned during onboarding.
phoneStringMobile phone number of the user from which the payment is made.
goodphoneStringPartner's ID. Unique and assigned during onboarding.
createdDate-TimeDate and time when the payment operation was created.
changedDate-TimeDate and time of the payment operation.
amountDecimalPayment amount.
partner_notifiedBooleanIndicates whether a notification (callback) was sent to the partner. Possible values: true - yes; false - no.
parametersStringAdditional payment parameters.
partnerNameStringPartner’s name in the system.
partnerFeeStringCommission amount for the operation.

For this request, the system has set a limit on the maximum number of operations in the response, allowing no more than 20,000 transactions. If this limit is exceeded, an error message will be returned with the following text:

"Too much data was requested. Reduce the date range or DT_END parameter to 12.03.2024 14:29."

In this message, the specified date represents the time when 20,000 transactions were created in the request minus 1 minute.

To obtain further reports, the Partner must add 1 minute to the specified time and use the new time as the dt_start parameter.