API
Создать платеж
Этот метод API позволяет инициализировать новый платеж для осуществления оплаты через платежный сервис Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| external_number | string | Уникальный номер транзакции или заказа. |
| amount | number | Сумма платежа или транзакции. |
| currency_code | string | Код валюты платежа (например, USD для доллара, EUR для евро, USDT для Tether). |
| merchant_id | string | Идентификатор вашего добавленного мерчанта (Merchant ID). |
| description | string | Описание платежа или транзакции. |
| deadline_seconds | number | Устанавливает временной интервал для оплаты платежа в секундах (например, 600 соответствует сроку оплаты в 10 минут). Максимальное значение — 86400 секунд (1 день). |
| return_url | string | URL-адрес, на который клиента следует вернуть после успешного завершения платежа. |
| cancel_url | string | URL-адрес, на который клиента следует вернуть в случае отмены платежа. |
| handling_fee | number | Дополнительная комиссия платежа. |
| payer_email | string | Электронная почта клиента, связанная с платежной транзакцией. |
| payment_method | string | Метод оплаты, используемый для этой транзакции. Доступные методы: «PAY2_HOUSE», «USDT_TRC20», «CARDS». По умолчанию «ALL», что означает, что клиент может выбрать метод оплаты самостоятельно. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| invoice_number | string | Уникальный номер инвойса, который идентифицирует платежную транзакцию в системе. |
| approval_url | string | URL-ссылка, на которую необходимо перенаправить клиента для завершения платежа. |
<?php
function create_payment($request_body = [])
{
$curl = curl_init('https://pay2.house/api/create_payment');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'external_number' => '10001',
'amount' => 1000,
'currency_code' => 'USD',
'payment_method' => 'ALL',
'merchant_id' => 'SN6829106944',
'description' => 'Payment for Merchant.Name',
'deadline_seconds' => 600,
'handling_fee' => 10,
'payer_email' => '[email protected]',
'return_url' => 'https://mysite.com/result',
'cancel_url' => 'https://mysite.com/cancel',
]);
$api_response = create_payment(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['approval_url'])) {
header('Location: ' . $api_response['approval_url'], TRUE, 302);
}
?>
Информация о платеже
Этот метод API позволяет запрашивать информацию о вашем платеже в платежной системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| merchant_id | string | Идентификатор вашего добавленного мерчанта (Merchant ID). |
| invoice_number | string | Номер вашего инвойса. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| invoice_number | string | Уникальный номер инвойса, который идентифицирует платежную транзакцию в системе. |
| currency_code | string | Код валюты платежа (например, USD для доллара, EUR для евро, USDT для Tether). |
| currency_symbol | string | Символ валюты (например, "$" для доллара США). |
| external_number | string | Внешний номер, связанный с платежной транзакцией. |
| description | string | Описание платежной транзакции или инвойса. |
| amount | number | Сумма платежа в указанной валюте. |
| handling_fee | number | Сумма комиссии за обработку платежа. |
| payment_status | string |
Статус платежа. Ожидает оплаты: pending В обработке: in_processing Оплачен: paid Отменен: cancelled Просрочен: overdue Частично оплачен: partially Ошибка оплаты: error Возврат средств: refunded |
<?php
function show_payment_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/show_payment_details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'merchant_id' => 'SN6829106938',
'invoice_number' => 'IN9036982986'
]);
$api_response = show_payment_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Amount: ' . $api_response['amount'] . '<br />';
echo 'Fee: ' . $api_response['handling_fee'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Создать перевод
Этот метод API позволяет инициализировать новый перевод на внутренний счет в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| sender_account | string | Счет отправителя. |
| recipient_account | string | Счет получателя. |
| amount | number | Сумма перевода. |
| comment | string | Комментарий к переводу. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| transaction_number | string | Уникальный номер перевода. |
<?php
function transfer_create($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers/create');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'sender_account' => 'P2U49984694',
'recipient_account' => 'P2U93380055',
'amount' => 50,
'comment' => 'Transfer of funds to the client\'s account.'
]);
$api_response = transfer_create(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Payment successfully processed.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Информация о переводе
Этот метод API позволяет получить подробную информацию о переводе, включая статус, сумму, дату и время выполнения, а также другие связанные данные.
| Параметр | Тип | Описание |
|---|---|---|
| transaction_number | string | Уникальный номер транзакции, который используется для идентификации конкретного перевода. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| transaction_number | string | Уникальный номер транзакции. |
| time_created | number | Время создания транзакции в формате Unix timestamp. |
| date_created | string | Дата создания транзакции в формате YYYY-MM-DD. |
| sender_account | string | Номер счета отправителя средств. |
| recipient_account | string | Номер счета получателя средств. |
| amount | number | Сумма, переведенная в транзакции. |
| fee_amount | number | Сумма комиссии, взимаемой за транзакцию. |
| currency_code | string | Код валюты транзакции (например, USD для доллара, EUR для евро, USDT для Tether). |
| payment_method | string |
Метод оплаты, используемый для данной транзакции. Pay2.House: house_money Push.House: push_house Cloaking.House: cloaking_house Capitalist.Net: capitalist Virtual Card Pay: virtual_card Visa Card Pay: visa Tether USDT: tether SWIFT: swift |
| confirm_method | string |
Метод подтверждения транзакции. Подтверждение по SMS: verification_phone Google Authenticator: verification_code Подтверждение через API: verification_api Без подтверждения: none |
| payment_type | string |
Тип платежа. Внутренний перевод: transfer Пополнение счета: refill Обмен валюты: exchange Выставление счета: invoice Merchant API: merchant |
| transaction_type | string | Тип транзакции (incoming - зачисление, withdrawal - списание). |
| transaction_status | string |
Статус транзакции. В обработке: in_processing Подтверждено: confirmed Ошибка: error |
| comment | string | Дополнительная информация о транзакции. |
| error_message | string | Сообщение об ошибке, если транзакция не удалась. |
<?php
function transfer_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'transaction_number' => 'TN4395601712'
]);
$api_response = transfer_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
echo 'Status: ' . $api_response['transaction_status'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Sender Account: ' . $api_response['sender_account'] . '<br />';
echo 'Recipient Account: ' . $api_response['recipient_account'] . '<br />';
echo 'Amount: ' . $api_response['amount'] . '<br />';
echo 'Fee Amount: ' . $api_response['fee_amount'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Payment Method: ' . $api_response['payment_method'] . '<br />';
echo 'Confirm Method: ' . $api_response['confirm_method'] . '<br />';
echo 'Payment Type: ' . $api_response['payment_type'] . '<br />';
echo 'Transaction Type: ' . $api_response['transaction_type'] . '<br />';
echo 'Comment: ' . $api_response['comment'] . '<br />';
echo 'Error Message: ' . $api_response['error_message'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
История переводов
Этот метод API позволяет запрашивать список транзакций, предоставляя информацию о всех выполненных переводах.
| Параметр | Тип | Описание |
|---|---|---|
| per_page | number | Количество записей, которое будет отображаться на одной странице. |
| page | number | Номер страницы для пагинации. |
| transaction_type | string | Фильтр по типу транзакции (incoming - зачисление, withdrawal - списание). |
| status | string |
Фильтр по статусу транзакции. В обработке: in_processing Подтверждено: confirmed Ошибка: error |
| date_range | string | Фильтр для выборки по диапазону дат (в формате DD.MM.YYYY - DD.MM.YYYY), также используется для фильтрации. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| count | number | Общее количество транзакций, соответствующих запросу. |
| transactions | array |
Массив объектов транзакций, содержащий информацию о каждой транзакции (например, идентификатор, статус, баланс и т. д.). Смотрите описание всех полей в разделе информация о переводе. |
<?php
function get_transfers($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'per_page' => 10,
'page' => 1,
'status' => 'confirmed'
]);
$api_response = get_transfers(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Transactions: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['transactions'])) {
foreach($api_response['transactions'] AS $item) {
echo '----------------------------------------';
echo 'Transaction Number: ' . $item['transaction_number'] . '<br />';
echo 'Status: ' . $item['transaction_status'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Sender Account: ' . $item['sender_account'] . '<br />';
echo 'Recipient Account: ' . $item['recipient_account'] . '<br />';
echo 'Amount: ' . $item['amount'] . '<br />';
echo 'Fee Amount: ' . $item['fee_amount'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Payment Method: ' . $item['payment_method'] . '<br />';
echo 'Confirm Method: ' . $item['confirm_method'] . '<br />';
echo 'Payment Type: ' . $item['payment_type'] . '<br />';
echo 'Transaction Type: ' . $item['transaction_type'] . '<br />';
echo 'Comment: ' . $item['comment'] . '<br />';
echo 'Error Message: ' . $item['error_message'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Transactions Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Получить список счетов
Этот метод API позволяет запросить список всех счетов, связанных с вашим аккаунтом в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| delete_flag | number | Флаг удаления счета. Значение 0 указывает на активный счет, а значение 1 — на удаленный или заблокированный счет. |
| currency_code | string | Код валюты для фильтрации счетов (например, "USD" для доллара, "EUR" для евро, "USDT" для Tether). |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| count | number | Общее количество счетов, соответствующих запросу. |
| wallets | array |
Массив объектов счетов, содержащий информацию о каждом счете (например, идентификатор, статус, баланс и т. д.). Смотрите описание всех полей в разделе информация о счете. |
<?php
function get_wallets($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'delete_flag' => 0,
'currency_code' => 'USD'
]);
$api_response = get_wallets(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Wallets: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['wallets'])) {
foreach($api_response['wallets'] AS $item) {
echo '----------------------------------------';
echo 'Account Number: ' . $item['account_number'] . '<br />';
echo 'Name: ' . $item['name'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Balance: ' . $item['balance'] . '<br />';
echo 'Bonus: ' . $item['bonus'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $item['currency_symbol'] . '<br />';
echo 'Address TRC20: ' . $item['trc20_address'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Wallets Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Создать счет
Этот метод API позволяет создавать уникальные счета, которые могут использоваться для проведения платежей и транзакций внутри системы Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| name | string | Название счета. |
| currency_code | string | Код валюты платежа (например, USD для доллара, EUR для евро, USDT для Tether). |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| account_number | string | Номер созданного счета. |
<?php
function wallet_create($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/create');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'name' => 'Your Wallet Name',
'currency_code' => 'USD'
]);
$api_response = wallet_create(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Wallet created successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Информация о счете
Этот метод API позволяет запросить информацию о вашем счете в платежной системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| account_number | string | Номер вашего счета. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| time_created | number | Время создания счета в формате Unix timestamp. |
| date_created | string | Дата создания счета в формате YYYY-MM-DD. |
| delete_flag | number | Флаг удаления (0 — не удален, 1 — удален). |
| account_number | string | Номер счета. |
| currency_code | string | Код валюты счета (например, USD для доллара, EUR для евро, USDT для Tether). |
| currency_symbol | string | Символ валюты (например, "$" для доллара США). |
| name | string | Название счета. |
| balance | number | Текущий баланс на счете. |
| bonus | number | Размер бонусных средств, доступных на счете, если применимо. |
| trc20_address | string | TRC-20 адрес для токенов, если применимо. |
<?php
function wallet_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U49984694'
]);
$api_response = wallet_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Account Number: ' . $api_response['account_number'] . '<br />';
echo 'Name: ' . $api_response['name'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Balance: ' . $api_response['balance'] . '<br />';
echo 'Bonus: ' . $api_response['bonus'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $api_response['currency_symbol'] . '<br />';
echo 'Address TRC20: ' . $api_response['trc20_address'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Получить выписку по счету
Этот метод API позволяет получить подробную выписку по выбранному счету, включая информацию о всех транзакциях и изменениях баланса.
| Параметр | Тип | Описание |
|---|---|---|
| account_number | string | Номер вашего счета. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| download_url | string | URL для скачивания файла с выпиской по счету в формате CSV. |
<?php
function wallet_statement($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/statement');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U49984694'
]);
$api_response = wallet_statement(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
header('Location: ' . $api_response['download_url'], TRUE, 302);
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Получить список BIN
Этот метод API позволяет получить список доступных BIN для выпуска виртуальных карт в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| currency_code | string | Код валюты BIN (например, USD, EUR). |
| country_code | string | Код страны BIN в формате ISO 3166-1 alpha-2 (например, US, HK). |
| card_type | string |
Тип карты. Виртуальная: virtual Физическая: physical |
| card_network | string |
Платёжная система. Visa: visa MasterCard: mastercard |
| card_product_type | string |
Тип продукта карты. Персональная: personal Стандартная: standard |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| count | number | Общее количество BIN, соответствующих запросу. |
| bins | array | Массив объектов BIN, содержащий информацию о каждом BIN. |
| bin | string | Банк-идентификационный номер. |
| currency_code | string | Код валюты BIN (например, USD, EUR). |
| country_code | string | Код страны BIN в формате ISO 3166-1 alpha-2 (например, US, HK). |
| card_type | string | Платёжная система (например, visa, mastercard). |
| card_product_type | string | Тип продукта карты (например, standard, personal). |
| card_tier | string | Уровень карты (например, premium, shared). |
| verification_required | number | Требуется ли верификация (1 — да, 0 — нет). |
<?php
function cards_bins($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/bins');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'currency_code' => 'USD',
'country_code' => 'HK',
'card_type' => 'virtual',
'card_network' => 'mastercard',
'card_product_type' => 'standard',
]);
$api_response = cards_bins(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Bins: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['bins'])) {
foreach($api_response['bins'] AS $item) {
echo 'BIN: ' . $item['bin'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Country Code: ' . $item['country_code'] . '<br />';
echo 'Card Type: ' . $item['card_type'] . '<br />';
echo 'Card Network: ' . $item['card_network'] . '<br />';
echo 'Card Product Type: ' . $item['card_product_type'] . '<br />';
echo 'Card Tier: ' . $item['card_tier'] . '<br />';
echo '3DS Support: ' . $item['is_3ds_supported'] . '<br />';
echo 'Verification Required: ' . $item['verification_required'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Bins Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Получить список карт
Этот метод API позволяет запросить список виртуальных карт, выпущенных на ваш аккаунт в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| per_page | number | Количество записей, которое будет отображаться на одной странице. |
| page | number | Номер страницы для пагинации. |
| status | string |
Фильтр по статусу карт. Активная: active Заблокированная: blocked Закрыта: closed Ожидает выпуска: awaiting |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| count | number | Общее количество карт, соответствующих запросу. |
| cards | array |
Массив объектов карт, содержащий информацию о каждой карте (например, идентификатор, статус, баланс и т. д.). Смотрите описание всех полей в разделе информация о карте. |
<?php
function get_cards($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'per_page' => 10,
'page' => 1,
'status' => 'active'
]);
$api_response = get_cards(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Cards: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['cards'])) {
foreach($api_response['cards'] AS $item) {
echo '----------------------------------------';
echo 'Card Name: ' . $item['card_name'] . '<br />';
echo 'Card Number: ' . $item['card_number'] . '<br />';
echo 'Card ID: ' . $item['card_id'] . '<br />';
echo 'CVV: ' . $item['cvv'] . '<br />';
echo 'Expire Date: ' . $item['expiration_date'] . '<br />';
echo '3DS Password: ' . $item['password'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $item['currency_symbol'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Time Renewal: ' . $item['time_renewal'] . '<br />';
echo 'Date Renewal: ' . $item['date_renewal'] . '<br />';
echo 'Email: ' . $item['email'] . '<br />';
echo 'Phone Number: ' . $item['phone_number'] . '<br />';
echo 'Address Line 1: ' . $item['address_line_1'] . '<br />';
echo 'City: ' . $item['city'] . '<br />';
echo 'Country Code: ' . $item['country_code'] . '<br />';
echo 'Post Code: ' . $item['post_code'] . '<br />';
echo 'First Name: ' . $item['first_name'] . '<br />';
echo 'Last Name: ' . $item['last_name'] . '<br />';
echo 'Sur Name: ' . $item['sur_name'] . '<br />';
echo 'Date Birth: ' . $item['date_birth'] . '<br />';
echo 'Card Status: ' . $item['card_status'] . '<br />';
echo 'Balance: ' . $item['balance'] . '<br />';
echo 'Issuance Cost: ' . $item['issuance_cost'] . '<br />';
echo 'Renewal Cost: ' . $item['renewal_cost'] . '<br />';
echo 'Recharge Cost: ' . $item['recharge_cost'] . '<br />';
echo 'Recharge Type: ' . $item['recharge_type'] . '<br />';
echo 'Account Refund Cost: ' . $item['account_refund_cost'] . '<br />';
echo 'Account Refund Type: ' . $item['account_refund_type'] . '<br />';
echo 'Refund Min Amount: ' . $item['refund_min_amount'] . '<br />';
echo 'Min Recharge Amount: ' . $item['min_recharge_amount'] . '<br />';
echo 'Max Recharge Amount: ' . $item['max_recharge_amount'] . '<br />';
echo 'Block Status: ' . $item['block_status'] . '<br />';
echo 'Time Blocked: ' . $item['time_blocked'] . '<br />';
echo 'Date Blocked: ' . $item['date_blocked'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Cards Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Выпустить карту
Этот метод API позволяет выпустить новую виртуальную карту в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| account_number | string | Номер вашего счета, с которого будет снята оплата за выпуск карты. |
| first_name | string | Имя держателя карты. |
| last_name | string | Фамилия держателя карты. |
| sur_name | string | Отчество держателя карты. |
| date_birth | string | Дата рождения держателя карты в формате DD.MM.YYYY. |
| phone_number | string | Номер телефона держателя карты, включая код страны. |
| address | string | Адрес проживания держателя карты. |
| city | string | Город проживания держателя карты. |
| region | string | Регион или область проживания держателя карты. |
| post_code | string | Почтовый индекс для адреса проживания. |
| string | Электронная почта держателя карты. | |
| country_code | string | Код страны по стандарту ISO 3166-1 alpha-2 (например, "US" для Соединенных Штатов). |
| bin_number | string | Банк-идентификационный номер (BIN) карты. Необходимо запросить через тикеты в технической поддержке. |
| renewal_payment_flag | number | Данный флаг указывает, можно ли списывать средства для продления карты с основного счета Pay2.House при недостатке средств на карте (1 - да, 0 - нет). |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| card_number | string | Номер выпущенной карты. |
| card_id | string | Уникальный идентификатор карты в системе, используемый для дальнейших операций. |
<?php
function card_issue($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/issue');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U48633413',
'first_name' => 'John',
'last_name' => 'Doe',
'sur_name' => 'Smith',
'date_birth' => '01.01.1991',
'phone_number' => '+380990000000',
'address' => 'Kyiv, Ukraine',
'city' => 'Kyiv',
'region' => 'Kyiv',
'country_code' => 'UA',
'post_code' => '01001',
'email' => '[email protected]',
'bin_number' => '1122334455667788',
]);
$api_response = card_issue(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Number: ' . $api_response['card_number'] . '<br />';
echo 'Card ID: ' . $api_response['card_id'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Информация о карте
Этот метод API позволяет получить подробную информацию о виртуальной карте, включая номер карты, статус, дату выпуска и другие связанные данные.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор карты в системе, используемый для получения её деталей. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| card_name | string | Название карты, указанное при её выпуске. |
| card_number | string | Номер выпущенной карты. |
| card_id | string | Уникальный идентификатор карты в системе. |
| cvv | string | Код безопасности карты, необходимый для авторизации. |
| expiration_date | string | Дата истечения срока действия карты в формате MM/YY. |
| password | string | 3DS пароль для дополнительной безопасности при онлайн-транзакциях. |
| currency_code | string | Код валюты, используемой для операций с картой. |
| currency_symbol | string | Символ валюты (например: $ или €). |
| time_created | number | Время создания карты в формате Unix timestamp. |
| date_created | string | Дата создания карты в формате YYYY-MM-DD. |
| date_renewal | string | Дата следующего списания за продление карты в формате YYYY-MM-DD. |
| time_renewal | number | Время следующего списания за продление карты в формате Unix timestamp. |
| string | Адрес электронной почты, указанный при выпуске карты. | |
| phone_number | string | Номер телефона, указанный при выпуске карты. |
| address_line_1 | string | Адрес проживания, указанный при выпуске карты. |
| city | string | Город проживания, указанный при выпуске карты. |
| country_code | string | Код страны по стандарту ISO 3166-1 alpha-2 (например, "US" для Соединенных Штатов). |
| first_name | string | Имя владельца карты. |
| last_name | string | Фамилия владельца карты. |
| sur_name | string | Отчество владельца карты. |
| date_birth | string | Дата рождения владельца карты в формате DD.MM.YYYY. |
| post_code | string | Почтовый индекс. |
| card_status | string |
Статус карты. Активная: active Заблокированная: blocked Закрыта: closed Ожидает выпуска: awaiting |
| balance | number | Текущий баланс карты. |
| issuance_cost | number | Стоимость выпуска карты. |
| renewal_cost | number | Стоимость продления карты. |
| recharge_cost | number | Комиисия за пополнение карты. |
| recharge_type | string | Тип комиссии за пополнение карты (может быть "fixed" для фиксированной комиссии или "percent" для процентной комиссии). Значение комиссии берется из параметра recharge_cost. |
| account_refund_cost | number | Комиссия за возврат средств по карте. |
| account_refund_type | string | Тип комиссии за возврат средств по карте (может быть "fixed" для фиксированной комиссии или "percent" для процентной комиссии). Значение комиссии берется из параметра account_refund_cost. |
| refund_min_amount | number | Минимальная сумма возврата средств по карте. |
| min_recharge_amount | number | Минимальная сумма пополнения карты. |
| max_recharge_amount | number | Максимальная сумма пополнения карты. |
| block_status | string |
Статус блокировки карты. Возможные значения можно найти в разделе статусы блокировок карты. |
| date_blocked | string | Дата блокировки карты в формате YYYY-MM-DD. |
| time_blocked | number | Время блокировки карты в формате Unix timestamp. |
<?php
function card_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Name: ' . $api_response['card_name'] . '<br />';
echo 'Card Number: ' . $api_response['card_number'] . '<br />';
echo 'Card ID: ' . $api_response['card_id'] . '<br />';
echo 'CVV: ' . $api_response['cvv'] . '<br />';
echo 'Expire Date: ' . $api_response['expiration_date'] . '<br />';
echo '3DS Password: ' . $api_response['password'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $api_response['currency_symbol'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Time Renewal: ' . $api_response['time_renewal'] . '<br />';
echo 'Date Renewal: ' . $api_response['date_renewal'] . '<br />';
echo 'Email: ' . $api_response['email'] . '<br />';
echo 'Phone Number: ' . $api_response['phone_number'] . '<br />';
echo 'Address Line 1: ' . $api_response['address_line_1'] . '<br />';
echo 'City: ' . $api_response['city'] . '<br />';
echo 'Country Code: ' . $api_response['country_code'] . '<br />';
echo 'Post Code: ' . $api_response['post_code'] . '<br />';
echo 'First Name: ' . $api_response['first_name'] . '<br />';
echo 'Last Name: ' . $api_response['last_name'] . '<br />';
echo 'Sur Name: ' . $api_response['sur_name'] . '<br />';
echo 'Date Birth: ' . $api_response['date_birth'] . '<br />';
echo 'Card Status: ' . $api_response['card_status'] . '<br />';
echo 'Balance: ' . $api_response['balance'] . '<br />';
echo 'Issuance Cost: ' . $api_response['issuance_cost'] . '<br />';
echo 'Renewal Cost: ' . $api_response['renewal_cost'] . '<br />';
echo 'Recharge Cost: ' . $api_response['recharge_cost'] . '<br />';
echo 'Recharge Type: ' . $api_response['recharge_type'] . '<br />';
echo 'Account Refund Cost: ' . $api_response['account_refund_cost'] . '<br />';
echo 'Account Refund Type: ' . $api_response['account_refund_type'] . '<br />';
echo 'Refund Min Amount: ' . $api_response['refund_min_amount'] . '<br />';
echo 'Min Recharge Amount: ' . $api_response['min_recharge_amount'] . '<br />';
echo 'Max Recharge Amount: ' . $api_response['max_recharge_amount'] . '<br />';
echo 'Block Status: ' . $api_response['block_status'] . '<br />';
echo 'Time Blocked: ' . $api_response['time_blocked'] . '<br />';
echo 'Date Blocked: ' . $api_response['date_blocked'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Переименовать карту
Этот метод API позволяет изменить название виртуальной карты в системе Pay2.House.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор карты в системе, используемый для получения её деталей. |
| name | string | Новое название виртуальной карты. Максимальная длина — 100 символов. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| card_name | string | Название виртуальной карты после изменения. |
<?php
function card_rename($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/rename');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'name' => 'New Card Name'
]);
$api_response = card_rename(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Name: ' . $api_response['card_name'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Пополнение карты
Этот метод API позволяет пополнить баланс виртуальной карты с использованием вашего внутреннего счета.
Поступление средств на карту будет произведено в течение 2-3 минут после создания запроса на пополнение.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Идентификатор виртуальной карты, которую вы хотите пополнить. |
| account_number | string | Номер вашего внутреннего счета, с которого будет списана сумма пополнения. |
| amount | number | Сумма, которую вы хотите зачислить на виртуальную карту. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| transaction_number | string | Номер транзакции, связанной с пополнением карты. |
<?php
function card_top_up($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/top_up');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'account_number' => 'P2U48633413',
'amount' => 50
]);
$api_response = card_top_up(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Возврат средств по карте
Этот метод API позволяет инициировать возврат средств с виртуальной карты на ваш внутренний счет.
Возврат средств осуществляется на тот же счет, с которого была выпущена карта.
Вы получите сумму за вычетом комиссии на возврат, согласно тарифам карты.
Например, если вы делаете возврат $10 и комиссия на возврат составляет 3%, то $10 × 3% = $0.30 будет удержано в качестве комиссии, и на ваш счет будет зачислено $9.70.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор карты, с которой производится возврат средств. |
| amount | number | Сумма возврата, которую необходимо перевести на внутренний счет. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| transaction_number | string | Уникальный номер транзакции, связанной с выполненным возвратом средств с карты. |
<?php
function card_refund($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/refund');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'amount' => 10
]);
$api_response = card_refund(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
История операций по карте
Этот метод API предоставляет доступ к полному списку операций, выполненных с вашей виртуальной картой.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор виртуальной карты, для которой вы хотите получить историю операций. |
| per_page | number | Количество записей, которое будет отображаться на одной странице. |
| page | number | Номер страницы для пагинации. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| count | number | Общее количество транзакций в истории операций по данной карте. |
| transactions | array | Список объектов, содержащих детали каждой транзакции, включая дату, сумму и тип операции. |
<?php
function cards_history($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/history');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'per_page' => 10,
'page' => 3
]);
$api_response = cards_history(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Transactions: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['transactions'])) {
foreach($api_response['transactions'] AS $item) {
echo 'Transaction Time: ' . $item['transaction_time'] . '<br />';
echo 'Transaction Number: ' . $item['transaction_number'] . '<br />';
echo 'Status: ' . $item['status'] . '<br />';
echo 'Type: ' . $item['type'] . '<br />';
echo 'Transaction Amount: ' . $item['transaction_amount'] . '<br />';
echo 'Transaction Currency Code: ' . $item['transaction_currency_code'] . '<br />';
echo 'Account Amount: ' . $item['account_amount'] . '<br />';
echo 'Account Currency Code: ' . $item['account_currency_code'] . '<br />';
echo 'Merchant Name: ' . $item['merchant_name'] . '<br />';
echo 'Merchant Url: ' . $item['merchant_url'] . '<br />';
echo 'Merchant Domain: ' . $item['merchant_domain'] . '<br />';
echo 'Merchant Icon Url: ' . $item['merchant_icon_url'] . '<br />';
echo 'Error Message: ' . $item['error_message'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Transactions Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Обновить баланс карты
Этот метод API позволяет инициировать обновление баланса виртуальной карты, обеспечивая получение актуальных данных о текущем состоянии средств на карте.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор виртуальной карты, для которой вы хотите обновить баланс. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| balance | number | Текущий баланс виртуальной карты после обновления, отображающий доступные средства. |
<?php
function card_balance_refresh($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/balance/refresh');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_balance_refresh(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Balance: ' . $api_response['balance'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Коды подтверждения карты
Этот метод API позволяет получить список кодов подтверждения, необходимых для авторизации операций с виртуальной картой.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор виртуальной карты, для которой требуется получить коды подтверждения операций. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
| codes | array | Список кодов подтверждения, необходимых для завершения транзакций с картой. |
<?php
function card_confirmation_codes($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/confirmation_codes');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_confirmation_codes(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
if ( ! empty($api_response['codes'])) {
foreach($api_response['codes'] AS $item) {
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Otp Code: ' . $item['otp_code'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Confirmation Codes Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Заблокировать карту
Этот метод API позволяет заблокировать виртуальную карту, прекращая возможность её дальнейшего использования.
Если на балансе карты есть средства, они будут возвращены на внутренний счет, с которого была выпущена карта, в соответствии с тарифами на возврат.
Однако если сумма возврата за вычетом комиссии оказывается меньше минимальной суммы для возврата, такие средства будут списаны с баланса карты.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор виртуальной карты, которую вы хотите заблокировать. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
<?php
function cards_block($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/block');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = cards_block(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Blocked Successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Закрыть карту
Этот метод API позволяет закрыть виртуальную карту, прекращая возможность её дальнейшего использования.
Важно отметить, что данный метод не может быть использован для закрытия карты, если на ней остаются средства.
| Параметр | Тип | Описание |
|---|---|---|
| card_id | string | Уникальный идентификатор виртуальной карты, которую вы хотите закрыть. |
Параметры ответа:
| Параметр | Тип | Описание |
|---|---|---|
| status | string | Статус выполнения запроса (например, "success" для успешного выполнения запроса). |
| code | string | Код ответа (например, "REQUEST_SUCCESS" для успешного запроса). |
<?php
function card_close($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/close');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_close(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Closed Successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
Статусы блокировок карты
Описание возможных статусов блокировки карты и их значения.
| Статус | Описание |
|---|---|
| terms_violation | Нарушение условий использования |
| insufficient_funds | Недостаток средств |
| unauthorized_topup | Несанкционированные попытки пополнения |
| high_refund_rate | Высокий процент возвратов |
| prebilling | Первобиллинг |
| subscription_delay | Задержка абонентской платы |
| invalid_personal_data | Неверные или неполные персональные данные |
| illegal_activity | Попытки незаконных действий |
| verification_issues | Проблемы с верификацией |
| high_risk | Высокая степень риска |
| terms_change | Изменение условий карты |
| inactivity | Неактивность |
| internal_errors | Внутренние ошибки |
| regulatory_requirements | Регуляторные требования |
| user_blocked | Клиент заблокировал карту |
| not_blocked | Не заблокирован |
Webhook Events
Как только статус платежа изменяется на "Оплачен", Pay2.House автоматически отправляет уведомления в формате вебхука на ваш заранее указанный Webhook URL, который вы настраиваете для вашего мерчанта.
Мы будем отправлять уведомление 100 раз, пока не получим HTTP-статус 200 и текст ответа "OK".
Кроме того, наша система автоматически включает в заголовок запроса параметр "Pay2-House-Signature" с уникальным токеном. Вы можете использовать этот токен для проверки подлинности запроса.
<?php
// Function for decoding webhook data
function decrypt_webhook($data = NULL, $secret_key = NULL)
{
$decoded_data = base64_decode($data);
if ($decoded_data === FALSE) {
return FALSE;
}
list($iv, $signature, $encrypted_data) = explode('|', $decoded_data);
$calculated_signature = hash_hmac('sha256', $iv . '|' . $encrypted_data, $secret_key);
if (hash_equals($calculated_signature, $signature)) {
$decoded_encrypted_data = openssl_decrypt(
base64_decode($encrypted_data),
'AES-256-CBC',
hex2bin(hash('sha256', $secret_key)),
0,
hex2bin(bin2hex(hex2bin($iv)))
);
if ($decoded_encrypted_data !== FALSE) {
return $decoded_encrypted_data;
}
}
return FALSE;
}
// Retrieving the webhook request body and decoding the JSON
$payload_body = file_get_contents('php://input');
$payload_decode = json_decode($payload_body, TRUE);
// Checking for the presence of a signature in the request header
if ( ! empty($_SERVER['HTTP_PAY2_HOUSE_SIGNATURE'])) {
// Decoding webhook data and outputting the decoded data
$decrypt_webhook = decrypt_webhook($_SERVER['HTTP_PAY2_HOUSE_SIGNATURE'], 'YOUR_API_KEY');
if ($decrypt_webhook !== FALSE) {
$webhook_decode = json_decode($decrypt_webhook, TRUE);
}
}
// Example print of $payload_decode and $webhook_decode
// Array
// (
// [invoice_number] => IN4063112032
// [external_number] => test
// [amount] => 10
// [handling_fee] => 0
// [currency_code] => EUR
// [description] => Test Payment for Pay2.House
// [status] => paid
// )
// Setting HTTP status 200 and terminating the script with the response text "OK"
http_response_code(200);
exit('OK');
?>
Возможные ошибки
Вот некоторые из возможных ошибок, которые могут возникнуть при использовании API.
| Код ошибки | Описание ошибки |
|---|---|
| INVALID_TOKEN | Неверный или отсутствующий токен подписи. |
| INVALID_API_KEY | Неверный или отсутствующий ключ API. |
| API_KEY_NOT_FOUND | Указанный ключ API не найден. |
| INACTIVE_API_KEY | Предоставленный ключ API неактивен. |
| SIGNATURE_DECODING_FAILED | Ошибка при дкодировании подписи. |
| INVALID_SIGNATURE_DATA | Недопустимые данные подписи. |
| EXPIRED_SIGNATURE | Срок действия подписи истек. |
| MISMATCHED_SIGNATURE_ISSUER | Неверный или отсутствующий идентификатор Key ID. |
| INVALID_MERCHANT_ID | Неверный или отсутствующий идентификатор Merchant ID. |
| MERCHANT_ID_NOT_FOUND | Идентификатор Merchant ID не найден. |
| ACCESS_DENIED_MERCHANT | Доступ к указанному Merchant ID запрещен. |
| INVALID_EXTERNAL_NUMBER | Неверный или отсутствующий внешний номер платежа. |
| INVALID_AMOUNT | Недопустимая сумма. |
| INVALID_CURRENCY_CODE | Недопустимый код валюты. |
| INVALID_DESCRIPTION | Неверное или отсутствующее описание платежа. |
| SIGNATURE_VERIFICATION_FAILED | Проверка подписи не удалась из-за ошибки. |
| INVALID_RETURN_URL | Недопустимый или отсутствующий URL-адрес для возврата после успешного платежа. |
| INVALID_CANCEL_URL | Недопустимый или отсутствующий URL-адрес для отмены платежа. |
| INVALID_PAYER_EMAIL | Недопустимый адрес электронной почты клиента. |
| INVALID_COMMENT | Неверный или отсутствующий комментарий. |
| INSUFFICIENT_SENDER_BALANCE | Недостаточный баланс на счете отправителя. |
| AMOUNT_EXCEEDS_SENDER_BALANCE | Сумма перевода превышает доступный баланс на счете отправителя. |
| SENDER_ACCOUNT_NOT_FOUND | Счет отправителя не найден. |
| INVALID_SENDER_ACCOUNT | Недопустимый счет отправителя. |
| RECIPIENT_ACCOUNT_NOT_FOUND | Счет получателя не найден. |
| INVALID_RECIPIENT_ACCOUNT | Недопустимый счет получателя. |
| DIFFERENT_CURRENCY_CODES | У счетов отправителя и получателя разные валюты. |
| INVALID_TRANSFER | Счет отправителя и получателя не могут быть одинаковыми. |
| PROVIDER_NOT_FOUND | Платежный метод не найден или неактивен. |
| PROVIDER_OPTION_NOT_FOUND | Опции платежного метода не найдены. |
| AMOUNT_BELOW_MINIMUM | Сумма перевода ниже минимального порога. |
| AMOUNT_EXCEEDS_MAXIMUM | Сумма перевода превышает максимальный лимит. |
| INSUFFICIENT_BALANCE_AFTER_FEE | Недостаточный баланс на счете отправителя после учета комиссии. |
| INVALID_NAME_WALLET | Неверное или отсутствующее название счета. |
| INVALID_PAYMENT_METHOD | Неверный метод оплаты. |
| PAY2_HOUSE_NOT_ENABLED | Метод оплаты Pay2.House не доступен для вашего мерчанта. |
| USDT_TRC20_NOT_ENABLED | Метод оплаты Tether USDT не доступен для вашего мерчанта. |
| CARDS_NOT_ENABLED | Метод оплаты CARDS не доступен для вашего мерчанта. |
| TRON_ACCOUNT_CREATION_ERROR | Ошибка создания аккаунта TRON. |
| INVALID_INVOICE_NUMBER | Неверный формат номера счета. |
| INVOICE_NOT_FOUND | Счет не найден. |
| MAX_WALLETS_REACHED | Достигнуто максимальное разрешенное количество счетов для вашего аккаунта. |
| MERCHANT_NOT_APPROVED | Мерчант не одобрен для обработки платежей. |
| INVALID_DEADLINE_SECONDS | Неверное значение временного интервала до завершения срока оплаты платежа. |
| USER_DELETED | Пользователь был удален. |
| USER_BANNED | Пользователь заблокирован. |
| USER_TEMPORARILY_BLOCKED | Пользователь временно заблокирован. |
| USER_NOT_FOUND | Пользователь не найден. |
| INVALID_PER_PAGE | Недопустимое значение для параметра "per_page". Значение должно быть от 10 до 100. |
| INVALID_PAGE | Недопустимое значение для параметра "page". Значение должно быть положительным целым числом. |
| INVALID_STATUS | Недопустимый статус. |
| INSUFFICIENT_BALANCE | Недостаточно средств на счете для выполнения данной операции. |
| INVALID_FIRST_NAME | Имя указано неверно. |
| INVALID_LAST_NAME | Фамилия указана неверно. |
| INVALID_SUR_NAME | Отчество указано неверно. |
| INVALID_ADDRESS | Адрес проживания указан неверно. |
| INVALID_CITY | Город проживания указан неверно. |
| INVALID_REGION | Регион проживания указан неверно. |
| INVALID_POST_CODE | Почтовый индекс указан неверно. |
| INVALID_EMAIL | Электронная почта указана неверно. |
| INVALID_DATE_BIRTH | Дата рождения указана неверно. |
| FORBIDDEN_COUNTRY | Страна не разрешена для использования. |
| INVALID_PHONE_NUMBER | Неверно указанный номер телефона. |
| INVALID_COUNTRY_CODE | Неверно указан код страны. |
| VERIFICATION_REQUIRED | Требуется верификация аккаунта для выполнения операции. |
| CARD_ISSUANCE_FAILED | Не удалось выпустить карту. |
| INVALID_BIN_NUMBER | Неверный или отсутствующий BIN номер. |
| ACCOUNT_NOT_FOUND | Указанный счет не найден. |
| INVALID_ACCOUNT_NUMBER | Неверный или отсутствующий номер счета. |
| CARD_NOT_FOUND | Карта не найдена. |
| CARD_BLOCKED | Карта заблокирована. |
| CARD_CLOSED | Карта закрыта. |
| CARD_AWAITING | Карта находится в процессе выпуска. |
| CARD_REFUND_FAILED | Возврат средств с карты не удался. |
| CARD_BLOCKING_FAILED | Блокировка карты не удалась из-за внутренней ошибки системы. |
| CARD_DETAILS_FAILED | Не удалось получить детали карты. |
| CARD_BALANCE_NOT_ZERO | Карта не может быть закрыта, так как на ней остались средства. |
| CARD_CLOSING_FAILED | Закрытие карты не удалось из-за внутренней ошибки системы. |
| REFUND_NOT_ALLOWED | Возврат средств не разрешен. |
| CARD_HAS_NO_BALANCE | У карты отсутствует баланс. |
| CARD_REFUND_MIN_AMOUNT | Минимальная сумма возврата не достигнута. |
| CARD_REFUND_MAX_AMOUNT | Сумма возврата превышает максимальный лимит. |
| CARD_REFUND_COST_GREATER | Сумма возврата за вычетом комиссии меньше минимально допустимой для возврата. |
| CARD_REFUND_AMOUNT_ZERO | Сумма возврата должна быть больше нуля. |
| ACCOUNT_DELETED | Указанный счет был удален. |
| CARD_MINIMUM_AMOUNT | Сумма пополнения должна быть выше минимальной суммы. |
| CARD_MAXIMUM_AMOUNT | Сумма пополнения превышает максимальную разрешённую сумму. |
| CARD_BALANCE_REFRESH_FAILED | Не удалось обновить баланс карты. |
| CARD_HISTORY_REFRESH_FAILED | Не удалось обновить историю операций карты. |
| SENDER_ACCOUNT_DELETED | Перевод средств невозможен, так как счет отправителя был удален или деактивирован. |
| RECIPIENT_ACCOUNT_DELETED | Перевод средств невозможен, так как счет получателя был удален или деактивирован. |
| TRANSACTION_NOT_PROCESSED | Транзакция не была обработана из-за ошибки или внутренних ограничений. |
| TRANSACTION_NOT_FOUND | Транзакция не найдена в системе. |
| INVALID_TRANSACTION_NUMBER | Неверный или отсутствующий номер транзакции. |
| INVALID_DATE_RANGE | Указан некорректный диапазон дат. Проверьте правильность формата и соответствие логике (дата начала не может быть больше даты окончания). |