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

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

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 сообщения, которое вы хотите отправить.

 

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

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

Промокоды можно загрузить либо через Настройки аккаунта из файла CSV либо с помощью специальных методов 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 до 31. Значение будет зашифровано в промокод.
discount - размер скидки от 0 до 99. Значение будет зашифровано в промокод.
key - Ключ шифрования. Оставьте значение по умолчанию.

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

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

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

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

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