Перейти к основному содержимому
Altcraft Docs LogoAltcraft Docs Logo
Пользователям iconПользователям
Разработчикам iconРазработчикам
Администраторам iconАдминистраторам
Русский
  • Русский
  • English
Войти
    Документация пользователяС чего начатьFAQТермины
      Обновления платформыarrow
    • v2026.1.76v2025.4.75v2025.4.74v2025.3.73v2025.2.72v2025.1.71v2024.4.70v2024.3.69v2024.2.68.2v2024.1.68
      Хранение и сбор данныхarrow
    • Ресурсы подписокРабота с базами данныхПрофиль подписчикаИмпорт профилей клиентов и обновление данныхИмпорт данных по расписаниюАвтоматизация сбора данных о профилеМассовое обновление профилей клиентовDouble opt-in подпискаСтоп-спискиСвязи между профилямиЭкспорт истории профилейЭкспорт профилейАвтоматическое создание статического сегмента при импортеКак открыть CSV-файлМатчингТипы полей в базе данныхГлобальные контрольные группыМенеджер подписок
      Каналы коммуникацииarrow
      • Email-каналarrow
      • Рекомендации по взаимодействию с ISPНастройка собственного from-доменаНастройка и использование постмастеровБыстрый старт
        Push-каналarrow
        • Mobile Pusharrow
        • Настройка и подключение
            Интеграция приложения с Altcraftarrow
          • Провайдеры: структура push сообщенияОбработка и добавление подпискиРегистрация событий
          Web Pusharrow
        • Предварительные настройки
            Настройка для различных браузеровarrow
          • Apple SafariMozilla ServicesFirebase Cloud Messaging
          Подключение Web Push на сайтПередача данных в платформуМетоды Web Push SDK
            Миграция и перенос подписокarrow
          • Перенос push-подписок из стороннего сервисаКак перенести push-подписки, настроенные для SafariМиграция с OneSignal
      SMS-канал
        Создание рассылки с нуляarrow
      • EmailSMSWeb PushMobile PushWhatsAppViber™Руководство: SMS-рассылка через VK NotifyMAX BotMAX GroupNotifyTelegram BotTelegram Group
      Схема работы каналов коммуникацииРуководство: SMS-рассылка через УТШРуководство: push-рассылка через сервис от "Согласие"
      Сегментацияarrow
    • Статические сегментыДинамические сегментыОбновляемые сегменты
        Условия сегментацииarrow
      • Сегментация по данным профиляСегментация по взаимодействиям с сущностямиСегментация по активности в каналах коммуникацииСегментация по внешним даннымСегментация по внешним SQL-таблицамСегментация по структуре профиля
      Лучшее время отправки (BST)Логические операторы "И" и "ИЛИ"Рекомендации по работе с сегментами
      Шаблоны сообщенийarrow
      • Работа с шаблонами сообщенийarrow
      • Работа в редактореEmail-шаблонSMS-шаблонPush-шаблонMAX-шаблонTelegram-шаблонWhatsApp-шаблонViber™-шаблонNotify-шаблон
        Визуальный редактор для email-шаблонаarrow
      • Интерфейс редактораДобавление элементовЭлементы и их настройкиПользовательские блокиСтили элементаСтруктура элементов
      Блочный редактор для email-шаблонаФрагменты шаблоновИзображения в сообщенияхПерсонализация контента в сообщенияхФормирование таблиц на основе элементов массива
        Переменные и функции Altcraftarrow
      • Использование логических выражений в сообщенияхИспользование циклов в сообщенияхИспользование переменных маркета в сообщенияхИспользование функционала JSONPath
        Динамический контент сообщенийarrow
      • Использование API-контента в сообщенияхИспользование HTML-контента в сообщенияхИспользование JSON-контента в сообщенияхИспользование контента из SQL базы данных в сообщениях
      Импорт и экспорт шаблона сообщенияЭкспорт шаблона из PixcraftИмпорт шаблона из стороннего сервиса
      Рассылкиarrow
    • Календарь рассылокБроадкаст рассылкаРегулярная рассылкаТриггерная рассылкаМультивариантный тест (A/B/n)Тестирование расылокРасписание рассылокРазмещения
      Кампанииarrow
    • Работа с КампаниямиЛокальные контрольные группы (ЛКГ)Ошибка нарушения стратификации при достижении лимитаРасширение аудитории в кампанииРазметка аудитории в кампаниях
      Сценарии автоматизацииarrow
    • Работа со Сценариями автоматизацииУзлы сценарияКлассические сценарии автоматизации маркетингаПриветственный сценарий: пошаговая настройкаАвтоматическое оповещение менеджера через сценарийСценарий брошенной корзины
      Маркетarrow
    • Настройки маркета
        Продуктыarrow
      • Создание продукта вручнуюИмпорт продукта из файлаИмпорт по расписаниюСегменты продуктов и SKUПодготовка YML-файла
      ЗаказыПеременные маркета в шаблонахРуководство: как отправить письмо подтверждения заказа
      Лояльностьarrow
    • Создание и настройка программы лояльностиИнтеграция лояльности с внешними системамиБыстрый стартБазовые кейсы использования программы лояльностиСегменты заказовПромокоды
      Веб-слойarrow
      • Формыarrow
      • Создание формыКонструктор формыОформление формыДействия при активации формыАналитика данныхСвязывание данных канала и формыУсловная постраничная логика в формах и опросахNPS-тестирование
        Пикселиarrow
      • Целевые действия клиентов и скоринг
        Попапыarrow
      • Создание и публикация попапаНастройка попапа в редакторе кодаУправление попапами вручную через скриптАналитика попаповРуководство: попап для подписки на pushБазовые кейсы размещения попапа через Менеджер теговКейс: Создание попапа с виджетом "Колесо фортуны"
        Менеджер теговarrow
      • Настройка и установка Менеджера теговТипы триггеровТипы переменныхСвязывание пикселя и Менеджера тегов
      Отчеты и аналитикаarrow
    • Отчет по каналамОтчёт по трафику
        Сводный отчётarrow
      • Все показатели сводного отчета
      Когортный отчётВремя жизниВоронка конверсииЦелиПрирост аудиторииКарта кликов (Email)Отчет по программам лояльностиОтчёт о возвратахОтчёт о недоставкахОтчет по глобальным контрольным группам
      Интеграцииarrow
    • Синхронизация статических сегментовMAXЯндекс.Аудитории™Аудитории Google AdsFacebook Ads Manager™Область видимости интеграцииWhatsAppViber™Tilda™Yandex AppMetrica™Lpgenerator™VK Реклама™Передаваемые при синхронизации данные
        Интеграция сторонних сервисов с Altcraft через Albatoarrow
      • Подключение Altcraft к AlbatoЗапуск приветственного сценария через AlbatoПередача данных о событииОтправка триггерной рассылкиРегистрация событийИмпорт данных из Google Sheets через AlbatoПередача данных из Altcraft
      Notify
        Захват событийarrow
      • Захват событий AltcraftТипы событий для захватаСтруктуры сообщений захвата событийОтправить JSON-запрос батчемОтправить сообщение в очередь RabbitMQОтправить сообщение в exchange RabbitMQОтправить сообщение в Kafka brokerПредварительное тестирование события
      Настройкиarrow
    • Настройки аккаунтаНастройки атрибутовПоисковые теги: создание и применениеПользовательские ссылкиВиртуальные сендерыПолитики отправки
        Пользователи и разграничение доступаarrow
      • Двухфакторная аутентификация (2FA)
        Подключенияarrow
      • Подключение к Facebook AdsПодключение к Google AdsПодключение к Яндекс.Аудиториям™Подключение к 360dialogПодключение к EdnaПодключение к Devino TelecomПодключение к SMS TrafficПодключение к VK Рекламе™Подключение к MTS OmniChannelПодключение через OAuth2Подключение через Basic AuthenticationПодключение через Token AuthenticationПодключение через Custom AuthenticationПодключение к MAXПодключение к NotifyПодключение к Rapporto
      Журнал аудита
      API-запросы: с чего начатьarrow
    • Импорт и обновление профиляЗапуск триггерной рассылкиОтправка профиля клиента в сценарий
    Архив документацииБиблиотека email-маркетолога
  • Маркет
  • Руководство: как отправить письмо подтверждения заказа

