SelSup Developers

Публичный API · Справочник API

Кассовые чеки

Создание кассовых чеков для заказов и проверка их статуса.

Методы: 4/api/receiptСтабильныйСпецификация OpenAPI ↗
{ }

Управление чеками онлайн-касс.

/api/receipt

Модель данных

Структуры данных

Поля объектов, которые используются в запросах и ответах этого раздела.

Receipt14 полей
idinteger · int64

ID чека

read-only
clientIdinteger · int64

ID клиента

read-only
orderIdinteger · int64

ID заказа

read-only
organizationIdinteger · int64

ID организации

read-only
externalReceiptIdstring

ID чека в системе онлайн-кассы

fiscalNumberstring

Фискальный номер документа (ФД), присвоенный ФНС

cashRegisterServicestring

Сервис онлайн-кассы

fnsUrlstring

Ссылка на проверку чека на сайте ФНС

statusstring

Статус чека

receiptTypestring

Тип операции

totalAmountnumber · double

Общая сумма чека

createdDatestring · date-time

Дата создания записи

read-only
completedDatestring · date-time

Дата успешного пробития чека

errorMessagestring

Сообщение об ошибке, если статус FAILED

Ошибки

Обработка ошибок

При ошибке API возвращает её код в поле error и сообщение на языке пользователя в localMessage. Проверяйте код error в программе, а localMessage показывайте пользователю.

error

Код ошибки для обработки в программе.

localMessage

Сообщение на языке пользователя, которому принадлежит токен.

params

Значения, которые сервер подставил в сообщение об ошибке.

文

Язык localMessage определяется полем lang пользователя, которому принадлежит API-токен. Язык страницы документации и заголовок Accept-Language его не переключают; если язык пользователя не указан, используется русский.

RUПользователь с локалью ru
{
  "error": "error_brand_already_exists",
  "localMessage": "Бренд Base уже существует",
  "params": {
    "name": "Base"
  }
}
ENПользователь с локалью en
{
  "error": "error_brand_already_exists",
  "localMessage": "Brand Base already exists",
  "params": {
    "name": "Base"
  }
}

Методы

Методы

GET

Получить чеки заказа

/api/receipt/order/{orderId}
Токен с правами чтения

Возвращает все чеки, пробитые для указанного заказа

Параметры пути

ПолеТипОбязательноОписание
orderId integer · int64 Да Поле orderId.
curl --request GET 'https://api.selsup.ru/api/receipt/order/1001' \
  --header 'Authorization: YOUR_API_TOKEN'

Успешный ответ

200
Структура элемента массива Receipt[]
ПолеТипОбязательноОписание
id integer · int64 Нет ID чека
clientId integer · int64 Нет ID клиента
orderId integer · int64 Нет ID заказа
organizationId integer · int64 Нет ID организации
externalReceiptId string Нет ID чека в системе онлайн-кассы
fiscalNumber string Нет Фискальный номер документа (ФД), присвоенный ФНС
cashRegisterService stringNONE, EVOTOR, ATOL Нет Сервис онлайн-кассы
fnsUrl string Нет Ссылка на проверку чека на сайте ФНС
status stringCREATED, PENDING, COMPLETED, FAILED, CANCELLED Нет Статус чека
receiptType stringINCOME, EXPENSE, REFUND, EXPENSE_REFUND Нет Тип операции
totalAmount number · double Нет Общая сумма чека
createdDate string · date-time Нет Дата создания записи
completedDate string · date-time Нет Дата успешного пробития чека
errorMessage string Нет Сообщение об ошибке, если статус FAILED
[
  "string"
]
Ошибки3

При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑

401auth_required
Требуется авторизация

Заголовок Authorization отсутствует, пуст или содержит недействительный токен.

400error_access_denied
Недостаточно прав

Токен существует, но его роль не позволяет выполнить операцию.

500error_unknown
Непредвиденная ошибка

Не удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.

POST

Создать чек для заказа

/api/receipt/order/{orderId}
Токен с правами записи

Пробивает чек через онлайн-кассу для указанного заказа

Параметры пути

ПолеТипОбязательноОписание
orderId integer · int64 Да Поле orderId.

Параметры запроса

ПолеТипОбязательноОписание
typeПо умолчанию: INCOME stringINCOME, EXPENSE, REFUND, EXPENSE_REFUND Нет Поле type.
curl --request POST 'https://api.selsup.ru/api/receipt/order/1001' \
  --header 'Authorization: YOUR_API_TOKEN'

Успешный ответ

