Prodly V3 (3.0.2)

Download OpenAPI specification:Download

Публичный API для поставщиков

API работает в асинхронном режиме. На все запросы с префиксом /request/ в ответ возвращается индентификатор запроса requestID. В дальнейшем, этот индентификатор можно использовать для получения информации о состоянии запроса.

При передаче данных методом PUT предпочтительно использовать формат данных NDJSON. Формат NDJSON позволяет не парсить большие объекты данных одновременно, а обрабатывать записи построчно, с разделителем строк "\n". Подробно формат описан на страничке https://github.com/ndjson/ndjson-spec. Если вы передаёте данные в NDJSON, то не забывайте установить соответствующий Content-Type запроса (Content-Type: application/x-ndjson).

Результатом выполнения запроса методом PUT является JSON-объект вида { "requestId": "XXX-XXX-XXX" }, где XXX-XXX-XXX - это идентификатор запроса в базе данных Prodly. Выполняя GET-запрос /request/XXX-XXX-XXX вы можете получить данные о текущем состоянии дел с запросом (результат выплднения, ошибки, возникшие при разборе данных и т.д.). Подробно формат ответа на GET-запрос /request описан в разделе "Результат выполнения".

Результат выполнения

Результат

Возвращает состояние отправленного ранее запроса. Рекомендуемая частота опроса - не чаще двух раз в минуту

Authorizations:
(X-VendorX-Secretbranch)
path Parameters
requestID
required
string

Идентификатор запроса

Responses

Response samples

Content type
application/json
{
  • "_id": "66b898da-f4ca-4e15-80a0-0aba43b67b47",
  • "vendor": "vendor",
  • "branch": "VV",
  • "func": "products.post",
  • "createdAt": "2022-11-23T14:17:39.162+04:00",
  • "state": "process",
  • "updatedAt": "2022-11-23T16:13:50.091+04:00",
  • "errors": [
    ]
}

Товары

Загрузка и обновление номенклатуры

Загрузка номенклатуры

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

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
code
required
string

Уникальный код товара

name
required
string

Наименование товара

description
string

Описание для отображения на сайте

brand
string

Торговая марка

producer
string

Наименование производителя

images
Array of strings

Массив ссылок на изображения товара. Первый элемент в массиве будет использован как основной

country
required
string

Страна происхождения. ISO код. https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes

required
object (Root Type for ProductMeta)

Метаинформация о товаре

Array of objects (Root Type for PropertyObject)

Дополнительные свойства товара для отображения в карточке

parent
string

Код родительской карточки

active
boolean

Разрешён ли товар для отображения и заказа. Свойство работает независимо от модерации. Если не передано - используется значение по умолчанию true

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Обновление товаров

Загрузка информации по ценам/остаткам в филиалах

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Список филиалов. Поставщик может работать только с теми филиалами, доступ к которым ему предоставлен сервисом. Регистрозависимый.

code
required
string

Код товара

active
required
boolean

Разрешён ли товар для заказа в указанном филиале

kvant
required
number

Квант отгрузки товара (минимальная партия)

nds
required
number

НДС (в процентах)

Array of objects (Root Type for PropertyObject)

Дополнительные свойства товара для отображение в карточке на сайте. Будут перекрывать свойства из глобальной карточки

stock
required
number

deprecated Количество доступного для заказа товара (остаток). Если нулевой, то товар будет помечен как отсутствующий. Устарело. Рекомендуется использовать массив stocks.

type
required
string

Тип товара. Используется для деления заказа по машинам

Array of objects (Root Type for PriceElement)

deprecated Ценовые ряды для товара в привязке к филиалу (цены по умолчанию) Если цены не указаны, то товар будет недоступен для заказа. Срок жизни цены - 48 часов. Если в течении этого времени не было обновления цены, то товар становится недоступен для заказа Устарело. Рекомендуется использовать массив stocks.

Array of objects (Root Type for PackageItem)

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

Array of objects (Root Type for ProductStocksItem)

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

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Ограничения на товары

Загрузка чёрно-белых списков

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
number
string

Документ в учётной системе поставщика

name
string

Наименование ограничения

note
string

Наименование правила

hidden
boolean

скрывает товар от тех, кому он недоступен

products
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов товаров

BL
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов запрета

WL
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов разрешения

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Обновление сертификатов

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
productCode
required
string

Код товара

required
Array of objects (Root Type for ProductCertificate)

Массив ссылок на сертификаты

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

/request/stocks.post

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
productCode
required
string

код товара