Руководство: как отправить письмо подтверждения заказа

Этот гайд покажет алгоритм работы в маркете Altcraft Platform.

В качестве примера представим, что у нас есть интернет-магазин смартфонов. Покупатель заходит на сайт, добавляет товар в корзину и оформляет заказ. Наша задача — отправить ему письмо подверждения заказа, где будет указан номер заказа и сумма к оплате.

В инструкции описаны следующие шаги:

  1. Создание канала продаж и точек контакта
  2. Импорт данных о продуктах и SKU с помощью yml файла
  3. Настройка API-запроса для добавления данных заказа в маркет
  4. Создание шаблона и подстановка данных заказа с помощью переменных
  5. Настройка триггерной рассылки

Шаг 1. Настройка канала продаж​

Работа в маркете начинается с создания канала продаж. Канал определяет базу профилей и точки контакта.

База профилей — это покупатели, которые делают заказы в определенном канале. Необходимо импортировать их данные в новую или существующую базу. Для этого воспользуйтесь импортом из файла или через API.

Точка контакта — это площадка или инструмент, с помощью которого вы продаете клиенту товары или услуги (сайт, магазин, постамат, отдельный терминал, соцсеть, call-центр и др.). Точка контакта связывает канал продаж и заказ.

Чтобы создать канал, в главном меню перейдите в раздел Маркет —> Настройки. На вкладке Каналы продаж создайте новый канал. Укажите:

  • название канала
  • дополнительный идентификатор
  • базу профилей
  • тип канала: онлайн или ритейл