200
Поля объекта Receipt
ПолеТипОбязательноОписание
id integer · int64 Нет ID чека
clientId integer · int64 Нет ID клиента
orderId integer · int64 Нет ID заказа
organizationId integer · int64 Нет ID организации
externalReceiptId string Нет ID чека в системе онлайн-кассы
fiscalNumber string Нет Фискальный номер документа (ФД), присвоенный ФНС
cashRegisterService stringNONE, EVOTOR, ATOL Нет Сервис онлайн-кассы
fnsUrl string Нет Ссылка на проверку чека на сайте ФНС
status stringCREATED, PENDING, COMPLETED, FAILED, CANCELLED Нет Статус чека
receiptType stringINCOME, EXPENSE, REFUND, EXPENSE_REFUND Нет Тип операции
totalAmount number · double Нет Общая сумма чека
createdDate string · date-time Нет Дата создания записи
completedDate string · date-time Нет Дата успешного пробития чека
errorMessage string Нет Сообщение об ошибке, если статус FAILED
{
  "id": 1001,
  "clientId": 1001,
  "orderId": 1001,
  "organizationId": 1001,
  "externalReceiptId": "string",
  "fiscalNumber": "string"
}
Ошибки3

При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑

401auth_required
Требуется авторизация

Заголовок Authorization отсутствует, пуст или содержит недействительный токен.

400error_access_denied
Недостаточно прав

Токен существует, но его роль не позволяет выполнить операцию.

500error_unknown
Непредвиденная ошибка

Не удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.

GET

Получить чек по ID

/api/receipt/{receiptId}
Токен с правами чтения

Возвращает детальную информацию о чеке

Параметры пути

ПолеТипОбязательноОписание
receiptId integer · int64 Да Поле receiptId.
curl --request GET 'https://api.selsup.ru/api/receipt/1001' \
  --header 'Authorization: YOUR_API_TOKEN'

Успешный ответ

200
Поля объекта Receipt
ПолеТипОбязательноОписание
id integer · int64 Нет ID чека
clientId integer · int64 Нет ID клиента
orderId integer · int64 Нет ID заказа
organizationId integer · int64 Нет ID организации
externalReceiptId string Нет ID чека в системе онлайн-кассы
fiscalNumber string Нет Фискальный номер документа (ФД), присвоенный ФНС
cashRegisterService stringNONE, EVOTOR, ATOL Нет Сервис онлайн-кассы
fnsUrl string Нет Ссылка на проверку чека на сайте ФНС
status stringCREATED, PENDING, COMPLETED, FAILED, CANCELLED Нет Статус чека
receiptType stringINCOME, EXPENSE, REFUND, EXPENSE_REFUND Нет Тип операции
totalAmount number · double Нет Общая сумма чека
createdDate string · date-time Нет Дата создания записи
completedDate string · date-time Нет Дата успешного пробития чека
errorMessage string Нет Сообщение об ошибке, если статус FAILED
{
  "id": 1001,
  "clientId": 1001,
  "orderId": 1001,
  "organizationId": 1001,
  "externalReceiptId": "string",
  "fiscalNumber": "string"
}
Ошибки3

При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑

401auth_required
Требуется авторизация

Заголовок Authorization отсутствует, пуст или содержит недействительный токен.

400error_access_denied
Недостаточно прав

Токен существует, но его роль не позволяет выполнить операцию.

500error_unknown
Непредвиденная ошибка

Не удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.

GET

Обновить статус чека

/api/receipt/{receiptId}/update
Токен с правами чтения

Запрашивает актуальный статус чека у онлайн-кассы

Параметры пути

ПолеТипОбязательноОписание
receiptId integer · int64 Да Поле receiptId.
curl --request GET 'https://api.selsup.ru/api/receipt/1001/update' \
  --header 'Authorization: YOUR_API_TOKEN'

Успешный ответ

200
Поля объекта Receipt
ПолеТипОбязательноОписание
id integer · int64 Нет ID чека
clientId integer · int64 Нет ID клиента
orderId integer · int64 Нет ID заказа
organizationId integer · int64 Нет ID организации
externalReceiptId string Нет ID чека в системе онлайн-кассы
fiscalNumber string Нет Фискальный номер документа (ФД), присвоенный ФНС
cashRegisterService stringNONE, EVOTOR, ATOL Нет Сервис онлайн-кассы
fnsUrl string Нет Ссылка на проверку чека на сайте ФНС
status stringCREATED, PENDING, COMPLETED, FAILED, CANCELLED Нет Статус чека
receiptType stringINCOME, EXPENSE, REFUND, EXPENSE_REFUND Нет Тип операции
totalAmount number · double Нет Общая сумма чека
createdDate string · date-time Нет Дата создания записи
completedDate string · date-time Нет Дата успешного пробития чека
errorMessage string Нет Сообщение об ошибке, если статус FAILED
{
  "id": 1001,
  "clientId": 1001,
  "orderId": 1001,
  "organizationId": 1001,
  "externalReceiptId": "string",
  "fiscalNumber": "string"
}
Ошибки3

При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑

401auth_required
Требуется авторизация

Заголовок Authorization отсутствует, пуст или содержит недействительный токен.

400error_access_denied
Недостаточно прав

Токен существует, но его роль не позволяет выполнить операцию.

500error_unknown
Непредвиденная ошибка

Не удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.

Authorization

Токен для тестовых запросов

Получить токен

Токен хранится только в localStorage этого браузера и отправляется исключительно в заголовке Authorization запросов к api.selsup.ru.

Попробовать

Параметры реального запроса

Реальный ответ API

Выполните запрос, чтобы увидеть ответ SelSup.