Первые шаги
Пользовательские данные
- Обзор адаптивного email-редактора
- Создание оформления для письма
- Создание сквозных модулей
- Настройка адаптивности
- Настройка Smart-элементов
- Оформление промовкладки для Gmail
- Добавление Rolloverʼа
- Добавление фона в письмо
- Добавление анкорных ссылок
- Библиотека блоков (Модули)
- Добавление блока "Видео"
- Добавление таблицы в письмо
- Работа с блоком "Баннер"
- Добавление пользовательских шрифтов
- Добавление кастомных иконок соцсетей
- Работа с блоком "Соцсети"
- Создание кнопки CTA
- Редактирование HTML и CSS
- Робота с блоком "Изображения"
- Работа с блоком “Таймер"
- Настройка блока "Меню"
- Создание футера
Омниканальность
- SDK для мобильных приложений
- Управление ключами доступа к мобильному SDK
- Подключение мобильного приложения
- Создание Google проекта для Mob Push
- Создание мобильных push-сообщений
- Настройка аналитики доставляемости и кликов
- Планирование мобильных push-уведомлений
- Настройка универсальных ссылок (deeplinks & Universal links)
- Отправка тестовых сообщений из отладки запросов
- Настройка виджетов для сайта
- Вызов виджета
- Сохранение данных из виджетов в поля контактов
- Защита от раздражения
- Действия после заполнения формы
- Расширение для тестирования форм в Google Chrome
- Создание pop-up-форм с помощью Google Tag Manager или WordPress
- Отправка событий из форм подписки в Google Analytics
- Замена системного сценария Double Opt-In
- Настройка геоданных для правил вызова виджетов
Автоматизация
- Двойное подтверждение подписки
- Приветственная серия
- Приветственная серия с сегментацией по категориям
- Запуск сценария после импорта контактов
- Регулярный сценарий для группы
- Поздравление с днем рождения
- Привязка сценария к кнопке
- Согласование переменных события со сценарием на примере сценария "Заказ доставлен"
- Сбор отзывов о заказе
- Реактивация клиентов и подписчиков
- Отправка рассылки непрочитавшим
- Настройка дополнительных рассылок
Персонализация
- Подстановка промокода из файла
- Подстановка промокода с использованием API
- Принципы генерации промокодов с помощью PHP/JAVA
- Подстановка промокода с помощью персонализации
- Загрузка промокодов для использования в сценарии
- Генерация промокодов в сценарии
- Отправка промокода с помощью препроцессора
- HTTP-запрос для передачи промокода из сообщения в карточку контакта
Аналитика
- Отчёт по email-рассылке
- Отчет по SMS-рассылке
- Отчет по рассылке Web Push
- Отчет по Viber-рассылке
- Отчет по рассылке Mob Push
- Отчет по рассылке App Inbox
- Отчет по взаимодействию с виджетами
- Отчет по триггерной рассылке
- Отчет по AMP-рассылке
- Отчет по мультиязычной рассылке
- Настройка передачи UTM-меток
- Визуализация дохода
- Отслеживание эффективности рассылок в Google Analytics
Мультиязычность
Отслеживание событий и поведения
- Разветвление сценария в зависимости от параметров события
- Отслеживание активности на сайте при помощи Generate event
- Валидация параметров события
- Отслеживание активности клиентов в мобильных приложениях
- Подстановка данных из событий в сообщения
- События для запуска триггерных рассылок
- Вебхуки для отслеживания активности
Товарные рекомендации
API
Смена системы
Документы
Интеграция
Передача заказов API-ресурсом Generate event
Для передачи данных о заказе используется ресурс Add orders, который имеет ряд ограничений:
- фиксированное число полей, регламентированных спецификацией;
- нет возможности добавлять пользовательские поля;
- содержимое заказов нельзя использовать для построения сегментов.
Эти ограничения отсутствуют в способе управления заказами при помощи метода Generate event на основе событий. Это метод можно использовать вместо метода Add orders, или в дополнение к нему.
Важно
Заказ передаваемый при помощи Generate event в ответ не возвращает идентификатор созданного заказа - orderId. Чтобы получить его, создайте заказ при помощи Add orders, после чего дополняйте и обновляйте статус заказа при помощи Generate event.
Использование метода Generate event для передачи заказов
Используя метод Generate event для передачи событий, вы можете:
-
Передавать больше данных, чем в методе Add orders, используя дополнительные поля.
-
Подключать сегментацию по событиям и их параметрам. Например, отсортировать клиентов, которые покупали определенный товар в течение недели. Подробнее о таких возможностях читайте в статье Как использовать сегментацию по событиям.
-
Расширять/получать RFM-сегментацию по заказам без дополнительного подключения Add orders.
Важно
Чтобы событие сохранилось с привязкой к контакту, необходимо знать, какой параметр в событии содержит идентификатор, по которому можно найти контакт. А также какое именно поле контакта используется в качестве идентификатора.
Если в событии не задан идентификатор контакта, система по умолчанию ищет следующие названия параметров события в порядке, указанном на вкладке “События” в настройках вашего аккаунта. На этой же вкладке вы можете задать кастомный параметр для привязки события к контакту.
Прислать заказ Generate event можно только для уже существующего контакта у вас в базе. Если нужно передать заказ для нового клиента, необходимо предварительно импортировать этот контакт в систему используя методы:
Для отправки события по заказу нужно указать необходимый тип события (создание или обновление заказа) из указанных в таблице.
Тип события |
Описание обработки |
orderCreated |
Создает заказ с одним из статусов, указанном в массиве: INITIALIZED, IN_PROGRESS, DELIVERED, CANCELLED, ABANDONED_SHOPPING_CART. |
orderUpdated |
Обновляет заказ. |
orderDelivered |
Изменяет статус заказа на DELIVERED. |
orderCancelled |
Изменяет статус заказа на CANCELLED. |
orderCreated
Для создания заказа необходимо указать названия параметров как они указаны в документации, и ввести обязательные параметры. Если какой-либо из обязательных параметров пропущен, событие игнорируется и заказ не создается. Обязательные параметры указаны в приведенном списке полей.
Пример:
{
"eventTypeKey": "orderCreated",
"keyValue": "380501234567",
"params": [{
"name": "phone",
"value": "380501234567"
}, {
"name": "externalOrderId",
"value": "12345679"
}, {
"name": "externalCustomerId",
"value": "AV13760"
}, {
"name": "totalCost",
"value": "258.0"
}, {
"name": "status",
"value": "INITIALIZED"
}, {
"name": "date",
"value": "2020-05-14T10:11:00"
}, {
"name": "currency",
"value": "UAH"
}, {
"name": "items",
"value": [{
"externalItemId": "200600",
"name": "Super Device",
"category": "devices",
"quantity": 1,
"cost": 990,
"url": "http://example.com/item/200600",
"imageUrl": "http://example.com/item/200600/image.png",
"description": "High quality"
}]
}]
}
Важно
Чтобы событие сохранялось с привязкой к контакту, необходимо знать, какой параметр в событии содержит идентификатор, по которому можно найти контакт. Система по умолчанию ищет следующие названия параметров события без учета регистра: ContactId, Contact_id, Email, EmailAddress, UserEmail, ContactEmail, Phone, SMS, PhoneNumber, PushToken, ContactKey, Contact_key. Все значения, кроме email-адреса, сравниваются с учетом регистра.
Поле |
Описание |
status |
Может принимать одно из следующих значений: INITIALIZED, IN_PROGRESS, DELIVERED, CANCELLED, ABANDONED_SHOPPING_CART. |
date | Формат передачи даты YYYY-MM-ddTHH:mm:ss, в соответствии со стандартом ISO 8601. Пример: 2020-05-14T10:11:00. |
items | Товары, входящие в заказ (необязательное поле). Если данное поле используется, то необходимо указывать обязательные поля для метода orderItem. Значения items необходимо передавать json строкой. Поддерживается вложенность до второго уровня включительно. Это значит, что если в массиве items передать еще один массив или объект, он останется сериализованным (экранированным). Такие данные мы не игнорируем, но в силу того, что это будет строка, работать с ней не получится. |
orderUpdated
-
Обновляет заказ с указанным значением externalOrderId.
-
Если переданный заказ не существует, он создается.
-
Параметры должны быть указаны в соответствии с документацией. Если заказ создается, то применяются требования для orderCreated.
orderDelivered
-
Обновляет статус заказа externalOrderId на значение DELIVERED.
-
Если заказ не существует, он игнорируется.
orderCancelled
-
Обновляет статус заказа externalOrderId на значение CANCELLED.
-
Если заказ не существует, он игнорируется.