Открыть главное меню

API.ABCP.Admin

Содержание

API ABCP - Административный интерфейс

Все методы в данном разделе доступны ТОЛЬКО специальному пользователю со статусом API-администратор.

Данные для подключения к АПИ в роли API-администратора доступны на странице Настройки 🠊 Система 🠊 Данные для доступа к API (страница доступна только для администратора)

Заказы

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

Операция: cp/orders

Метод: GET

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
dateCreatedStart Начальная дата размещения заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateCreatedEnd Конечная дата размещения заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedStart Начальная дата последнего обновления заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedEnd Конечная дата последнего обновления заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
numbers Массив номеров заказов
internalNumbers Массив номеров заказов в учетной системе (например, в 1С). Используется только, если в параметрах запроса не задан numbers.
statusCode Код статус позиции заказа (один или массив кодов). Будут выбраны заказы содержащие хотя бы одну позицию в данном статусе.
officeId Идентификатор офиса (в ответе по параметру могут быть отфильтрованы заказы где этот офис выбран как самовывоз или если это офис клиента или если менеджер клиента, сделавшего заказ, относится к данному офису)
distributorOrderId Идентификатор заказа у поставщика. В результате вернутся все заказы которые были отправлены поставщику под этим номером.
isCanceled Флаг "Запрос на удаление позиции". 0 - запрос не был отправлен, 1 - запрос отправлен, 2 - запрос отклонен менеджером.
distributorId Идентификатор (один или массив идентификаторов) поставщика. В результате вернутся все заказы, содержащие хотя бы одну позицию от указанного поставщика.
userId Идентификатор клиента (покупателя). В результате вернутся все заказы, сделанные указанным клиентом.
withDeleted Признак, возвращать ли в ответе удаленные заказы и позиции
format Формат ответа. Доступные значения:
  • additional - дописывает к заказу данные клиента при гостевом заказе; к позициям добавляет значение vinQueryIds (см. ниже)
  • short - сокращенный вариант отображения без содержимого позиций заказов
  • count - возвращает только количество заказов по заданным условиям
  • status_only - возвращает только номер заказа, а в узле позиций: id, statusCode, brand, number, numberFix, code, quantityFinal
  • p - заказы содержатся в поле items, данные о количестве содержатся в поле count
limit Количество возвращаемых записей заказов (число, по умолчанию - 1000).

Чтобы получить информацию о количестве записей используйте параметр format со значением p

skip кол-во заказов, которые нужно пропустить. (число, по умолчанию - 0)
desc обратное направление сортировки по ID заказа - наверху будет самый новый (булево, по умолчанию - false)
isArchive Флаг "Архивности заказа", где 0 - активный заказ (не архивный), 1 - архивный заказ.

(По умолчанию возвращаются не архивные заказы. Если указать параметр 'isArchive=1', возвращаются заказы только из архива)

Если указан только параметр dateCreatedStart/dateUpdatedStart, будут выбраны все заказы начиная с этой даты. При указании фильтра по дате обновления, будут выбраны как новые заказы, так и обновленные, попадающие под действие фильтра.

Внимание!

По умолчанию количество возвращаемых записей ограничено 1000. Чтобы определить конкретное количество, используйте параметр format со значением p.

Если в запросе нет фильтра по дате, то, по умолчанию, ставится фильтр createdDate за последние 30 дней.

Пример запроса

https://demo.public.api.abcp.ru/cp/orders?userlogin=username&userpsw=md5pass&dateUpdatedStart=2013-08-02 00:00:00&statusCode=56233

Метод возвращает массив объектов вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
dateUpdated Дата обновления
comment Комментарий к заказу
debt Долг по оплате заказа
profileId Идентификатор профиля клиента сделавшего заказ
paid Признак равен 1 или true, если заказ был успешно оплачен онлайн на сайте.
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
shipmentDate Дата отгрузки
userName Имя покупателя
userFullName Имя организации
basketId Идентификатор корзины
basketName Название корзины
managerId id менеджера , если заказ был создан менеджером
userEmail Электронная почта покупателя
userCode Внутренний код пользователя
userMobile Контактный телефон пользователя
wholeOrderOnly Признак - 'Получить заказ целиком'
code "Ячейка заказа", если подключена опция "Заказы: При обработке выводить пустую колонку для вывода дополнительной информации"
isDelete Признак "удаленный заказ"
positions Список позиций заказа.
notes Список заметок заказа.
clientOrderNumber Номер заказа во внутренней системе учета клиента
isOfficialDistributor Признак официального дистрибьютора: true - да, false - нет. (если предоставлен поставщиком)

При использовании параметра format со значением p ответ на запрос содержит поля:

items Cписок (массив) заказов, удовлетворяющих заданным фильтрам. Массив представляет собой список заказов, который был бы ответом запроса без использования параметра format со значением p.
count Количество заказов, удовлетворяющих заданным фильтрам

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
brandFix Очищенное имя производителя
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
distributorType Тип поставщика: 20 -прайсовый, 22 - онлайн, 21 - дилерский прайс лист
distributorOrderId Если был выполнен заказ по API из ПУ поставщику средствами платформы ABCP, данное поле будет содержать номер заказа у поставщика.
distributorOrderView Если был выполнен заказ по API из ПУ поставщику средствами платформы ABCP, данное поле будет содержать закодированную информацию по отправленной позиции
supplierCode Код поставки от Вашего поставщика, которому вы из ПУ отправляете заказ . В данном случае код поставки НЕ является ID маршрута поставщика, а содержит в себе информацию о коде поставки, который передает вам ваш поставщик. Тестирование online поставщика. Настройки поставщика. adkulan.kz (online). Поставщики - Google Chrome.jpg
dsRouteId Маршрут поставщика
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое заказываемое количество
isDelete признак удаленной позиции
priceIn Цена поставщика за единицу товара
priceOut Цена продажи за единицу товара
oldPriceOut Начальная цена продажи за единицу товара до ее изменения
priceRate Курс перевода цены в валюту сайта
priceInSiteCurrency Цена ПРОДАЖИ в валюте сайта
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
statusChangeDate Дата выставления статуса
isCanceled Флаг "Запрос на удаление позиции". 0 - запрос не был отправлен, 1 - запрос отправлен, 2 - запрос отклонен менеджером.
dateUpdated Дата обновления
lineReference Дополнительная информация (если было разделение позиции в ПУ то splitPositionId - id позиции от которой отделили текущую)
weight Вес товара
volume Объем товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
isDelete Признак "удаленная позиция"
noReturn признак невозвратности позици 1- нельзя вернуть, 0 - можно вернуть
locationsFullCodes системное поле ( коды ячеек хранения в ТС)
garageCarId Идентификатор автомобиля из гаража
vinQueryIds Если format=additional. Содержит массив идентификаторов vin-запросов Vinqu. Если позиция добавлена в заказ по ссылке из vin-запроса.

Узел notes содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор заметки
date Дата создания
author Имя автора(сотрудника) создавшего заметку
value Текст заметки

Получение информации о заказе

Операция: cp/order

Метод: GET

Принимает в качестве параметра онлайн-номер заказа. Возвращает информацию о заказе (в т. ч. список позиций заказа).

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
number Онлайн-номер заказа
internalNumber Номер заказа в учетной системе (например, в 1С). Используется только, если в параметрах запроса не задан number.
withDeleted Признак, возвращать ли в ответе удаленные заказы и позиции
format Формат ответа. Доступные значения: additional - к заказу будет дописан массив additional, содержащий данные клиента при гостевом заказе.

Пример запроса

https://demo.public.api.abcp.ru/cp/order?userlogin=username&userpsw=md5pass&number=75892367

Метод возвращает объект вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте
userName Имя клиента
userFullName Имя организации
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
comment Комментарий к заказу
debt Долг по оплате заказа
paid Признак равен 1 или true, если заказ был успешно оплачен онлайн на сайте.
dateUpdated Дата обновления
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
shipmentDate Дата отгрузки
basketId Идентификатор корзины
basketName Название корзины
managerId id менеджера , если заказ был создан менеджером
additional Может хранить в себе инфо об id сотрудника который оформил заказ на клиента, суммарный вес, признак только весь заказ и многое другое.

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

userEmail Электронная почта покупателя
userCode Внутренний код пользователя
code "Ячейка заказа", если подключена опция "Заказы: При обработке выводить пустую колонку для вывода дополнительной информации"
wholeOrderOnly Признак - 'Получить заказ целиком'
isDelete Признак "удаленный заказ"
positions Список позиций заказа.
notes Список заметок заказа.
clientOrderNumber Номер заказа клиента в его внутренней системе учета
isOfficialDistributor Признак официального дистрибьютора: true - да, false - нет. (если предоставлен поставщиком)

Узел notes содержит массив объектов описанных здесь

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
brandFix Очищеное имя производителя
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
distributorType Ти поставщика:20 - прайсовый, 21- дилерский прайс лист, 22- онлайн поставщик
distributorOrderId Если был выполнен перезаказ у поставщика средствами платформы ABCP, данное поле будет содержать номер заказа у поставщика.
distributorOrderView Если был выполнен заказ по API из ПУ поставщику средствами платформы ABCP, данное поле будет содержать закодированную информацию по отправленной позиции
supplierCode Код поставки от Вашего поставщика, которому вы из ПУ отправляете заказ . В данном случае код поставки НЕ является ID маршрута поставщика, а содержит в себе информацию о коде поставки, который передает вам ваш поставщик.

Тестирование online поставщика. Настройки поставщика. adkulan.kz (online). Поставщики - Google Chrome.jpg

dsRouteId ID маршрута поставщика
locationsFullCodes системное поле ( коды ячеек хранения в ТС)
itemKey Код позиции. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена поставщика за единицу товара
priceOut Цена продажи за единицу товара
oldPriceOut Начальная цена продажи за единицу товара до внесения изменений
priceRate Курс перевода цены в валюту сайта
priceInSiteCurrency Цена ПРОДАЖИ в валюте сайта
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
statusChangeDate Дата изменения статуса
isCanceled Флаг "Запрос на удаление позиции".0 - запрос не был отправлен, 1 - запрос отправлен, 2 - запрос отклонен менеджером.
dateUpdated Дата обновления
lineReference Дополнительная информация (если было разделение позиции в ПУ то splitPositionId - id позиции от которой отделили текущую)
weight Вес товара
volume объем товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
garageCarId Идентификатор автомобиля из гаража
isDelete Признак "удаленная позиция"
noReturn признак невозвратности позиции: 1 - нельзя вернуть, 0 - вернуть можно
vinQueryIds Массив идентификаторов vin-запросов Vinqu. Если позиция добавлена в заказ по ссылке из vin-запроса.

Получение истории изменений статуса позиции заказа

Операция: cp/order/statusHistory

Метод: GET

Принимает в качестве параметра id позиции заказа. Возвращает информацию об истории изменений статуса позиции заказа.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
positionId Номер позиции заказа

Пример запроса

https://demo.public.api.abcp.ru/cp/order/statusHistory?userlogin=username&userpsw=md5pass&positionId=123456789

Метод возвращает объект вида:

Поле Описание
statusCode Идентификационный номер статуса
status Название статуса
datetime Дата и время изменения статуса
managerId Идентификационный номер автора изменения
managerName Имя автора изменения


Пакетное получение истории изменений статусов позиций заказов

Операция: cp/orders/statusHistory

Метод: GET

Принимает в качестве параметра массив id позиций заказа. Позиции могут быть из разных заказов. Возвращает информацию об истории изменений статуса позиций заказов.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
positionsId Массив id позиций заказа

Пример запроса

https://demo.public.api.abcp.ru/cp/orders/statusHistory?userlogin=username&userpsw=md5pass&&positionsId%5B0%5D=469961941&positionsId%5B1%5D=162283919

Метод возвращает объект вида:

positions - представляет собой узел, который содержит информацию по принятым positionsId, в которых в свою очередь содержится инфо по статусам

Поле Описание
id Id позиции
statusCode Идентификационный номер статуса
status Название статуса
datetime Дата и время изменения статуса
managerId Идентификационный номер автора изменения
managerName Имя автора изменения


Достать заказ из архива

Операция: cp/orders/fromArchive

Метод: POST

Метод предназначен для извлечения заказов из архива.

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

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
orders Массив номеров заказов, которые нужно достать из архива

Пример запроса

https://demo.public.api.abcp.ru/cp/orders/fromArchive

Тело POST запроса

userlogin=username&userpsw=md5pass&orders[0]=123456789&orders[1]=987654321

Описание ответа

Метод возвращает статус 200 в случае успешного выполнения операции.

Иначе возвращается статус отличный от 200 и объект с полями:

Параметр Описание
errorCode Код ошибки
errorMessage Текст сообщения об ошибке

Вернуть заказ в архив

Операция: cp/orders/toArchive

Метод: POST

Метод предназначен для возврата заказов в архив.

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

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
dateTime Перенос всех заказов в архив до указанной даты. Дата в формате ГГГГ-ММ-ДД

Пример запроса

https://demo.public.api.abcp.ru/cp/orders/toArchive

Тело POST запроса

userlogin=username&userpsw=md5pass&dateTime=2023-09-30

Описание ответа

Метод возвращает статус 200 в случае успешного выполнения операции.

Иначе возвращается статус отличный от 200 и объект с полями:

Параметр Описание
errorCode Код ошибки
errorMessage Текст сообщения об ошибке

Сохранение заказа

Операция: cp/order

Метод: POST

Универсальный метод сохранения. Принимает в качестве параметра объект описывающий заказ. Для создания заказа от имени Гостя, необходимо передавать корректно заполненные параметры: guestOrderName и guestOrderMobile или guestOrderEmail, в зависимости от обязательности полей "Мобильный" или "Email" в форме создания гостевого заказа.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
order Объект описывающий заказ
clientOrderNumber Необязательный параметр - номер заказа в системе учета клиента

Объект описывающий заказ содержит следующие поля

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Внутренний номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте, для которого создается заказ
date Дата заказа
comment Комментарий к заказу
deliveryTypeId Тип доставки (изменения возможны только если нет привязок платежей)
deliveryOfficeId Идентификатор офиса самовывоза
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины
guestOrderName Необязательный параметр - имя клиента для оформления заказа от имени Гостя. Для корректного оформления заказа под гостем должны быть указаны параметры guestOrderName и guestOrderMobile.
guestOrderMobile Необязательный параметр - контактный телефон клиента для оформления заказа от имени Гостя. (в формате 70000000000). Для корректного оформления заказа под гостем должны быть указаны параметры guestOrderName и guestOrderMobile.
shipmentDate Дата отгрузки.
deliveryCost Стоимость доставки. Необязательный параметр
paid Признак может иметь значение 0 или 1 (false, true). 1 = заказ оплачен онлайн. Необязательный параметр.
deliveryAddressId Число. Идентификатор адреса доставки. Если нужно создать новый адрес, то нужно передать "-1" и в параметре deliveryAddress новый адрес доставки.
deliveryAddress Текст. Адрес доставки, в случае, когда необходимо сразу создать новый адрес нужно в deliveryAddressId передавать "-1" + адрес доставки
managerId id менеджера по заказу
positions Список позиций заказа.
notes Список заметок заказа.
clientOrderNumber Номер заказа в системе учета клиента

