[УКР](https://hackmd.io/aBE7H5cfQ-iqaN3SnwaQ-w) | ENG

# Reference Materials
## Operation Type
| "OperationType" | Type of operation |
|:-------------:| ------------ |
|`10001/10002`| [Confirm/Сancel Pre-Authorization for Operations [10102/101023/101025]](https://hackmd.io/GQcXQzGIRnmpnUW113fQGw)|
|`10005`| [Get Checkout Link](https://hackmd.io/qSkRHz6gRKmxNrWRwwrjqg) |
|`10015/10025/10035/10045`|[Get Widget Link to Pass BankID/Diia Identification](https://hackmd.io/0g4L6-zjQ-i50rtkVjJTxQ) |
|`10101`| [Card-Card](https://hackmd.io/VYlXRMiWRkimK0sxlTZ2BA) |
|`10102/101023/101025`| [Card-Wallet](https://hackmd.io/MUZzd3mTRQeQfBsE-emVVQ) |
|`10103`| [Card-IBAN of Individual](https://hackmd.io/9c9kaHeMTH-LiGf_mVWwpg)|
|`101031`| [Card-IBAN for Legal Entity](https://hackmd.io/XQDv9qmoRiqFzfzcD0H1uA)|
|`10108`| [Debt Repayment](https://hackmd.io/9MdA15b8Ra-SS1pGfia0oQ)|
|`10150/10051`| [Card-Phone-Card](https://hackmd.io/ES9hW5BlS6CozQAmULgnRw) |
|`10202`| [Wallet-Wallet](https://hackmd.io/dOi__3dxSYSi_3EvZh2a5Q)|
|`10205`| [Wallet-Phone](https://hackmd.io/eyewES-3TCGr99R8shURgQ) |
|`102070221/102070222/ 102070251/102070252`| [Confirm/Сancel Deferred Payment](https://hackmd.io/CM0Mt9FATVS3cWkihWG_bA)|
|`10301/10311/10313`| [Wallet-Card](https://hackmd.io/SvLoAv49QWOIsdPhCWFezA)|
|`10204/10214`| [Wallet-Card by Token](https://hackmd.io/-8jNNh0SQeKZ-6tbwp15OQ)|
|`10303`| [Wallet-IBAN](https://hackmd.io/7kfzI0OAQB6Nt8ZN38UxSg)|
|`10304`| [Wallet-UUID](https://hackmd.io/-U0QJEY_TASmrNQGwGepcA)|
|`10305`| [Card-Phone](https://hackmd.io/RFSxYF85Q0WqOd8I6Xenjg) |
|`10400`| [Bulk Payment Wallet-Card by Token](https://hackmd.io/BHS4jBINQ-u8SQxX3XvR6Q)|
|`10401`| [Bulk Payment Wallet-Card by Card Number](https://hackmd.io/v65TGa0uQPGCrKXQhvHuZg)|
|`104021`| [Card Payment by Token](https://hackmd.io/I4FJ0d0eStuvfqG2YmS8IQ)|
|`10405`| [Token-Phone](https://hackmd.io/hRrNYs3wQYeHChpNSk0AFg) |
|`104121`| [Auto Debit by Token. MO/TO Operations](https://hackmd.io/X4ImobdtSJ-Hy1qM-p7PWA)|
|`20001`| [Get Wallet Balance](https://hackmd.io/SVZQwSioRiGRiy0JwUQFWw) |
|`20002`| [Get Wallet Statement](https://hackmd.io/ChiiYaRgQVeZcjvM5Wt7VA) |
|`20003`| [Get Operation Status](https://hackmd.io/_eAjmoG-QPWoWWmsLOGf1g) |
|`20004`| [Get Transaction Receipt](https://hackmd.io/k3KrwPbcRK-1G7qxG0ORlg) |
|`20006`| [Delete Сard Data by ClientToken](https://hackmd.io/-dG-9DvRQuiMLzXrpaoJvg) |
|`20007`| [Get Client Data to Pass BankID/Diia Identification](https://hackmd.io/mNtJ1eUfTcaZjJFXUlGR-Q) |
|`20008`| [Get Exchange Rate](https://hackmd.io/k_ZnVoMwQ-i4WelDZ0wtZA) |
|`20009`| [Get Limit for Operation [10101]](https://hackmd.io/rQ7epWnbQmG9kM0rFjUfhA) |
|`20110`| [Get Card Data](https://hackmd.io/WruG7PGDRsuF0gL0Wl21bA) |
|`20400/20410`| [Get Card Data by Phone Number](https://hackmd.io/Xd9OZWXARcSZRTCsu-1jrw) |
|`20404`| [Get Card Data by Token](https://hackmd.io/PSdh1ldNSmmJMR4OIhM_-Q) |
|`20801`|[Get Directory Data](https://hackmd.io/8x6rVjR-SnOj1HHwAfa8tg) |
|`208011`|[Get Directory City Data](https://hackmd.io/LZsuqpBMR-iPJcnBKS7DmA) |
|`20802`|[Get Debt Data](https://hackmd.io/GuQz5QT-RpGfdoqKjhMd8g)|
|`30201/302013/302015`| [Cancel/Refund Payment for Operations [10102/101023/101025]](https://hackmd.io/VUh6hQpySFOsJV9yOzzgow) |
|`30202`| [Cancel/Refund Post-Authorization](https://hackmd.io/kRNsz_UtQZKviJnWG238HA) |
|`30203`| [Cancel/Refund Checkout Payment](https://hackmd.io/cQmrZWV5QY-QbWDTBiCB2g) |
|`80001`| [Fines Payment by Card for Mobile Application](https://hackmd.io/fWnQXFk5T2-sYiloHg6IaQ) |
|`80200`| [Get Fines Information](https://hackmd.io/AWcnFUssRNGTTPKZ7mrRlg) |
|`90001/90002/90003/90004/90005`|[Operation Preparation](https://hackmd.io/4oNILIFlQD-bIpuN9PVhZQ) |
|`90000`|[Operation Execution](https://hackmd.io/5aeqF-2PRQSkO85QIMXbqw) |
## Payment Type
| "PayType" | Payment method |
|:-------------:| ------------ |
| `0` / `No parameter` | *Direct Debit* - debiting of funds from the client's card via c2a (card-to-account) or p2p (person-to-person) remittance. |
| `1` | *Payment via the Internet Acquiring Gateway.* |
| `2` | *Deferred Payment* - blocking of funds on the client's card for further debiting and crediting to pre-registered wallets. |
| `3` | *Payment via a Third-Party Widget.* |
| `4` | *Payment by Details* - debiting of funds from the client's card and crediting to the specified details. |
| `5` | *Deferred Payment by Details* - blocking of funds on the client's card for further debiting and crediting to the specified details. |
| `7` | *Bulk Payment for Services* - splitting the client's payment for few recipients and crediting funds to pre-registered wallets. |
| `12` | *Bulk Payment for Services by Details* - splitting the client's payment for few recipients and crediting funds to the specified details. |
| `13` | *Payment to Merchants' Accounts (MIDs)* - splitting the client's payment for few recipients and crediting funds to the specified merchants' accounts. |
| `20` | *Payment via "Google/Apple Pay"* - easy payment method from Google and using Apple devices. |
## Response Code
| Response "Code" | Message | "OperationStatus" | "Reason" | Code Description | Fatality |
|:-:|:-:|:-:|:-:|-|:-:|
| `102` | `Processing` | `1`, `2`, `3`, `4`, `5`, `7` (see description below) | Any | Payment in processing. | No |
| `200` | `OK` | `10`, `20`, `21`, `22` | No | Operation processing completed. | Yes
| `400` | `Bad Request` | `21` | Any | Request parsing error. Structure error. | Yes |
| `401` | `Unauthorized` | `21` / No | Any | Token doesn't match the key. | Yes |
| `403` | `Forbidden` | `21` / No | Any | Operation forbidden. | Yes |
| `404` | `Not Found` | `21` / No | Any | Method not found. | Yes |
| `500` | `Internal Server Error` | `21` / No | Any | Unexpected protocol execution error. | Yes |
| `503` | `Service Unavailable` | `21` / No | Any | Service unavailable. Server is not ready to process the request. | Yes |
## Operation Status
| "OperationStatus" | Status | Fatality |
|:----:|----|:----:|
| `1` | Accepted for processing. | No |
| `2` | [3DS](https://en.wikipedia.org/wiki/3-D_Secure) сard verification. | No |
| `3` | Waiting for [OTP](https://en.wikipedia.org/wiki/One-time_password) verification. | No |
| `4` | Operation in queue. | No |
| `5` | Operation in processing. | No |
| `7` | Awaiting confirmation (for example, commission is calculated, but payment not executed, or in the case of deferred payment, confirmation/cancellation of debit is awaiting). | No |
| `10` | Operation successfully completed. | Yes
| `20` | OTP verification error. | Yes |
| `21` | Operation failed. | Yes |
| `22` | Operation cancelled. | Yes |
## Operation Rejection Reason Сodes
| "Reason" | Reason for rejection |
|:----:|----|
| `1` | Payment declined due to temporary technical reasons. Please try again later. Technical problem. |
| `2` | Subscriber not found. |
| `3` | Payment declined. Not enough funds on card for transaction. |
| `6` | Payment declined. Check correctness of entered card details or enter number of another card. Rejection of issuing bank. |
| `9` | Payment declined. Check correctness of entered card details. Incorrect CVV code entered. |
| `11` | Payment declined. Try paying with another card, or try again later. Anti-fraud protection of acquirer's bank.|
| `12` | Payment declined. Сard has expired. Contact bank.|
| `13` | Payment declined. Daily limit of number of card transactions exceeded. Contact bank. |
| `14` | Payment declined. Сard does't support 3DSecure security level. Contact bank to enable feature. |
| `18` | Payment declined. Check correctness of entered card details, enter number of another card or contact card-issuing bank. Сard blocked by issuer. |
| `19` | Payment declined. Refusal of payment.|
| `22` | Limit of online payments by card exceeded. Contact bank. |
| `27` | Payment declined. Card country differs from computer network address (IP). |
| `42` | Payment time expired. |
| `53` | Card unacceptable. Payment declined. |
| `58` | Attempt to change an already existing operation data. |
| `61` | Internet operation declined due to insufficient limit for sum of card transactions. Increase Internet limit in Privat24 (menu "My Accounts" > "Card/Account Management" > "Internet Payment") and repeat operation later. |
| `62` | Restricted card (card not valid in region or country). |
| `63` | 3D-Secure verification failed. Contact bank for more information. |
| `64` | Invalid verification code. |
| `88` | Other error. |
| `99` | Operation limit exceeded. |
| `601` | User with such an email already exists. |
| `602` | User with such a mobile number already exists. |
| `606` | Сompany with such a name already exists. |
|`735` | Amount of debits from counterparty's cards exceeds allowable amount per month. |
|`739` | Card unacceptable. Payment declined. |
|`818` |Transaction amount exceeds allowed limit. |
|`819` | Amount of deductions from card exceeds allowable volume for a month.|
|`820` | Amount of replenishment of card exceeds allowed amount per month. |
|`825` | Number of credits to card exceeds permissible limit per day. |
|`834` | Number of debits from card exceeds allowable limit per day.|
|`853` | Sum of transactions exceeds the monthly limit.|
| `100051` | User has not started payment (only for request [[10005]](https://hackmd.io/qSkRHz6gRKmxNrWRwwrjqg)). |
| `100053` | Payment time expired (only for request [[10005]](https://hackmd.io/qSkRHz6gRKmxNrWRwwrjqg)). |
| `3000` | Contact card issuer. |
| `3001` | Contact card issuer, special conditions. |
| `3002` | Invalid merchant. |
| `3003` | Do not serve. |
| `3004` | Error.|
| `3005` | Invalid transaction.|
| `3006` | Invalid sum or currency conversion field overflow.|
| `3007` | No action used.|
| `3008` | No record found in file.|
| `3009` | File temporarily unavailable for update or request.|
| `3010` | No credit account.|
| `3011` | Transaction not compliant with AML requirements.|
| `3012` | Limit reached for the number of cash withdrawals.|
| `3013` | Unasked cancellation.|
| `3014` | Blocked, first used. Transaction from a new cardholder, card not properly unlocked.|
| `3015` | Already canceled (by Switch).|
| `3016` | No financial impact. |
| `3017` | No reason to decline a request for address confirmation, CVV2 confirmation, credit voucher or product return.|
| `3018` | No authorization to receive Financial Information (GIV).|
| `3019` | Issuer or switch is inoperative and STIP is not applicable or unavailable for this transaction; Replacement time expired; POS Verification Service: destination not available; Credit voucher and return authorization: V.I.P. sent a transaction to issuer, but issuer was unavailable.|
| `3020` | No financial institution or routing network found (invalid receiving institution ID).|
| `3021` | Transaction can't be completed - violation of law.|
| `3022` | Additional commission sum is not allowed on Visa cards or EBT food stamps (for US acquirers only).
| `3023` | Additional commission sum is not supported by debit network issuer.|
| `3024` | Forced STIP.|
| `3025` | Not available cash service.|
| `3026` | Cash request exceeds issuer or approved limit.|
| `3027` | Not applicable for resubmission.|
| `3028` | Entered incorrect CVV2 code during payment. |
| `3029` | Transaction sum exceeds the pre-authorized approval sum.|
| `3030` | Stop payment order. |
| `3031` | Transaction not authorized for cardholder. |
|`UNF`| User not registered as Partner. User not found.|
|`UBL`| User blocked.|
|`UUN`| User not identified.|

:arrow_left: [XPAY API Guide](https://hackmd.io/QA2NYRliRLGviJl5P4-ZCw)
:arrow_left: [XPASS API Guide](https://hackmd.io/pa6TRNZTTa67jO_qYDuRBQ)
<details>
<summary>XPAY Support</summary>
</br>
Phone: +38 093 891 92 00
Email: info@xpay.com.ua
Telegram: @xpaysupportbot
</details>