Перейти к основному содержимому

Уведомления WhatsApp и SMS

Отправляйте уведомления WhatsApp или SMS по событиям заказов, брошенным корзинам и другим событиям.


Обзор

Процесс:

  1. Админ настраивает URL шлюзов в Settings.
  2. Админ создаёт шаблоны уведомлений в Products → Notifications (или аналогично).
  3. При срабатывании триггеров (например, заказ размещён, счёт оплачен, брошенная корзина) модуль отправляет запрос шлюзу.
  4. Шлюз доставляет сообщение через WhatsApp или SMS.

Настройка

URL шлюзов

  1. Перейдите в Setup → Settings → Products.
  2. В разделе WhatsApp / SMS Notifications:
    • Включите функцию.
    • Введите SMS Gateway URL — endpoint webhook/API вашего SMS-провайдера.
    • Введите WhatsApp Gateway URL — endpoint webhook/API вашего WhatsApp-провайдера.
  3. Сохраните.

Переопределение для каждого шаблона

Каждый шаблон уведомления может использовать глобальный шлюз или кастомный webhook URL.


Создание шаблона уведомления

  1. Перейдите в Products → Notifications (или Product Notifications).
  2. Нажмите New Notification.
  3. Настройте:
FieldDescription
NameInternal name
ChannelWhatsApp or SMS
Triggerabandoned_cart, order_placed, order_paid
Recipientclient or staff
Message templateText with merge fields
Webhook URLOverride global (optional)
Webhook methodPOST or GET
Webhook bodyJSON template for the API
  1. Сохраните.

Merge Fields

Используйте эти плейсхолдеры в шаблоне сообщения:

FieldDescription
{companyname}Your company name
{cart_link}Link to checkout
{cart_total}Cart total (abandoned cart)
{client_name}Customer name
{contact_phonenumber}Phone number
{order_id}Order ID
{order_date}Order date
{total}Order total
{invoice_number}Invoice number
{invoice_link}Link to invoice

События триггеров

  • abandoned_cart — когда cron отправляет напоминания о брошенной корзине.
  • order_placed — при создании заказа/счёта.
  • order_paid — при пометке счёта как оплаченного.

Webhook Body

Формат тела по умолчанию часто такой:

{"to":"{contact_phonenumber}","body":"{message}"}

Плейсхолдер {message} заменяется отрендеренным сообщением (в JSON). Настройте шаблон тела под требования API вашего шлюза.