Далее сохраните канал и снова перейдите в его настройку. Создайте точки контакта.

Обратите внимание, каждая точка может быть привязана только к одному каналу. Идентификатор точки контакта будет использоваться в API-запросе для импорта заказа.

Шаг 2. Загрузка в платформу данных о товарах​

Товары в Маркете представлены двумя сущностями: продукты и SKU.

подсказка

Продукт — это товар или услуга для продажи. SKU — это модификатор продукта, т.е. группа товаров, которая выделяется в одном продукте по некоторым параметрам (цвет, размер, вес, модель, комплектация и т.д.).

SKU привязывается к определенному продукту и не может существовать без него. Например, Apple iPhone 12 — это продукт, а Apple iPhone 12 128GB и Apple iPhone 12 256GB — это его SKU.

Добавить данные о товарах в платформу можно тремя способами:

  • создание вручную
  • импорт из файла
  • импорт через API

Давайте импортируем товары из файла. Для этого вам необходимо подготовить файл в формате yml.

подсказка

Если возникнут вопросы по импорту, читайте подробную инструкцию.

Ниже показаны примеры yml-файлов:

Продукт​

Файл с таким содержимым добавит в маркет два продукта: Apple iPhone 12 и Xiaomi 12X.

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2017-02-05 17:22">
<shop>
<name>BestSeller</name>
<company>Tne Best inc.</company>
<url>http://best.seller.ru</url>
<categories>
<category id="10">Смартфоны</category>
<category id="101" parentId="10">Apple</category>
<category id="102" parentId="10">Xiaomi</category>
</categories>
<offers>
<offer id="iphone12" available="true">
<name>Apple iPhone 12</name>
<vendor>Apple</vendor>
<url>http://best.seller.ru/product_page.asp?pid=12348</url>
<price>83990</price>
<oldprice>89990</oldprice>
<currencyId>RUB</currencyId>
<categoryId>101</categoryId>
<picture>https://example.com/img/apple_phone.png</picture>
<delivery>true</delivery>
<manufacturer_warranty>true</manufacturer_warranty>
<barcode>0156789012</barcode>
</offer>
<offer id="xiaomi12" available="true">
<name>Xiaomi 12X</name>
<vendor>Xiaomi</vendor>
<url>http://best.seller.ru/product_page.asp?pid=12345</url>
<price>62990</price>
<oldprice>69990</oldprice>
<currencyId>RUB</currencyId>
<categoryId>102</categoryId>
<picture>https://example.com/img/xiaomi_phone.png</picture>
<delivery>true</delivery>
<manufacturer_warranty>true</manufacturer_warranty>
<barcode>0123456789379</barcode>
</offer>
</offers>
</shop>
</yml_catalog>

SKU​

