# Callback

* If the status of receiving the Callback is not 200 OK, the Callback is resent after 5 seconds, then after 30 seconds, then after 5 minutes, then after 30 minutes, after 1 hour
* If the status of receiving the Callback is not 200 OK for the 1st time, but 200 OK for the 2nd time, then the Callback is no longer resent.

## Input parameters

<table><thead><tr><th width="184">Parameter</th><th width="211">Description</th><th width="113">Data Format</th><th width="222">Example</th></tr></thead><tbody><tr><td>type</td><td>Transaction type.</td><td>string</td><td>Purchase</td></tr><tr><td>rrn</td><td>RRN transaction number in MPS.</td><td>string</td><td>2554256963</td></tr><tr><td>purpose</td><td>Payment purpose.</td><td>string</td><td>For goods</td></tr><tr><td>comment</td><td>Comment.</td><td>string</td><td>test</td></tr><tr><td>coinAmount</td><td>Payment amount.</td><td>int</td><td>2000</td></tr><tr><td>merchantId</td><td>Merchant ID.</td><td>string</td><td>137d9304-0368-11ed-b939-0242ac120002</td></tr><tr><td>operationId</td><td>Transaction ID.</td><td>string</td><td>1712844596346b9F-WwrWZpq</td></tr><tr><td>ecomOperationId</td><td>Transaction ID in the Ecom system.</td><td>string</td><td>8c3303e9-7396-43b8-af4e-31d9facdde9b</td></tr><tr><td>merchantName</td><td>Merchant name.</td><td>string</td><td>KB test terminal</td></tr><tr><td>approvalCode</td><td>Authorization code.</td><td>string</td><td>39203</td></tr><tr><td>status</td><td>Transaction status. </td><td>string</td><td>Possible values: SUCCESS, FAIL, PENDING, REQUIRED_3DS, DESIRED_THREEDS_MODE_ERROR</td></tr><tr><td>transactionType</td><td>Transaction type in numerical form.</td><td>string</td><td>35</td></tr><tr><td>merchantRequestId</td><td>Merchant request id</td><td>string</td><td>72837906-f526-4aef-8d11-58d80b44cb75</td></tr><tr><td>transactionCurrency</td><td>Payment currency.</td><td>string</td><td>980</td></tr><tr><td>merchantCommission</td><td>Commission amount</td><td>string</td><td>2</td></tr><tr><td>createDateTime</td><td>Transaction creation date.</td><td>string</td><td>19.09.2024 15:29</td></tr><tr><td>modificationDateTime</td><td>Transaction modification date.</td><td>string</td><td>19.09.2024 15:29</td></tr><tr><td>actionCode</td><td>Response code</td><td>string</td><td>0</td></tr><tr><td>responseCode</td><td>Response details.</td><td>string</td><td>0</td></tr><tr><td>description</td><td>Response description.</td><td>string</td><td>approved</td></tr><tr><td>bankCode</td><td>Issuer bank name.</td><td>string</td><td>BANK_ALLIANCE</td></tr><tr><td>paymentSystem</td><td>Issuer MPS name.</td><td>string</td><td>MasterCard</td></tr><tr><td>productType</td><td>Terminal product type.</td><td>string</td><td>PURCHASE</td></tr><tr><td>notificationUrl</td><td>URL to which the CallBack is sent</td><td>string</td><td><a href="https://merchant.notification_url/">​https://merchant.notification_url/​</a></td></tr><tr><td>paymentServiceType</td><td>Payment type</td><td>string</td><td>CARD/APPLE_PAY/GOOGLE_PAY</td></tr><tr><td>notificationEncryption</td><td>Callback data encryption feature</td><td>string</td><td>true/false If the parameter is not passed or false is passed, then the data in the CallBack will be unencrypted</td></tr><tr><td>cardNumberMask</td><td>Masked card number</td><td>string</td><td>5573********0304</td></tr><tr><td>desiredThreeDSMode</td><td>A feature that indicates whether the merchant wants to use the 3DS in the purchase or not.</td><td>string</td><td>MUST/SHOULD/MUST_NOT</td></tr><tr><td>threeDSMode</td><td>A parameter that indicates whether a 3DS is used in the purchase or not</td><td>string</td><td>MUST- pay with 3DS MUST_NOT- pay without 3DS</td></tr><tr><td>statusThreeDs</td><td>3DS holding status</td><td>string</td><td>Y - successful 3ds N - unsuccessful 3ds</td></tr><tr><td>threeDSServerTransId</td><td>Id of the transaction in the 3ds system</td><td>string</td><td>8a811df4-91e0-436b-a9ac-9b0772c96f28</td></tr><tr><td>acsTransId</td><td>Id of the transaction in the ACS system</td><td>string</td><td>3e17fabb-71e6-498e-8794-ef8c95c5ba6f</td></tr><tr><td>dsTransId</td><td>Transaction ID generated by Directory Server</td><td>string</td><td>12ebc556-82d3-4e35-9fb8-77ac18b050ea</td></tr><tr><td>eci</td><td>Electronic Commerce Indicator A code that indicates the security level of a transaction</td><td>string</td><td>2</td></tr><tr><td>processingMerchantId</td><td>Id of the merchant in PC</td><td>string</td><td>AE100000</td></tr><tr><td>processingTerminalId</td><td>Id of the terminal in the PS</td><td>string</td><td>AE100000</td></tr><tr><td>redirect3dsUrl</td><td>URL to redirect the client to the issuer's page for the 3DS pass</td><td>string</td><td><a href="https://api-ecom-release.develop.bankalliance.ua/threeDS/getRedirectHtml/1702047427621BHu5X99yDbA">​​https://api-ecom-release.develop.bankalliance.ua/threeDS/getRedirectHtml/1702047427621BHu5X99yDbA​​</a></td></tr><tr><td>txnType</td><td>Under the type of transaction</td><td>enum</td><td>Possible values: NONCVV/noncvv- upon receipt of a given value of cvv input and its verification does not occur</td></tr><tr><td>senderCustomerId</td><td>Id of the sender's client</td><td>string</td><td>1258728c1</td></tr><tr><td>senderFirstName</td><td>Sender's first name</td><td>string</td><td>Ivanenko</td></tr><tr><td>senderLastName</td><td>Sender's last name</td><td>string</td><td>Ivan</td></tr><tr><td>senderMiddleName</td><td>Sender's middle name</td><td>string</td><td>Ivanovich</td></tr><tr><td>senderEmail</td><td>Sender's mail</td><td>string</td><td>mail@gmail.com</td></tr><tr><td>senderCountry</td><td>Sender's country</td><td>string</td><td>Ukraine</td></tr><tr><td>senderRegion</td><td>Sender's region.</td><td>string (255)</td><td>Kyivska</td></tr><tr><td>senderCity</td><td>Sender's city.</td><td>string (25)</td><td>Kyiv</td></tr><tr><td>senderStreet</td><td>Sender's street.</td><td>string (35)</td><td>Sichovykh Striltsiv</td></tr><tr><td>senderAdditionalAddress</td><td>Additional address data (floor, house number, apartment).</td><td>string (255)</td><td>23</td></tr><tr><td>senderItn</td><td>Sender's tax ID.</td><td>string (20)</td><td>123456789</td></tr><tr><td>senderPassport</td><td>Sender's passport.</td><td>string (255)</td><td>AN123456</td></tr><tr><td>senderIp</td><td>Sender's IP address.</td><td>string (50)</td><td>123.12.12.12</td></tr><tr><td>senderPhone</td><td>Sender's phone number.</td><td>string (20)</td><td>3,81E+11</td></tr><tr><td>senderBirthday</td><td>Sender's date of birth.</td><td>string (50)</td><td>31.12.2000</td></tr><tr><td>senderGender</td><td>Sender's gender.</td><td>string (50)</td><td>Male/Female</td></tr><tr><td>senderZipCode</td><td>Sender's postal code.</td><td>string (50)</td><td>49000</td></tr><tr><td>senderBankCode</td><td>Sender's issuing bank</td><td>string</td><td>BANK_ALLIANCE</td></tr><tr><td>senderPaymentSystem</td><td>Sender's issuer</td><td>string</td><td>MasterCard</td></tr><tr><td>senderCardNumberMask</td><td>Masked card number of the sender</td><td>string</td><td>5573********0304</td></tr><tr><td>recipientCustomerId</td><td>Recipient's client id</td><td>​string(30)</td><td>1258728c1</td></tr><tr><td>recipientFirstName</td><td>Recipient's first name</td><td>​</td><td>Ivanenko</td></tr><tr><td>recipientLastName</td><td>Recipient's last name </td><td>​</td><td>Ivan</td></tr><tr><td>recipientMiddleName</td><td>Recipient's middle name</td><td>string(30)</td><td>Ivanovich</td></tr><tr><td>recipientEmail</td><td>Recipient's email</td><td>string</td><td>mail@gmail.com</td></tr><tr><td>recipientСountry</td><td>Recipient's county</td><td>string</td><td>804</td></tr><tr><td>recipientRegion</td><td>Recipient's region</td><td>string</td><td>Kyivska</td></tr><tr><td>recipientСity</td><td>Recipient's city</td><td>string</td><td>Kyiv</td></tr><tr><td>recipientStreet</td><td>Recipient's street</td><td>string</td><td>Sichovykh Striltsiv</td></tr><tr><td>recipientAdditionalAddress</td><td>Recipient's additional address data (floor, house number, apartment).</td><td>string</td><td>23</td></tr><tr><td>recipientItn</td><td>Recipient's tax ID.</td><td>string</td><td>123456789</td></tr><tr><td>recipientPassport</td><td>Recipient's passport</td><td>string</td><td>AN123456</td></tr><tr><td>recipientIp</td><td>Recipient's IP address.</td><td>string</td><td>123.12.12.12</td></tr><tr><td>recipientPhone</td><td>Recipient's phone number</td><td>string</td><td>3,81E+11</td></tr><tr><td>recipientBirthday</td><td>Recipient's date of birth.</td><td>string</td><td>31.12.2000</td></tr><tr><td>recipientGender</td><td>Recipient's gender</td><td>string</td><td>Male/Female</td></tr><tr><td>recipientZipCode</td><td>Recipient's zip code </td><td>string</td><td>49000</td></tr><tr><td>recipientBankCode</td><td>Recipient's issuing bank</td><td>string</td><td>BANK_ALLIANCE</td></tr><tr><td>recipientPaymentSystem</td><td>Recipient's issuer</td><td>string</td><td>MasterCard</td></tr><tr><td>recipientCardNumberMask</td><td>Masked card number of the Recipienr</td><td>string</td><td>5573********0304</td></tr><tr><td>originalOperationId</td><td>Id under which the original transaction was created</td><td>string</td><td>1712843529623cHAHkmt-G5u</td></tr><tr><td>originalCoinAmount</td><td>Original payment amount</td><td>int</td><td>100</td></tr><tr><td>originalEcomOperationId</td><td>Id in the Ekom system under which the original transaction was created</td><td>string</td><td>c25ee1cb-a052-439b-b075-bcb632615b11</td></tr><tr><td>rrnOriginal</td><td>RRN original transaction number in MPS</td><td>string</td><td>123456789</td></tr></tbody></table>

