Первые шаги
Пользовательские данные
- Обзор адаптивного email-редактора
- Создание оформления для письма
- Создание сквозных модулей
- Настройка адаптивности
- Настройка smart-контейнеров
- Оформление промовкладки для Gmail
- Добавление Ролловера
- Добавление анкорных ссылок
- Библиотека модулей
- Добавление таблицы в письмо
- Работа с блоком "Баннер"
- Добавление пользовательских шрифтов
- Создание кнопки CTA
- Работа с блоком "Картинка"
- Работа с блоком “Таймер"
- Использование ИИ в email-редакторе
- Поддержка мессенджер-протоколов почтовыми клиентами и платформами
Омниканальность
- SDK для мобильных приложений
- Управление ключами доступа к мобильному SDK
- Подключение мобильного приложения
- Создание и загрузка ключа Firebase
- Создание мобильных push-сообщений
- Настройка аналитики доставляемости и кликов
- Планирование мобильных push-уведомлений
- Типы диплинков
- Отправка тестовых сообщений из отладки запросов
- Настройка виджетов для сайта
- Геймификация виджетов
- Вызов виджета
- Настройка геоданных для правил вызова виджетов
- Сохранение данных из виджетов в поля контактов
- Защита от раздражения
- Действия после заполнения формы
- Замена системного сценария Double Opt-In
- Создание pop-up-форм с помощью Google Tag Manager или WordPress
- Отправка событий из форм подписки в Google Analytics
- A/B-тестирование виджетов
- Сбор контактных данных с помощью форм запросов
Автоматизация
- Настройка и редактирование сценариев
- Настройка условий запуска и остановки сценария
- Блок “Старт”
- Группа блоков “Популярные”
- Группа блоков “Сообщения”
- Использование блока сообщений "Одно из многих"
- Группа блоков “Контакт”
- Группа блоков "Условия"
- Группа блоков “Другое”
- Группа блоков “Сообщение на группу”
- Группа блоков “Время”
- Расширенные параметры блоков сценариев
- Разрешенное время отправки
- Вебхуки в сценариях
- Отслеживание истории запусков сценария
- Если сценарий не работает
- Двойное подтверждение подписки
- Приветственная серия
- Приветственная серия с сегментацией по категориям
- Запуск сценария после импорта контактов
- Регулярный сценарий для группы
- Поздравление с днем рождения
- Привязка сценария к кнопке
- Использование переменных из заказа в сценарии
- Сбор отзывов о заказе
- Реактивация клиентов и подписчиков
- Отправка рассылки непрочитавшим
- Настройка дополнительных рассылок
- Отправка напоминаний в заданное пользователем время
- А/B-тестирование в сценариях
Персонализация
- Подстановка промокода из файла
- Подстановка промокода с использованием API
- Принципы генерации промокодов с помощью PHP/JAVA
- Подстановка промокода с помощью персонализации
- Загрузка промокодов для использования в сценарии
- Генерация промокодов в сценарии
- Отправка промокода с помощью препроцессора
- HTTP-запрос для передачи промокода из сообщения в карточку контакта
Аналитика
- Отчёт по email-рассылке
- Отчет по SMS-рассылке
- Отчет по рассылке Web Push
- Отчет по Viber-рассылке
- Отчет по рассылке Mob Push
- Отчет по рассылке App Inbox
- Отчет по Telegram-рассылке
- Отчет по взаимодействию с In-App
- Отчет по взаимодействию с виджетами
- Отчет по триггерной рассылке
- Отчет по AMP-рассылке
- Отчет по мультиязычной рассылке
- Настройка передачи UTM-меток
- Визуализация дохода
- Отслеживание эффективности кампаний в Google Analytics 4
- Статистика сообщений
Мультиязычность
Отслеживание событий и поведения
- События для запуска триггерных рассылок
- Именование пользовательских событий
- Валидация параметров события
- Отслеживание активности на сайте при помощи 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
Для создания заказа необходимо указать названия параметров как они указаны в документации, и ввести обязательные параметры. Если какой-либо из обязательных параметров пропущен, событие игнорируется и заказ не создается.
- ${eventKey} — ключ уникальности события, передаётся в поле externalOrderId. Используется как идентификатор заказа;
- ${orderId} — ID события в системе; параметр нужен для работы сценария.
В качестве идентификатора контакта должен использоваться один из следующих параметров:
- ${externalCustomerId} — внеший ID контакта;
- ${email} — адрес электронной почты контакта;
- ${phone} — номер телефона контакта.
Чтобы подставить значения параметров в сообщения, передавайте поля с параметрами события в виде массива.
- Обязательные поля в массиве orders: externalOrderId, totalCost, status, date, externalCustomerId / email / phone.
- Обязательные поля в массиве items: (externalItemId, name, quantity, cost, url, imageUrl).
Примечание
Цена переданных в заказе товаров должна совпадать со значением totalCost (общая сумма заказа). Если клиент покупает товар со скидкой, она должна учитываться в поле items.cost для каждого товара.
Пример:
{
"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.
-
Если заказ не существует, он игнорируется.
Примечание
Для формирования RFM-таблицы и визуализации дохода от рассылок на вкладке "Отчеты" используются только заказы со статусом DELIVERED.
Исключения составляют заказы, полученные из мобильного SDK, — в таком случае по умолчанию в визуализации дохода учитываются статусы INITIALIZED и DELIVERED. При необходимости учет статусов INITIALIZED можно отключить – для этого обратитесь в нашу службу поддержки support@esputnik.com
orderCancelled
-
Обновляет статус заказа externalOrderId на значение CANCELLED.
-
Если заказ не существует, он игнорируется.