Если передан онлайн-номер, заказ будет отредактирован. Если передан внутренний номер заказа в учетной системе, портал попробует найти заказ с этим номером и при наличии отредактирует его, иначе - создаст новый заказ. Если не передан ни онлайн-номер, ни внутренний номер, метод вернет ошибку. Для корректного оформления заказа на имя гостя должны быть переданы параметры guestOrderName и guestOrderMobile или guestOrderEmail. В случае редактирования, все поля кроме number или internalNumber являются необязательными - указанные будут изменены. В случае создания нового заказа, поля internalNumber, userId, date и positions являются обязательными. Параметр userId (или guestOrderName и guestOrderMobile или guestOrderEmail для гостевого заказа) будет использоваться только при создании заказа, при редактировании будет проигнорирован (сменить владельца заказа невозможно).

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена поставщика за единицу товара
priceOut Цена продажи за единицу товара
priceRate Курс перевода цены в валюту сайта
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
deadlineInfo Текстовый срок поставки
routeId Идентификатор маршрута склада с которого производится заказ. Значение нужно брать из поля supplierCode операции поиска search/articles
supplierCode Код склада поставщика, которому Вы отправляете заказ (НЕ ID маршрута). Его необходимо указывать только при редактировании заказа, если вы хотите его переопределить. В иных случаях значение заполняется автоматически на основе переданного itemKey. При создании заказа параметр передавать не нужно. Если в имеющемся заказе значение будет пустым, то такую позицию нельзя будет отправить в заказ онлайн поставщику.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции, "Ваш ответ"
statusCode Код статуса позиции заказа
articleCode Внутренний код детали
garageCarId Идентификатор автомобиля из гаража
delete если передать значение 1, позиция будет удалена, в остальных случаях устанавливать не надо.
isCanceled Может принимать следующие значения: 0 - удаление не запрашивалось; 1 - клиентом запрошено удаление; 2 - в удалении отказано менеджером
vinQueryIds Массив числовых идентификаторов vin-запросов Vinqu. Необязательный параметр.

Особенности передачи параметра priceRate при работе с поставщиками, у которых валюта отличается от валюты сайта:

  1. Если передан параметр priceRate - для расчёта используется он (независимо от настроек).
  2. Если priceRate не передан, но включена хотя бы одна из опций:
  3. Если priceRate не передан и обе опции отключены - используется курс по умолчанию из настроек валют реселлера (курс ЦБ РФ или фиксированный курс).

Узел notes содержит массив объектов вида:

Поле Описание
id Идентификатор заметки
employeeId Идентификатор сотрудника от имени которого создастся заметка. Если значение пустое или не корректное - в качестве автора будет "API администратор"
value Текст заметки.

Заметки можно только добавить либо удалить. Для удаления - необходимо передать идентификатор заметки и пустое значение для поля value. Для добавления - необходимо указать value. employeeId - если нужно указать конкретного сотрудника а не "API администратора"

В случае редактирования заказа, могут быть указаны только позиции и поля, которые требуют изменения. В случае создания заказа, должны быть указаны все позиции со всеми полями (кроме полей comment, supplierCode и itemKey). При редактировании позиций обязательна передача параметра id. Если параметр id не передан, будет добавлена новая позиция. При добавлении позиции необходимо задать ей минимальные обязательные параметры для возможности дальнейшей работы с ней: бренд, номер, код статуса, количество, цену, код склада поставщика, идентификатор маршрута, сроки поставки. Для удаления позиции необходимо указать ей quantity 0 или установить параметр delete в значение 1.


vertical-align:middle;
Внимание!
Не выполняйте данную операцию параллельно в несколько потоков при создании заказов. В данном варианте использования необходимо выполнять ее только последовательно
vertical-align:middle;
Внимание!
При большом количестве позиций настоятельно рекомендуется сохранять пакетами не более чем по 100 позиций
vertical-align:middle;
Внимание!
Для этой операции существует ограничение на 500 позиций для одного заказа. При попытке добавить большее количество позиций, операция для этих позиций завершится с ошибкой

Пример запроса

https://demo.public.api.abcp.ru/cp/order

Параметры POST

userlogin=username&userpsw=md5pass&order[number]=5623478&order[internalNumber]=786593&order[positions][0][statusCode]=15&order[positions][0][id]=653463&order[positions][0][quantity]=10&order[notes][0][value]=текст заметки

Метод возвращает объект вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте, для которого создается заказ
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
debt Долг по оплате заказа
paid Признак равен 1 или true, если заказ был успешно оплачен онлайн на сайте.
comment Комментарий к заказу
dateUpdated Дата обновления
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
managerId id менеджера , если заказ был создан менеджером
userCode Внутренний код пользователя
code "Ячейка заказа", если подключена опция "Заказы: При обработке выводить пустую колонку для вывода дополнительной информации"
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
supplierCode (УСТАРЕЛО используйте для чтения значение dsRouteId) Код склада поставщика.
dsRouteId Код склада поставщика. Если в имеющемся заказе значение будет пустым, то такую позицию нельзя будет отправить в заказ онлайн поставщику.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена поставщика за единицу товара
priceOut Цена продажи за единицу товара
oldPriceOut Начальная цена продажи за единицу товара до внесения изменений
priceRate Курс перевода цены в валюту сайта
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
isCanceled Флаг "Запрос на удаление позиции"
dateUpdated Дата обновления
lineReference Дополнительная информация (если было разделение позиции в ПУ то splitPositionId - id позиции от которой отделили текущую)
weight Вес товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
garageCarId Идентификатор автомобиля из гаража
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
vinQueryIds Массив числовых идентификаторов vin-запросов Vinqu. Необязательный параметр.

При возникновении ошибки в процессе сохранения заказа, помимо ответа с актуальным содержимым текущего заказа, будет возвращен узел errors, содержащий описание возникшей ошибки.


Объединение заказов

Данная операция работает только в случае использования на сайте опции Заказы: вручную объединять заказы в ПУ

Операция работает аналогично ручному объединению через ПУ, имеет лимит на объединение не более 50 позиций за раз. Статистика вызовов в этой операции относится к операции "orders". Photo 2024-04-18 18-57-46.jpg

Пересчитываются сроки позиций, которые переносятся в другой заказ относительно даты нового заказа, чтобы дата "Ожидается" в новом заказе по возможности была та же, что в старом, которую клиент видит в ЛК. Если старый завершенный заказ объединить с новым, то срок пересчитается до 0, и дата "Ожидается" сравняется с датой заказа.

Операция: cp/order/merge

Метод: POST

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
orderId Номер основного заказа, в который в итоге нужно объединить указанные позиции
positionIds Массив ID позиций разных заказов, которые нужно объединить в один

Пример запроса

https://demo.public.api.abcp.ru/cp/order/merge

Параметры POST

userlogin=username&userpsw=md5pass&orderId=5623478&positionIds[0]=11111&positionIds[1]=222222

Метод возвращает объект вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте, для которого создается заказ
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
debt Долг по оплате заказа
paid Признак равен 1 или true, если заказ был успешно оплачен онлайн на сайте.
comment Комментарий к заказу
dateUpdated Дата обновления
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
managerId id менеджера , если заказ был создан менеджером
userCode Внутренний код пользователя
code "Ячейка заказа", если подключена опция "Заказы: При обработке выводить пустую колонку для вывода дополнительной информации"
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
supplierCode (УСТАРЕЛО используйте для чтения значение dsRouteId) Код склада поставщика.
dsRouteId Код склада поставщика. Если в имеющемся заказе значение будет пустым, то такую позицию нельзя будет отправить в заказ онлайн поставщику.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена поставщика за единицу товара
priceOut Цена продажи за единицу товара
oldPriceOut Начальная цена продажи за единицу товара до внесения изменений
priceRate Курс перевода цены в валюту сайта
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
isCanceled Флаг "Запрос на удаление позиции"
dateUpdated Дата обновления
lineReference Дополнительная информация (если было разделение позиции в ПУ то splitPositionId - id позиции от которой отделили текущую)
weight Вес товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
garageCarId Идентификатор автомобиля из гаража
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
vinQueryIds Массив числовых идентификаторов vin-запросов Vinqu. Необязательный параметр.

Заказ поставщику

Получение параметров для отправки online-заказа поставщику

Операция: cp/orders/online

Метод: GET

Это вспомогательная операция, которую необходимо выполнять перед отправкой online-заказа поставщику. Если для поставщика есть дополнительные параметры заказа или позиций заказа, то в ответ вы получите набор данных. На их основании нужно составить API запрос для отправки заказа. Если вы уже определились с какими параметрами будете отправлять заказы поставщику, то эту операцию вызывать нет необходимости, можно сразу переходить к методу отправки заказа.

Идентификаторы позиций, которые необходимо передавать в запросе, должны принадлежать одному поставщику. Т.е. за один API запрос операции cp/orders/online можно отправить позиции только одного поставщика. Если вам необходимо отправить позиции для двух поставщиков, то необходимо предварительно сгруппировать идентификаторы позиций и выполнить два запроса к cp/orders/online по каждому из поставщиков.

Кол-во идентификаторов позиций в одном запросе ограничено. За один API запрос отправить в заказ можно не более 20 позиций для сторонних поставщиков. Для поставщиков работающих на платформе ABCP ограничение - 100 позиций.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
positionIds Массив идентификаторов позиций, которые нужно отправить поставщику
orderParams[shipmentAddress] Необязательный параметр. Идентификатор адреса доставки, если не используется самовывоз. Актуально для некоторых поставщиков, которые передают список адресов доставки в параметре shipmentAddress и используют даты отгрузки shipmentDate. В зависимости от переданного id адреса вы получите в ответ корректные даты отгрузки. Если вы не знаете идентификатор адреса доставки, то сначала выполните запрос без него, возьмите нужное значение из fieldName: shipmentAddress -> enum -> value. После этого повторно отправьте запрос уже с указанием orderParams[shipmentAddress]=ID_адреса.

Параметры ответа

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

Параметр Тип Описание
orderParams array Массив объектов параметров заказа поставщика.
positionParams array Массив объектов параметров позиции поставщика.

Объект параметра заказа поставщику:

Объект enum параметра заказа поставщика:

Параметр Тип Описание
value string Значение параметра.
name string Название для отображения.
selected bool Если true, значит это значение параметра задано по умолчанию.

Объект параметра позиции поставщика:

Параметр Тип Описание
fieldName string Название параметра, который должен быть передан в запрос для отправки заказа поставщику.
type string Тип параметра. Возможные варианты: string, bool. Описание типов:
Параметр Элемент формы
string Текстовое значение с одной строкой.
bool Булевый тип. Возможные значение true/false или 1/0.
name string Название параметра для отображения в интерфейсе.
description string Описание параметра для отображения в интерфейсе.

Пример запроса

https://demo.public.api.abcp.ru/cp/orders/online?userlogin=username&userpsw=md5pass&positionIds[]=151056634&positionIds[]=151056635

Пример ответа

{
  "orderParams": [
    {
      "fieldName": "shipmentAddress",
      "type": "enum",
      "name": "Адрес доставки",
      "description": "",
      "value": "",
      "enum": [
        {
          "value": "0",
          "name": "Выберите адрес доставки или укажите другой адрес ниже",
          "selected": false
        },
        {
          "value": "77333",
          "name": "Москва, ул. Ленина 1",
          "selected": false
        }
      ]
    },
    {
      "fieldName": "comment",
      "type": "text",
      "name": "Комментарий",
      "description": "",
      "value": "",
      "enum": []
    },
    {
      "fieldName": "deliveryType",
      "type": "enum",
      "name": "Тип отгрузки*",
      "description": "",
      "value": "",
      "enum": [
        {
          "value": "3",
          "name": "Доставка",
          "selected": false
        },
        {
          "value": "2",
          "name": "Самовывоз",
          "selected": false
        }
      ]
    },
    {
      "fieldName": "deliveryDate",
      "type": "datepicker",
      "name": "Дата доставки*",
      "description": "",
      "value": "",
      "enum": []
    },
    {
      "fieldName": "deliveryTime",
      "type": "enum",
      "name": "Время доставки*",
      "description": "",
      "value": "",
      "enum": [
        {
          "value": "1",
          "name": "до 15:00",
          "selected": false
        },
        {
          "value": "2",
          "name": "после 15:00",
          "selected": false
        }
      ]
    },
    {
      "fieldName": "contactName",
      "type": "string",
      "name": "Контактное лицо",
      "description": "",
      "value": "",
      "enum": []
    }
  ],
  "positionParams": [
    {
      "fieldName": "comment",
      "type": "string",
      "name": "Комментарий",
      "description": ""
    }
  ]
}

Отправка online-заказа поставщику

Операция: cp/orders/online

Метод: POST

Идентификаторы позиций, которые необходимо передавать в запросе, должны принадлежать одному поставщику. Т.е. за один API запрос операции cp/orders/online можно отправить позиции только одного поставщика. Если вам необходимо отправить позиции для двух поставщиков, то необходимо предварительно сгруппировать идентификаторы позиций и выполнить два запроса к cp/orders/online по каждому из поставщиков.

Кол-во идентификаторов позиций в одном запросе ограничено. За один API запрос отправить в заказ можно не более 20 позиций для сторонних поставщиков. Для поставщиков работающих на платформе ABCP ограничение - 100 позиций.

В ответ вы можете получить один или несколько созданных заказов.

Отправка заказа аналогична отправке из панели управления. Если заказ оформлен успешно, то результат фиксируется в панели управления, чекбокс заменятся на номер заказа поставщика и его статус (если поставщик поддерживает передачу статуса). Если настроена синхронизация статусов, она также активируется для отправленных позиций.

Внимание! При работе с API поставщика, в большинстве случаев используется общая корзина при работе с сайтом поставщика и при работе с API. При отправке заказа поставщику последовательно выполняются запросы по предварительной очистке корзины, добавлению товара в корзину, чтение и отправка её в заказ. Очень важно не допустить параллельной отправки разных позиций одному поставщику. Так же в момент отправки заказа поставщику не должна производиться отправка заказов из панели управления abcp и работа с корзиной на сайте поставщика. В противном случае вы можете получить некорректные заказы, ошибки и задвоенные заказы с одинаковыми товарами.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
orderParams Массив параметров заказа, который нужно сформировать на основе операции "Получение параметров для отправки online-заказа поставщику". Если у поставщика нет параметров заказа, то параметр orderParams необязательный.
positions Массив данных с позициями заказов. Структура одного элемента массива в таблице ниже.

Объект позиции заказа