Файл добавит два SKU для продукта Apple iPhone 12: Apple iPhone 12 128GB и Apple iPhone 12 256GB.

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2017-02-05 17:22">
<shop>
<name>BestSeller</name>
<company>Tne Best inc.</company>
<url>http://best.seller.ru</url>
<offers>
<offer id="apple12_128gb" group_id="iphone12" available="true">
<name>Apple iPhone 12 128GB</name>
<vendor>Apple</vendor>
<url>http://best.seller.ru/product_page.asp?pid=12358</url>
<price>71990</price>
<oldprice>72990</oldprice>
<currencyId>RUB</currencyId>
<categoryId>101</categoryId>
<picture>https://example.com/img/apple_phone_128.png</picture>
<delivery>true</delivery>
<manufacturer_warranty>true</manufacturer_warranty>
<barcode>0156789012</barcode>
</offer>
<offer id="apple12_256gb" group_id="iphone12" available="true">
<name>Apple iPhone 12 256GB</name>
<vendor>Apple</vendor>
<url>http://best.seller.ru/product_page.asp?pid=12359</url>
<price>83990</price>
<oldprice>89990</oldprice>
<currencyId>RUB</currencyId>
<categoryId>102</categoryId>
<picture>https://example.com/img/apple_phone_256.png</picture>
<delivery>true</delivery>
<manufacturer_warranty>true</manufacturer_warranty>
<barcode>0156789012</barcode>
</offer>
</offers>
</shop>
</yml_catalog>
подсказка

Список всех продуктов и SKU хранится в элементе offers. Один продукт или SKU записывается в отдельном элементе offer.

Для элемента offer указывается атрибут id , уникальный для каждого товара.

Cтруктура yml файла для продукта и SKU практически не отличается. Единственное отличие — при импорте SKU для элемента offer указывается не только id, но также group_id – идентификатор продукта.

Обратите внимание, SKU – это различные вариации одного продукта, поэтому значение атрибута group_id должно быть одинаковым для всех SKU одного продукта.

Чтобы импортировать файл со списком продуктов, перейдите в раздел Маркет —> Продукты. Нажмите на иконку в верхней панели, а затем выберите, что именно хотите импортировать — продукт.

Кликните на область загрузки и выберите файл на своем устройстве:

Запустите процесс импорта, нажав кнопку "Импортировать" в верхней панели.

Затем импортируйте SKU, повторив все действия, описанные в этом пункте.

Шаг 3. Настройка API запроса на добавление заказа​

Когда посетитель интернет-магазина оформит заказ, необходимо отправить API-запрос в платформу с данными о заказе.

URL-адрес​

Метод: POST

https://example.com/api/v1.1/market/orders/import

Параметры запроса​

ПараметрТипПримерОбязательныйОписание
tokenstring"abcdefghijklmnqrstuvwxyz"ДаAPI-токен. Убедитесь, что для токена доступны роли, позволяющие работать с маркетом.
dataarray of objects
[
{
...
}
]
ДаДанные о заказе.
Подробнее.
Объект data
external_idstring"1234001"ДаИдентификатор заказа
matchingstring"email"
Режим поиска подписчика. По умолчанию – email.

Для каждого типа матчинга в теле запроса необходимо передавать определенные поля. Подробнее об этих полях можно узнать здесь.
endpointstring"website"ДаИдентификатор точки продажи
statusstring"new"
"delivered"
"paid"
"canceled"
"part_refunded"
ДаИдентификатор статуса заказа
total_pricestring"71990"ДаОбщая стоимость заказа. Складывается из суммы каждой позиции в заказе и стоимости доставки.
currencystring"RUB"ДаВалюта, в которой указана стоимость заказа.
create_timestring"2022-04-29T12:48:23Z"НетВремя создания заказа
update_timestring"2022-04-29T12:48:23Z"НетВремя обновления заказа
linesarray
[
{
...
}
]
ДаДанные о позициях заказа. Минимум одна позиция.
Объект lines
external_idstring"line_01"ДаИдентификатор позиции
productstring"iphone12"Не должен присутствовать в запросе, если задан skuИдентификатор продукта
skustring"apple12_128gb"Не должен присутствовать в запросе, если задан productИдентификатор SKU
base_price_per_itemstring"71990"ДаБазовая цена
min_price_per_itemstring"71990"ДаМинимальная цена
final_price_per_itemstring"71990"ДаКонечная цена
countint1ДаКоличество товара в позиции

