Методы подстановки промокодов в сообщения

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

6 методов подстановки промокодов:

  • Генерация промокодов в сценарии
    Для продвинутых пользователей. Для триггерных писем позволяет генерировать промокод прямо в момент отправки сообщения. Сгенерированный eSputnik промокод может быть расшифрован и верифицирован на вашей стороне. Подробнее.


Статический

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

В нашем редакторе писем в галерее блоков заготовлены несколько блоков с рамочками для промокодов. Вы можете воспользоваться любым из них или сделать свою верстку.

 

Подстановка промокода с помощью персонализации

Технически - самый простой метод для подстановки персонализированных промокодов в сообщения. Промокод записывается в свойства контакта и оттуда подставляется в сообщение.

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

Подготовка рассылки состоит из таких этапов:

  1. Создание дополнительного поля в системе.
  2. Создание файла с промокодами.
  3. Загрузка файла на сайт.
  4. Создание и отправка письма.

1. Создание дополнительного поля в системе

В базе контактов необходимо создать дополнительное поле для промокодов.

Для этого заходите в НастройкиДополнительные поля.




Нажимаете на Добавить поле и в открывшемся окне заполняете данные



2. Создание файла с промокодами

Далее надо создать файл с контактами и соответствующими им промокодами. По сути - это обычный excel или csv файл, в котором есть колонки с email-адресами или номерами телефонов и соответствующими им промокодами.

3. Загрузка файла на сайт

Через импорт контактов загружаете файл с контактами и промокодами. В настройке соответствия полей выбираете созданное поле Промокод для столбца с промокодами.
Система обновит контакты и добавит промокоды к соответствующим контактам.

В результате импорта будет создана группа контактов. По ней и надо будет сделать рассылку.

4. Создание и отправка сообщения

В режиме редактирования сообщения вставляете переменную %PERSONAL.PROMOCODE|% в то место, где должен быть промокод.



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

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

 

Подстановка промокода с использованием API

Этим сопособом можно отправлять промокоды в триггерных письмах.

Есть 2 общих способа отправки писем по API:

С использованием сценария

Напрямую (без использования сценария)

Метод /v1/event

С помощью данного метода вы можете создать и передать в систему какое-то свое событие. Событие запустит сценарий, который выполнить запрограммированные в нем действия, например, отправит письмо или SMS. 

Процесс выглядит следующим образом:

  1. Передача данных в систему с помощью метода /v1/event (при этом создается событие).
  2. Создание сообщения для отправки.
  3. Создание сценария.

1. Передача событий в систему с помощью метода /v1/event

Вам надо настроить отправку запросов /v1/event по API в eSputnik. В параметрах каждого события надо передавать как минимум email или номер телефона (для SMS) и промокод. Пример.

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

За промокод отвечают следующие элементы:

  • name - promocode
  • value - ABC-123 (сам промокод)

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

В сообщение необходимо вставить название переменной, которая содержит промокод.
Если вы назвали переменную promocode, то в письмо вставляете $!data.get(‘promocode’).


3. Создание сценария

Сценарий в таком случае будет выглядеть следующим образом:



В параметрах выбираете сообщение, которое вы хотите отправить. Также надо указать параметр из события, в котором содержится email-адрес. Больше ничего настраивать не нужно. В данном примере используется блок Email. Если хотите отправить SMS - используйте блок SMS и укажите в настрйоках параметр, содержащий номер телефона.
 

/v1/message/{id}/smartsend

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

Для каждого контакта можно передать отдельный промокод.

Вам надо настроить передачу запросов методом API /v1/message/{id}/smartsend. Формат тела запроса для этого метода:

{
    "recipients": [{
        "locator": "mail@example.com",
        "jsonParam": "{\"promocode\":\"ABC-123\"}"
    }],
    "email": true
}
 
Здесь recipients - массив с получателями. В каждом его элементе есть параметр jsonParam. Его можно использовать для передачи любых данных (например, промокода) в сообщение. В этом параметре данные для сообщения должны быть в формате JSON, но преобразованные в строку.

Для отправки сообщения таким методом вы должны предварительно его создать. В нем обязательно должна быть переменная, которая подставит промокод. Для данного примера это $!data.get('promocode').

В запросе вместо {id} вставляете id сообщения, которое вы хотите отправить.


 

/v1/message/{id}/send

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

Описание метода здесь.

{
    "params": [{
        "key": "promocode",
        "value": "ABC-123"
    }],
    "email": true,
    "groupId": 1111
}

params - массив с параметрами для подстановки в письмо. В нем есть один элемент, содержащий промокод.

key - название параметра (например, promocode)
value - значение параметра (например, ABC-123)

В этом примере отправка на группу. Если хотите отправить на один или несколько контактов, вместо groupId передавайте массив recipients с получателыми: "recipients": [ "mail1@example.com", "mail2@example.com" ].

Для отправки сообщения таким методом вы должны предварительно его создать. В нем должна быть переменная, которая подставит промокод.
Формат подстановки переменных следующий: %TEMPLATE.имя_ключа_для_замены%. Для данного примера получится %TEMPLATE.promocode%.

Пример вставки переменной промокода.

В запросе вместо {id} вставляете id сообщения, которое вы хотите отправить.

 

Загрузка промокодов через API для использования в сценарии

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

Методы API для загрузки промокодов:

  • /v1/promocodes - Загрузка из CSV файла
  • /v1/promocodes - Загрузка из JSON