Параметр Описание
id Идентификатор отправляемой позциии заказа.
positionParams Массив параметров позиции, который нужно сформировать на основе операции "Получение параметров для отправки online-заказа поставщику". Если у поставщика нет параметров для позиций заказа, то параметр positionParams необязательный.

Параметры ответа

В ответе приходит массив заказов.

Объект заказа поставщика:

Параметр Тип Описание
number string Номер заказа.
status string Текстовое описание состояния заказа. Будет описание ошибки или что заказ оформлен успешно.
date string Дата создания заказа [ГГГГ-ММ-ДД ЧЧ:ММ:СС].
positions array Массив объектов позиций.

Объект позиции заказа поставщика:

Параметр Тип Описание
reference string В этом поле возвращается идентификатор позиции, которую вы отправляли.
id int Идентификатор позиции поставщика. Значение возвращается только для поставщиков работающих на платформе ABCP, для остальных будет возвращаться ноль.
brand string Бренд детали.
number string Артикул детали.
numberFix string Артикул детали, без спец. символов.
description string Описание детали.
supplierCode string Код маршрута поставщика.
quantity int Заказанное кол-во деталей.
price float Цена заказанной детали, в валюте сайта. Здесь может быть старая цена, по которой позиция отправлялась поставщику. Так и новая цена, которую поставщик передал, в случае её изменения. Для разных поставщиков разное поведение, поэтому цену можно использовать только в информационных целях, использовать её для финансовых расчётов недопустимо. Актуальную цену можно узнать обратившись к серверу поставщика через его API напрямую.
status array Массив результатов отправки позиции. Здесь могут передаваться ошибки, если они возникают в ходе отправки заказа. А также предупреждения об изменении цены и т.д.
confirmSend bool Если true значит позиция заказана у поставщика. Если false - значит произошла ошибка. Внимание! Даже если произошла ошибка, то заказ всё равно может быть создан на стороне поставщика. Мы опираемся на ответ, который получили или не получили от них. Если мы получили некорректный ответ или не дождались ответа от сервера поставщика, то считаем что заказ не создан. Не отправляйте запросы на отправку заказа поставщику повторно, пока не убедитесь в его отсутствии на стороне поставщика. Если сервер поставщика "завис" в момент запроса, то заказ может быть создан даже через несколько минут после отправки запроса. Не допускайте автоматизированной отправки дублей по заказам!

Пример запроса

https://demo.public.api.abcp.ru/cp/orders/online

Параметры POST Запрос сформирован на основе примера ответа операции "Получение параметров для отправки online-заказа поставщику".

orderParams[shipmentAddress]=77333&orderParams[comment]=Мой комментарий к заказу&orderParams[deliveryType]=3&orderParams[deliveryDate]=2020-06-26&orderParams[deliveryTime]=2&orderParams[contactName]=Иванов Иван&positions[0][id]=151056634&positions[0][positionParams][comment]=Мой комментарий к позиции 151056634&positions[1][id]=151056635&positions[1][positionParams][comment]=Мой комментарий к позиции 151056635

Пример ответа

[
    {
        "number": "49685780",
        "status": "Принят",
        "date": "2020-06-26 12:10:16",
        "positions": [
            {
                "reference": "151056634",
                "id": 153014210,
                "brand": "Febi",
                "number": "01089",
                "numberFix": "01089",
                "description": "Антифриз зелёно-синий 1,5L VW-Audi",
                "supplierCode": "27185",
                "quantity": 1,
                "price": 350,
                "status": [
                    "Позиция успешно добавлена в корзину",
                    "Изменение цены 370 -> 350",
                    "Позиция успешно отправлена в заказ"
                ],
                "confirmSend": true
            }
        ]
    },
    {
        "number": "с ошибкой #1",
        "status": "Статус заказа не определен",
        "date": "2020-06-26 12:10:16",
        "positions": [
            {
                "reference": "151056635",
                "id": 0,
                "brand": "Mahle/Knecht",
                "number": "OC90",
                "numberFix": "OC90",
                "description": "Фильтр масляный Opel",
                "supplierCode": "27185",
                "quantity": 10,
                "price": 92,
                "status": [
                    "Позиция успешно добавлена в корзину",
                    "Ошибка при отправке заказа: Нет нужного кол-ва"
                ],
                "confirmSend": false
            }
        ]
    }
]

Пример ответа с общей ошибкой

{
    "errorCode": 200,
    "errorMessage": "Позиция 151056635 уже была отправлена поставщику в заказ ранее."
}

Финансы

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

Операция: cp/finance/userBalance

Метод: POST

Изменяет баланс клиента. Принимает в качестве параметра текущий баланс пользователя (float) в валюте сайта и идентификатор пользователя на сайте. Идентификатор пользователя - это уникальное значение для всей системы, которое может не совпадать со значением поля "Код клиента" в карточке клиента. Узнать его можно, либо из URL карточки клиента, например, https://cp.abcp.ru/?page=customers&customerId=353169&action=editCustomer - в данном случае идентификатор клиента это значение параметра customerId, а именно, 353169; либо, при использовании синхронизации пользователей с помощью операции GET cp/users, идентификатор пользователя возвращается в поле userId.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс.
balance Значение баланса в валюте сайта
inStopList Признак нахождения клиента в стоп-листе (необязательный параметр)

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/userBalance

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&balance=189.19

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

Поле Описание
userId Идентификатор клиента на сайте.
balance Текущий баланс клиента.
inStopList Признак нахождения клиента в стоп-листе

Обновление лимита кредита клиента

Операция: cp/finance/creditLimit

Метод: POST

Изменяет лимит кредита клиента. Принимает в качестве параметра текущий лимит кредита пользователя (float) в валюте сайта и идентификатор пользователя на сайте.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс.
creditLimit Значение лимита кредита в валюте сайта

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/creditLimit

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&creditLimit=10000

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

Поле Описание
userId Идентификатор клиента на сайте.
creditLimit Значение лимита кредита в валюте сайта

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

Операция: cp/finance/userInfo

Метод: POST

Изменяет финансовую информацию клиента. Принимает в качестве параметров идентификатор пользователя на сайте и финансовую информацию пользователя.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс
balance Текущий баланс клиента
creditLimit Значение лимита кредита в валюте сайта
inStopList Признак нахождения клиента в стоп-листе
payDelay Отсрочка платежа(в днях)
overdueSaldo Просроченная задолженность

Обязательно наличие как минимум одного из полей (balance, creditLimit, inStopList, payDelay, overdueSaldo).

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/userInfo

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&balance=10000&creditLimit=2000&inStopList=0&payDelay=4&overdueSaldo=6500

В случае успешного обновления, метод возвращает актуальное значение финансовой информации пользователя:

Поле Описание
userId Идентификатор клиента на сайте
balance Текущий баланс клиента
creditLimit Значение лимита кредита в валюте сайта
inStopList Признак нахождения клиента в стоп-листе
payDelay Отсрочка платежа(в днях)
overdueSaldo Просроченная задолженность
stoplistDateTime Дата попадания в стоп-лист

Получение информации об оплатах из финмодуля

Операция: cp/finance/payments

Метод: GET

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте
paymentNumber Номер платежа
createDateTimeStart Начальный порог даты создания платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
createDateTimeEnd Конечный порог даты создания платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС

Параметры paymentNumber, userId необязательные. Если указан paymentNumber, то createDateTimeStart и createDateTimeEnd могут не указываться. Если интервал дат выбран больше года, то в ответе получаем ошибку "Сократите диапазон дат и выполните запрос снова. Диапазон не должен превышать 1 год."

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/payments?userlogin=username&userpsw=md5pass&userId=5623478&paymentNumber=НАЛ00032

Метод возвращает массив объектов вида:

Поле Описание
paymentId Уникальный идентификатор платежа
paymentNumber номер платежа
paymentTypeId id типа платежа
createDateTime дата платежа
paymentType Тип платежа
paymentTypeCode Код типа платежа: 0 - Безналичный, 1 - Электронный, 2 - Наличный
amount сумма платежа
rest остаток
editorId id сотрудника,кем платеж был внесен/изменен.Если платеж был внесен автоматически (электронный) то значение параметра "0"
userId Идентификатор клиента на сайте
comment комментарий к платежу
onlinePaymentId ID онлайн-оплаты
komtetCheckId id чека, больше 0, если по платежу был создан чек.

Получение информации о привязках платежей из модуля Финансы

Операция: cp/finance/paymentOrderLinks

Метод: GET

Возвращает список привязок платежей из модуля Финансы.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
paymentNumbers массив с номерами платежей
orderIds массив с номерами заказов,если передать orderIds[]=0 и диапазон дат, то можно получить список возвратов за период
userId Идентификатор пользователя на сайте
DateTimeStart Начальный порог даты создания привязки формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
DateTimeEnd Конечный порог даты создания привязки формат ГГГГ-ММ-ДД ЧЧ:ММ:СС

При запросе указывать либо paymentNumbers либо orderIds либо userId с DateTimeStart и DateTimeEnd.

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/paymentOrderLinks?userlogin=username&userpsw=md5pass&paymentNumbers[]=НАЛ00032

Метод возвращает массив объектов вида:

Поле Описание
paymentLinkId id привязки платежа
paymentId id платежа
createDateTime дата/время создания привязки платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
orderId номер заказа (если номер заказа "0" - значит это Возврат средств)
amount сумма платежа
editorId id сотрудника, добавившего привязку. Если параметр равен "0", то привязка автоматическая.
paymentNumber номер платежа из ПУ в виде "НАЛ00010"

В запросе возможно фильтровать по paymentId или orderId с возможностью передавать массив платежей или заказов.

Получение списка online платежей

Операция: cp/onlinePayments

Метод: GET

Возвращает список online платежей. Обязательные параметры только userlogin и userpsw.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
filter массив с параметрами фильтра

Допустимые параметры фильтра

Параметр Описание
dateStart Дата начало периода для выбора платежей. Формат: ГГГГ-ММ-ДД или ГГГГ-ММ-ДД ЧЧ:ММ:СС
dateEnd Дата конца периода для выбора платежей. Формат: ГГГГ-ММ-ДД или ГГГГ-ММ-ДД ЧЧ:ММ:СС
customerIds Массив идентификаторов клиентов. Не более 100 штук в одном запросе.
paymentMethodId Идентификатор платежной системы. Получить можно из cp/users/profiles или в панели управления.
statusIds Массив идентификаторов статусов платежей:

1 - Начата 2 - Завершена 3 - Неудача 4 - В обработке

orderIds Массив идентификаторов заказов. Не более 100 штук в одном запросе.

Если в запросе параметры filter[dateStart] и filter[dateEnd] не переданы, то вернутся платежи за последние 7 дней.

Пример запроса

https://demo.public.api.abcp.ru/cp/onlinePayments?userlogin=username&userpsw=md5pass&filter[dateStart]=2018-10-01&filter[dateEnd]=2018-10-05&filter[customerIds][]=507186&filter[statusIds][]=1&filter[orderIds][]=22668371&filter[orderIds][]=15368959

Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор платежа
dateTime Дата и время платежа в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС
orderId номер заказа
paymentStatusId Идентификатор статуса платежа.
paymentStatusName Название статуса платежа.
customerId Идентификатор клиента.
customerName Имя клиента или сотрудника.
paymentMethodId Идентификатор платежной системы.
paymentMethodName Название платежной системы.
amount Сумма платежа.
commission Комиссия платежа.
comment Комментарий.

Добавление оплат

Операция: cp/finance/payments

Метод: POST

Добавляет платежи клиентам. Возвращает массив добавленных платежей.

Параметры запроса
Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
payments Массив с оплатами
linkPayments Параметр, отвечающий за автоматическую привязку платежей к заказам. 0 - не привязывать, 1 - привязывать

Массив оплат payments должен содержать следующие поля

Параметр Описание
userId Идентификатор пользователя на сайте, которому добавляется оплата
paymentNumber Номер платежа, максимум 64 символа. Необязательный параметр. Если передан пустой, то номер генерируется автоматически по маске переданного типа платежа
createDateTime Дата и время платежа, в формате ГГГГ-ММ-ДД чч:мм:сс (например 2018-01-01 00:00:00)
paymentTypeId Id типа платежа
amount Сумма платежа
comment Комментарий к платежу (не обязательное)
editorId Id сотрудника, которым был внесён платёж (не обязательное)

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/payments

Тело POST запроса

userlogin=username&userpsw=md5pass&payments[0][userId]=1&payments[0][paymentTypeId]=1&payments[0][amount]=10&payments[0][createDateTime]=2018-11-16 16:04:00&payments[0][paymentNumber]=НАЛ00111&payments[1][userId]=1&payments[1][paymentTypeId]=2&payments[1][amount]=2&payments[1][paymentNumber]=НАЛ00002&payments[1][createDateTime]=2018-11-16 16:05:00

Метод возвращает массив содержащий информацию о добавленных платежах:

Поле Описание
paymentNumber Номер платежа
paymentTypeId Id типа платежа
createDateTime Дата платежа
paymentType Тип платежа
paymentTypeCode Код типа платежа: 0 - Безналичный, 1 - Электронный, 2 - Наличный
amount Сумма платежа
rest Остаток
editorId Id сотрудника, которым был внесён платёж. Если платёж был внесен автоматически(электронный), то значение параметра "0"
userId Идентификатор клиента на сайте
comment Комментарий к платежу
onlinePaymentId ID онлайн-оплаты
paymentId ID созданного платежа

Удаление привязки оплаты

Операция: cp/finance/deleteLinkPayments

Метод: POST

Удаляет привязку оплаты, увеличивает долг заказу, к которому была сделана привязка, на сумму удаляемой привязки, увеличивает остаток оплаты на сумму удаляемой привязки, клиенту пересчитывает сальдо и долг по заказам.

Внимание!

С помощью одного запроса данная операция позволяет удалить только одну привязку. Массовое удаление недоступно.

Параметры запроса
Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
paymentLinkId Id привязки, которую нужно удалить.

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/deleteLinkPayments

Тело POST запроса

userlogin=username&userpsw=md5pass&paymentLinkId=Id

В случае успешного удаления привязки, метода возвращает возвращается в формате текст/plain и содержит строку:

successfully deleted {paymentLinkId}

где {paymentLinkId} — идентификатор удаленной привязки.

Операция привязки по ранее добавленному платежу

Операция: cp/finance/paymentOrderLink

Метод: POST

Позволяет осуществлять привязку ранее созданного платежа

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
paymentId id платежа.
orderId id заказа по которому делается привязка.
amount Сумма привязки.

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/paymentOrderLink

Тело POST запроса

userlogin=username&userpsw=md5pass&paymentId=1221&orderId=44997785&amount=1500

Метод возвращает объект вида:

Поле Описание
paymentLinkId id привязки платежа
paymentId id платежа
paymentNumber номер платежа из ПУ в виде "НАЛ00010"
createDateTime дата/время создания привязки платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
orderId номер заказа
amount сумма платежа
editorId id сотрудника, добавившего привязку.

