Действия и события
Shop-Script позволяет автоматически отправлять уведомления при наступлении разнообразных событий. Уведомления могут отправляться администратору магазина, покупателю и на любой другой адрес, указанный для конкретного уведомления. Событие — это совершение какого-то действия с заказом: создание, прием в обработку, отправка клиенту, добавление комментария и т. д. Для каждого события можно настроить одно или более уведомлений.
Создание нового уведомления
Чтобы настроить отправку уведомления, перейдите в раздел «Настройки → Уведомления».
Проверьте, нет ли нужного вам уведомления среди тех, которые были автоматически созданы сразу после установки Shop-Script. Если нужное уведомление уже имеется, при необходимости измените его текст или другие свойства, щелкнув по названию уведомления в списке.
Для настройки нового уведомления щелкните по ссылке «Новое уведомление» и укажите перечисленные далее параметры.
-
Выберите из списка событие, после наступления которого должно отправиться уведомление.
Если нужное событие в списке отсутствует, добавьте соответствующее действие в разделе «Настройки → Статусы заказов» и затем снова перейдите к настройке уведомления.
- Укажите произвольное наименование для уведомления — оно не будет показано получателю уведомления и будет отображаться в бекенде Shop-Script только для вашего удобства.
- Убедитесь в том, что в качестве транспорта выбран вариант «Email».
-
Выберите получателя уведомления, выбрав один из вариантов:
- покупатель (уведомление отправится на электронный адрес покупателя, если он был указан при покупке)
- администратор (уведомление отправится на электронный адрес, указанный в разделе «Настройки → Общие настройки → Основной email-адрес»)
- другой (введите произвольный электронный адрес — уведомление отправится только на этот дополнительный адрес)
- В поле «Текст» содержится стандартный шаблон сообщения, в который при отправке подставляются реальные значения вместо переменных. Например, в шаблоне уведомления об оформлении нового заказа есть переменная {$order.id}. Это значит, что получатель сообщения вместо этой переменной увидит номер заказа, о котором он уведомляется.
Полный перечень доступных переменных доступен в по ссылке «Шпаргалка» под полем для редактирования шаблона сообщений.
В шаблонах сообщений допускается использование любых переменных и методов Smarty, доступных в редакторе дизайна.
89 комментариев
Добрый день!
текст в уведомлениях по e-mail может быть только на английском?
Конечно, нет — составляйте шаблон уведомления на любом языке. Почему у вас возник такой вопрос?
Подскажите, я просто не разобрался, как переключить на русский, или нужно просто самостоятельно отредактировать все уведомления?
Например https://support.webasyst.ru/forum/5203/uvedomleniy...
Указать в настройках русский язык и пересоздать уведомления.
Как отправить уведомление на несколько адресов?
При перечислении нескольких адресов через точку с запятой письма не доходят.
Пока только создать несколько уведомлений с разными адресами.
а вот и нет!
Разобрался я! RFC почитал!
Можно отправлять на несколько адресов сразу! Нужно перечислять их через запятую!
Проверено, всё работает!
Но за внимание к проблеме спасибо
Ага, отправляется только на первый адрес, а все остальные идут лесом
Дубль надо создавать. см видео выше там об этом говорят
Подскажите, пожалуйста код ДАТЫ СОЗДАНИЯ заказа. В шпаргалке я его не нашёл. :(
{$order.create_datetime}
содержит дату и время создания заказа
А код ДАТЫ ОТПРАВКИ можно у Вас заодно узнать?
Здравствуйте, незнаю сюда ли я пишу, но все же, создал почту на основе моего сайта - pochta@mysite.com добавил ее в тандербирд, письма доходят на эту почту без проблем, а отправлять письма не получается - выскакивает ошибка - this adres is not allowed to send mail (этот адрес не разрешается отправлять почту)
получается я не могу отправить письмо с этой почты.. а как же мне быть? если клиент захочет общаться именно через почту, он будет мне писать а я не смогу ответит
Кто подскажет: Поменял пароль на своем почтовом ящике(который в поле отправитель) , теперь у меня не отправляются уведомления никому и ни по какому адресу. Нужно ли где то в шоп скрипт менять этот пароль или она как то и без пароля отправляет?Заранее спасибо!
Если отправляете через функцию mail(0 хостинга то не надо, если через SMTP то в файле wa-config/mail.php
Сайт на облаке. Заново создал уведомления, письма не доходят ни админу, ни покупателю. До обновления всё работало.
Электронка обычная на мейл ру.
Как починить?
Дело не в обновлении, а в изменении политики Mail.ru, которое по времени совпало с обновлением Shop-Script:
https://support.webasyst.ru/12284/perestali-prikhodit-uvedomleniya-o-zakaze-na-pochtu/
<o:p></o:p>
Добрый день, когда закончиться этот бред от разработчиков webasyst, уже 7 версия а проблема с несколькими витринами так и не решена постоянно все надо допиливать, есть возможность менять уведомления от разных витрин, разные Е-мэйл но почему все данные телефоны, мыло и название магазина тянется из основных настроек, как это победить «{$wa->shop->settings("name")}»
Сообщения об ошибках и пожелания по доработке программных продуктов публикуйте, пожалуйста, в соответствующих разделах общего хаба поддержки.
Доброго времени перестали приходить письма раньше приходили но с ошибками а теперь и вовсе перестали
Возможно, причина вашей проблемы описана в этой статье — проверьте: https://support.webasyst.ru/11814/dmarc-sender-email/.
А где стандартные шаблоны для администратора?
Пожелания по доработке программных продуктов публикуйте, пожалуйста, в специальном разделе общего хаба поддержки.
как добавить в текст уведомления интервал доставки курьером? добавление кода из шпаргалки {$shipping_interval} ничего не дает
Предпочтительные дата и интервал времени для курьера, выбранные покупателем при оформлении заказа:
А {$shipping_interval} показывает то, что вы выбрали в бекенде при выполнении действия "Изменить параметры доставки".
благодарю! теперь все красиво)))
Михаил, а как в уведомлении вывести дату и время доставки которые выбрали при выполнении действия "Изменить параметры доставки" ?
См. мой комментарий выше:
Михаил, если {$shipping_interval} добавить в уведомление, то ничего не отображается
Если добавить {$order.params['shipping_params_desired_delivery.date_str']} {$order.params['shipping_params_desired_delivery.interval']}
То отображается "Желаемое время доставки" не то которое задано через "Изменить параметры доставки"
У меня все равно не работает!
У меня все равно не работает? В чем может быть проблема?
Что-то {$shipping_interval} не работает. посмотрите на снимки может я что не верно настроил
---------------------- страница 1 --------------------------
---------------- страница 2 ------------------------
---------------------- страница 3 --------------------------
Добрый день!
Вопрос что делать когда?
1. Меняю текст темы сообщения в почтовых уведомлениях
с "Новый заказ {$order.id}"
на "Заказ {$order.id} принят"
сохраняю, выхожу из настроек, захожу, а текст тот же
"Новый заказ {$order.id}"
2. Редактирую текст непосредственно в поле
Текст сообщения
HTML + Smarty
Даже после изменений слов в предложении
<p>Ваш заказ {$order.id} подтвержден и принят(меняю на "передан") в обработку.</p>
после сохранения
<p>Ваш заказ {$order.id} подтвержден и принят в обработку.</p>
изменения не наступают.
Возможно, возникает ошибка при сохранении изменений. Посмотрите, какие возникают ошибки на сервере и в браузере в момент сохранения.
Та же проблема, не сохраняются изменения в теле сообщения. Пишет ок сохранено, обновляешь страницу ничего не изменилось, возвращает шаблон.
Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее.
Добрый день! Рассылка настроена через SMPT yandex.ru. Поменяла пароль на своем почтовом ящике yandex.ru (который в поле отправитель), в файле mail.php - тоже поменяла.
Почта не приходит ни администратору, ни клиенту. Сервер перегружала. Где еще что надо поменять?
Спасибо за помощь!
Очистите кеш в "Инсталлере". Если это не поможет, посмотрите с помощью приложения "Логи", какие сообщения об ошибках появляются при попытках отправки сообщений.
Хорошо будет если вы сделаете настройку уведомлений по статусам: чтобы после того, как создан новый статус, этот статус выпадал в списке событий при создании нового уведомления. Таким образом, можно будет каждое уведомление связать только с определенным статусом.
В ранних версиях webasyst при смене статуса - письмо (sms) автоматически отправлялось клиенту без настройки уведомлений, также автоматически отправлялся комментарий без покупки платного плагина "написать клиенту". Непонятно, действие и событие - это одно и тоже понятие разными словами? Вчера полдня потратил на настройку и тестирование уведомлений, но так и не понял логику "улучшений" скрипта?
О каком платном плагине вы пишете?
В терминах настройки уведомлений это одно и то же. К статусам уведомления не имеет смысла привязывать, потому что статус — это свойство заказа. Имеет смысл отправлять уведомление, когда это свойство меняется. А меняется это свойство (статус) в результате выполнения действия с заказом.
Есть ещё не совсем действия, которые вы можете выполнять, а, наверное, скорее события, которые происходят вне вашего контроля — это запросы (callback) от платёжных систем для обновления статуса заказа. Такие запросы тоже входят в список событий, для которых можно настроить отправку уведомления. Уведомления о таких событиях можно настроить себе, администратору магазина — покупателям они бесполезны, потому что позволяют отслеживать техническую информацию о платёжных транзакциях.
"не совсем действия, а скорее события" - выведите в отдельную настройку "не совсем действий, а скорее событий", чтобы настраивали те, кому это нужно. раньше всегда при смене статуса заказа автоматически (без доп. настроек) отправлялось письмо (sms) клиенту, т.е. настраивались только статусы. сейчас, в чем состоит логика?
В том, что можно выбрать при выполнении какого действия нужно отправить уведомление. Действие может и не менять статус заказа, но всё равно можно настроить, чтобы при его выполнении отправлялось уведомление, если вам это нужно.
Вы пишите: "К статусам уведомления не имеет смысла привязывать, потому что статус — это свойство заказа". Статус - это не свойство заказа, а этап технологического перехода. статус для чего вообще нужен? 1. чтобы менеджеры интернет-магазина сортировали заказы для передачи на следующий этап технологической цепи и-магазина. 2. для того, чтобы клиент всегда был в курсе того, что происходит с его заказом.- именно для этого и нужны уведомления клиенту на email (sms) о главных/или обо всех изменениях его заказа. В этом и есть логика присваивания заказам новых статусов! В заказе менеджер и-м меняет только статусы, он ведь уведомления не отправляет, как к статусам тогда уведомления не привязывать?
Это возможно делать только путём выполнения какого-то действия. Просто так (без выполнения действий) менять статусы заказам нельзя. Если только вы не используете для смены статусов какой-то дополнительный плагин, который не задействует стандартный механизм действий.
Статус — это и свойство заказа, и этап технологического перехода. Его определение в конкретной ситуации зависит от способа использования и точки зрения.
Когда вы нажимаете на кнопку "Оплачен" на странице заказа, вы не статус выбираете, а выполняете действие с таким названием — "Оплачен". А действие устроено так, что при его выполнении оно меняет статус заказа на... "Оплачен".
Путаница тут в том, что и статус, и действие имеют одинаковое название. По-видимому, разработчики Shop-Script захотели, чтобы пользователям (особенно старых версий Shop-Script) было удобно ориентироваться в статусах и действиях. А порой выходит наоборот — путают. На самом деле действие правильно было бы назвать "Отметить как оплаченный", а название статуса оставить "Оплачен". Возможно, тогда смысл этого механизма был бы более очевиден.
вы смотрите на эту историю исключительно как программист. посмотрите, как технолог интернет-магазина, который разбивает весь процесс на последовательные операции от поступления заказа через сайт до вручения упакованной посылки клиенту. каждой законченной технологической операции присваивается определенный статус. статусы заказов в программе интернет-магазина - это отражение технологических операций, которые происходят в реальности. Менеджер И-М, присваивая статусы - сортирует заказы в И-М, работник склада комплектует заказы в статусе "На комплектации", курьер получает задание на доставку заказов в статусе "передан в доставку", благодарный клиент улыбается, получив заказы в статусе "доставлен"...
Воплощением этих операций в интернет являются действия с заказами. Получили оплату — выполнили действие "Оплачен" (статус заказа изменился на "Оплачен", клиенту отправилось уведомление об этом, если вы его настроили для этого действия). Отправили заказ — выполнили действие "Отправлен" (статус заказа изменился на "Отправлен", клиенту отправилось уведомление об этом, если вы настроили его для этого действия).
Что в описанном мною процессе вас не устраивает?
Можно ли создать уведомление "о снижении цены"? Нужна автоматическая отправка сообщений "о снижении цены" нашим клиентам.
Решению вашей задачи может помочь использование плагина. Если вам не удастся найти подходящее решение среди доступных в магазине Webasyst, вы можете заказать его у партнёров Webasyst.
Скажите, а есть ли возможность создать уведомление которое будет отправляться с запозданием скажем на неделю после того как выполнен заказ? и как это настроить?
Можно. Такие уведомления называются триггерными рассылками.
Здравствуйте! Решил использовать свой шаблон для уведомлений, но код почему то обрезается где то на середине и письмо приходит не полностью. Подскажите, в Вебасисте есть какое то ограничение на объем отправляемого сообщения? И, если есть, как это ограничение обойти?
Ограничений на размер уведомлений нет.
Добрый день, подскажите, пожалуйста, какой можно использовать код, чтобы часть сообщения отправлялась только зарегистрированным покупателям? Например, в стандартном шаблоне есть информация о бонусных баллах, но если клиент не зарегистрирован на сайте, то она ему не нужна.
Магазин в облаке, после установки обновления вчера 1.8.4.225 27 марта 2018, перестали приходить уведомления по заказам. Настройки никакие не менялись, последний заказ был в 1:00 уведомление было, и магазину, и покупателю. Утром новые заказы есть, уведомлений нет. Для проверки сделала самостоятельно заказ, уведомлений нет! Спасибо.
Сообщения об ошибках публикуйте, пожалуйста, в специальном разделе общего хаба поддержки. Так их удобнее регистрировать и обсуждать, если потребуется.
Добрый день.
Подскажите пожалуйста, как вывести в уведомление о заказе пароль пользователя?
Вот блок почта:
По аналогии сделал с паролем:
Но в письме вместо пароля что-то другое, возможно base64 или ещё чего.
Подскажите пожалуйста, как вывести в уведомление о заказе пароль пользователя?
Спасибо.
Пароли пользователей в Вебасисте не хранятся, поэтому получить их нельзя.
Для справки: проверка правильности введённого пароля при входе выполняется по его "отпечатку", который формирует стандартная PHP-функция md5() или пользовательская функция генерации хеша паролей.
Здравствуйте.
Подскажите, пожалуйста, как создать автоматическое уведомление (смс и/или почта) о том что у покупателя через 30 дней (10 дней, 3 дня) сгорят его бонусные баллы
Стандартными средствами Shop-Script это сделать не получится. Поищите подходящий плагин в магазине Webasyst или закажите индивидуальную разработку у партнёров Webasyst.
Здравствуйте, подскажите, пожалуйста, можно ли настроить разные уведомления в зависимости от способа оплаты?
Например, если выбрана оплата наличными, отправляется письмо с подтверждением заказа с одним текстом, а если оплата онлайн - с другим?
Можно попробовать добавить условия Smarty в шаблон уведомления. Задайте вопрос на форуме, пожалуйста, чтобы получить помощь от других пользователей. Если решение нужно более-менее быстро, обратитесь за платной консультацией к партнёрам Webasyst.
Здравствуйте, тоже актуально. Вы решили свойвопрос?
Здравствуйте! Все сделал на примере видео. После поступления заказа нажимаем подтвердить! Письмо о статусе и наименований заказа заказчику на почту не отправляется, более того когда нажимаем в настройках уведомления "Проверить отправку" так же ничего не приходит...
Проверьте причину по этому списку.
Подскажите пожалуйста, а можно ли сделать разные уведомления для нового заказа в зависимости от выбранного (клиентом) способа оплаты, доставки ?
Для этого можно использовать условие {if} в шаблоне уведомления примерно так:
Значения 'cash' и 'paypal' — это идентификаторы плагинов оплаты. Их можно увидеть, например, в URL страницы с информацией о плагине в магазине Webasyst. Пример:
Вопрос а как прописать в тексте что можно оплатить картой рассрочки приложив туда картинку и ссылку на нее??
Для этого используйте HTML-код.
Как добавить картинку. Пример:
Для этого примера загрузите файл изображения с именем picture.png в «Файл-менеджер» приложения «Сайт».
Как добавить ссылку. Пример:
Вместо /info-page/ напишите адрес страницы, на которую должна указывать ссылка.
Текст со ссылкой напишите внутри тегов <p>...</p>. Полный пример:
Уведомления можно отправлять при наступлении событий, но только при совершении какого-то действия с заказом. А можно ли создать уведомление при наступлении дня рождения покупателя, если поле с датой заполнено в ЛК у пользователя? Возможно нужно лезть в код, но всё же.
В чём отличие триггерной рассылки от уведомлений? Там и там можно настроить отправку уведомлений покупателю в зависимости от типа статуса заказа. Функционал пересекается.
Вот в моем случае, в первом вопросе, что нужно использовать триггерные рассылки или уведомления?
Это возможно. Например, такая функция есть в приложении CRM.
Уведомления отправляются сразу после наступления события: действия с заказом.
Триггерные рассылки отправляются заданием для планировщика cron спустя указанное время после выбранного события.
В программном коде магазина нет события, которое соответствует наступления дня рождения покупателя, поэтому уведомление отправлять не получится — нужно отправлять триггерную рассылку — по заданию для планировщика cron.
Подскажите, пожалуйста код IP адрес заказа. В шпаргалке я его не нашёл. :(
Подскажите команду вывода товара в заказе для СМС сообщения (пробовал {$item.name}, {$order.items[1].name}, {$order.items[1]} - не выводится. :()
1. - списком все товары
2. Вывести первый товар
Все товары:
Первый товар:
Здравствуйте.
Подскажите пожалуйста, как вывести в уведомление о заказе - Заказ совершил новый покупатель или он уже ранее заказывал. Это возможно?
Для этого используйте такое условие в коде:
Спасибо большое. Очень помогли.
Пришел заказ от нового покупателя.
Почему то не работает это условие. И от нового покупателя - Повторная покупка...
Добрый день, оформлены уведомления "заказ" оформлен и "заказ подтвержден и принят в обработку" но письма все равно не приходят, в чем может быть ошибка?
Проверьте настройки по списку в справочной статье.
Здравствуйте, а как можно разные уведомления на почту слать при регистрации, в зависимости от пола например?
В шаблоне проверять значение параметра (к примеру типа $contact['sex'] == 'f' ) и по этому условию выводить текст.
В шаблоне уведомления о регистрации в приложении «Настройки» можно использовать код Smarty. Если в форме регистрации есть стандартное поле для выбора пола, то с помощью следующего условия можно проверять значение этого поля и в формировать разный текст для пользователей разного пола:
Добрый день.
У меня движок установлен на "Витрину-1", к этой админке подключена через алиас "Витрина-2".
При оформлении заказа на "Витрине-2", от приложения магазин приходит уведомление о успешном оформлении заказа. И Уведомление о регистрации от "Витрины-1".
Как настроить уведомления о регистрации (в приложении Настройки) для разных витрин?
Или как отключить уведомление о регистрации для конкретной витрины.
Уведомления о регистрации настраиваются только для самостоятельных сайтов. Для зеркал сайтов такая настройка пока что не предусмотрена. Когда сайт настроен в качестве зеркала, все его настройки дублируют настройки основного сайта, кроме директив robots.txt.
Напишите нам, пожалуйста, подробнее в службу поддержки, почему вам не нравится текущий порядок отправки уведомлений. Мы передадим эту информацию разработчикам, чтобы попытаться сделать Webasyst удобнее для вас.