Процесс настройки выглядит следующим образом:

  1. Сгенерировать промокоды и передать их нам через API.
  2. Создать сообщение.
  3. Настроить сценарий.

1. Генерация промокодов и передача их по API

Вам надо сгенерировать достаточное количество промокодов. Лучше с большим запасом, чтобы они внезапно не закончились.

Промокоды загрузите в нашу систему по API удобным вам методом. Возможна загрузка из CSV-файла или из JSON.

В CSV-файле или JSON передаются следующие характеристики промокодов:

code - значение промокода
expirationDate - дата завершения действия промокода. Формат дат следующий: 2017-12-31T23:59
discount - скидка. Задаете значение от 0 до 99.
type - тип промокода. Указываете любое значение. Например, birthday, blackfriday, christmas и т.д.
inUse - флаг использованный промокод или нет.

discount и type сделаны для сегментации промокодов в базе. Технически неважно какая указана скидка. Реальная скидка у покупателя будет такая, какую вы ему предоставите на своем сайте.

Удалить загруженный, но неиспользованный промокод нельзя. Поэтому если вдруг какие-то промокоды потеряли актуальность, обновите их установив флагу inUse значение true. В процессе использования система сама будет менять статусы использования промокодов с false на true.

2. Создание сообщения

В сообщение на место промокода надо вставить переменную $!data.get(‘promocode’).


3. Настройка сценария

В сценарии необходимо вставить минимум 2 блока: Задача - Получить Промокод и Email (или SMS).

Блок Задача - Получить Промокод

Сценарий может выглядеть следующим образом:


 

У данной задачи 3 параметра. Все обязательные.

days - количество дней которые должен действовать промокод
type - заданный вами тип промокода
discount - размер скидки

Принцип работы рассмотрим на примере. В параметрах укажем следующие данные:

days - 10
type - birthday
discount - 20

Это значит, что задача вытянет промокод со скидкой 20%, которому присвоен тип birthday и который будет действовать не меньше 10 дней с момента срабатывания блока в сценарии. Система вытянет подпадающий под заданные условия промокод, передаст его в сообщение и пометит как использованный.

Блок Email

В блоке Email выбираете предварительно созданное письмо и указываете параметр из события, в котором содержится email-адрес.

Конечно, аналогично можно сделать отправку SMS с помощью блока SMS.

 

Отправка промокода с помощью препроцессора

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

Подробнее о препроцессоре здесь.

Процесс отправки рассылки с использованием препроцессора выглядит следующим образом:

  1. Создать файл для препроцессора с промокодами.
  2. Загрузить этот файл в систему.
  3. Создать письмо.
  4. Сделать рассылку.

1. Создание файла для препроцессора с промокодами

Чтобы отправлять сообщения с помощью препроцессора, необходимо создать файл определенного формата. Файл в формате JSON должен содержать ключи (email-адреса или номера телефонов) и массив с данными для каждого ключа.

Пример содержимого файла:

{
    "mail1@example.com": [{
        "promocode": "001100"
    }],
    "mail2@example.com": [{
        "promocode": "001101"
    }],
    "mail3@example.com": [{
        "promocode": "001102"
    }]
}


Больше информации по формату файла здесь.

2. Загрузка файла в систему

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

3. Создание сообщения

В сообщение на место промокода надо вставить переменную. Для данного примера переменная будет такая: $!data.get('recommendations').get(0).get('promocode').

Также надо подключить к этому сообщению ранее загруженный файл препроцессора.



3. Создать и запустить рассылку

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


Генерация промокодов в сценарии

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

На своем сайте с помощью обратного алгоритма вы сможете расшифровать введенный пользователем промокод и предоставить ему соотвуствующую скидку или бонусы согласно условиям вашей акции. Алгоритм шифрования/расшифровки промокода описан в этом документе.

Процесс настроки выглядит следующим образом:

  1. Создаете ключ для шифрования промокода.
  2. Создаете письмо.
  3. Настраиваете сценарий.
  4. Расшифровуете промокод.

1. Создание ключа шифрования

Промокоды шифруются с помощью ключа, который не должны знать третьи лица. Сгенерируйте ключ в формате eSSuperKeyXXXXXXXXXXXXXX, где XXXXXXXXXXXXXX - 14 любых цифр. Ключ сообщите нам. Мы подключим его к вашему аккаунту.

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

В сообщение необходимо вставить переменную $!data.get(‘promocode’).



3. Настройка сценария

Сценарий в данном случае будет выглядеть следующим образом:



В сценарии используются блоки Задача - Создать промокод и Email (или SMS).

Блок Задача - Создать промокод

У этой задачи 4 параметра:

days - указывается количество дней до окончания действия промокода. При срабатывании этого блока система добавит к текущей дате указанное количество дней и полученную дату окончания действия зашифрует в промокод.
type - тип промокода. Можно указать только числа от 0 до 9. Значение будет зашифровано в промокод.
discount - размер скидки от 0 до 99. Значение будет зашифровано в промокод.
key - Ключ шифрования. Оставьте значение по умолчанию.

Блок отправки сообщения (Email или SMS)

В блоке Email или SMS выбираете предварительно созданное письмо и указываете переменную содержащую email или номер телефона.

4. Расшифровка промокода

Получатель получит промокод следующего фрмата CRRH-ASDF-HGVB-MNCA.

Вы сможете на своем сайте расшифровать этот промокод с помощью алгоритма и ключа. Успешно расшифровав промокод вы, во-первых, провалидируете его; во-вторых, получите такие данные: дата окончания действия, скидка, тип промокода. Алгоритм описан в документе.