Публичный ресурс
Импорт рекламных акций из ERP в SetRetail10
Для чтения визуальной составляющей схемы XSD, а также типами обязательных данных, ознакомьтесь с правилами использования.
Методы веб-сервиса для импорта рекламных акций
Без обратной связи | |
Метод | importActions |
URL | http://IP-адрес_сервера:8090/SET-ERPIntegration/AdvertisingActionsImport |
WSDL | http://IP-адрес_сервера:8090/SET-ERPIntegration/AdvertisingActionsImport?wsdl |
Поле | Тип данных | Описание | Обязательное |
Принимаемые параметры | |||
xmlData | base64Binary | Рекламные акции в формате XML | Да |
Возвращаемые параметры | |||
return | boolean | Ответ об успешном прохождении валидации пакета данных и принятии его в обработку |
Описание формата рекламных акций
С обратной связью | |
Метод | importActionsWithTi |
URL | http://IP-адрес_сервера:8090/SET-ERPIntegration/AdvertisingActionsImport |
WSDL | http://IP-адрес_сервера:8090/SET-ERPIntegration/AdvertisingActionsImport?wsdl |
Поле | Тип данных | Описание | Обязательное |
Принимаемые параметры | |||
xmlData | base64Binary | XML в формате данных Рекламных акций, кодированный с помощью base64Binary | Да |
ti | String |
| Нет |
Возвращаемые параметры | |||
return | boolean |
|
Описание формата рекламных акций
Важно
ti
Transaction Id
– является уникальным идентификатором этого пакета в SetRetail10, что накладывает определённые ограничения на повторный импорт пакета и загрузку разных типов данных с одним идентификатором.Рекламные акции <AdvertisingActions>
AdvertisingActions |
Коллекция рекламных акций |
В данных каждой рекламной акции содержится внешний код (external-code), который служит уникальным идентификатором для управления рекламными акциями в SetRetail10 из ERP. При получении из ERP акции с уже имеющимся в системе external-code, текущая акция с данным external-code безусловно перезаписывается полученной из ERP.
Для рекламных акций, создаваемых в модуле визуализации SetRetail10, также генерируется уникальный в рамках торговой сети магазинов external_code
с префиксом SR10_.
Атрибут external-code используется в качестве кода акции в отчете о рассчитанных скидках, выгружаемом в ERP с чеками.
Данные рекламных акций выгружаются из ERP в SR10 в формате, предоставляемом Set Retail 10 в виде единой целостной сущности.
На стороне SR10 происходит валидация данных полученных из ERP рекламных акций. Рекламная акция будет отклонена, если в данных РА:
- Указана зависимость от другой акции, которой нет в SR10;
- Указан магазин, которого нет в SR10;
- Не указан один из обязательных параметров величины скидки (фиксированная цена / процент скидки и т.п.)
Отклоненные акции выкладываются в папку отклоненных акций для обеспечения обратной связи по загрузке акций с ERP
Рекламная акция <AdvertisingAction>
Зависимости <dependence>
Данный блок служит для обеспечения возможности управления из ERP зависимостью акций. Использование зависимостей позволяет строить более сложные и гибкие двухуровневые схемы построения маркетинговых программ.
В случае использования зависимых скидок расчет скидок производится в два последовательных этапа расчета, сначала рассчитываются скидки первого уровня (без установленной зависимости), а затем скидки второго уровня (с установленной зависимостью от скидки первого уровня).
Скидка второго уровня может сработать на позицию, только если на эту позицию на первом этапе уже сработала скидка первого уровня, от которой построена зависимость. Скидки второго уровня действуют от цен, полученных в результате действия скидок первого уровня.
Таким образом могут быть построены классические схемы расчета скидок, например, дополнительные скидки действуют от цен по дисконтной карте (акции на применение второй цены).
Важно:
Данный блок не является обязательным, вы не обязаны использовать зависимости в ваших маркетинговых программах.
Принцип работы суммирующихся акций остается неизменным.
Все суммирующиеся акции worksAnyTime = true
всегда действуют после последовательного применения конкурирующих worksAnyTime = false
акций первого и второго уровня.
Возможно построение зависимостей сразу от нескольких акций, тогда скидка второго уровня будет работать, если на позицию сработала хотя бы одна из скидок, от которых построена зависимость.
AdvertisingActions/AdvertisingAction/dependence | |||
Наименование элемента | Тип данных | Описание | Обязательное |
---|---|---|---|
key | String | Всегда заполняется значением 'external-code' | Да |
value | String | External-code уже существующей акции, от которой должна быть установлена зависимость. | Да |
<AdvertisingActions> <AdvertisingAction name=”Скидка на количество по карте (зависит от 2й цены)” active=”true” mode=”automatic” priority=”1” ignoreRestictions=”true” worksAnyTime=”false” color=”green” external-code=”SR10_001”> <dependence key=”external-code” value=”SR10_1363”/> <dependence key=”external-code” value=”SR10_1364”/> <begin-date>2012-10-21T00:00:00Z</begin-date> <end-date>2012-11-31T00:00:00Z</end-date> <actionResults> <catalog> <marking-of-the-good id = “3850114202480” discountStart = “2.000” fixedPrice = “1000.00” maxQuantity = “43534.00”/> </catalog> </actionResults> <externalConditions> <InternalCardsCondition guid=”1359”/> </externalConditions> </AdvertisingAction> </AdvertisingActions>
Результаты рекламной акции <actionResults>
Скидка на наборы <set>
В рамках одной акции может быть задано любое количество различных наборов. В рамках одной акции нельзя комбинировать наборы с другими результатами применения скидки.
AdvertisingActions/AdvertisingAction/actionResults/set | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
name | String | Название набора внутри акции | Да |
valueType | String | Тип скидки на строки набора:
| Да |
value | Double | Стоимость набора целиком | Нет |
wholesale-restriction | Integer | Установленное оптовое ограничение (количество наборов со скидкой за сутки для одного покупателя) | Нет |
maxQuantity | Integer | Максимальное количество наборов в чеке со скидкой | Нет |
calcWeightProductCountAsOne | Boolean | Принцип учета количества весовых позиций в наборе
| Нет |
isSpreadDiscounts | Boolean | Говорит о том, что скидки на подарочные позиции будут размазаны по всему набору равномерно с учетом цен компонентов | Нет |
Каждый набор должен содержать не менее одной строки набора, иначе акция с таким набором будет отклонена.
Для каждой строки набора нужно указать один элемент (товар, список товаров, группа товаров, производитель, страна), а также количество товара в строке, требуемое для составления набора в чеке. Набор считается сработавшим только при наличии всех нужных товаров (из строк) в нужном количестве в чеке.
Для всех строк внутри набора должен быть установлен одинаковый тип скидки (процентная скидки или фиксированная цена). Для строки можно не указывать скидку, эта строка в наборе продается без скидки.
Важно:
Обязательно либо указание стоимости набора целиком, либо значения скидки для одной или нескольких строк набора.
Если для одной строки набора прислать больше одного товара, для этой строки в SetRetail будет создан список товаров. Для срабатывания набора нужно будет купить требуемое в строке количество любого товара из данного списка. Для такого списка товаров можно задать название в атрибутах строки.
Важно:
<AdvertisingAction guid=”12982” name=”Пивов подарок при покупке любых 2 упаковок чипсов” active=”true” mode=”unconditional” priority=”1” ignoreRestictions=”true” worksAnyTime=”false” color=”” external-code=”BBZB01RAZB” > <shop-indices>701</shop-indices> <begin-date>2012-02-21T00:00:00Z</begin-date> <end-date>2012-02-29T00:00:00Z</end-date> <actionResults> <set name="Пиво в подарок при покупке любых 2 упаковок чипсов"> <row requiedQuantity=”1.000” fixedPrice=”100.00”> <marking-of-the-good id=”4100000200”/> </row> <row groupName=”Чипсы Lays” requiedQuantity=”3.000” fixedPrice=”30.00”> <marking-of-the-good id=”4100000100”/> <marking-of-the-good id=”4100000110”/> <marking-of-the-good id=”4100000120”/> <marking-of-the-good id=”4100000130”/> <marking-of-the-good id=”4100000140”/> </row> </set> </actionResults> </AdvertisingAction>
Список строк скидки на наборы <row>
AdvertisingActions/AdvertisingAction/actionResults/set/row | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
requiedQuantity | integer | Определяет кол-во единиц товара в строке, которого достаточно чтобы набор сработал | Да |
discountPercent | Double | % скидки на товар в данной строке (не актуально при указании стоимости набора целиком) | Нет |
fixedPrice | Double | Фиксированная акционная цена товара в данной строке (не актуально при указании стоимости набора целиком) | Нет |
groupName | String | Название списка товаров (используется только при создании списка товаров в строке) | Нет |
Товар в строке набора <marking-of-the-good>
Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/marking-of-the-good | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | код товара | Да |
maxQuantity | Double | определяет максимальное кол-во товара в чеке, которое будет продано по акции. По умолчанию любое кол-во. | Нет |
fixedPrice | Double | Фиксированная акционная цена товара. | Да |
discountStart | Double | определяет количество товара, начиная с которого на этот товар будет начисляться скидка. По умолчанию с первого же товара | Нет |
conditionCount | Double | определяет количество товара, при покупке которого на все количество этого товара будет дана скидка. По умолчанию при любом количестве. | Нет |
wholesale-restriction | Double | Установленное оптовое ограничение (количество товара со скидкой за сутки для одного покупателя) | Нет |
Описание товарной группы в строке набора <group>
Можно указать только 1 элемент.
AdvertisingActions/AdvertisingAction/actionResults/set/row/group | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код товарной группы | Да |
Описание производителя товаров в строке набора <manufacturer>
Можно указать только 1 элемент
AdvertisingActions/AdvertisingAction/actionResults/set/row/manufacturer | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код производителя | Да |
Описание отдела в строке набора <department>
Под это условие попадают товары, имеющие активные цены в указанном отделе. Можно указать только 1 элемент.
AdvertisingActions/AdvertisingAction/actionResults/set/row/department | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Номер отдела | Да |
Описание производителя товаров в строке набора <country>
Можно указать только 1 элемент
AdvertisingActions/AdvertisingAction/actionResults/set/row/country | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код страны | Да |
Описание группы продаж в строке набора <sale-group>
Можно указать только 1 элемент
AdvertisingActions/AdvertisingAction/actionResults/set/row/sale-group | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код заранее загруженной или созданной в SR10 группы продаж | Да |
Множество товарных групп (по кодам) <groups-element>
Задает множество товарных групп (по их кодам), что ограничивают множество товаров, удовлетворяющих данному критерию. Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/groups-element | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код товарной группы | Да |
Множество производителей (по кодам) <manufacturers-element>
Задает множество производителей (по их кодам), что ограничивают множество товаров, удовлетворяющих данному критерию. Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/manufacturers-element | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код производителя | Да |
Множество номеров отделов <departments-element>
Множество номеров отделов, что ограничивают множество товаров, удовлетворяющих данному критерию. Под это условие попадают товары, имеющие активные цены в указанных отделах.
Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/departments-element | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Номер отдела | Да |
Множество стран (по кодам) <countries-element>
Множество стран (по их кодам), что ограничивают множество товаров, удовлетворяющих данному критерию.
Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/countries-element | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код страны | Да |
Множество групп продаж (по кодам) <sale-groups-element>
Множество групп продаж (по их кодам), что ограничивают множество товаров, удовлетворяющих данному критерию. Можно указать любое количество элементов.
AdvertisingActions/AdvertisingAction/actionResults/set/row/sale-groups-element | |||
Наименование атрибута | Тип данных | Описание | Обязательное |
---|---|---|---|
id | String | Код заранее загруженной или созданной в SetRetail10 группы продаж | Да |
Ограничение (при выборке товаров) по цене <price-restriction>
Можно указать только 1 элемент.
AdvertisingActions/AdvertisingAction/actionResults/set/row/price-restriction | |||
---|---|---|---|
Наименование атрибута | Тип данных | Описание | Обязательное |
condition | InequationType | Условие сравнения цены: больше, меньше.
| Да |
value | Decimal | Пороговое значение цены для сравнения, в «рублях» | Да |
Каталог фиксированных цен <catalog>
В рамках одной акции может быть задано любое количество фиксированных цен на товары. В рамках одной акции нельзя комбинировать фиксированные цены с другими результатами применения скидки.
<AdvertisingAction guid=”1298” name=”BBZB01RAZB: Фиксированная цена на товар с ограничением количества” active=”true” mode=”unconditional” priority=”1” ignoreRestictions=”true” worksAnyTime=”false” color=”” external-code=” BBZB01RAZB” > <shop-indices>701</shop-indices> <begin-date>2012-02-21T00:00:00Z</begin-date> <end-date>2012-02-29T00:00:00Z</end-date> <actionResults> <catalog> <marking-of-the-good id=”4100000107” maxQuantity=”5” fixedPrice=”89”/> <!--maxQuantity определяет максимальное кол-во товара в чеке, которое будет продано по акции. 0=любое кол-во --> <marking-of-the-good id=”4100000108” maxQuantity=”5” discountStart=”4” fixedPrice=”100”/> <!--fixedPrice задаёт фиксированную цену на товар; discountStart определяет позицию, начиная с которой на этот товар будет начислять скидка --> <marking-of-the-good id=”4100000109” maxQuantity=”0” conditionCount=”10” fixedPrice=”299”/> <!--conditionCount определяет количество товара, при покупке которого на все количество этого товара будет дана скидка. --> <marking-of-the-good id=”4100000104” maxQuantity=”0” fixedPrice=”199” wholesale-restriction=”3” /> <!--wholesale-restriction определяет количество товара, которое можно купить со скидкой одному покупателю за сутки. --> </catalog> </actionResults> </AdvertisingAction>
Начиная с версии 10.4.3.0 элемент catalog
доступен к использованию в множественном числе.
<?xml version="1.0" encoding="utf-8"?> <AdvertisingActions> <AdvertisingAction name="SR-7151 - Фиксированные цены с ограничениями" active="true" mode="unconditional" priority="7151.0" ignoreRestrictions="false" worksAnyTime="true" color="green" external-code="SR-7151" deleted="false"> <begin-date>2024-04-13T00:00:00.000</begin-date> <end-date>2034-04-13T00:00:00.000</end-date> <actionResults> <catalog> <marking-of-the-good id="00771" fixedPrice="20.0"/> <client-restriction max-value="6" restriction-period-type="DAYS" period="4"/> </catalog> <catalog allowOffline="true"> <marking-of-the-good id="00772" fixedPrice="30.00"/> <client-restriction max-value="15" restriction-period-type="MONTHS" period="1"/> </catalog> </actionResults> </AdvertisingAction> </AdvertisingActions>
Скидки на товары и группы продаж <goodsDiscount>
- В рамках одной акции может быть задано любое количество различных скидок на товары.
- В рамках одной акции нельзя комбинировать скидки на товары с другими результатами применения скидки.
- Скидки можно давать на товары, список товаров, товарную группу.
- Скидка задается целиком на набор элементов и может быть выражена в процентах или фиксированной скидке на единицу товара.
- В результате рекламной акции “Скидка на товары“ допускается заведение нескольких скидок только одного типа (процент, фиксированная цена и т.д.).
- При расчете производится упорядочивание по размеру скидки и в рамках такой рекламной акции сначала учитывается самая выгодная из них.
- Возможен сценарий, когда сработает только одна из таких скидок (если скидка применена на весь товар в позиции), даже если выбран принцип срабатывания акций “суммируются все сработавшие“, так как оставшиеся скидки в рамках такой рекламной акции не сработали.
AdvertisingActions/AdvertisingAction/actionResults/goodsDiscount | ||||
Наименование атрибута | Тип данных | Описание | Обязательное | |
---|---|---|---|---|
name | String | Название скидки | Нет | |
calcWeightProductCountAsOne | Boolean | Принцип учета количества весовых позиций в скидках с количественными ограничениями
| Нет | |
maxQuantity | Double | Определяет максимальное кол-во товара в чеке, которое будет продано по акции. | Нет | |
discountPercent | Double | Процент скидки на товар | Нет | |
discountSum | Double | Сумма скидки на товар | Нет | |
fixPrice | Double | Фиксированная цена каждой единицы товара из этой группы | Нет | |
goodsSum | Double | Сумма скидки при покупке товаров из этой группы. Распределяется пропорционально стоимости товаров этой группы. - CR-3655Получение подробных данных проблемы… СТАТУС - SR-3702Получение подробных данных проблемы… СТАТУС 10.2.82.0 | Нет | |
discountStart | Double | Определяет позицию, начиная с которой на этот товар будет начисляться скидка | Нет | |
conditionCount | Double | Определяет количество товара, при покупке которого на все количество этого товара будет дана скидка |