Download OpenAPI specification:Download
API в качестве основного протокола использует HTTP, подходит для разработки на любом языке программирования, который умеет работать с HTTP-библиотеками (например, cURL). API построено на REST-принципах, работает с реальными объектами и обладает предсказуемым поведением.
Коды ошибок:
0 - Неверный Логин/API ключ
1 - Неверная валюта
2 - Неверная сумма
3 - Неверный айди терминала
4 - Неверный метод оплаты
5 - Неверный адрес успешной оплаты
6 - Неверный адрес ошибочной оплаты
7 - Заказ не найден (оплата не найдена)
8 - Выплата не найдена
9 - Платеж уже оплачен
10 - Платеж уже финализирован с ошибкой
11 - Платеж нельзя отменить, по нему начата оплата | Неверный alias терминала
13 - Неверный alias точки продаж
14 - Неверный ID точки продаж
100 - Ошибка соединения с базой данных
Данные для тестирования:
https://lk.invoice.su/
Логин: demo
Пароль: доступ по запросу
API ключ: 1526fec01b5d11f4df4f2160627ce351
Merchant ID: c24360cfac0a0c40c518405f6bc68cb0
| notification_type | string тип уведомления |
| id | string ID платежа |
object (Order) | |
| status | string (status) Enum: "init" "process" "successful" "error" "expired" "closed" Статус платежа |
| status_description | string (Описание статуса) Описание статуса/сообщение об ошибке |
object (PaymentMethod) | |
| create_date | string <date-time> Дата создания операции |
| update_date | string <date-time> Дата обновления операции |
| expire_date | string <date-time> Дата истечения операции |
| custom_parameters | object or null (CustomParameters) Можно передать абсолютно любые параметры, например userid. |
| signature | string Подпись запроса md5(id + status + api_key) |
{- "notification_type": "pay",
- "id": "string",
- "order": {
- "currency": "RUB",
- "amount": 1500,
- "description": "Тестовый платеж",
- "id": "6e4e6e9d-a9b3-453a-a11d-52b211ecc028"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "account": "string",
- "type": "card",
- "terminal_id": "6407da4a930953f116aa6481d03cd25b"
}, - "create_date": "2021-12-07 20:11:16.466713+03",
- "update_date": "2021-12-07 20:11:16.466713+03",
- "expire_date": "2021-12-08 20:11:16.466713+03",
- "custom_parameters": { },
- "signature": "string"
}Терминал - QR код, cоздать и посмотреть можно в Личном кабинете
Терминалы бывают 2х типов:
statical – Статический терминал. QR-код печатается 1 раз и клеится на кассу
dynamical – Динамический терминал. QR-коды генерируется для каждой оплаты
и может быть напечатан на пречеке либо передан иным способом.
| name required | string <= 50 characters Название терминала, отображаемое на платежной странице |
| alias | string <= 64 characters Уникальный идентификатор терминала в системе Продавца |
| description | string <= 256 characters Описание терминала, отображаемое на платежной странице |
| type | string Default: "dynamical" Enum: "statical" "dynamical" |
| defaultPrice | number <double> >= 0 Сумма по-умолчанию |
| pointId | string ID точки продаж |
{- "name": "Магазин на диване",
- "alias": "417f12d4-23d3-4b4c-8420-5463d76a1fe2",
- "description": "Ювелирные украшения и пылесосы",
- "type": "statical",
- "defaultPrice": 10
}{- "id": "6407da4a930953f116aa6481d03cd25b",
- "name": "Магазин на диване",
- "description": "Ювелирные украшения и пылесосы, филиал №7",
- "type": "statical",
- "defaultPrice": 15
}Точки продаж бывают 2х типов:
online – интернет-магазин
offline – наземная точка продаж
| name required | string [ 1 .. 128 ] characters Название точки продаж |
| address | string <= 512 characters Default: "{Адрес юр. лица}" Адрес точки продаж (для онлайн-магазинов юр. адрес) |
| alias | string [ 1 .. 128 ] characters Уникальный идентификатор точки продаж в системе Продавца |
string <email> [ 1 .. 128 ] characters Email точки продаж | |
| phone | string non-empty Контактный телефон точки продаж |
| type | string non-empty Default: "offline" Enum: "offline" "online" Наземная точка продаж или онлайн-магазин |
| website | string <uri> [ 1 .. 200 ] characters Адрес онлайн-магазина (для online точек продаж) |
{- "name": "Кофейня у Артема",
- "address": "г. Москва, ул. Большая Татарская, дом 11",
- "alias": "4aeaf805-b0a4-46e8-928f-8432d1568b3a1",
- "mail": "demo@example.com",
- "phone": "+79991234567",
- "type": "online",
}{- "id": "e9ba149843bc08b82850be35e92704e4",
- "name": "Кофейня у Артема",
- "address": "г. Москва, ул. Большая Татарская, дом 11",
- "phone": "+79991234567",
- "mail": "demo@example.com",
- "alias": "6cb1c62e-f92a-4e2e-b802-ea884651679b",
- "type": "online"
}Терминал - QR код, cоздать и посмотреть можно в Личном кабинете
Терминалы бывают 2х типов:
statical – Статический терминал. QR-код печатается 1 раз и клеится на кассу
dynamical – Динамический терминал. QR-коды генерируется для каждой оплаты
и может быть напечатан на пречеке либо передан иным способом.
| id | string ID терминала (обязательно, при отсутствии alias) |
| alias | string Уникальный идентификатор терминала в системе Продавца (обязательно, при отсутствии id) |
{- "id": "6407da4a930953f116aa6481d03cd25b"
}{- "id": "6407da4a930953f116aa6481d03cd25b",
- "name": "Магазин на диване",
- "description": "Ювелирные украшения и пылесосы, филиал №7",
- "type": "statical",
- "defaultPrice": 15
}Точки продаж бывают 2х типов:
online – интернет-магазин
offline – наземная точка продаж
| id | string ID точки продаж (обязательно, при отсутствии alias) |
| alias | string Уникальный идентификатор точки продаж в системе Продавца (обязательно, при отсутствии id) |
{- "id": "6407da4a930953f116aa6481d03cd25b",
- "alias": "string"
}{- "id": "e9ba149843bc08b82850be35e92704e4",
- "name": "Кофейня у Артема",
- "address": "г. Москва, ул. Большая Татарская, дом 11",
- "phone": "+79991234567",
- "mail": "demo@example.com",
- "alias": "6cb1c62e-f92a-4e2e-b802-ea884651679b",
- "type": "online"
}required | object (Order) |
required | object (Settings) |
| custom_parameters | object or null (CustomParameters) Можно передать абсолютно любые параметры, например userid. |
Array of objects (Receipt) | |
| phone | string <= 10 characters Номер телефона для доставки чека |
string E-mail для доставки чека | |
| trtype | string 1 - платеж |
{- "order": {
- "currency": "RUB",
- "amount": 1500,
- "description": "Тестовый платеж",
- "id": "6e4e6e9d-a9b3-453a-a11d-52b211ecc028"
}, - "settings": {
- "terminal_id": "6407da4a930953f116aa6481d03cd25b",
- "recur_exp": "20221231",
- "recur_freq": "1"
}, - "custom_parameters": { },
- "receipt": [
- {
- "name": "Суп",
- "price": 100,
- "discount": "10%",
- "resultPrice": 90,
- "quantity": 1
}
], - "phone": "9991234567",
- "mail": "string",
- "trtype": "1"
}{- "id": "16389017282485",
- "order": {
- "amount": 1,
- "currency": "RUB",
- "description": "Тестовый платеж",
- "id": "19cbf597-0bef-4e13-8ae2-7b537867831a"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "type": null,
- "terminal_id": "67ef342c56759ba83256614bb7d4fca3"
}, - "custom_parameters": null,
- "create_date": "2021-12-07 21:28:48.194093+03",
- "update_date": "2021-12-07 21:28:48.194093+03",
- "expire_date": "2021-12-08 21:28:48.194093+03",
}| id required | string ID платежа |
{- "id": "string"
}{- "id": "16389017282485",
- "order": {
- "amount": 1,
- "currency": "RUB",
- "description": "Тестовый платеж",
- "id": "19cbf597-0bef-4e13-8ae2-7b537867831a"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "type": null,
- "terminal_id": "67ef342c56759ba83256614bb7d4fca3"
}, - "custom_parameters": null,
- "create_date": "2021-12-07 21:28:48.194093+03",
- "update_date": "2021-12-07 21:28:48.194093+03",
- "expire_date": "2021-12-08 21:28:48.194093+03",
}| id required | string ID заказа в системе Продавца |
{- "id": "string"
}{- "id": "16389017282485",
- "order": {
- "amount": 1,
- "currency": "RUB",
- "description": "Тестовый платеж",
- "id": "19cbf597-0bef-4e13-8ae2-7b537867831a"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "type": null,
- "terminal_id": "67ef342c56759ba83256614bb7d4fca3"
}, - "custom_parameters": null,
- "create_date": "2021-12-07 21:28:48.194093+03",
- "update_date": "2021-12-07 21:28:48.194093+03",
- "expire_date": "2021-12-08 21:28:48.194093+03",
}В случае успешной Отмены платежа вернется ответ со статусом closed
| id required | string ID платежа |
{- "id": "string"
}{- "id": "16389017282485",
- "order": {
- "amount": 1,
- "currency": "RUB",
- "description": "Тестовый платеж",
- "id": "19cbf597-0bef-4e13-8ae2-7b537867831a"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "type": null,
- "terminal_id": "67ef342c56759ba83256614bb7d4fca3"
}, - "custom_parameters": null,
- "create_date": "2021-12-07 21:28:48.194093+03",
- "update_date": "2021-12-07 21:28:48.194093+03",
- "expire_date": "2021-12-08 21:28:48.194093+03",
}| id required | string ID платежа или ID заказа |
object (Refund) | |
Array of objects (Receipt) |
{- "id": "16354413735121",
- "refund": {
- "amount": 150,
- "reason": "В супе нашли муху"
}, - "receipt": [
- {
- "name": "Суп",
- "price": 100,
- "discount": "10%",
- "resultPrice": 90,
- "quantity": 1
}
]
}{- "id": "2163888358294",
- "order": {
- "currency": "RUB",
- "amount": 1500,
- "description": "Тестовый платеж",
- "id": "6e4e6e9d-a9b3-453a-a11d-52b211ecc028"
}, - "refund": {
- "amount": 150,
- "reason": "В супе нашли муху"
}, - "payment_id": "1638883504812",
- "payment_method": {
- "account": "string",
- "type": "card",
- "terminal_id": "6407da4a930953f116aa6481d03cd25b"
}, - "date_insert": "2021-12-07 16:26:22.420448+03",
- "date_update": "2021-12-07 16:26:22.420448+03",
- "status": "successful"
}| id | string ID возврата |
{- "id": "2163888358294"
}{- "id": "2163888358294",
- "order": {
- "currency": "RUB",
- "amount": 1500,
- "description": "Тестовый платеж",
- "id": "6e4e6e9d-a9b3-453a-a11d-52b211ecc028"
}, - "refund": {
- "amount": 150,
- "reason": "В супе нашли муху"
}, - "payment_id": "1638883504812",
- "payment_method": {
- "account": "string",
- "type": "card",
- "terminal_id": "6407da4a930953f116aa6481d03cd25b"
}, - "date_insert": "2021-12-07 16:26:22.420448+03",
- "date_update": "2021-12-07 16:26:22.420448+03",
- "status": "successful"
}Рекуррентные платежи доступны только для определенных шлюзов
object (Order) | |
object | |
| custom_parameters | object or null (CustomParameters) Можно передать абсолютно любые параметры, например userid. |
Array of objects (Receipt) | |
| trtype | integer 4 - рекуррентный платеж |
{- "order": {
- "currency": "RUB",
- "amount": 1500,
- "description": "Тестовый платеж",
- "id": "6e4e6e9d-a9b3-453a-a11d-52b211ecc028"
}, - "settings": {
- "recur_ref": "16240057297064"
}, - "custom_parameters": { },
- "receipt": [
- {
- "name": "Суп",
- "price": 100,
- "discount": "10%",
- "resultPrice": 90,
- "quantity": 1
}
], - "trtype": 4
}{- "id": "16389017282485",
- "order": {
- "amount": 1,
- "currency": "RUB",
- "description": "Тестовый платеж",
- "id": "19cbf597-0bef-4e13-8ae2-7b537867831a"
}, - "status": "init",
- "status_description": "init",
- "payment_method": {
- "type": null,
- "terminal_id": "67ef342c56759ba83256614bb7d4fca3"
}, - "custom_parameters": null,
- "create_date": "2021-12-07 21:28:48.194093+03",
- "update_date": "2021-12-07 21:28:48.194093+03",
- "expire_date": "2021-12-08 21:28:48.194093+03",
}