stock
required
number

остаток

Array of objects (Root Type for StockTransitElement)

Ожидаемые поставки товара

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Загрузка ресурсов

Загрузка ресурсов

Authorizations:
(X-VendorX-Secretbranch)
path Parameters
fileName
required
string

Имя файла с расширением.

для image допустимые расширения: png, jpg, jpeg

для certificate: png, jpg, jpeg, pdf

header Parameters
resourceType
required
string

Допустимые значения: image - изображение товара. certificate - документ сертификата

Request Body schema:
Schema not provided

Responses

Клиенты

Работа с клиентами

Обновление клиентов

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string
Request Body schema:
Array
_id
string

_id клиента на сайте.

active
required
boolean

Может ли клиент делать заказ.

code
required
string

Код контрагента

name
required
string

Наименование клиента

inn
required
string

ИНН

ogrn
string

ОГРН

kpp
string

КПП

zone
string

Код зоны доставки в системе логистики поставщика.

type
string

Тип клиента. Например "Розница"

branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Список филиалов. Поставщик может работать только с теми филиалами, доступ к которым ему предоставлен сервисом. Регистрозависимый.

address
string

Юридический адрес

logisticAddress
required
string

Адрес доставки

required
Array of objects (Root Type for PropertyObject)

Список предопреленных свойств (key)

  • reg_id - Коды регистрации. Массив строк
  • currency - Валюта контрагента
  • managers - Список менеджеров клиента. Массив строк.
  • warning - Предупреждения и сообщения, которые будут показаны в корзине клиента. Массив объектов вида {"title":"Стоп-отгрузка","message":"Свяжитесь с менеджером или по номеру телефона..."}
  • stop - Клиент стоит на СТОПе. Отгрузка запрещена. true/false
  • debt - Величина просроченной задолженности. Число.
  • price - Название ценового ряда для клиента (см. обновление товаров)
  • prices - Если заполнено - price игнорируется. массив объектов {"price": "Для опт.секций","tag": "NOM_00001"} задаёт тип цены для тэга товара. Необходимо, чтобы был один элемент "по-умолчанию", без указания тэша
  • schedules - Расписание доставки в виде массива объектов {type:'Скоропорт',schedule:5}. type - тип товара (если null - то это расписание по умолчанию), schedule - десятичное представление битовой маски доступных дней доставки, например 5 = 0b0000101 - пн и ср
  • balance - Баланс взаиморасчётов поставкищка с контрагентом. Если больше 0, то долг контрагента, если меньше, долг поставщика.
  • returnAllowed - поставщик разрешил клиенту выполнять возвраты через Prodly. Boolean.
  • creditAllowed - поставщик разрешает клиенту оплату заказа в кредит от Сбербанка. Boolean
  • momentalPayAllowed - поставщик разрешает клиенту оплату заказа через "Моментальный платеж". Boolean

Код регистрации используется для предварительной загрузки клиентов в сервис. Преставляет из себя массив строк в формате XXX-XXXX-XXXX. Первые три символа - сокращение поставщика согласованный с поддержкой prodly.ru, остальные - буквенно-цифровые (A-Z,0-9), все буквы в верхнем регистре. При самостоятельной добавлении контрагента, пользователь может указать код регистрации (полученный за пределами сервиса), в этом случае ему будут подключены все клиенты, у которых будет найдет введеный пользователем код регистрации.

tags
required
Array of strings

Набор тэгов для клиента.

object (Root Type for ClientLocation)

Объект геолокации

Array of objects (Root Type for Client.Post.Object.Contact)

Email-ы и телефоны клиента

Array of objects (Root Type for FirmManagerLink)

Менеджеры контрагента. Передаются только при использовании функционала для торговых представитилей.

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Ограничения на товары

Загрузка чёрно-белых списков

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
number
string

Документ в учётной системе поставщика

name
string

Наименование ограничения

note
string

Наименование правила

hidden
boolean

скрывает товар от тех, кому он недоступен

products
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов товаров

BL
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов запрета

WL
Array of strings (Root Type for WBLTags) [ items ]

Двумерный массив тегов разрешения

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Точечное обновление контрагента

Запрос состоит из 4 необязательных блоков:

  • client - ИНН, адрес, тип и т.д.
  • prices - массив цен, матриц, скидок клиента
  • actions - акции (акции будут привязаны к персональному тегу контрагента)
  • plakat - объект плаката (плакат будет привязан к персональному тегу контрагента)
Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный ключ

branch
required
string

Код филиала

client
required
string