Пример запроса​

{
"token": "abcdefghijklmnqrstuvwxyz",
"data": [
{
"external_id": "1234001",
"matching": "email",
"email": "johndoe@example.com",
"endpoint": "website",
"status": "new",
"total_price": "71990",
"create_time": "2022-04-29T12:48:23Z",
"update_time": "2022-04-29T12:48:23Z",
"currency": "RUB",
"lines": [
{
"external_id": "line_01",
"product": "iphone12",
"base_price_per_item": "71990",
"min_price_per_item": "71990",
"final_price_per_item": "71990",
"count": 1
}
]
}
]
}

Пример ответа​

{
"error": 0,
"error_text": "",
"result": [
{
"error": 0,
"external_id": "1234000"
}
]
}

Возвращаемые параметры​

ПараметрТипОписание
errorintКод ошибки
error_textstringТекст ошибки
resultarrayИдентификаторы заказов, которые были успешно импортированы

Шаг 4. Создание шаблона сообщения​

Перейдите в раздел Шаблоны. Добавьте новый шаблон для email канала.

Чтобы использовать информацию о заказе в рассылке, необходимо добавить переменные маркета в шаблон письма. Для этого в редакторе нажмите </>. В списке выберите "Маркет" и вставьте переменную "Заказы".

В редактор добавится паттерн функции orders. Эта функция выбирает заказы из списка заказов профиля.

Нам надо добавить в письмо только информацию о последнем заказе со статусом "Новый". Для этого потребуется изменить аргументы функции:

{orders("order.status == '1'" 1 "create_time" "desc")}

Функция состоит из четырех аргументов:

АргументПримерОписание
Фильтр"order.status == '1'"Функция выберет только те заказы, которые соответствуют условию "статус заказа новый".
Лимит1Функция выберет только первый элемент в списке заказов.
Поле для сортировки"create_time"Выбранные элементы будут отсортированы по полю "create_time" (время создания заказа).
Направление сортировки"desc"
"asc"
Элементы будут отсортированы по убыванию значения в поле "create_time".

Функция orders получит массив заказов. В данном случае это будет массив с одним элементом. Используйте цикл, чтобы перебрать массив.

В шаблоне письма подставьте 2 переменные:

  • $el.external_id — дополнительный идентификатор заказа.

  • $el.total_price — общая сумма заказа.

{for $index $el = orders("order.status == '1'" 1 "create_time" "desc")}
Спасибо! Ваш заказ №{$el.external_id} подтвержден.
К оплате: {$el.total_price}
{else}
if empty array
{end}
подсказка

Подробнее о работе с переменными маркета написано в этой статье. Там вы найдете информацию о полях, которые можно использовать в фильтре или подставлять в шаблон.

Шаг 5. Настройка триггерной рассылки​

Откройте раздел Рассылки → Триггеры. Создайте новую рассылку. Не забудьте её активировать.

Выберите email-канал и добавьте нужный шаблон сообщения. На вкладке Триггер укажите:

  • Тип события: "При изменении заказа" —> "Добавление заказа". Триггер сработает, как только в маркет будет добавлен новый заказ.
  • Канал продаж: в этом канале должна быть указана база профилей, где находятся данные покупателей вашего интернет-магазина.
  • Статус заказа: "Новый". Триггер сработает, если в маркет будет добавлен заказ со статусом "новый".

Нажмите Готово и сохраните рассылку.

подсказка

Чтобы протестировать работу триггера, вы можете добавить заказ вручную.

Последнее обновление 12 мар. 2026 г.
Предыдущая страница
Переменные маркета в шаблонах
Следующая страница
Лояльность
  • Шаг 1. Настройка канала продаж
  • Шаг 2. Загрузка в платформу данных о товарах
    • Продукт
    • SKU
  • Шаг 3. Настройка API запроса на добавление заказа
    • URL-адрес
    • Параметры запроса
    • Пример запроса
    • Пример ответа
    • Возвращаемые параметры
  • Шаг 4. Создание шаблона сообщения
  • Шаг 5. Настройка триггерной рассылки
© 2015 - 2026 Altcraft. Все права защищены.