Операция возврата платежа

Операция: cp/finance/paymentRefund

Метод: POST

Позволяет осуществлять возврат ранее созданного платежа

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
refundPaymentId id платежа
refundAmount Сумма возврата.

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/paymentRefund

Тело POST запроса

userlogin=username&userpsw=md5pass&refundPaymentId=1221&refundAmount=1500

Метод возвращает объект вида:

Поле Описание
paymentLinkId id привязки платежа
paymentId id платежа
paymentNumber номер платежа из ПУ в виде "НАЛ00010"
createDateTime дата/время создания привязки платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
amount сумма платежа
editorId id сотрудника, добавившего привязку.

Операция удаления оплат

Операция: cp/finance/deletePayments

Метод: POST

Удаляет платежи клиентам. Уменьшает баланс/увеличивает долг. Возвращает либо статус успешного удаления либо ошибку (не удалены привязки, электронный платеж удалить нельзя).

С помощью одного запроса данная операция позволяет удалить только один платеж. Массовое удаление недоступно.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
paymentId Id платежа, который нужно удалить
deleteLink (необязательный) Параметр, отвечающий за автоматическое удаление привязки платежей . 0 - не удалять, 1 - удалять

По умолчанию, если не передан 0 - не удалять

Пример запроса

https://demo.public.api.abcp.ru/cp/finance/deletePayments

Тело POST запроса

userlogin=username&userpsw=md5pass&paymentId=1221


Получение списка чеков

Операция: komtet/getChecks

Метод: GET

Позволяет получить данные о чеках Комтет.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
shopId ID магазина
queueId ID очереди
dateCreatedStart Начальная дата создания чека в формате ГГГГ-ММ-ДД.
dateCreatedEnd Конечная дата создания чека в формате ГГГГ-ММ-ДД.
calculationMethod Способ расчета: 0 - Предоплата 100%, 1 - Предоплата, 2 - Полный расчет, 3 - Аванс, 4 - Частичный расчет и кредит, 5 - Оплата кредита, 6 - Передача в кредит.
printPaperCheck Был ли запрос печати бумажного чека: 0 - Нет, 1 - Да.
vat Налог: 5 - Без НДС, 0 - НДС по ставке 0%, 3 - НДС чека по расчетной ставке 10/110, 4 - НДС чека по расчетной ставке 20/120.
calculationSubject Предмет расчета: 0 -товар, 1 - работа, 2 - услуга, 3 - платеж.
paymentType Оплата: 0 - Безналичными, 1 - Наличными, 2 - Предоплата, 3 - Постоплата, 4 - Встречное предоставление.
type Тип чека: 0 - чек, 1- чек коррекции.
taxSystem Система налогообложения: 0 - ОСН, 1 - УСН доход, 2 - УСН доход - расход, 3 - ЕНВД, 4 - ЕСН, 5 - Патент.
intent Направление платежа: 0 - Приход, 1 - Расход, 2 - Возврат прихода, 3 - Возврат расхода.
fiscalization Фискализирован: 0 - Нет, 1 - Да.
employeeId id сотрудника, отправившего чек.
clientId id клиента.
start Отсчет чеков
rowsOnPage Количество "на странице"

Пример запроса

https://demo.public.api.abcp.ru/komtet/getChecks?
userlogin=username&userpsw=md5pass&employeeId=1221

Метод возвращает объект вида:

Поле Описание
id id чека
resellerId системный код сайта в системе
type Тип чека: 0 - чек, 1- чек коррекции.
queueId ID очереди
shopId ID магазина
clientId id клиента.
clientEmail контакт клиента в чеке
taxSystem Система налогообложения: 0 - ОСН, 1 - УСН доход, 2 - УСН доход - расход, 3 - ЕНВД, 4 - ЕСН, 5 - Патент.
vat Налог: 5 - Без НДС, 0 - НДС по ставке 0%, 3 - НДС чека по расчетной ставке 10/110, 4 - НДС чека по расчетной ставке 20/120.
intent Направление платежа: 0 - Приход, 1 - Расход, 2 - Возврат прихода, 3 - Возврат расхода.
calculationMethod Способ расчета: 0 - Предоплата 100%, 1 - Предоплата, 2 - Полный расчет, 3 - Аванс, 4 - Частичный расчет и кредит, 5 - Оплата кредита, 6 - Передача в кредит.
calculationSubject Предмет расчета: 0 -товар, 1 - работа, 2 - услуга, 3 - платеж.
printPaperCheck Был ли запрос печати бумажного чека: 0 - Нет, 1 - Да.
paymentAmount Сумма чека
advanceAmount Сумма аванса
paymentType Оплата: 0 - Безналичными, 1 - Наличными, 2 - Предоплата, 3 - Постоплата, 4 - Встречное предоставление.
cashierName Имя кассира
cashierINN ИНН кассира
correctionType Тип чека коррекции: 0 - Коррекция прихода, 1 - Коррекция расхода
correctionDate Дата
correctionNumber Номер чека коррекции
correctionDescription Описание коррекции
printerName Название принтера
isSent
fiscalization Фискализирован: 0 - Нет, 1 - Да.
paymentId
data
positions

Узел positions содержит массив объектов вида:

Поле Описание
id системный ID позиции чека
resellerId системный код сайта в системе
checkId ID чека
name Название позиции чека
cost Стоимость позиции чека
quantity Количество, шт
sum Сумма
discount Скидка
orderPositionId ID позиции заказа, по которой пробит чек
data

Пользователи

Получение списка пользователей

Операция: cp/users

Метод: GET

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
dateRegistredStart Начальная дата регистрации в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateRegistredEnd Конечная дата регистрации в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedStart Начальная дата последнего обновления в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedEnd Конечная дата последнего обновления в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
state Состояние клиента. Значения:


-1 - отклоненный,

0 - ожидает регистрации,

1 - зарегистрированный,

2 - удаленный.

customerStatus Идентификатор статуса покупателя, если указать 0 - будут выбраны пользователи без статуса
customersIds Массив идентификаторов покупателей
marketType Тип регистрации. Значение от 1 до 2:

1 - Розница 2 - Опт

phone Номер телефона клиента
email E-mail клиента
organizationName Название организации контрагента. Если указано, будут выбраны все клиенты, название которых начинается с переданной строки. Минимальный размер длины параметра - 4 символа.
safeMode "Безопасный режим" для клиентов не имеющих поддержки формата JSON. Может принимать значения 0,1 или 2. При включении (1), адреса доставки в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение". При включении (2), адреса доставки и список офисов в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение".
format Формат ответа. Доступные значения:
  • p - клиенты содержатся в поле items, данные о количестве содержатся в поле count
pickupState Признак запрета отображения Самовывоза для клиента
limit Количество возвращаемых записей клиентов(число, по умолчанию - 1000).

Чтобы получить информацию о количестве записей используйте параметр format со значением p

skip кол-во клиентов, которые нужно пропустить. (число, по умолчанию - 0)
desc обратное направление сортировки (булево, по умолчанию - false)

Если указан только параметр dateRegistredStart/dateUpdatedStart, будут выбраны все пользователи, зарегистрированные начиная с этой даты. При указании фильтра по дате обновления, будут выбраны как новые пользователи, так и обновленные, попадающие под действие фильтра.

Внимание! По умолчанию количество возвращаемых записей ограничено 1000. Чтобы определить конкретное количество, используйте параметр format со значением p.

Пример запроса

https://demo.public.api.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&dateUpdatedStart=2013-08-02 00:00:00&state=0
 или
https://demo.public.api.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&customersIds[]=574823&customersIds[]=86954&customersIds[]=56234786
 или
https://demo.public.api.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&customersIds[0]=574823&customersIds[1]=86954&customersIds[2]=56234786

Метод (кроме запуска с использованием параметра format со значением p) возвращает массив объектов вида:

Параметр Описание
userId Идентификатор пользователя
marketType Тип регистрации. Значение от 1 до 2:
  1. Розница
  2. Опт
business Тип организации. Значение от 1 до 6:
  1. Автопарк
  2. Автосервис
  3. Автосервис + Магазин
  4. Дистрибьютор
  5. Интернет-магазин
  6. Магазин
email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
birthDate Дата рождения, формат YYYY-MM-DD
regionId Код региона
city Город
countryCode Код страны
phone Номер телефона
enableSms Производится ли отправка SMS клиенту
mobile Номер мобильного телефона
memberOfClub Название автоклуба
excludeCart Исключить позиции корзины из расчета блокировки при достижении лимита кредита
icq ICQ UIN
skype Skype
state Состояние аккаунта. Значения:


-1 - отклоненный,

0 - ожидает регистрации,

1 - зарегистрированный,

2 - удаленный.

registrationDate Дата регистрации аккаунта.
updateTime Дата последнего обновления аккаунта.
profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
okpo ОКПО
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
bin БИН юридических лиц и ИП для пользователей с Казахстана
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
customerStatus Идентификатор статуса покупателя
deliveryAddress Адреса доставки (массив, где ключи - id адресов)
comment Комментарий пользователя
employeeId Идентификатор личного менеджера
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee3Id Третий идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee4Id Четвертый идентификатор личного менеджера клиентской службы (дополнительная опция)
balance Ручной баланс клиента, заполняется по API извне.
debt Долг по заказам клиента
saldo = (Долг по заказам) - (Непривязанные платежи)
creditLimit Текущий лимит кредита клиента
inStopList Флаг "В стоп-листе"
payDelay Отсрочка платежа
overdueSaldo Просроченная задолженность
stopListDateIn Дата попадания в стоп-лист (если inStopList = 1) в формате YYYY-MM-DD
offices Массив офисов, к которым привязан клиент
baskets Массив корзин (мультикорзина)
managerComment комментарий менеджера из поля "Комментарий менеджера:" карточки клиента
defaultOffice Идентификатор офиса клиента по умолчанию.
businessName тип организации из поля "Тип:" в буквенном обозначении (Автопарк, Дистрибьютор, Магазин и т.д.). карточки клиента
userCode Внутренний код пользователя
pickupState Признак запрета Самовывоза для клиента
items Cписок (массив) клиентов, удовлетворяющих заданным фильтрам (поле отображается при использовании параметра format со значением p).
count Количество клиентов, удовлетворяющих заданным фильтрам (поле отображается при использовании параметра format со значением p)

При использовании параметра format со значением p ответ на запрос содержит поля:

items Cписок (массив) клиентов, удовлетворяющих заданным фильтрам. Массив представляет собой список пользователей, который был бы ответом запроса без использования параметра format со значением p.
count Количество клиентов, удовлетворяющих заданным фильтрам

Создание пользователя

Операция: cp/user/new

Метод: POST

Принимает параметры для регистрации пользователя. Осуществляет регистрацию нового пользователя в системе. Возвращает статус выполнения операции регистрации, учетные данные нового пользователя, а так же сообщение об ошибке в случае возникновения таковой.


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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
marketType Тип регистрации:
  1. Розница
  2. Опт
filialId Код филиала (если имеются)
name Имя
secondName Отчество
surname Фамилия
password Пароль
birthDate Дата рождения, формат YYYY-MM-DD
mobile Номер мобильного телефона
memberOfClub Название автоклуба
office Идентификатор офиса
email Адрес электронной почты
icq ICQ UIN
skype Skype
regionId Код региона
city Город
countryCode Код страны
organizationName Наименование организации
business Тип организации. Принимает следующие значения:

-1 - Розница (соответствует обычному физ. лицу)

0 - Опт

1 - Опт: Автосервис

2 - Опт: Магазин

3 - Опт: Автопарк

5 - Опт: Интернет-магазин

10 - Опт: Другое

11 - Опт: Автосервис + Магазин

12 - Опт: Дистрибьютор

organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
bin БИН юридических лиц и ИП для пользователей с Казахстана
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адрес доставки
deliveryAddressZone Идентификатор зоны адреса доставки
comment Комментарий
profileId Идентификатор профиля. Если не указан, будет выставлен профиль по умолчанию для соответствующего типа регистрации (опт или розница).
pickupState Запрет самовывоза для клиента. 0 - запретить самовывоз, 1- разрешить самовывоз. Параметр актуален только если у вас на сайте включена опция: "Корзина: запрет самовывоза определенным клиентам".
userCode Внутренний код пользователя
individualReturnPeriod Индивидуальный срок возврата товара (дни). Параметр актуален только если у вас на сайте включена опция: "Показать в карточке клиента поле для указания индивидуального срока возврата".

Пример запроса

https://demo.public.api.abcp.ru/cp/user/new

Параметры POST

marketType=1&name=Василий&surname=Васильев&password=12345&mobile=79000000000&email=vasya@mail.ru&regionId=77&city=Москва&deliveryAddress=ул. Ленина, д.2&comment=

Поля ответа

Поле Описание
status Статус выполнения операции
userCode Внутренний код пользователя. Необходим для активации.
activationCode Код активации, если включена
errorMessages Массив сообщений об ошибках, если статус = 0
activationEmailSend Если используется опция "Регистрация: активация", нужно добавить в запрос этот параметр со значением "1", чтобы создаваемому клиенту пришло письмо с кодом активации.

Получение списка профилей

Операция: cp/users/profiles

Метод: GET

Возвращает список всех профилей.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
profileId Идентификатор профиля. Необязательный параметр. По умолчанию возвращаются все профили.
skip Кол-во профилей, которые нужно пропустить. Необязательный параметр. По умолчанию: 0.
limit Кол-во профилей в ответе. Необязательный параметр. Допустимые значения от 1 до 100. По умолчанию возвращаются все профили.
format Формат ответа. Необязательное значение Может принимать значения: "distributors" - выводить информацию по наценкам на поставщиков; "brands" - выводить информацию по наценкам на поставщиков и бренды.

Пример запроса

https://demo.public.api.abcp.ru/cp/users/profiles?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
paymentTypes Типы платежей
matrixPriceUps Наценки от стоимости товара
excludedBrands Исключенные из поиска бренды
excludedProductGroups Исключенные из поиска группы товаров
distributorsPriceUps Наценки по поставщикам (выводится если format установлен в значение distributors или brands)
baseProfileId Идентификатор базового профиля (возвращается только при подключении опции Профили: использовать групповое сохранение)

Узел paymentMethods содержит массив объектов вида:

Параметр Описание
id Идентификатор платежной системы
name Наименование платежной системы
isEnabled Признак включения платежной системы для клиентов этого профиля

Узел matrixPriceUps содержит массив объектов вида:

Параметр Описание
from Цена от
to Цена до
priceUp Наценка
fixedMarkup Фикс. надбавка

Узел distributorsPriceUps содержит массив объектов вида:

Параметр Описание
id Идентификатор поставщика
name Наименование поставщика
isEnabled Признак включения поставщика для клиентов этого профиля
priceUp Наценка на поставщика
brandsPriceUps Наценки на бренды поставщика (выводится, если format выставлен в значение brands)
isPricePriceupDisabled Выкл. наценку в зависимости от цены товара (false — Нет, true — Да)

