SelSup Developers

Публичный API · API Reference

Биллинг

Методы раздела «Биллинг»: точные маршруты, параметры, тела запросов и раскрываемые структуры ответов.

1 методов/api/billing/findСтабильныйМашинное описание ↗
{ }

Страница собрана в отдельный редактируемый контракт. Перед операциями записи проверяйте примеры на тестовых данных.

/api/billing/find

Готовые сценарии

Готовые сценарии

01

Начать работу с разделом «Биллинг»

Используйте отдельный API-токен и сначала проверяйте операции чтения на тестовых данных.

  1. Сохраните токен на серверной стороне и передавайте его в заголовке Authorization.
  2. Проверьте обязательные параметры и раскройте структуру запроса или ответа.
  3. Обрабатывайте HTTP-статус и стабильное поле error в прикладных ошибках.

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

Структуры данных раздела

Модели перечислены отдельно и раскрываются также непосредственно у методов, где они используются.

Billing17 полей
idinteger · int64

Идентификатор биллинга. Проставляется автоматически

namestring

Наименование операции биллинга

productIdinteger · int64

Идентификатор товара, для которого рассчитан биллинг

itemIdinteger · int64

привязка к единице хранения на складе

orderIdinteger · int64

Заказ по которому был рассчитан биллинг

pricenumber · double

Поле price.

volumeinteger · int32

объем для операций, которые зависят от объема

weightinteger · int32

Поле weight.

quantityinteger · int32

Поле quantity.

totalPricenumber · double

Поле totalPrice.

tariffIdinteger · int64

идентификатор тарифа для хранения или короба

linkedClientIdinteger · int64

идентификатор клиента фулфилмента

clientIdinteger · int64

идентификатор клиента самого фулфилмента

fromstring · date-time

дата тарификации от

tostring · date-time

дата тарификации до

datestring · date-time

дата операции

userIdinteger · int64

идентификатор пользователя фулфилмента, который добавил операцию

FindResponseBilling1 полей
rowsBilling[]

Строки с результатом поиска

Контракт ошибок

Как API возвращает прикладные ошибки

Код ошибки одинаков для всех локалей, а текст для пользователя переводится сервером. Поэтому бизнес-логику стройте по error, а localMessage используйте только для отображения.

error

Стабильный машинный код ошибки для логики интеграции.

localMessage

Готовое сообщение на языке пользователя API-токена.

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/billing/find
Токен с правами чтения

Возвращает данные как для клиента так и для фулфилмента

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

ПолеТипОбязательноОписание
from string · date-time Нет Поле from.
to string · date-time Нет Поле to.
limit integer · int32 Нет Ограничение на количество записей. Максимальное значение - 500
page integer · int32 Нет Номер страницы начиная с 1
count boolean Нет Возвратить в ответе общее количество записей
sortBy string Нет Поле сортировки записей. Работает только при получении списка.
ascending boolean Нет Порядок сортировки - по возрастанию?. Работает только при получении списка.
curl --request GET 'https://api.selsup.ru/api/billing/find?limit=50&page=1' \
  --header 'Authorization: YOUR_API_TOKEN'

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

200
Поля объекта FindResponseBilling
ПолеТипОбязательноОписание
rows Billing[] Нет Строки с результатом поиска
Структура элемента массива Billing
ПолеТипОбязательноОписание
id integer · int64 Нет Идентификатор биллинга. Проставляется автоматически
name string Нет Наименование операции биллинга
productId integer · int64 Нет Идентификатор товара, для которого рассчитан биллинг
itemId integer · int64 Нет привязка к единице хранения на складе
orderId integer · int64 Нет Заказ по которому был рассчитан биллинг
price number · double Нет Поле price.
volume integer · int32 Нет объем для операций, которые зависят от объема
weight integer · int32 Нет Поле weight.
quantity integer · int32 Нет Поле quantity.
totalPrice number · double Нет Поле totalPrice.
tariffId integer · int64 Нет идентификатор тарифа для хранения или короба
linkedClientId integer · int64 Нет идентификатор клиента фулфилмента
clientId integer · int64 Нет идентификатор клиента самого фулфилмента
from string · date-time Нет дата тарификации от
to string · date-time Нет дата тарификации до
date string · date-time Нет дата операции
userId integer · int64 Нет идентификатор пользователя фулфилмента, который добавил операцию
{
  "rows": "string"
}
Ошибки5

Прикладные ошибки обычно возвращаются как JSON с полями error, localMessage и params. Ориентируйтесь на error; локализованный текст может меняться. Как API возвращает прикладные ошибки ↑

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

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

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

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

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

Внутренняя ошибка. Сохраните время запроса и обратитесь в поддержку, не повторяя мутацию вслепую.

400error_no_client
Клиент не найден или был удален. Напишите в поддержку

Персональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.

400error_subscription_expired
У вас закончился срок действия тарифа. Оплатите тариф для продолжения использования сервиса.

Персональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.

Authorization

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

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

Попробовать

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

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

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