## Example of a request body

```json
{
   "type":"CARD_2_ACCOUNT",
   "rrn":"401613120895",
   "purpose":"purpose",
   "comment":null,
   "coinAmount":1010,
   "merchantId":"137d9304-0368-11ed-b939-0242ac120002",
   "operationId":"1705411028563HDJi1gScHJT",
   "merchantName":"KB test terminal",
   "approvalCode":"058669",
   "status":"SUCCESS",
   "transactionType":62,
   "merchantRequestId":"d6ca07a8-dc4d-425c-8fa8-4512fe852b3e",
   "transactionCurrency":"980",
   "merchantCommission":0,
   "createDateTime": "2024.09.19 15:29:25.675",
   "modificationDateTime": "2024.09.19 15:29:25.675",
   "transactionResponseInfo":{
      "actionCode":"0",
      "responseCode":"00",
      "description":"approved"
   },
   "bankCode":"BANK_ALLIANCE",
   "paymentSystem":"MasterCard",
   "productType":"C2A",
   "notificationUrl":"://webhook.site/db36dec8-c6fa-4ed5-8726-8d9c583c0103",
   "senderCity":"MISTO KYIV",
   "senderStreet":"VUL. MOSKOVSKA, BUD. 32/2, KV. 178",
   "senderCountry":"804",
   "recipientAccount":"_",
   "senderLastName":"TESTOVA",
   "senderFirstName":"IRYNA",
   "senderCardNumberMask":"523244••••••0177",
   "desiredThreeDSMode":"MUST_NOT",
   "threeDSMode":"MUST_NOT",
   "statusThreeDs":null,
   "threeDSServerTransID":null,
   "redirect3dsUrl":null
}

```

## Example response

```http
HTTP 200 OK
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.merchant.alb.ua/en/authorization-2.0/payment-methods-h2h/callback.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