Узел brandsPriceUps содержит массив объектов вида:

Параметр Описание
name Название бренда
priceUp Наценка на поставщика

Обновление профиля

Операция: cp/users/profile

Метод: POST

Изменяет профиль. Принимает в качестве параметров идентификатор профиля на сайте и всю информацию о профиле, возвращаемую операцией cp/users/profiles в формате brands. Работает только при выключенной опции Профили: использовать групповое сохранение, иначе возвращает ошибку.

Если не указать идентификатор профиля, будет создан новый. В данном случае, обязательными параметрами будут name и priceUp.

При необходимости создать профиль - сначала нужно его создать, а затем задать ему настройки, то есть выполнять 2 операции пошагово.

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
paymentTypes Типы платежей
matrixPriceUps Наценки от стоимости товара
distributorsPriceUps Наценки по поставщикам

Обязательно наличие как минимум одного из полей (code, name, comment, priceUp, paymentMethods, paymentTypes, matrixPriceUps, distributorsPriceUps).

Пример запроса

https://demo.public.api.abcp.ru/cp/users/profile

Тело POST запроса

userlogin=username&userpsw=md5pass&profileId=12345&priceUp=13


Узел paymentMethods содержит массив объектов вида:

Параметр Описание
id Идентификатор платежной системы
isEnabled Признак включения платежной системы для клиентов этого профиля

Пример тела запроса для исключения платёжной системы из профиля:

&paymentMethods[0][id]=id&paymentMethods[0][isEnabled]=0

Узел paymentTypes содержит массив объектов вида:

Параметр Описание
id Идентификатор типа платежа
isEnabled Признак включения типа платежа для клиентов этого профиля (допустимые значения: 0 и 1)

Узел matrixPriceUps содержит массив объектов вида:

Параметр Описание
from Цена от
to Цена до
priceUp Наценка
fixedMarkup Фикс. надбавка

Узел distributorsPriceUps содержит массив объектов вида:

Параметр Описание
id Идентификатор поставщика
name Наименование поставщика
isEnabled Признак включения поставщика для клиентов этого профиля (допустимые значения: 0 и 1)
priceUp Наценка на поставщика
brandsPriceUps Наценки на бренды поставщика
groupsPriceUps Наценки на группу товаров по любому бренду
brandsAndGroupsPriceUps Наценки на бренды и группу товаров одновременно
isPricePriceupDisabled Выкл. наценку в зависимости от цены товара (0 — Нет, 1 — Да)

Узел brandsPriceUps не обязателен, если он отсутствует, то наценки по брендам не изменяются.

Внимание! Если передается узел brandsPriceUps, то все наценки по брендам удаляются и заполняются из переданных параметров.

Узел brandsPriceUps содержит массив объектов вида:

Параметр Описание
name Название бренда
priceUp Наценка на поставщика
groupName Название группы товаров
isOnlyOneUsed Признак "Единственная применяемая наценка, true / false

Узел groupsPriceUps содержит массив объектов вида:

Параметр Описание
priceUp Наценка на поставщика
groupName Название группы товаров
isOnlyOneUsed Признак "Единственная применяемая наценка, true / false

Узел brandsAndGroupsPriceUps содержит массив объектов вида:

Параметр Описание
brandName Название бренда
priceUp Наценка на поставщика
groupName Название группы товаров
isOnlyOneUsed Признак "Единственная применяемая наценка, true / false

В случае успешного обновления, метод возвращает актуальную информацию о профиле (формат узлов тотже):

Параметр Описание
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
paymentTypes Массив подключенных к профилю id типов платежей
excludedBrands Исключенные из поиска бренды
excludedProductGroups Исключенные из поиска группы товаров
matrixPriceUps Наценки от стоимости товара
distributorsPriceUps Наценки по поставщикам

Обновление данных пользователя

Операция: cp/user

Метод: POST

Осуществляет обновление данных пользователя, присланных в запросе.

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор изменяемого клиента
business Тип организации. Принимает следующие значения:

-1 - Розница (соответствует обычному физ. лицу)

0 - Опт

1 - Опт: Автопарк

2 - Опт: Автосервис

3 - Опт: Автосервис + Магазин

4 - Опт: Дистрибьютор

5 - Опт: Интернет-магазин

6 - Опт: Магазин

email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
password Необязательный параметр. Предназначен для изменения пароля пользователя
birthDate Дата рождения, формат YYYY-MM-DD
city Город
countryCode Код страны
phone [устарел, не используется] Номер телефона
mobile Номер мобильного телефона
icq ICQ UIN
skype Skype
enableSms Производится ли отправка SMS клиенту
state Состояние аккаунта. Значения:


-1 - отклоненный,

0 - ожидает регистрации,

1 - зарегистрированный,

2 - удаленный.

profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
bin БИН юридических лиц и ИП для пользователей с Казахстана
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адреса доставки (массив, где ключи - id адресов). Если передать пустой параметр deliveryAddress, то все адреса клиента будут удалены! Если необходимо добавить новый адрес, то используйте в качестве ключа любое отрицательное число, например deliveryAddress[-1] = 'Здесь новый адрес'. Если Вы изменяете один из адресов, то необходимо передать все имеющиеся адреса клиента. Если этого не сделать, то не переданные адреса клиента будут удалены.
deliveryAddressZone Массив, где ключи - id адресов доставки, а значения - id зон. Если параметр не передан, то ничего не меняется, если есть новый адрес доставки, то он добавляется с пустой зоной. Если параметр передан с пустым значением, то все зоны адресов клиента будут очищены (записано пустое значение). Если передаются новые адреса доставки через отрицательные индексы (deliveryAddress[-1]='Москва Пушкинская д.1'), то можно указать такой же параметр и для зоны (deliveryAddressZone[-1] = 7788. Если меняется хотя бы одна зона, то необходимо передать все имеющиеся зоны адресов клиента. Если этого не сделать, то не переданные зоны адреса клиента будут очищены.
baskets Корзины клиента (массив, где ключи - id корзин). Если передать пустой параметр baskets, то все корзины клиента будут удалены! Если необходимо добавить новую корзину, то используйте в качестве ключа любое отрицательное число, например baskets[-1] = 'Здесь новое название корзины'. Если Вы изменяете одну из корзин, то необходимо передать все имеющиеся корзины клиента. Если этого не сделать, то не переданные корзины клиента будут удалены.
basketsDeliveryAddress Связки корзины и адреса доставки(массив, где ключи - id корзин). Обновятся только переданные связки "корзина - Адрес доставки". Чтобы убрать привязку корзины и адреса нужно передать значение параметра = "0".
comment Комментарий пользователя
managerComment Комментарий менеджера
managerId Идентификатор менеджера. Если передать managerId=0, то менеджер в карточке клиента удалится.
userCode Внутренний код пользователя
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция). Если передать clientServiceEmployeeId=0, то менеджер клиентской службы в карточке клиента удалится.
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция). Если передать clientServiceEmployee2Id=0, то менеджер клиентской службы в карточке клиента удалится.
clientServiceEmployee3Id Третий идентификатор личного менеджера клиентской службы (дополнительная опция). Если передать clientServiceEmployee3Id=0, то менеджер клиентской службы в карточке клиента удалится.
clientServiceEmployee4Id Четвертый идентификатор личного менеджера клиентской службы (дополнительная опция). Если передать clientServiceEmployee4Id=0, то менеджер клиентской службы в карточке клиента удалится.
office Массив идентификаторов офисов, к которым необходимо подключить клиента. Если идентификатор офиса, к одному из которых подключен клиент, не будет передан, то он будет отключен. Передать пустой параметр office нельзя, т.к. клиент должен быть подключен минимум к одному офису. Параметр актуален только если у вас на сайте включена опция: "Офисы: включить привязку к клиентам".
defaultOffice Идентификатор офиса по умолчанию. Переданное значение должно быть в массиве параметра office. Параметр актуален только если у вас на сайте включена опция: "Офисы: выбрать офис по умолчанию для клиента".
info "Информация" в личном кабинете. В поле допустимо использование html-тегов. max 4000 символов. Закладка появляется только если есть данные в поле info для клиента.
safeMode "Безопасный режим" для клиентов не имеющих поддержки формата JSON. Может принимать значения 0 или 1. При включении (1), адреса доставки в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение". При включении (2), адреса доставки и список офисов в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение".
pickupState Запрет самовывоза для клиента. 0 - запретить самовывоз, 1- разрешить самовывоз. Параметр актуален только если у вас на сайте включена опция: "Корзина: запрет самовывоза определенным клиентам".
individualReturnPeriod Индивидуальный срок возврата товара (дни). Параметр актуален только если у вас на сайте включена опция: "Показать в карточке клиента поле для указания индивидуального срока возврата".

Пример запроса

https://demo.public.api.abcp.ru/cp/user

Параметры POST

userlogin=username&userpsw=md5pass&userId=12345&profileId=23456&managerId=34567&office[0]=45678&office[1]=56789

Метод возвращает набор узлов вида:

Поле Описание
userId Идентификатор пользователя в системе ABCP.
business Тип организации. Значение от 1 до 6:
  1. Автопарк
  2. Автосервис
  3. Автосервис + Магазин
  4. Дистрибьютор
  5. Интернет-магазин
  6. Магазин
email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
birthDate Дата рождения, формат YYYY-MM-DD
city Город
countryCode Код страны
phone [устарел, не используется] Номер телефона
mobile Номер мобильного телефона
enableSms Производится ли отправка SMS клиенту
icq ICQ UIN
skype Skype
state Состояние аккаунта. Значения:


-1 - отклоненный,

0 - ожидает регистрации,

1 - зарегистрированный,

2 - удаленный.

profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
bin БИН юридических лиц и ИП для пользователей с Казахстана
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адреса доставки (массив, где ключи - id адресов)
comment Комментарий пользователя
managerComment Комментарий менеджера
managerId Идентификатор менеджера
userCode Внутренний код пользователя
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee3Id Третий идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee4Id Четвертый идентификатор личного менеджера клиентской службы (дополнительная опция)
office Массив идентификаторов офисов
defaultOffice Идентификатор офиса по умолчанию. Параметр отображается только если у вас на сайте включена опция: "Офисы: выбрать офис по умолчанию для клиента".
baskets Массив корзин клиента в формате "идентификатор - имя корзины"
basketsDeliveryAddress Связки корзины и адреса доставки в формате "идентификатор корзины - идентификатор адреса доставки".
info "Информация" в личном кабинете. В поле допустимо использование html-тегов. Закладка появляется только если есть данные в поле info для клиента.
pickupState Запрет Самовывоза для клиента

Получение списка адресов доставки

Операция: cp/user/shipmentAddresses

Метод: GET

Возвращает список доступных адресов доставки. Идентификатор адреса доставки необходим при отправке заказа.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор клиента

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddresses?userlogin=username&userpsw=md5pass&userId=5427194

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор адреса доставки.
name Адрес доставки.
zoneId Идентификатор зоны, если указан для адреса.
zoneName Имя зоны адресов доставки.

Получение клиентских настроек SMS

Операция: cp/user/smsSettings

Метод: GET

Возвращает настройки SMS клиента.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userIds Идентификаторы клиентов (массив)

Пример запроса

https://demo.public.api.abcp.ru/cp/user/smsSettings?userlogin=username&userpsw=md5pass&userIds[]=25624625&userIds[]=25624789

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
userId Системный код клиента.
enableSms 1 или 0 - доступна ли клиенту отправка sms в целом (задается менеджером в общих настройках клиента).
isCustomersNotificationEnabled 1 или 0 - активировал ли клиент отправку sms (задается клиентом при отправке заказа, и отображается в карточке клиента "Настройка сообщений").

Получение клиентских опций

Операция: cp/user/options

Метод: GET

Возвращает клиентские опции.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userIds Системные id клиентов. Необязательный параметр. Если не передать, вернутся опции всех клиентов.

Пример запроса

https://demo.public.api.abcp.ru/cp/user/options?userlogin=username&userpsw=md5pass&userIds[]=861437&userIds[]=9973711

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
userId Системный id клиента
availablePaymentTypeMode 0 при опции "Доступные типы платежей" = "Из профиля"

1 при опции "Доступные типы платежей" = "Заданы вручную".

enabledPaymentTypeIds массив id типов платежей. Может быть пустым.

Редактирование клиентских опций

Операция: cp/user/options

Метод: POST

Редактирует клиентские опции.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Системный id клиента
availablePaymentTypeMode 0 для установки опции "Доступные типы платежей" = "Из профиля"

1 для установки опции "Доступные типы платежей" = "Заданы вручную"

enabledPaymentTypeIds массив id типов платежей. Может быть пустым.

Пример запроса

https://demo.public.api.abcp.ru/cp/user/options

Тело POST запроса

userlogin=username&userpsw=md5pass&userId=861437&availablePaymentTypeMode=1&enabledPaymentTypeIds[]=1379

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
userId Системный id клиента
availablePaymentTypeMode 0 при опции "Доступные типы платежей" = "Из профиля"

1 при опции "Доступные типы платежей" = "Заданы вручную".

enabledPaymentTypeIds массив id типов платежей. Может быть пустым.

Зоны адресов

Получение списка зон адресов доставки

Операция: /cp/user/shipmentAddressZones

Метод: GET

Возвращает список зон адресов доставки.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор зоны адресов доставки.
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

Получение одной зоны адресов доставки

Операция: /cp/user/shipmentAddressZones/{id}

Метод: GET

Возвращает одну зону адресов доставки по указанному уникальному идентификатору.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
id Уникальный идентификатор зоны адресов доставки

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones/15?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает узел вида:

Поле Описание
id Идентификатор зоны адресов доставки.
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

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

Операция: /cp/user/shipmentAddressZones

Метод: POST

Универсальный метод добавления и обновления зон адресов доставки.

vertical-align:middle;
Внимание!
Если вы изменяете одну из зон, необходимо передать данные и по всем остальным имеющимся зонам тоже. Если этого не сделать, то непереданные зоны будут удалены.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
zones Массив объектов зон адресов доставки

Узел zones содержит массив объектов зон адресов доставки со следующими полями:

Параметр Описание
id Идентификатор изменяемой зоны адресов доставки. Если пустой или равен нулю, то создается новая запись с зоной адресов доставки. Если меняется хотя бы одна зона, то необходимо передать все имеющиеся зоны адресов клиента. Если этого не сделать, то не переданные зоны будут удалены.
name Название зоны адресов доставки
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели в формате "23:59". 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях
excludeDay[1...7] Доступность дня недели для отгрузки 1 - пн., ... 7 - вс. принимает значения 0 или 1.

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones

Тело POST запроса

