API Продумáн.Касса позволяет интегрировать ваш интерфейс с кассой, а также взаимодействовать с данными, доступными в кабинете пользователя.
- URL-адрес для вызова методов API -
https://api.produman.org/kassa
- Кодировка запросов -
UTF-8
Для прохождения процедуры аутентификации необходимо передавать HTTP-заголовок X-CLIENT-TOKEN
с токеном, полученным в личном кабинете пользователя, а также заголовки X-APP-ID
и X-APP-SECRET
с данными, полученными при создании приложения. Для создания приложения напишите на почту kassa@produman.org.
Разбивка на страницы осуществляется на основе курсоров, чтобы упростить постепенный сбор информации. Ответы будут включать атрибут nextCursor
с ненулевым значением, если существуют последующие записи. Используя это значение в качестве параметра cursor
в следующем запросе, вы можете начать выборку с нужной вам позиции.
Во избежание перегрузки нашей инфраструктуры, введены ограничения на кол-во и частоту запросов к API по алгоритму "скользящего окна":
- Не более 60 запросов в минуту.
- Запросы
Список операций
,Данные операции
,Список касс
иДанные кассы
считаются как 15 за 1. - Запрос
Тестирование эндпоинта
считается как 30 за 1. - Для оперативного получения данных по операциям и командам необходимо использовать вебхуки.
Квота и ее остаток указывается в заголовках ответа от сервиса в полях RateLimit-Limit
и RateLimit-Remaining
соответственно.
При возникновении ошибки обработки или выполнения запроса в качестве ответа будет возвращен один из отличных от 200
кодов ответа, а также тело ответа в JSON-формате с иденитификатором и описанием ошибки. Например, ошибка валидации параметров запрос вернется ответ 400 Bad Request
и тело ответа:
{
"message": "Request params validation error. Check request params.",
"code": "VALIDATION_ERROR",
"details": [
"status: The value you selected is not a valid choice."
]
}
Возоможные http-коды ответов:
200
ОК201
ОК (создано)204
ОК (нет содержимого)400
Запрос не прошел валидацию401
Не задан токен аутентификации402
Нет действующей подписки на кассу403
Недействительный токен аутентификации404
Ресурс не найден429
Исчерпан лимит запросов500
Внутренняя ошибка сервера
Создание интеграции
Метод позволяет создать интеграцию приложения с пользователем Продуман. Аккаунт пользователя определяется по переданному email
Authorizations:
Request Body schema: application/json
email required | string <email> Email аккаунта Продуман |
Responses
Request samples
- Payload
{- "email": "test@test.ru"
}
Response samples
- 201
- 400
- 403
{- "requestConnectionId": "1eee17aa-9ae2-6f18-b8ee-d99dbe8ae3ed",
- "requestConnectionUrl": "https://kassa.produman.org/integrations/connect/1eee17aa-9ae2-6f18-b8ee-d99dbe8ae3ed"
}
Данные интеграции
Метод позволяет получить подробные данные об интеграции
Authorizations:
path Parameters
id required | string <uuid> ID интеграции |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "clientToken": "on7ejt36x2otjprsayh6tgudm7jvr65dg6joesiitnsu4r5yxp",
- "access": [
- {
- "entity": "CASHBOXES",
- "scope": "ALL",
- "permissions": [
- "VIEW"
]
}
]
}
Деактивация интеграции
Метод позволяет деактивировать текущую интеграцию
Authorizations:
path Parameters
id required | string <uuid> ID интеграции |
Responses
Response samples
- 400
- 403
- 404
{- "message": "Request params validation error",
- "code": "VALIDATION_ERROR",
- "details": [
- "param: This value should not be blank."
]
}
Список касс
Метод позволяет получить список касс пользователя
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
status | string Enum: "ACTIVE" "INACTIVE" Фильтрация по статусу
|
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "АТОЛ 30Ф Тестовская",
- "driver": "PRODUMAN",
- "status": "ACTIVE",
- "serialNumber": "0001222233334455",
- "regNumber": "0001222233334455",
- "fnNumber": "9961001244556677",
- "ofdInn": "7841465198",
- "ffdVersionKkm": "1.0",
- "lineLength": 50,
- "cashBalance": 1000,
- "availableTaxationSystems": [
- "OSN"
], - "availablePaymentMethods": [
- "FULL_PREPAYMENT"
], - "availablePaymentObjects": [
- "PRODUCT"
], - "availableOperations": [
- {
- "operationType": "KKT_INFO",
- "actionTypes": [ ]
}, - {
- "operationType": "X_REPORT",
- "actionTypes": [ ]
}, - {
- "operationType": "SELL",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "SHIFT_OPEN",
- "actionTypes": [ ]
}, - {
- "operationType": "SHIFT_CLOSE",
- "actionTypes": [ ]
}, - {
- "operationType": "ACQUIRING_REPORT",
- "actionTypes": [ ]
}, - {
- "operationType": "CASH_IN",
- "actionTypes": [ ]
}, - {
- "operationType": "CASH_OUT",
- "actionTypes": [ ]
}, - {
- "operationType": "COPY_RECEIPT",
- "actionTypes": [ ]
}, - {
- "operationType": "CORRECTION_SELL",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_BUY",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_SELL_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_BUY_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "PRINT_SLIP",
- "actionTypes": [ ]
}, - {
- "operationType": "SET_DATETIME",
- "actionTypes": [ ]
}, - {
- "operationType": "SELL_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "BUY",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "BUY_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}
], - "availablePaymentSolutions": [
- {
- "id": 1,
- "name": "Наличные",
- "availableInInterface": true,
- "integrated": true,
- "fiscalType": "CASH",
- "original": true
}, - {
- "id": 8,
- "name": "POS-терминал",
- "availableInInterface": true,
- "integrated": true,
- "fiscalType": "CASHLESS",
- "original": false
}
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Данные о кассе
Метод позволяет получить подробные данные о кассе
Authorizations:
path Parameters
id required | string <uuid> ID кассы |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "АТОЛ 30Ф Тестовская",
- "driver": "PRODUMAN",
- "status": "ACTIVE",
- "serialNumber": "0001222233334455",
- "regNumber": "0001222233334455",
- "fnNumber": "9961001244556677",
- "ofdInn": "7841465198",
- "ffdVersionKkm": "1.0",
- "lineLength": 50,
- "cashBalance": 1000,
- "availableTaxationSystems": [
- "OSN"
], - "availablePaymentMethods": [
- "FULL_PREPAYMENT"
], - "availablePaymentObjects": [
- "PRODUCT"
], - "availableOperations": [
- {
- "operationType": "KKT_INFO",
- "actionTypes": [ ]
}, - {
- "operationType": "X_REPORT",
- "actionTypes": [ ]
}, - {
- "operationType": "SELL",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "SHIFT_OPEN",
- "actionTypes": [ ]
}, - {
- "operationType": "SHIFT_CLOSE",
- "actionTypes": [ ]
}, - {
- "operationType": "ACQUIRING_REPORT",
- "actionTypes": [ ]
}, - {
- "operationType": "CASH_IN",
- "actionTypes": [ ]
}, - {
- "operationType": "CASH_OUT",
- "actionTypes": [ ]
}, - {
- "operationType": "COPY_RECEIPT",
- "actionTypes": [ ]
}, - {
- "operationType": "CORRECTION_SELL",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_BUY",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_SELL_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "CORRECTION_BUY_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "PRINT_SLIP",
- "actionTypes": [ ]
}, - {
- "operationType": "SET_DATETIME",
- "actionTypes": [ ]
}, - {
- "operationType": "SELL_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "BUY",
- "actionTypes": [
- "EXECUTE"
]
}, - {
- "operationType": "BUY_RETURN",
- "actionTypes": [
- "EXECUTE"
]
}
], - "availablePaymentSolutions": [
- {
- "id": 1,
- "name": "Наличные",
- "availableInInterface": true,
- "integrated": true,
- "fiscalType": "CASH",
- "original": true
}, - {
- "id": 8,
- "name": "POS-терминал",
- "availableInInterface": true,
- "integrated": true,
- "fiscalType": "CASHLESS",
- "original": false
}
]
}
Список контрагентов
Метод позволяет получить список контрагентов
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
search | string Фильтрация по названию, ИНН или номеру телефона |
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "ООО \"ТЕСТ\"",
- "phone": "+74952345577",
- "inn": "9704211100",
- "kpp": "770401001",
- "accounts": [
- {
- "bank": "ПАО Сбербанк",
- "paymentAccount": "40702812344000045678",
- "corrAccount": "30101810400000000225",
- "bic": "044525225",
- "default": true
}
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Список сотрудников
Метод позволяет получить список сотрудников, включая владельца
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
status | string Enum: "ACTIVE" "INACTIVE" Фильтрация по статусу
|
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Петров Иван Иванович",
- "inn": "253714317119",
- "status": "ACTIVE",
- "role": "OWNER",
- "cashboxIds": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Список категорий выплат и внесений
Метод позволяет получить список категорий выплат и внесений (для операций выплат и внесений)
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
type | string Enum: "OUT" "IN" Фильтрация по типу
|
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Размен",
- "types": [
- "IN"
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Список операций
Метод позволяет получить список операций
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
status | string Enum: "DRAFT" "IN_PROGRESS" "COMPLETE" "FAIL" Фильтрация по статусу
|
operationType | string Enum: "X_REPORT" "SHIFT_OPEN" "SHIFT_CLOSE" "KKT_INFO" "SELL" "CASH_IN" "CASH_OUT" "SELL_RETURN" "COPY_RECEIPT" "PRINT_SLIP" "CORRECTION_SELL" "CORRECTION_BUY" "CORRECTION_SELL_RETURN" "CORRECTION_BUY_RETURN" "SET_DATETIME" "ACQUIRING_REPORT" "BUY" "BUY_RETURN" Фильтрация по типу
|
cashboxId | string <uuid> Фильтрация по кассе |
createdById | string <uuid> Фильтрация по сотруднику |
cashMovementCategoryId | string <uuid> Фильтрация по категории выплат и внесений (для операций выплат и внесений) |
createdAtFrom | string <Y-m-d H:i:s> Фильтрация по дате создания ОТ |
createdAtTo | string <Y-m-d H:i:s> Фильтрация по дате создания ДО |
operationIds | Array of strings <uuid> Фильтрация по ID операций |
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "X_REPORT",
- "status": "DRAFT",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": { }
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Создание операции
Метод создает операцию с заданным типом operationType
Authorizations:
Request Body schema: application/json
operationType required | string Тип операции
|
cashboxId required | string <uuid> ID кассы |
createdById | string <uuid> ID сотрудника |
Responses
Request samples
- Payload
{- "operationType": "X_REPORT",
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9"
}
Response samples
- 201
- 400
- 402
- 403
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "X_REPORT",
- "status": "DRAFT",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": {
- "cashBalance": 1000
}
}
Данные об операции
Метод позволяет получить подробные данные об операции
Authorizations:
path Parameters
id required | string <uuid> ID операции |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "X_REPORT",
- "status": "DRAFT",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": {
- "cashBalance": 1000
}
}
Повторение операции
Метод позволяет запустить повтор выполнения операции, находящейся в статусе Не выполнена
Authorizations:
path Parameters
id required | string <uuid> ID операции |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "X_REPORT",
- "status": "DRAFT",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": {
- "cashBalance": 1000
}
}
Редактирование операции с наличными на кассе
Метод редактирует операцию с наличными на кассе
Authorizations:
path Parameters
id required | string |
Request Body schema: application/json
cashMovementCategoryId | string or null <uuid> Категория выплаты или внесения |
comment | string or null <= 255 characters Комментарий к операции |
Responses
Request samples
- Payload
{- "cashMovementCategoryId": "2e5b12b6-55b8-4299-86d4-e678aeca28a2",
- "comment": null
}
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "X_REPORT",
- "status": "DRAFT",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": {
- "cashBalance": 1000
}
}
Список заказов
Метод позволяет получить список заказов
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
id | string Фильтрация по ID, номеру или внешнему ID |
createdAtFrom | string <Y-m-d H:i:s> Фильтрация по дате создания ОТ |
createdAtTo | string <Y-m-d H:i:s> Фильтрация по дате создания ДО |
totalAmountFrom | number <float> Фильтрация по общей сумме ОТ |
totalAmountTo | number <float> Фильтрация по общей сумме ДО |
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "number": 1,
- "totalAmount": 100,
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "phone": "+79034445577",
- "email": "alex@email.com"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01T00:00:00+03:00",
- "dateTo": "2023-01-01T00:00:00+03:00",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}, - "positions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}, - "group": "Моя CRM"
}
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Создание заказа
Метод создает новый заказ
Authorizations:
Request Body schema: application/json
required | Array of objects (CreateOrderPosition) Номенклатура заказа |
createdById | string <uuid> ID сотрудника |
externalId | string Внешний ID заказа
|
taxationSystem | string Enum: "OSN" "USN_INCOME" "USN_INCOME_OUTCOME" "ESN" "PATENT" Система налогообложения
|
object (CreateOrderClient) Данные клиента | |
object (CreateOrderDelivery) Данные доставки |
Responses
Request samples
- Payload
{- "positions": [
- {
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}
}
], - "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "email": "alex@email.com",
- "phone": "+79034445577"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01 00:01",
- "dateTo": "2023-01-01 00:02",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}
}
Response samples
- 201
- 400
- 403
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "number": 1,
- "totalAmount": 100,
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "phone": "+79034445577",
- "email": "alex@email.com"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01T00:00:00+03:00",
- "dateTo": "2023-01-01T00:00:00+03:00",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}, - "positions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}, - "group": "Моя CRM"
}
]
}
Данные о заказе
Метод позволяет получить подробные данные о заказе
Authorizations:
path Parameters
id required | string <uuid> ID заказа |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "number": 1,
- "totalAmount": 100,
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "phone": "+79034445577",
- "email": "alex@email.com"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01T00:00:00+03:00",
- "dateTo": "2023-01-01T00:00:00+03:00",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}, - "positions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}, - "group": "Моя CRM"
}
]
}
Обновление заказа
Метод обновляет существующий заказ (перезаписываются все данные заказа)
Authorizations:
path Parameters
id required | string <uuid> ID заказа |
Request Body schema: application/json
required | Array of objects (CreateOrderPosition) Номенклатура заказа |
createdById | string <uuid> ID сотрудника |
externalId | string Внешний ID заказа
|
taxationSystem | string Enum: "OSN" "USN_INCOME" "USN_INCOME_OUTCOME" "ESN" "PATENT" Система налогообложения
|
object (CreateOrderClient) Данные клиента | |
object (CreateOrderDelivery) Данные доставки |
Responses
Request samples
- Payload
{- "positions": [
- {
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}
}
], - "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "email": "alex@email.com",
- "phone": "+79034445577"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01 00:01",
- "dateTo": "2023-01-01 00:02",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}
}
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "externalId": "6719516710",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "number": 1,
- "totalAmount": 100,
- "taxationSystem": "OSN",
- "client": {
- "name": "Алексей",
- "inn": null,
- "phone": "+79034445577",
- "email": "alex@email.com"
}, - "delivery": {
- "courierId": "4ef18856-d747-4217-97a8-4e86491a8e20",
- "address": "Москва, Петровская ул, 3",
- "dateFrom": "2023-01-01T00:00:00+03:00",
- "dateTo": "2023-01-01T00:00:00+03:00",
- "status": "NEW",
- "comment": "Предварительно звонок за 1 час",
- "prepaid": false
}, - "positions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "Кружка Walmer 150 мл. (круглая)",
- "quantity": 1,
- "price": 100,
- "paymentVat": "WITHOUT",
- "paymentObject": "PRODUCT",
- "paymentMethod": "FULL_PREPAYMENT",
- "excisable": false,
- "marks": [
- "010290000005737121oUbNp4ImG7'3xa.R'X:W91TEST92dGVzdOmMebPKZi7YvQhSZnNuz4pbVmlMw/vkk3TktoA="
], - "agentScheme": {
- "agentSign": "ANOTHER_AGENT",
- "supplier": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "ООО \"ПРИНЦИПАЛ\"",
- "inn": "7814494697",
- "phone": "+74993346678"
}
}, - "group": "Моя CRM"
}
]
}
Удаление заказа
Метод позволяет удалить заказ
Authorizations:
path Parameters
id required | string <uuid> ID заказа |
Responses
Response samples
- 400
- 403
- 404
{- "message": "Request params validation error",
- "code": "VALIDATION_ERROR",
- "details": [
- "param: This value should not be blank."
]
}
Вебхук для событий
Вебхук используется для получения данных при наступлении событий, заданных в эндпоинтах
header Parameters
Content-Type required | string Default: application/json;charset=utf-8 Формат и способ предоставления данных |
Authorization | string^(Bearer|Basic) [a-zA-Z0-9_=-]+$ Example: Bearer dG9rZW4= Секретный ключ для авторизации вебхуков Продуман в стороннем сервисе
Параметр необязателен - допускается работа с вебхуками без авторизации |
Request Body schema: application/json
event | string Событие, по которому отправляется вебхук
|
createdAt | string <date-time> Дата и время события |
object (WebhookOperationCompleted) Данные об операции |
Responses
Request samples
- Payload
{- "event": "OPERATION_COMPLETED",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "content": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 1,
- "createdAt": "2023-01-01T00:00:00+03:00",
- "operationType": "SELL",
- "status": "COMPLETE",
- "message": null,
- "cashboxId": "41fae9c8-dabb-4c22-b6b4-e0ba388688f1",
- "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9",
- "details": {
- "order": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "externalId": "6719516710",
- "number": 1,
- "orderAmount": 100,
- "groups": [
- "Моя CRM"
]
}, - "paymentSolutions": [
- {
- "id": 1,
- "amount": 60,
- "details": null
}, - {
- "id": 8,
- "amount": 40,
- "details": {
- "slip": " 14.08.23 18:09 \r\nОрганизация: ИП Петров Петр Петрович\r\nИНН: 778866112233\r\nТерминал: 1111\r\nМерчант: 0001\r\n------------------------------------------\r\n СЛИП \r\n------------------------------------------\r\nСтатус: Успешно\r\nНомер чека: 1\r\n",
- "referenceData": "rrn=402208627472&receiptNumber=214&authorizationCode=200116&amount=100"
}
}
], - "fiscalAmounts": [
- {
- "type": "CASH",
- "amount": 60
}, - {
- "type": "CASHLESS",
- "amount": 40
}
], - "operationAmount": 100,
- "actionType": "EXECUTE",
- "fdNumber": "151",
- "fdSign": "2760124643",
- "fdCreatedAt": "2023-01-01 00:00",
- "slip": " 14.08.23 18:09 \r\nОрганизация: ИП Петров Петр Петрович\r\nИНН: 778866112233\r\nТерминал: 1111\r\nМерчант: 0001\r\n------------------------------------------\r\n СЛИП \r\n------------------------------------------\r\nСтатус: Успешно\r\nНомер чека: 1\r\n",
- "fnNumber": "9961001244556677"
}
}
}
Список эндпоинтов
Метод позволяет получить список эндпоинтов для вебхуков
Authorizations:
query Parameters
limit | integer [ 1 .. 50 ] Default: 10 Ограничение на размер выборки |
cursor | string <uuid> ID первой записи выборки |
Responses
Response samples
- 200
- 400
- 403
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
], - "nextCursor": "53a4a333-2825-45a4-80d2-5f430d088f36"
}
Создание эндпоинта
Метод создает новый эндпоинт для вебхука
Authorizations:
Request Body schema: application/json
status required | string Enum: "ACTIVE" "INACTIVE" Статус
|
url required | string <= 255 characters URL
|
authType required | string Тип авторизации
|
events required | Array of strings non-empty Items Enum: "OPERATION_COMPLETED" "OPERATION_FAILED" "INTEGRATION_TERMINATED" "INTEGRATION_REQUEST_COMPLETED" "CASHBOX_DATA_CHANGED" События, по которым отправляется вебхук
|
Responses
Request samples
- Payload
{- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
Response samples
- 201
- 400
- 403
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
Данные об эндпоинте
Метод позволяет получить подробные данные об эндпоинте для вебхука
Authorizations:
path Parameters
id required | string <uuid> ID эндпоинта для вебхука |
Responses
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
Обновление эндпоинта
Метод обновляет существующий эндпоинт для вебхука (перезаписываются все данные эндпоинта)
Authorizations:
path Parameters
id required | string <uuid> ID эндпоинта для вебхука |
Request Body schema: application/json
status required | string Enum: "ACTIVE" "INACTIVE" Статус
|
url required | string <= 255 characters URL
|
authType required | string Тип авторизации
|
events required | Array of strings non-empty Items Enum: "OPERATION_COMPLETED" "OPERATION_FAILED" "INTEGRATION_TERMINATED" "INTEGRATION_REQUEST_COMPLETED" "CASHBOX_DATA_CHANGED" События, по которым отправляется вебхук
|
Responses
Request samples
- Payload
{- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
Response samples
- 200
- 400
- 403
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "createdAt": "2023-01-01T00:00:00+03:00",
- "status": "ACTIVE",
- "authType": "NO",
- "events": [
- "OPERATION_COMPLETED"
]
}
Удаление эндпоинта
Метод позволяет удалить эндпоинт для вебхука
Authorizations:
path Parameters
id required | string <uuid> ID эндпоинта для вебхука |
Responses
Response samples
- 400
- 403
- 404
{- "message": "Request params validation error",
- "code": "VALIDATION_ERROR",
- "details": [
- "param: This value should not be blank."
]
}
Тестирование эндпоинта
Метод отправляет вебхук с тестовыми данными (при наличии ранее добавленного эндпоинта с заданным событием)
Authorizations:
Request Body schema: application/json
event required | string Enum: "OPERATION_COMPLETED" "OPERATION_FAILED" "INTEGRATION_TERMINATED" "INTEGRATION_REQUEST_COMPLETED" "CASHBOX_DATA_CHANGED" Событие, по которому отправляется вебхук
|
skipVerify | boolean Default: false Игнорировать ли проверку SSL при отправке тестового вебхука |
Responses
Request samples
- Payload
{- "event": "OPERATION_COMPLETED",
- "skipVerify": false
}
Response samples
- 400
- 403
- 404
{- "message": "Request params validation error",
- "code": "VALIDATION_ERROR",
- "details": [
- "param: This value should not be blank."
]
}