Код контрагента, кодированный в base64

Request Body schema:
object (Root Type for Client.Post.Object.Client)

Объест client

Array of objects (Root Type for Client.Post.Object.Price)

Персональные цены контрагента

Array of objects (Root Type for Client.Post.Object.Actions.Action)

Промоакции для контрагента.

object (Root Type for Client.Post.Object.Plakat)

Объект plakat

Responses

Request samples

Content type
{
  • "client": {
    },
  • "prices": [
    ],
  • "actions": [
    ],
  • "plakat": {
    }
}

Обновление юридических лиц (фирм) ПОСТАВЩИКА.

Обновление юридических лиц (фирм) ПОСТАВЩИКА.

Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный код

branch
required
string

Код филиала

Request Body schema:
Array
code
required
string
fullName
string
inn
required
string
kpp
string
active
required
boolean

Фирма активна

address
required
string
ogrn
string
title
required
string
Array of objects (Root Type for FirmAccount)

Банковские реквизиты поставщика.

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

обновление ДЗ клиентов

обновление ДЗ клиентов

Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный код

branch
required
string

Код филиала

Request Body schema:
Array
clientCode
string
Array of objects (Root Type for ClientDebetDocument)

Responses

Request samples

Content type
[
  • "[\n {\n \"clientCode\": \"С00001\",\n \"documents\": [\n {\n \"firmCode\": \"061\",\n \"agentCode\": \"00043012\",\n \"docId\": \"X123123123123\",\n \"docType\": \"расходная накладная\",\n \"docNumber\": \"РН12312\",\n \"docDate\": \"2024-07-10\",\n \"summa\": 1234.56,\n \"debet\": 3456.78\n \"note\": \"\",\n \"payUntill\": \"2018-01-17\"\n },\n {\n \"firmCode\": \"ril\",\n \"agentCode\": \"lmn\",\n \"docId\": \"09rqa\",\n \"docType\": \"\",\n \"docNumber\": \"\",\n \"docDate\": \"2018-01-17\",\n \"summa\": 76.22,\n \"debet\": 28.17,\n \"note\": \"9g11o2og\",\n \"payUntill\": \"2018-01-17\"\n }\n ]\n }\n]"
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Заказы

Работа с заказами

Обновление заказов

Внимание! При отмене заказа на стороне поставщика необходимо передавать в поле vendorStatus "decline", а в поле vendorMessage - одну из причин отмены заказа:

  1. Дебиторская задолженность у КА;
  2. Нет товара на складе;
  3. Заказ меньше мин суммы;
  4. Нет договора с КА;
  5. Телефон клиента недоступен;
  6. Заказ сделан по ошибке;
  7. Другое
Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
number
required
string

Номер заказа на сайте Prodly

state
required
string (OrderState)
Enum: "new" "sent" "build" "delivery" "done" "canceled"

Состояние заказа. Тип поля enum, поле регистрозависимо.

vendor
required
string

Идентификатор поставщика

branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Список филиалов. Поставщик может работать только с теми филиалами, доступ к которым ему предоставлен сервисом. Регистрозависимый.

deliveryDate
required
string <date>

Дата доставки (самовывоза)

pickup
required
boolean

Признак самовывоза

Array of objects (Root Type for OrderRow)

Табличная часть заказа

vendorStatus
string
Enum: "accepted" "declined"

Подтверждение приема заказа

vendorMessage
string

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

Array of objects (Root Type for OrderInvoice)

Накладные и данные по машинам

object (VendorOrderIN.Client)

Данные о клиенте при загрузке заказа на платформу

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Получение заказов

Возвращает массив заказов в состоянии state. В результате будет не более 100 заказов. Для того, чтобы получить следующие, надо обработать полученные и отправить результат обработки на сервер Prodly. Обработка не подразумевает отправку заказа покупателю, вы можете просто сменить заказу статус на sent - отправлен поставщику. Для того, чтобы получить заказы, отменённые клиентом, нужно выполнить запрос с параметром state=canceled. Рекомендуется регулярно (обычно 1 раз в 10 мин) выполнять такие запросы, иначе заказы, которые клиент не хочет получать, могут уйти в набор.

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Код филиала

state
string (OrderState)
Enum: "new" "sent" "build" "delivery" "done" "canceled"

Статус. По умолчанию - 'new'.

deep
integer

Глубина в часах. По-умолчанию - 72 часа. Максимум - 168 часов (неделя).

type
string

Тип заказа, не обязательный. Возможные значения:

  • "prodly" для получения заказов, созданных клиентами
  • "agent" для получения заказоы, созданных торговыми агентами

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Цены

Обновление персональных цен

Персонализированные цены

Загрузка персонализированных цен. Внимание! Обновление цен по частям не допускается. При выполнении запроса ранние записи удаляются.

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Список филиалов. Поставщик может работать только с теми филиалами, доступ к которым ему предоставлен сервисом. Регистрозависимый.

client
required
string

Код клиента

productCode
required
string

Код товара

defaultPrice
required
number

Цена по умолчанию

price
required
number

Персональная цена для клиента

isMatrix
required
boolean

Товар входит в матрицу клиента. default: false

allowPromo
required
boolean

Разрешено последующее применение маркетинговых акций. default: true

validTill
string <date>

Дата до которой цена действительна. Строка в формате ISO. По умолчанию - сутки со времени обработки файла.

isDiscount
required
boolean

К товару применяется скидка. Будет создана промо-акция с методом "discount". default: false

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Маркетинг

Маркетинговые инструменты

Загрузка акций

Загрузка и обновление маркетинговых акций.

Внимание!

  • Загрузка акций по частям не допускается, так как при выполнении запроса ранние записи удаляются.
  • Акции discount со скидкой менее 5% не отображаются в разделе скидок, акция не подсвечивается, но цена на товар расчитывается с применением скидки.
  • Акции без указанного клиента будут доступны не сопоставленным пользователям.
Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
branch
required
string

Код филиала

method
required
string
Enum: "discount" "n+1" "s+1" "n+%" "s+%" "n+p" "s+p" "nn+%"

Тип акции

document
required
string

Идентификатор акции в системе учёта поставщика

dateFrom
required
string

Дата начала действия акции. Дата в формате ISO 8601 (ГГГГ-ММ-ДД)

dateTo
required
string

Дата окончания действия акции в формате ISO 8601 (ГГГГ-ММ-ДД)

priority
required
integer

Приоритет. Чем меньше тем выше.

required
object (Root Type for PromoProducts)

Товары в акции

name
string

Название. В методе discount не используется.

description
string

Описание акции. В методе discount не используется.

allow
Array of strings (Root Type for PromoTagsArr) [ items ]

Массив списков тэгов. Если null, то разрешены все тэги.

Суммарное количество тегов в полях allow и deny не должно превышать 2000

deny
Array of strings (Root Type for PromoTagsArr) [ items ]

Массив списков тегов. Если null, то запрещены все теги, кроме тех, что явно не указаны в allow.

Суммарное количество тегов в полях allow и deny не должно превышать 2000

type
Array of strings

Тип клиента

discount
number

Процент скидки. Применяется в методе discount, n+%.

Array of objects (Root Type for PromoGiftProductsItem)

Товары в подарок. Применяется в методах n+1, s+1, n+p, s+p

Array of objects (Root Type for PromoProductsItem)

Товары которые должны быть куплены, чтобы акция сработала. Используется в методах n+1, s+1, n+%

client
string

Код клиента. Используется в методе discount.

delete
boolean

Если true, то промо-акция с указанным document будет удалена. При этом остальные поля, кроме document необязательны.

price
number

Глобальная цена на все товары, участвующие в акции. Может применяться в акциях с методом n+% вместо поля глобальной скидки discount.

Array of objects (Root Type for PromoLevel) <= 3 items

Поле используется в акциях типа s+% (скидка от суммы), nn+% (скидка от кол-ва).

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Удаление акции

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema: application/json
document
required
string

Номер документа акции

Responses

Request samples

Content type
application/json
{
  • "document": "документ"
}

Response samples

Content type
application/json
{
  • "deleted": 1,
  • "error": "Произошла Чудовищная Ошибка"
}

Пакетное удаление акций

Пакетное удаление промоакций. Получает массив идентификаторов или имен документов промоакций и удаляет их. Возвращает идентификатор операции RequestID.

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema: application/json

Список идентификаторов акций

Array
string

Responses

Request samples

Content type
application/json
[
  • "action 1",
  • "action 2",
  • "action 5"
]

Добавление записей плакатов.

Добавление записей плакатов.

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
doc_number
required
string

Номер документа в учетной системе поставщика

doc_id
required
string

Уникальный идентификатор записи

dateFrom
required
string <date>

Время начала действия плаката в формате гггг-мм-дд

dateTo
required
string <date>

Время окончания действия плаката в формате гггг-мм-дд

tags
required
Array of strings

Массив тегов клиентов, на которых распространяется плакат

required
Array of objects (Root Type for plakatPrduct)

Товары в плакате.

branch
required
string

Филиал

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

План продаж

План продаж

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema: application/json
Array
active
boolean
branch
string
dateFrom
required
string <date>
dateTo
required
string <date>
name
string
required
Array of objects (Root Type for SalePlanClient)
image
string

ссылка на картинку

text
string
url
string

ссылка на соц. сети

document
string

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

Responses

Request samples

Content type
application/json
[
  • "[\n {\n \"document\": \"dm7\",\n \"active\": true,\n \"branch\": \"SM\",\n \"dateFrom\": \"2018-01-17\",\n \"dateTo\": \"2018-01-17\",\n \"name\": \"Установка плана товарооборота на сентябрь\",\n \"items\": [\n {\n \"clientCode\": \"С010101\",\n \"blocks\": [\n {\n \"blockName\": \"Пестравка\",\n \"goodsTags\": [\"П00001\"],\n \"plansumm\": 2.75,\n \"factsumm\": 3.52,\n \"unit\": \"р.\"\n },\n {\n \"blockName\": \"Купино\",\n \"goodsTags\": [\"К0010101\"],\n \"plansumm\": 4.95,\n \"factsumm\": 23.76,\n \"unit\": \"р.\"\n }\n ]\n },\n \n ],\n \"image\": \"https://images.com/iamge.png\",\n \"text\": \"Подробное описание телевизора\",\n \"url\": \"https://vk.com/prodly_store\"\n }\n]"
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Сообщения

Обмен сообщениями

Получить входящие сообщения

Возвращает новые сообщения отправленные в филиал поставщика

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
subject
string

Фильтр по теме сообщения (точное совпадение)

state
string
Enum: "new" "sent" "done" "error"

Фильтр по статусу сообщений. Если не указано, то new

skip
integer

Пропустить первые сообщения. Используется для постраничного получения сообщений.

limit
integer

Сколько сообщений получить за один раз По умолчанию 100. Маскимальное значение 100

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Обновление сообщения

Обновение статуса или ответа на сообщение

Authorizations:
(X-VendorX-Secretbranch)
path Parameters
messageID
required
string

Идентификатор сообщения

Request Body schema: application/json
branch
string

Филиал

client
string

Код контрагента-получателя сообщения

period
Array of strings <date>

Период

type
required
string
Value: "\"Взаиморасчеты\""

Тип документа

href
string

Ссылка на файл с документом(-ами)

state
string

Статус сообщения. done - обработано успешно error - возникла ошибка.

Не обязательное, по-умолчанию - done.

error
string

тект сообщения об ошибке, возникшей на стороне поставщика

Responses

Request samples

Content type
application/json
{
  • "branch": "SM",
  • "client": "181458",
  • "period": [
    ],
  • "type": "Взаиморасчеты",
  • "state": "done|error",
  • "error": "сообщение об ошибке"
}

Резерв

Резерв товаров (Персональные остатки)

/request/reserves.post

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
vendor
required
string

Код поставщика

branch
required
string

Филиал

client_tags
required
Array of strings

Массив тегов контрагентов

productCode
required
string

Код товара

stock
required
number

Остаток товара

validTill
string

Дата, до которой запись действительна в формате ISODate. Если не указана, то будет использована текущая дата.

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Возвраты

Заявка на возврат товара

Отправка данных по заявкам на возврат товара

Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный код

Request Body schema:

Массив данных обработанных заявок на возврат товаров

Array
id
required
string

Идентификатор заявки в системе учёта Prodly

state
required
string
Enum: "new" "sent" "canceled" "done" "partial"

Состояние заявки

updatedAt
required
string <date-time>

Дата обновления данных в формате ISODate

message
string

Сообщение поставщика для контрагента

required
Array of objects (Root Type for ReturnVendorProduct)

Товары

object (Root Type for ReturnVendorConditions)

Информация от поставщика по возврату товаров

Responses

Request samples

Content type
[
  • {
    }
]

Получить заявки на возвраты товаров

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string

Филиал поставщика

state
string (OrderState)
Enum: "new" "sent" "build" "delivery" "done" "canceled"

Статус. По умолчанию - 'new'.

deep
integer

Глубина в часах. По-умолчанию - 72 часа. Максимум - 72 часа.

header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секртеный код

Responses

Response samples

Content type
application/json
[]

Валюты

Управление курсом валют

/request/currencies.post

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
date
required
string <date>

Дата применения курса в формате ISO. Должна быть больше текущей даты

currency
required
string

Трёхбуквенный код валюты в формате ISO3

branch
required
string

Код филиала

multiplicity
required
number

Коэффициент к базовой валюте

rate
required
number

Курс валюты

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Агенты

Функционал для торговых представитилей

Получение задач с платформы

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Код филиала

deep
integer

Глубина в часах. По-умолчанию - 72 часа. Максимум - 72 часа.

source
string

идентификатор УС поствщика

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Отправка задач на платформу

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный код поставщика

branch
required
string

Код филиала

Request Body schema:
Array
guid
required
string

Идентификатор задачи в системе учёта поставщика

clientCode
required
string

Код контаргента в системе учёта поставщика

description
required
string

Описание задания

till
required
string

Выполнить до. Дата в формате ISODate (напр. 2024-05-15)

percent
required
number

Процент выполнения задания

state
required
number

Статус задания

Создана - new ВРаботе - inprodgress НеВыполнена - failed Выполнена - done Отменена - canceled

Array of objects (Root Type for Task.Trader.Object.Product)

Список товаров в задании

source
string

Идентификатор внутренней системы поставщика, например "1С"

auto
boolean

Признак, позволяющий агенту закрывать задачу. auto=true означает, что закрытие задачи происходит в учётной системе, а не кнопой ОК.

agentCode
required
string

Код агента из 1С

number
string

Номер документа в 1С

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Получение визитов с платформы

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Код филиала

deep
integer

Глубина в часах. По-умолчанию - 72 часа. Максимум - 72 часа.

Responses

Response samples

Content type
[
  • [
    ]
]

Обновление справочника менеджеров (торговых агентов)

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
header Parameters
x-vendor
required
string

Код поставщика

x-secret
required
string

Секретный код

branch
required
string

Код филиала

Request Body schema:
Array
code
required
string

Код менеджера в 1С

fio
required
string

ФИО

phone
required
string

Телефон

active
required
boolean

Менегер активен

tags
Array of strings

тэги (рекомендуется добалять индивидуальный тэг с кодом агента)

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Инкассация. Получении с платформы информации о наличных, полученных агентом

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
query Parameters
branch
required
string (BranchEnum)
Enum: "Примеры" "SM" "VLG" "000002"

Код филиала

state
string (OrderState)
Enum: "new" "sent" "build" "delivery" "done" "canceled"

Статус. По умолчанию - 'new'.

deep
integer

Глубина в часах. По-умолчанию - 72 часа. Максимум - 72 часа.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Добавление маст-листов и плакатов (v2)

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
number
string
active
required
boolean

при получении false документ будет удалён по ID

date
string

дата создания документа

startDate
required
string <date>
endDate
required
string <date>
docType
required
string

тип документа: "mustlist"|"plakat"

agentTags
Array of strings

тэги торговых агентов

required
object (Root Type for MustList.Plan)
object (Root Type for MustList.Fact)
branch
required
string

Филиал

docId
required
string
clientTags
Array of strings

массив тэгов клиентов, которым доступен документ, не предполагающий факта выполнения. игнорируется, если заполнена секция fact

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestID": "2f6a4728-8449-49a6-ad5e-6e4e70032290"
}

Обновление данных о визите на платформе

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
guid
required
string

уникальный идентификатор визита на платформе

vendor
string
branch
string
clientCode
string

код клиента в УС поставщика

clientId
string
agentCode
string

код агента в УС поставщика

userId
string
onLocation
boolean
isRequest
boolean
isRefund
boolean
isMoney
boolean
startedAt
string <date>
finishedAt
string <date>
delta
number <double>
marginOfError
number <double>
object (Root Type for Trader.Visit.Location)

координаты

object (Root Type for Trader.Visit.Location)

координаты

state
string
object (Root Type for Trader.Visit.Requiest)
photos
Array of strings

Responses

Request samples

Content type
[
  • [
    ]
]

Инкассация. Отправка на платформу информации о проведении платежкй

Функционал торгового агента подключается отдельно

Authorizations:
(X-VendorX-Secretbranch)
Request Body schema:
Array
id
string

GUID, идентификатор документа в Prodly

agentCode
string

код торгового представителя в УС поставщика

branch
string

филиал

client
string

код торговой точки в УС поставщика

firm
string

код юридического лица поставщика

state
string

состояние документа

docId
string

идентификатор оплачиваемого документа в УС поставщика

summa
number
createdAt
string <date-time>
docType
string

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

Responses

Request samples

Content type
[
  • {
    }
]