userlogin=username&userpsw=md5pass&zones[0][id]=123&zones[0][name]=Москва&zones[0][isOnDay1]=1&zones[0][stopTimeDay1]=16:30&zones[0][isOnDay2]=1&zones[0][stopTimeDay2]=15:30&zones[0][excludeDay3]=1

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор зоны адресов доставки.
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
excludeDay[1...7] Доступность дня недели для отгрузки 1 - пн., ... 7 - вс. принимает значения 0 или 1.
deadline Минимальный срок доставки для зоны, в днях

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

Операция: /cp/user/shipmentAddressZones/new

Метод: POST

Метод создания одной зоны адресов доставки.

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

Параметры запроса передаются в виде json-объекта в теле запроса. json-объект содержит следующие поля:

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones/new

Тело POST запроса

 userlogin=username&userpsw=md5pass&name=зона1&isOnDay1=1&stopTimeDay1=7

Поля ответа

Метод возвращает узел с созданной зоной адресов доставки вида:

Поле Описание
id Идентификатор зоны адресов доставки.
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

Обновление зоны адресов доставки

Операция: /cp/user/shipmentAddressZones/{id}/update

Метод: POST

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

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

Идентификатор обновляемой зоны передаётся явно в URI запроса. Параметры запроса передаются в виде json-объекта в теле запроса. json-объект содержит следующие поля:

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones/400/update

Тело POST запроса

 userlogin=username&userpsw=md5pass&name=зона1&isOnDay1=1&stopTimeDay1=7&deadline=24

Поля ответа

Метод возвращает узел с обновлённой зоной адресов доставки вида:

Поле Описание
id Идентификатор зоны адресов доставки.
name Название зоны адресов доставки.
isOnDay[1...7] Признак, установлено ли крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
stopTimeDay[1...7] Крайнее время работы в указанный день недели. 1 - пн., ... 7 - вс.
deadline Минимальный срок доставки для зоны, в днях

Удаление зоны адресов доставки

Операция: /cp/user/shipmentAddressZones/{id}/delete

Метод: POST

Метод удаления зоны адресов доставки.

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

Идентификатор обновляемой зоны передаётся явно в URI запроса.

Пример запроса

https://demo.public.api.abcp.ru/cp/user/shipmentAddressZones/400/delete

Ответ

Метод возвращает статус 200, если удаление прошло успешно, и статус отличный от 200 с описанием ошибки, если при удалении зоны возникли проблемы.


Получение списка сотрудников

Операция: cp/managers

Метод: GET

Возвращает список менеджеров.

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

Параметр Обязательность Описание
userlogin Да Имя API-администратора
userpsw Да md5-хэш пароля API-администратора
withDeleted Нет Признак "Удаленного сотрудника". Может принимать значения 0 или 1 (по умолчанию - 0). В значении 0 - в результаты поиска отображаются активные сотрудники. В значении 1 - результаты поиска дополняются данными удалённых сотрудников.

Пример запроса

https://demo.public.api.abcp.ru/cp/managers?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id Идентификатор сотрудника
resellerId Идентификатор реселлера
typeId Тип сотрудника
typeName Наименование типа
firstName Имя сотрудника
lastName Фамилия сотрудника
email E-mail
phone Телефон
icq ICQ
skype Skype
sip SIP номер
comment Комментарий
contractorId Идентификатор пользователя сотрудника
bossId Идентификатор руководителя сотрудника
bossName Имя руководителя сотрудника
officeName Название офиса
officeId Идентификатор офиса
allowLogin Флаг разрешения входа на сайт
allowLoginToCP Флаг разрешения входа в Панель управления
isFranchiseeLogin Флаг франчайзи
isDelete Флаг удаленного сотрудника
isService Флаг сотрудника сервиса
mobile Мобильный телефон
photo Фотография
photoVersion Версия фотографии

Обновление данных сотрудника

Операция: cp/manager

Метод: POST

Обновление данных сотрудника.

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
id Идентификатор сотрудника (обязательное поле)
typeId Идентификатор должности сотрудника
firstName Имя сотрудника
lastName Фамилия сотрудника
email Адрес ящика электронной почты
phone Номер телефона
mobile Номер мобильного телефона
SIP SIP номер
comment Комментарий
bossId Идентификатор руководителя
officeId Идентификатор офиса

Пример запроса

https://demo.public.api.abcp.ru/cp/manager

Тело POST запроса

userlogin=username&userpsw=md5pass&id=12345&firstName=4503

Метод возвращает массив объектов вида:

Параметр Описание
id Идентификатор сотрудника
resellerId Идентификатор реселлера
typeId Тип сотрудника
typeName Наименование типа
firstName Имя сотрудника
lastName Фамилия сотрудника
email E-mail
phone Телефон
icq ICQ
sip sip номер
skype Skype
comment Комментарий
contractorId Идентификатор пользователя сотрудника
bossId Идентификатор руководителя сотрудника
bossName Имя руководителя сотрудника
officeName Название офиса
officeId Идентификатор офиса
allowLogin Флаг разрешения входа на сайт
allowLoginToCP Флаг разрешения входа в Панель управления
isFranchiseeLogin Флаг франчайзи
isDelete Флаг удаленного сотрудника
isService Флаг сотрудника сервиса
mobile Мобильный телефон
photo Фотография
photoVersion Версия фотографии

Получение списка статусов

Операция: cp/statuses

Метод: GET

Возвращает список всех статусов позиций заказов.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора

Пример запроса

https://demo.public.api.abcp.ru/cp/statuses?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id Идентификатор статуса (он же statusCode)
name Имя статуса
comment Описание для клиента
notify Флаг "Уведомить клиента"
paid Флаг "Статус после оплаты заказа"
startDelivery Флаг "Начальный статус доставки/списания"
delivery Флаг "Статус доставки/списания"
placingOrder Флаг "Статус после размещения заказа у поставщика"
color Цвет статуса

Получение справочника брендов

Операция: cp/articles/brands

Метод: GET

Возвращает список всех брендов зарегистрированных в системе с их синонимами.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора

Пример запроса

https://demo.public.api.abcp.ru/cp/articles/brands?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
name Имя бренда
aliases Массив, содержащий список синонимов текущего бренда

Получение справочника групп брендов

Операция: cp/articles/brandGroups

Метод: GET

Возвращает список всех групп брендов зарегистрированных в системе.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора

Пример запроса

https://demo.public.api.abcp.ru/cp/articles/brandGroups?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
brands Массив, содержащий список брендов, входящих в группу
name Название группы (имя заглавного бренда)

Поставщики

Получение списка поставщиков

Операция: cp/distributors

Метод: GET

Возвращает список всех поставщиков, подключенных в ПУ/Поставщики.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributors4mc При передаче "1" возвращает дополнительно поставщиков 4mycar"

Пример запроса

https://demo.public.api.abcp.ru/cp/distributors?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id id поставщика
name Имя поставщика
publicName Публичное (измененное) имя поставщика
currencyDesignation Валюта поставщика
isEnabled Статус поставщика
updateTime Последнее обновление (у онлайн поставщиков не выводится)
positionsNumber Позиций в наличии
updateRateInDays Норма обновления в днях для поставщика
email email поставщика
firstName Имя
lastName Фамилия
city Город
phone Телефон
mobile Мобильный
organizationForm Правовая форма организации.
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
description Описание
contractor Контрагент поставщика. Содержит поля: id - идентификатор, name - имя. Значение null - если контрагент не прикреплен.

Изменение статуса поставщика

Операция: cp/distributor/status

Метод: POST

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Id поставщика
status 1 - Вкл. \ 0 - Выкл.

Пример запроса

https://demo.public.api.abcp.ru/cp/distributor/status

Тело POST запроса

userlogin=username&userpsw=md5pass&status=1

Метод возвращает объект вида:

Параметр Описание
status Статус выполнения операции. В случае успешного выполнения возвращает 1.
errorMessage Сообщение об ошибке(если она есть).

Загрузка прайс-листа поставщика

Операция: cp/distributor/pricelistUpdate

Метод: POST

В ПУ, в разделе "Поставщики"/"Обн."/"Конфигурация прайс-листа" предварительно настраивается конфигурация загружаемого прайс-листа. Специальных требований к прайс-листу нет, есть только обычные: наличие колонок с ценой, брендом, каталожным номером, описанием, наличием. На вкладке "Загрузка прайс-листа" может быть выбран любой способ загрузки.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Id поставщика
uploadFile файл прайс-листа переданный в multipart/form-data
fileTypeId Необязательный параметр - идентификатор типа файла. Если не передаётся, то по умолчанию равен 1.

Список принимаемых значений:

1 - полный ассортимент

Пояснение: если загружается полный ассортимент, то вся загруженная ранее информация удаляется.

vertical-align:middle;
Внимание!
Для этой операции необходимо использовать медиа-тип multipart/form-data.

Пример запроса

curl -i -X POST -H "Content-Type: multipart/form-data" -F "userlogin=username" -F "userpsw=md5pass" -F "distributorId=369645" -F "uploadFile=@/home/user/pricelist.xlsx" https://demo.public.api.abcp.ru/cp/distributor/pricelistUpdate

Примеры скриптов для выполнения операции

  • Windows - СКАЧАТЬ После скачивания необходимо распаковать zip архив в любую папку. Открыть файл windows/upload.vbs для редактирования в Блокноте и указать в самом верху свои логин и пароль API администратора, а также хост для обращения к API. Сохраните и закройте его. После этого, откройте файл start_full.bat для редактирования в Блокноте. Вторым аргументом необходимо указать id поставщика для обновления, а третьим аргументом - путь к файлу прайс-листа. Путь к файлу может быть полным, например: "C:\Users\Admin\my_price.xls". Или относительным, например: ".\my_price.xls", если прайс-лист лежит в той же папке где и скрипт загрузки. Сохраните и закройте файл. Теперь вы можете запустить файл start_full.bat двойным кликом, чтобы прайс-лист был загружен.
  • Linux - СКАЧАТЬ После скачивания необходимо распаковать zip архив в любую папку. Отредактируйте файл posix/update_price.sh указав в блоке Config свои логин и пароль API администратора, а также хост для обращения к API. Для запуска используйте консоль:
sh /home/user/update_price.sh 369645 '/home/user/my_price.csv'

где первый аргумент: 369645 - id поставщика, второй аргумент - путь к файлу прайс-листа.

или

sh /home/user/update_price.sh 369645 '/home/user/my_price.csv'

Необходимо наличие установленной библиотеки curl.

Проект на GitHub

Метод возвращает объект вида:

Параметр Описание
status Статус выполнения операции. В случае успешного выполнения возвращает 1.
message Сообщение о результатах работы.

Копирование поставщика

Операция: cp/distributor/copy

Метод: POST

Cоздает нового прайсового поставщика с полностью идентичными настройками - валюта прайса, настройки колонок, конфигурация брендов, правил для артикулов и описаний в прайсах, конфигурация цен прайса, конфигурация наличия, фильтрация прайса, доп. настройки и настройки маршрутОВ на основе заданного id шаблонного прайсового поставщика. Лимит по операции - не более 100 операций в сутки.

Создается такое же количество маршрутов, как в поставщике, с которого копируются настройки

Поставщик создается выключенным от сайта. Для его включения по API используйте операцию Изменение статуса поставщика

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId ID поставщика, с которого будут скопированы настройки конфига и маршрутов
distributorName Название для создаваемого поставщика - необязательное поле. Если не задавать наименование, то будет создан поставщик с названием от копируемого поставщика+ постфикса _Copy
withoutConfig Необязательный параметр. Список принимаемых значений:
1-создастся поставщик со структурой по умолчанию, которую нужно самостоятельно задать/настроить (то есть идентично тому, как в ПУ с нуля создается поставщик)
0-конфигурация будет создана идентичная конфигу копируемого поставщика .
Если не передаётся, то по умолчанию равен 0

Пример запроса

https://demo.public.api.abcp.ru/cp/distributor/copy

Тело POST запроса

userlogin=username&userpsw=md5pass&distributorId=4223356&distributorName=NEWпоставщик

Метод возвращает массив объектов вида:

Параметр Описание
id id поставщика
name Имя поставщика
publicName Публичное (измененное) имя поставщика
currencyDesignation Валюта поставщика
isEnabled Статус поставщика
updateTime Последнее обновление (у онлайн поставщиков не выводится)
positionsNumber Позиций в наличии
updateRateInDays Норма обновления в днях для поставщика
email email поставщика
firstName Имя
lastName Фамилия
city Город
phone Телефон
mobile Мобильный
organizationForm Правовая форма организации.
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
description Описание
contractor Контрагент поставщика. Содержит поля: id - идентификатор, name - имя. Значение null - если контрагент не прикреплен.
routes массив созданных по поставщику маршрутов

Узел routes содержит массив объектов вида:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (false - Нет, true - Да)

Удаление/отключение поставщика

Операция: cp/distributor/delete

Метод: POST

Удаляет поставщика типа прайс-лист. Отключает онлайн-поставщика от сайта.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Идентификатор поставщика
franchiseeId Необязательный параметр. ID франчайзи, от которого нужно отключить онлайн-поставщика

Метод возвращает успешный результат выполнения операции в параметре result, либо errorCode и errorMessage для отображения ошибки.

Получение списка маршрутов поставщика

Операция: cp/routes

Метод: GET

Возвращает список всех маршрутов поставщика.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Идентификатор поставщика
withDisabled Фильтр по статусу маршрутов:

0 — только активные (по умолчанию).

1 — все маршруты (активные и неактивные).

Пример запроса

https://demo.public.api.abcp.ru/cp/routes?userlogin=username&userpsw=md5pass&distributorId=12345&withDisabled=0

Метод возвращает массив объектов вида:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
descriptionOfDeliveryProbability Описание вероятности поставки
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
distributorCode Код поставщика ("человеко-читаемый" код, который может (но не должен) установить владелец сайта для прайса/поставщика).
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (false - Нет, true - Да)
isActive Статус маршрута (false - Неактивный , true - Активный)
offices Массив Id офисов, которые привязаны к маршруту

Обновление данных маршрута поставщика

Операция: cp/route

Метод: POST

