Уведомления покупателю - письма и SMS по статусам заказа
Разбираемся, откуда берутся письма о заказе, как поправить их текст, добавить своё уведомление и не превратить смену статуса в поток сообщений покупателю.
Решение
Находим событие нужного статуса:
// штатные события заказа называются по смыслу и по коду статуса// SALE_NEW_ORDER - заказ оформлен// SALE_STATUS_CHANGED_F - заказ перешёл в статус F// SALE_ORDER_PAID - заказ оплачен// у каждого события свой набор полей, доступных в шаблоне письмаУ каждого статуса заказа своё почтовое событие. Письмо приходит не «от заказа вообще», а от конкретного события, и искать нужно именно его, а не общий шаблон писем магазина.
Правим шаблон письма:
- шаблон привязан к событию и к сайту: у второго сайта свой шаблон- поля события подставляются в текст по именам, список виден в описании события- выключенный шаблон не удаляют, а выключают: он ещё пригодитсяШаблон письма привязан к сайту и к событию. Правка шаблона на одном сайте не меняет письма на втором, и это первое, что проверяют, когда «письмо не поменялось».
Отправляем своё уведомление из кода:
\Bitrix\Main\Mail\Event::send([ 'EVENT_NAME' => 'VENDOR_ORDER_READY', 'LID' => $order->getSiteId(), 'C_FIELDS' => ['ORDER_ID' => $order->getId(), 'EMAIL' => $email],]);// событие сначала заводят в настройках, иначе письмо просто никуда не уйдётСвоё уведомление отправляют событием, а не письмом напрямую. Тогда текст правит контент-менеджер, а не разработчик, и второй сайт получает свой вариант того же письма.
Отправляем SMS вместо письма:
$sms = new \Bitrix\Main\Sms\Event('SALE_STATUS_CHANGED_F', [ 'ORDER_ID' => $order->getId(), 'PHONE_NUMBER' => $phone,]);$sms->send();// SMS-шаблон заводится отдельно от почтового, и текст в нём корочеSMS - отдельный канал со своими шаблонами и своей ценой. Короткое сообщение о готовности заказа доходит лучше письма, но отправлять им всё подряд дорого и раздражает покупателя.
Тихие часы стоит задать до первого ночного сообщения. Уведомление о смене статуса в три часа ночи запоминается покупателем надолго, и не с лучшей стороны.
Уведомления удобно проверять на своей учётной записи с настоящим заказом. Тестовое письмо из интерфейса показывает шаблон, но не показывает, какие поля приедут пустыми на живом заказе.
Список уведомлений полезно свести в одну таблицу: событие, кому, когда, каким каналом. Иначе через год никто не знает, почему покупатель получает четыре письма за один вечер.
Типичные проблемы
Покупатель получает по три письма подряд.
Статус меняется несколько раз за один сеанс, и каждое изменение шлёт письмо. Уведомления отправляют по итогу, а не по каждому шагу.
Правка шаблона не изменила письмо.
Правился шаблон другого сайта или другого события. Шаблоны привязаны и к сайту, и к событию сразу.
В письме пустые поля вместо данных.
В событие переданы не те имена полей, что ждёт шаблон. Список полей смотрят в описании самого события.
Уведомление приходит раньше, чем создан заказ.
Отправка висит на событии «до сохранения» вместо «после». В таком порядке номера заказа ещё нет.
SMS приходят ночью.
Отправка идёт сразу, без учёта времени покупателя. Тихие часы задают до запуска уведомлений.
Частые вопросы
Как добавить своё уведомление?
Завести своё событие и шаблон, а потом отправлять его из кода. Письмо напрямую отправлять не нужно.
Как проверить письмо, не оформляя заказ?
Отправкой события с теми же полями из скрипта. Проверка на настоящем заказе всё равно нужна.
Что дороже: письма или SMS?
SMS платные и заметно дороже, зато доходят лучше. Их оставляют для важных событий вроде готовности заказа.
Нужно ли согласие на такие сообщения?
Уведомление о заказе покупатель ждёт, а рекламная рассылка требует согласия. Смешивать их в одном канале не стоит.
Смежное
-
Заказы - оглавление подтемы
-
СМС из кода: событие и шаблон, прямая отправка, свой провайдер - как устроена отправка сообщений
-
Статусы заказов: смена из кода, события и сопоставление с 1С - что запускает уведомления
-
Письма с сайта не доходят: разбор причин по убыванию частоты - если письмо не пришло вовсе
-
Рассылка с нуля: сегмент, письмо, отправка, отписка - соседний канал со своими правилами
-
Своё письмо с сайта: тип события, шаблон, поля - своё событие рядом с готовыми
-
Каталог и продажи - устройство магазина целиком
-
Свой провайдер SMS: класс, регистрация, отправка и статусы - если нужного оператора нет в поставке
-
SMS не доходят до получателя: разбор причин - разбор недоставленных сообщений
-
Уведомления команде в мессенджер: вебхук, шаблон, ошибки - уведомление своей команде, а не покупателю
-
SMS и очереди сообщений - устройство канала сообщений
-
Уведомления менеджеру: письмо, чат, эскалация по времени - те же события со стороны команды
-
Почтовые шаблоны: макросы, поля, мультисайт - где правят текст этих писем