Осуществляет обновление данных маршрута поставщика, присланных в запросе.

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
routeId Идентификатор маршрута поставщика
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
descriptionOfDeliveryProbability Описание вероятности поставки (максимум 3000 символов)
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (0 - Нет, 1 - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (0 - Нет, 1 - Да). "1" сохраняется только при normalTimeDisplayOnly=1.
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (0 - Нет, 1 - Да)
offices Массив Id офисов, которые привязаны к маршруту. Требует, чтобы была активна опция "Офисы: включить дополнительные настройки"

Пример запроса

https://demo.public.api.abcp.ru/cp/route

Тело POST запроса

userlogin=username&userpsw=md5pass&routeId=12345&deadline=48

Метод возвращает массив с измененной информацией о маршруте:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
descriptionOfDeliveryProbability Описание вероятности поставки
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (false - Нет, true - Да)
offices Массив Id офисов, которые привязаны к маршруту

Изменение статуса маршрута поставщика

Операция: cp/routes/status

Метод: POST

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

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

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
routeId Идентификатор маршрута поставщика
status Значение нового статуса (1-вкл., 0-выкл.)

Пример запроса

https://demo.public.api.abcp.ru/cp/routes/status

Параметры POST

userlogin=username&userpsw=md5pass&routeId=12345&status=1

Поля ответа

Метод возвращает ответ:

Поле Описание
distributorRouteActive Статус маршрута. Принимает значение true - включён, false - выключен

В случае ошибки возвращает ответ:

Поле Описание
errorCode Код ошибки
errorMessage Текст сообщения об ошибке


Создание маршрута поставщика

Операция: cp/route/create

Метод: POST

Операция позволяет создать маршрут для имеющегося поставщика

ВАЖНО: Для предотвращения ошибок, вледствие которых может быть создано множество маршрутов, существует лимит на создание: 5 маршрутов на1 поставщика. В случае его достижения Вам будет отображена ошибка ""Достигнуто ограничение на создание по API - для одного поставщика не более 5 маршрутов.""

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

Минимально необходимые поля для создания маршрута: логин API-администратора, пароль, Id поставщика для которого требуется создать маршрут. Но можно сразу при создании задавать необходимые параметры.

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId ID поставщика, Для которого будет создан новый маршрут
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (false - Нет, true - Да)
offices Массив Id офисов, которые нужно привязать к маршруту при создании

Актуально только когда активная опция "Офисы: включить дополнительные настройки"

Пример запроса

https://demo.public.api.abcp.ru/cp/route/create

Параметры POST

userlogin=username&userpsw=md5pass&distributorId=4223356&deadline=24

Метод возвращает массив объектов вида:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)
notUseOnlineSupplierDeadline Не использовать срок поставки online-поставщика (false - Нет, true - Да)
offices Массив Id офисов, которые привязаны к маршруту

Актуально только когда активная опция "Офисы: включить дополнительные настройки"


Если в процессе загрузки возникли ошибки, возвращается статус отличный от 200 и объект с полями:

Параметр Описание
errorCode Код ошибки
errorMessage Текст сообщения об ошибке

Удаление маршрута поставщика

Операция: cp/route/delete

Метод: POST

Удаляет маршрут поставщика.

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

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
routeId Идентификатор маршрута поставщика

Пример запроса

https://demo.public.api.abcp.ru/cp/route/delete

Тело POST запроса

userlogin=username&userpsw=md5pass&routeId=12345

Поля ответа

Метод возвращает ответ:

Поле Описание
status Статус удаления маршрута. Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0.

Подключение поставщиков к офису

Операция: cp/offices

Метод: POST

Подключение/отключение поставщиков к офисам

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
officeId Идентификатор офиса.
distributors Массив поставщиков, если параметр не передан или содержит пустое значение - отключаются все поставщики указанного офиса.

Узел distributors - массив объектов с параметрами:

Поле Описание
id Идентификатор поставщика
deadline Срок поставки (час)

При добавлении нового поставщика, необходимо также передать уже существующие привязки и для этого достаточно передать только Идентификаторы поставщиков. Сроки поставки существующих привязанных поставщиков не изменятся если не указать deadline.

Для обновления срока поставки уже существующей привязки поставщика достаточно указать новое значения для поля deadline.

Чтобы отключить поставщика(ов) от офиса, необходимо передать всех текущих, подключенных поставщиков кроме тех которых необходимо отключить.

Пример запроса

https://demo.public.api.abcp.ru/cp/offices

Тело POST запроса

userlogin=username&userpsw=md5pass&officeId=123&distributors[0][id]=456&distributors[0][deadline]=1&distributors[1][id]=1504361&distributors[1][deadline]=3

Метод возвращает объект вида:

Поле Описание
status Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0.
оfficeId Идентификатор офиса
оfficeName Название офиса
distributors Массив подключенных поставщиков

Узел distributors - массив объектов с параметрами:

Поле Описание
id Идентификатор поставщика
name Название поставщика
deadline Срок поставки (час)

Получение поставщиков офиса

Операция: cp/offices

Метод: GET

Возвращает информацию о подключенных поставщиках

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
officeId Идентификатор офиса. Если параметр не указан то в ответе возвращаются данные по всем офисам

Пример запроса

https://demo.public.api.abcp.ru/cp/offices?userlogin=username&userpsw=md5pass&officeId=123

Метод возвращает объект вида:

Поле Описание
status Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0.
offices Массив объектов офисов

Узел offices - массив объектов с параметрами:

Поле Описание
оfficeId Идентификатор офиса
оfficeName Название офиса
distributors Массив подключенных поставщиков

Узел distributors - массив объектов с параметрами:

Поле Описание
id Идентификатор поставщика
name Название поставщика
deadline Срок поставки (час)

Получение акций

Операция: cp/distributors/notes

Метод: GET

Возвращает список акций поставщиков

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

Параметр Описание Комментарий
userlogin Имя API-администратора Обязательный
userpsw md5-хэш пароля API-администратора Обязательный
distributorIds Массив поставщиков Не обязательный. Если не передать, ищем по всем поставщикам, подключенным к сайту
isActive Состояние. true - включено, false - выключено Не обязательный. Если не передать, ищем любое состояние

Пример запроса

https://demo.public.api.abcp.ru/cp/distributors/notes?userlogin=username&userpsw=md5pass&distributorId[0]=123123&distributorId[1]=775545

Метод возвращает массив объектов вида:

Параметр Описание
id id акции
brand Бренд. Может быть пустым
distributorId ID поставщика
isActive 1 / true - вкл, 0 / false - выкл
color Например FB6363. Может быть пустым
routes Маршруты через запятую или -1
profiles Профили через запятуб или -1
notes Массив заметок по локалям

notes возвращает массив объектов вида:

Параметр Описание
locale Код локали, например, ru_RU
text Текст заметки с html

Пример ответа

 [
   {
     "id": XXX,
     "brand": "",
     "distributorId": YYY,
     "isActive": true,
     "color": "",
     "routes": "-1",
     "profiles": "-1",
     "notes": [
       {
         "locale": "ru_RU",
         "text": "текст"
       }
     ]
   }
 ]



Редактирование акций

Операция: cp/distributors/notes

Метод: POST

Универсальный метод сохранения акций поставщиков. Операция атомарная. Если есть ошибки, откатываем всё, выдаем список ошибок.

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

Параметр Описание Коммент
userlogin Имя API-администратора Обязательный
userpsw md5-хэш пароля API-администратора Обязательный
note массив акций Максимум 2 000 акций

Массив note содержит набор элементов вида:

Параметр Описание Коммент
id id заметки Если передать id, будет отредактирована заметка с этим id.

Если id не передан, создается новая акция

distributorId ID поставщика Если передан id заметки, то не учитывается.

Если id заметки не передан, создается акция у переданного поставщика

isActive 1 / true - вкл, 0 / false - выкл
color Например FB6363. Может быть пустым Если передать пустой параметр, стирается сохраненное значение.
routes Маршруты через запятую или -1 -1 значит "все маршруты"
profiles Профили через запятую или -1 -1 значит "все профили"
notes Массив заметок по локалям
locale Код локали Обязательный, например, ru_RU
text Текст заметки Обязательный
isDelete Если передать 1 / true, акция с переданным id удалится.

Без id (новая акиця) с переданным true не создастся.

Тело POST запроса

userlogin=username&userpsw=md5pass&note[0][distributorId]=XXX&note[0][isActive]=1&note[0][routes]=-1&note[0][profiles]=-1&note[0][notes][0][locale]=ru_RU&note[0][notes][0][text]=текст


Гараж

Получение автомобилей из гаража пользователя

Операция: cp/users/garage

Метод: GET

Возвращает список всех автомобилей из гаража пользователя.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте

Пример запроса

http://api.demo.abcp.ru/cp/users/garage?userlogin=username&userpsw=md5pass&userId=525002

Поля ответа

Поле Описание
garageCarId Идентификатор автомобиля в гараже
manufacturer Марка автомобиля
model Модель автомобиля
modification Модификация автомобиля
vin VIN номер
frame FRAME номер
mileage Пробег
year Год изготовления
vehicleRegPlate Госномер

Получение списка обновлённых автомобилей в гараже

Операция: cp/garage

Метод: GET

Возвращает информацию об автомобилях, в которые были внесены изменения за определённый период времени. Если не переданы параметры dateUpdatedStart и dateUpdatedEnd, то будет предоставлена информация за последний месяц.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
dateUpdatedStart Начальная дата последнего обновления в формате ГГГГ-ММ-ДД ЧЧ:мм:СС (необязательный)
dateUpdatedEnd Конечная дата последнего обновления заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС (необязательный)

Пример запроса

https://demo.public.api.abcp.ru/cp/garage?userlogin=username&userpsw=md5pass&dateUpdatedStart=2020-02-28%2014:00:24&dateUpdatedEnd=2020-03-20%2023:00:24

Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор автомобиля в гараже
userId Идентификатор пользователя
name Название автомобиля (пользовательское)
comment Комментарий (пользовательский)
year Год выпуска автомобиля
vin VIN-код автомобиля
frame Номер кузова автомобиля
mileage Пробег автомобиля
manufacturerId Идентификатор марки автомобиля
manufacturer Название марки автомобиля
modelId Идентификатор модели автомобиля
model Название модели автомобиля
modificationId Идентификатор модификации автомобиля
modification Название модификации автомобиля
dateUpdated Дата последнего обновления автомобиля в гараже
vehicleRegPlate Государственный номер автомобиля

Получение списка настроек платёжных систем

Операция: cp/payments/getPaymentMethodSettings

Метод: GET

Возвращает настройки платёжных систем. Если не указывать доп. параметры, то будут возвращены все существующие настройки для всех платёжных систем (активных и отключенных).

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
onlyEnabled если true, то будет возвращён список только включенных настроек ПС
onlyDisabled если true, то будет возвращён список только выключенных настроек ПС
paymentMethodId id конкретной платёжной системы для которой нужно получить настройки

Возможные id:

2 - RBK Money

4 - Банковский перевод

5 - Газпромбанк

10 - Оплата по счету

11 - Epay Казкоммерцбанк

12 - АПК ПР(ASSIST)

13 - ACQUIRO PAY

14 - ОАО "Сбербанк России"

17 - Arca

18 - RBK Money New

19 - PayPal

20 - Liqpay

21 - Tinkoff Bank

22 - Payguide Acquirer

23 - PayKeeper

24 - CloudPayments

25 - PayOnline

26 - ЮKassa

28 - ОАО "Сбербанк России" - Казахстан

29 - bePaid.by

30 - Idram

31 - Telr

Пример запроса

https://demo.public.api.abcp.ru/cp/payments/getPaymentMethodSettings/?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор настроек
paymentMethodId Идентификатор платёжной системы
resellerId Идентификатор реселлера
description Описание настроек
customSettings Уникальные настройки платёжной системы в формате Json
isEnabled Активна ли данная настройка
commissionPercentForTransfer Процент комиссии платежной системы

Получение ссылки на оплату заказа

Операция: cp/payment/token

Метод: GET

Возвращает ссылку для оплаты заказа.

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
number Онлайн-номер заказа

Пример запроса

https://demo.public.api.abcp.ru/cp/payment/token/?userlogin=username&userpsw=md5pass&number=20000

Метод возвращает объект с одним полем.

Поле Описание
paymentLink Ссылка на оплату

Получение ссылки на пополнение баланса

Операция: cp/payment/top-balance-link

Метод: GET

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
clientId Идентификатор клиента
amount Сумма пополнения баланса

Пример запроса

https://demo.public.api.abcp.ru/cp/payment/top-balance-link/?userlogin=username&userpsw=md5pass&clientId=1000&amount=20000

Метод возвращает объект с одним полем.

Поле Описание
paymentLink Ссылка на пополнение баланса

Каталоги в товарных группах

vertical-align:middle;
Внимание!
Каталоги в товарных группах через API - отдельная услуга, для подключения необходимо связаться с отделом продаж ABCP

Общая информация по каталогам и использованию операций

ABCP разрабатывает и поддерживает десятки каталогов в товарных группах. Новые каталоги добавляются регулярно, информация в текущих каталогах тоже обновляется непрерывно. В настоящий момент (17.07.2025) разработан 101 каталог c 600292 товарами. Все каталоги доступны на сайтах клиентов ABCP, кроме этого, имеется возможность интегрировать каталоги на ваш сайт через API.

RoGxWurZWO.png

  1. На странице каталога в товарной группе на вашем сайте вы используете для запросов в API ABCP идентификатор товарной группы для доступа к информации по каталогу. Полный список идентификаторов каталогов в товарных группах ABCP вы можете посмотреть в этом документе;
  2. По идентификатору запрашиваете информацию о каталоге (например, oils), используя метод /cp/catalog/info (документация ниже). Получаете список фильтров, их типы, значения и отображаете на странице каталога;
  3. Пользователь вашего сайта указывает нужные ему значения, например Motul + 5w40;
  4. При помощи операции /cp/catalog/search (документация ниже) вы отправляете запрос в API ABCP и получаете список арткулов, которые удовлетворяют переданным фильтрам. По списку полученных артикулов вы осуществляете поиск предложений на своих складах (или у ваших поставщиков), формируете результат для клиента и отображаете его в результатах подбора по каталогу. Для отображения результатов поиска используете операцию /cp/articles/info/batch (документация ниже)

Примеры реализации

  1. на платформе ABCP
  2. реализация через API через описанные ниже методы


Получение информации по одному каталогу

Операция: /cp/catalog/info

Метод: GET

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

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
goods_group Идентификатор товарной группы (полный список)
locale Локаль, по-умолчанию (если значение не передано) - ru_RU

Пример запроса

https://demo.public.api.abcp.ru/cp/catalog/info?goods_group=oils&userlogin=username&userpsw=md5pass

Пример ответа (сокращено для лучшего восприятия)

{
	"goods_group":"oils",
	"descr":"масла ДВС",
	"brands":[
		{
			"brand":"Ravenol",
			"is_popular":true,
			"sort_order":0
		},
		{
			"brand":"Castrol",
			"is_popular":true,
			"sort_order":1
		},
		{
			"brand":"MOTUL",
			"is_popular":true,
			"sort_order":2
		},
		{
			"brand":"Liqui moly",
			"is_popular":true,
			"sort_order":3
		},
		{
			"brand":"Mobil",
			"is_popular":true,
			"sort_order":4
		}
	],
	"criterias":[
		{
			"property":"oil_type",
			"value_type":"list",
			"value_count":"one",
			"descr":"Состав масла",
			"descr_full":"<span>Минеральное масло фактически добывается из земли &ndash; это просто очищенная сырая нефть. Синтетическое масло (полностью синтетическое или полусинтетика) создается в лаборатории.&nbsp;</span>",
			"is_required":true,
			"is_enable":true,
			"is_extended":false,
			"is_minimized":false,
			"allow_multiple":true,
			"sort_order":1,
			"two_column_view":false,
			"values":[
				{
					"key":"fully_synthetic",
					"value":"синтетика",
					"is_popular":false
				},
				{
					"key":"semi_synthetic",
					"value":"полусинтетика",
					"is_popular":false
				},
				{
					"key":"mineral",
					"value":"минеральное",
					"is_popular":false
				}
			]
		},
		{
			"property":"viscosity",
			"value_type":"list",
			"value_count":"one",
			"descr":"Вязкость",
			"descr_full":"<strong><strong><span>Международный уровень классификации&nbsp;</span><strong>SAE J300</strong><span>.</span><br /></strong></strong>\r\n<div id=\"yandex_ad\">&nbsp; &nbsp; Эта классификация подразделяет моторные масла&nbsp;12 классов&nbsp;от 0W до 60:&nbsp;6 зимних&nbsp;(0W, 5W, 10W, 15W, 20W, 25W) и&nbsp;6 летних&nbsp;(10, 20, 30, 40, 50, 60) классов вязкости.&nbsp;</div>\r\n&nbsp;&nbsp;&nbsp;&nbsp;Буква W перед цифрой означает, что масло приспособлено к работе при низкой температуре (Winter - зима). Для этих масел кроме минимальной вязкости при 100&deg;C дополнительно дается температурный предел прокачиваемости масла в холодных условиях. Предельная температура прокачиваемости означает минимальную температуру, при которой насос двигателя в состоянии подавать масло в систему смазки. Это значение температуры можно рассматривать как минимальную температуру, при которой возможен безопасный пуск двигателя.&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;Всесезонные масла обозначаются сдвоенным номером, первый из которых указывает максимальные значения динамической вязкости масла при отрицательных температурах и гарантирует пусковые свойства, а второй - определяет характерный для соответствующего класса вязкости летнего масла диапазон кинематической вязкости при 100&deg;С и динамической вязкости при 150&deg;С.&nbsp;<strong><br /></strong>",
			"is_required":true,
			"is_enable":true,
			"is_extended":false,
			"is_minimized":false,
			"allow_multiple":true,
			"sort_order":0,
			"two_column_view":true,
			"values":[
				{
					"key":"5W-30",
					"value":"",
					"is_popular":true
				},
				{
					"key":"10W-40",
					"value":"",
					"is_popular":true
				},
				{
					"key":"5W-40",
					"value":"",
					"is_popular":true
				},
				{
					"key":"15W-40",
					"value":"",
					"is_popular":false
				}
			]
		},
		{
			"property":"acea_spec",
			"value_type":"list",
			"value_count":"many",
			"descr":"Спецификация ACEA",
			"descr_full":"<span>Классификация </span><strong>ACEA - Association des Constructeurs Europeens de L'Automobile</strong><span>(Ассоциация Европейских Производителей Автомобилей). </span><span><br />Классификация \"<strong>ACEA European Oil Sequences for Service Fill Oils 1998</strong>\" состоит из трех классов последовательности испытаний - A, B, E. Каждый класс в свою очередь подразделяется на категории, обозначенные арабскими цифрами. Далее указывается год введения в действие, а также может быть указание на второе, более позднее, издание данной нормы. <br />&nbsp;&nbsp;&nbsp;&nbsp;<strong>А - бензиновые двигатели</strong> (А1, А2, A3 и A5); <br />&nbsp;&nbsp;&nbsp;&nbsp;<strong>В - дизельные двигатели</strong> малой мощности, устанавливаемые на легковые и грузовые автомобили малой мощности (В1, В2, ВЗ, В4 и B5); <br />&nbsp;&nbsp;&nbsp;&nbsp;<strong>Е - дизельные двигатели</strong> для тяжелого транспорта (Е1, Е2, ЕЗ, Е4, Е5 и Е7). <br />&nbsp;&nbsp;&nbsp;&nbsp;Цифра после буквы обозначает уровень требований. Чем больше номер, тем выше требования. Исключениями являются уровни А1 и В1, которые относятся к маслам с малой вязкостью, т. н. \"топливосберегающим\". Класс В4 в основном совпадает с классом В2, но дополнен испытаниями на двигателях с непосредственным впрыском топлива.<br /></span>",
			"is_required":false,
			"is_enable":true,
			"is_extended":false,
			"is_minimized":true,
			"allow_multiple":true,
			"sort_order":3,
			"two_column_view":true,
			"values":[
				{
					"key":"A3",
					"value":"",
					"is_popular":true
				},
				{
					"key":"B4",
					"value":"",
					"is_popular":true
				},
				{
					"key":"C3",
					"value":"",
					"is_popular":true
				},
				{
					"key":"B3",
					"value":"",
					"is_popular":true
				},
				{
					"key":"E7",
					"value":"",
					"is_popular":true
				}
			]
		},
		{
			"property":"liquid_volume",
			"value_type":"range",
			"value_count":"one",
			"values":{
				"min":0,
				"max":1000
			},
			"descr":"Объём, л.",
			"descr_full":"",
			"is_required":true,
			"is_enable":true,
			"is_extended":false,
			"is_minimized":false,
			"allow_multiple":true,
			"sort_order":6,
			"two_column_view":false
		}
	]
}

Описание ответа

Объект Описание
descr Локализованное наименование товарной группы
brands Массив брендов каталога. Описание одного элемента массива:
brand - наименование,
is_popular - признак популярности бренда,
sort_order - порядок сортировки. Список брендов для блока над фильтрами каталога (is_popular:"true" отображаются сразу, остальные после открытия полного списка брендов. На своём сайте вы можете изменить поведение на то, которое считаете лучшим.
goods_group Идентификатор товарной группы (полный список)
criterias Массив с фильтрами, их свойствами (которые определяют поведение на фронте) и возможными значениями.

property - идентификатор свойства, используется для запроса через операцию /cp/catalog/search списка артикулов, который удовлетворяет переданным значениям свойств;

value_type - тип значения для отображения в каталоге. Возможны варианты: list - список значений (много "чекбоксов", например, тип масла) или range - диапазон значений (например, объём масла в упаковке);

descr - локализованное описание свойства;

descr_full - расширенное локализованное описание (для пользователей, с описанием фильтра и значений);

is_minimized - нужно ли по-умолчанию отрисовывать фильтр "свёрнутым";

allow_multiple - если true И value_type:"list", то отображаем значения "чекбоксами", иначе "радио";

sort_order - порядок фильтра при отображении в блоке фильтров;

two_column_view - если true, то значения фильтров можно отрисовывать в 2 колонки (короткие, например, вязкость);

values - массив со списком возможных значений, key используется как выбранное значение фильтра в /cp/catalog/search, value - - для отображения пользователю на фронте. Если value_type:"range", то вместо списка значений содержится информация о минимальном и максимальном значении;

is_popular аналогично списку брендов, отображать ли значение сразу или прятать под "спойлер";

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

Операция: /cp/catalog/search

Метод: POST

Метод возвращает список артикулов, которые удовлетворяют переданным фильтрам (из операции /cp/catalog/info)

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
goods_group Идентификатор товарной группы (полный список)
properties Массив передаваемых значений фильтров, properties[key][0]=value, properties[key][0]=value и так далее, где key - идентификатор соответствующего свойства из массива criterias операции /cp/catalog/info, а value - идентификатор значения (которое выбрал пользователь в каталоге в блоке фильтров);
skip, limit Сколько записей пропустить и сколько вернуть в ответе
locale Локаль, по-умолчанию (если значение не передано) - ru_RU

Пример запроса

 https://demo.public.api.abcp.ru/cp/catalog/search

Тело POST запроса

 userlogin=username&userpsw=md5pass&goods_group=oils&properties[brands][0]=Shell&properties[viscosity][0]=5W-40

Пример ответа

{
	"articles":[
		{
			"brand":"Shell",
			"number":"550051529",
			"alt_number":"550040295",
			"alt_out_number":"550040295",
			"rating":29884
		},
		{
			"brand":"Shell",
			"number":"550055905",
			"alt_number":null,
			"alt_out_number":null,
			"rating":21322
		},
		{
			"brand":"Shell",
			"number":"550051580",
			"alt_number":null,
			"alt_out_number":null,
			"rating":9775
		},
		{
			"brand":"Shell",
			"number":"550058241",
			"alt_number":null,
			"alt_out_number":null,
			"rating":8084
		},
		{
			"brand":"Shell",
			"number":"550051497",
			"alt_number":null,
			"alt_out_number":null,
			"rating":7795
		}
	],
	"count":118
}

Описание ответа

Объект Описание
articles Массив с парами бренд+номер, которые удовлетворяют переданным параметрам фильтрации.
count Общее количество записей, которые удовлетворяют переданным параметрам фильтрации

Пакетное получение информации об артикулах

Операция: /cp/articles/info/batch

Метод: POST

Возвращает массив локализованных карточек товара (как в методе articles/info)

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
articles Массив деталей, по которым необходимо получить информацию в формате brand - number. Максимум 100 деталей.
locale Локаль, по-умолчанию (если значение не передано) - ru_RU

Пример запроса

 https://demo.public.api.abcp.ru/cp/articles/info/batch


Тело POST запроса

 userlogin=username&userpsw=md5pass&articles[0][number]=550051529&articles[0][brand]=Shell&articles[1][number]=3148675&articles[1][brand]=LUKOIL

Пример ответа

[
	{
		"brand":"Shell",
		"descr":"Масло моторное синтетика 5W-40 4 л.",
		"images":[
			{
				"name":"099abad5db73fb63e1a2c04dea3d62ff0b254e0002.jpeg",
				"order":0
			}
		],
		"images_count":1,
		"number":"550051529",
		"properties":{
			"EAN-13":"5011987055711",
			"Высота, мм":"300",
			"Вязкость":"5W-40",
			"Длина, мм":"232",
			"Допуски производителей":[
				"MB 229.3",
				"Renault RN 0700",
				"Renault RN 0710",
				"VW 502 00",
				"VW 505 00"
			],
			"Масса, кг":"3.56",
			"Модель":"Helix HX8 5W-40",
			"Объем упаковки, л":"6.8",
			"Объём, л.":"4",
			"Описание":"Масло моторное синтетика 5W-40 4 л.",
			"Состав масла":"синтетика",
			"Спецификация API":[
				"SN",
				"SN+"
			],
			"Тип ёмкости":"Канистра пластиковая",
			"Товарная группа":"масла ДВС",
			"Ширина, мм":"98"
		}
	},
	{
		"brand":"LUKOIL",
		"descr":"Масло моторное синтетическое 5W-40 4 л.",
		"images":[
			{
				"name":"0952f1108d975488197379b8060fa749c4d2d00002.jpeg",
				"order":0
			}
		],
		"images_count":1,
		"number":"3148675",
		"properties":{
			"EAN-13":"4670027146140",
			"Высота, мм":"318",
			"Вязкость":"5W-40",
			"Длина, мм":"188",
			"Допуски производителей":[
				"BMW Longlife-01",
				"FIAT 9.55535-N2",
				"FIAT 9.55535-Z2",
				"GM-LL-B-025",
				"PORSCHE A40",
				"PSA B71 2296"
			],
			"Масса, кг":"3.68",
			"Модель":"GENESIS ARMORTECH 5W-40",
			"Объем упаковки, л":"7.5",
			"Объём, л.":"4",
			"Описание":"Масло моторное синтетическое 5W-40 4 л.",
			"Состав масла":"синтетика",
			"Спецификация ACEA":[
				"A3",
				"B3",
				"B4"
			],
			"Спецификация API":[
				"CF",
				"SN"
			],
			"Тип ёмкости":"Канистра пластиковая",
			"Товарная группа":"масла ДВС",
			"Ширина, мм":"126"
		}
	}
]

Описание ответа (элементов массива в ответе)

Параметр Описание
brand Имя производителя
number Искомый номер детали
descr Локализованное описание детали
images Массив с именами файлов изображений деталей. В массиве указаны имена файлов расположенных по адресу https://pubimg.4mycar.ru/images/
images_count Количество изображений деталей
properties Локализованный массив свойств детали: описание, вес, объем и т.п.

Пользовательские каталоги

Загрузка каталога из файла

Операция: /cp/usercatalogs/{catalogId}/upload

Метод: POST

Загружает файл со структурой каталога.

Дополнительно загружает архив с изображениями (необязательно).

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

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
catalogId Идентификатор каталога
file Файл структуры каталога переданный в multipart/form-data
encoding Необязательный параметр. Кодировка загружаемого файла. Доступно два значения: "windows-1251" и "utf-8". По умолчанию равен "windows-1251".
deleteOldMode Необязательный параметр. Режим удаления старой структуры. По умолчанию равен 0. Может принимать значения 0 - не удалять, 1 - удалить ранее залитые товары, 2 - удалить ранее залитые ветви и товары.
imageUploadMode Необязательный параметр. Режим загрузки изображений к каталогу. По умолчанию равен 0. Может принимать значения 0 - не загружать, 1 - загрузка по URL в поле PIC, 2 - загрузить из архива.
imagesArchive Необязательный параметр. Файл архива изображений переданный в multipart/form-data.

Пример запроса

 curl -i -X POST -H "Content-Type: multipart/form-data" -F "file=@/home/user/mycatalog.txt" https://demo.public.api.abcp.ru/cp/usercatalogs/17334/upload?userlogin=username&userpsw=md5pass


Описание ответа

Метод возвращает статус 200, если файл с каталогом принят на загрузку.

Если в процессе загрузки возникли ошибки, возвращается статус отличный от 200 и объект с полями:

Параметр Описание
errorCode Код ошибки
errorMessage Текст сообщения об ошибке

Получение данных из истории операций

Операция: cp/actionsHistory

Метод: GET

Операция позволяет получить данные из истории операций. На данный момент возможно получить "Запрос на восстановление пароля", с помощью события password_recovery_request.

Внимание!

  • Если параметры dateTimeStart и dateTimeEnd не указаны, метод возвращает данные за последние 7 дней.
  • Если в периоде больше, чем 7 дней, возвращаются только за 7 дней от dateTimeStart

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

Параметр Обязательность Описание
userlogin Да Имя пользователя в системе
userpsw Да md5-хэш пароля пользователя в системе
action Да Событие истории операций (password_recovery_request)
dateTimeStart Нет Фильтр по дате/времени "от" в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС
dateTimeEnd Нет Фильтр по дате/времени "до" в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС


Пример запроса

https://demo.public.api.abcp.ru/cp/actionsHistory?userlogin=admin&userpsw=md5pass&action=password_recovery_request

Поля ответа

Поле Описание
author Автор инициатор
ip IP-адрес автора инициатора
date Дата и время запроса на восстановление пароля
customerId Системный код клиента (нередактируемый)
customerCode Редактируемый код клиента
email Email, для которого был запрос
vertical-align:middle;
Внимание!
Документация обновляется