Шаблоны кнопок оформления заказа | Документация для разработчиков
Шаблоны кнопок оформления заказа
Обновлено: 12 декабря 2025 г
Шаблоны кнопок оформления заказа — это маркетинговые шаблоны, которые могут демонстрировать один или несколько товаров вместе с соответствующими кнопками оформления заказа, которые пользователи WhatsApp могут использовать для совершения покупок, не выходя из приложения WhatsApp.

Отдельные товары
Шаблоны кнопок оформления заказа могут отображать заголовок с одним изображением товара или видеороликом, а также основной текст сообщения, нижний колонтитул сообщения, одну кнопку оформления заказа и до 9 кнопок быстрого ответа.

Пользователи WhatsApp, нажавшие на кнопку, увидят подробности заказа:

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

...или могут добавить свою собственную информацию для доставки:

Включение купонов, информации о наличии товаров в режиме реального времени и обновлений цен
Функция включения купонов, обновления информации о наличии товаров и ценах в режиме реального времени в настоящее время находится в стадии бета-тестирования и доступна только для индийских компаний и пользователей WhatsApp с индийским телефонным кодом. Для получения дополнительной информации, [email protected]
Для включения купонов, обновления информации о наличии товаров и ценах в режиме реального времени можно настроить конечную точку оформления заказа, которая будет обмениваться данными в режиме реального времени для обновления заказа в клиенте WhatsApp. Это позволит компаниям получать адрес доставки, предлагать купоны в зависимости от заказа и давать пользователям возможность применить купон. Это также позволит компаниям проверять наличие товаров и возможность доставки заказа до того, как пользователь завершит оформление.
Настройка конечной точки оформления заказа состоит из следующих шагов и использует тот же метод, что и конечная точка WhatsApp Flows для обмена данными с клиентами WhatsApp.
Настройте конечную точку
Клиент WhatsApp отправляет HTTPS-запрос для обмена данными с бизнес-интерфейсом. Вам следует убедиться, что интерфейс настроен на прием запроса, и связать URL-адрес интерфейса с настройками оплаты .
https://business.com/checkout
Ваш сервер должен быть настроен на прием и обработку
POST- запросов, использовать HTTPS и иметь установленный действительный TLS/SSL-сертификат. Этот сертификат не обязательно должен использоваться для шифрования/дешифрования полезной нагрузки.Внедрить шифрование/дешифрование
Тело каждого запроса содержит зашифрованные данные и имеет следующий вид:
Пример синтаксиса запроса к конечной точке
{
encrypted_flow_data: "
< ENCRYPTED_FLOW_DATA > ", encrypted_aes_key: "
< ENCRYPTED_AES_KEY > ", initial_vector: "
< INITIAL_VECTOR > " }
| Параметр | Описание |
|---|---|
encrypted_flow_data string |
Обязательно. Зашифрованные данные запроса. |
encrypted_aes_key string |
Обязательно. Зашифрованный 128-битный ключ AES. |
начальный_вектор строка |
Обязательно. 128-битный вектор инициализации. |
После обработки расшифрованного запроса создайте ответ и зашифруйте его, прежде чем отправить обратно в клиент WhatsApp. Зашифруйте полезную нагрузку, используя ключ AES, полученный в запросе, и отправьте его обратно в виде строки Base64.
Вы можете ознакомиться с примерами расшифровки и шифрования .
Если запрос не удается расшифровать, конечная точка должна вернуть код состояния ответа HTTP 421 ( подробнее «Коды ошибок бизнес-конечных точек
Пример ответа конечной точки
Свяжите конечную точку оформления заказа с конфигурацией платежа
Компании необходимо настроить платежную систему на основе платежного и связаться с [email protected] для активации бизнес-аккаунта WhatsApp в качестве точки входа при оформлении заказа, связанной с платежной системой.
Перед тем как связать конечную точку оформления заказа, необходимо создать конфигурацию платежей и связать ее с учетной записью платежного шлюза. Мы рекомендуем использовать связанную конфигурацию платежей только при интеграции шаблона кнопки оформления заказа.
Вы можете связать конечную точку с конфигурацией платежей, следуя инструкциям в API для регистрации новых пользователей — конечная точка «Связать данные».
Реализуйте логику конечной точки оформления заказа
Интеграция конечной точки оформления заказа WhatsApp наследует 'data_exchange', аналогично Flows, и поддерживает набор поддействий, основанных на взаимодействии пользователя, передавая соответствующую информацию в каждом из этих действий, что позволяет компаниям предоставлять купоны, специфичные для каждого пользователя, и соответствующим образом обновлять информацию о ценах.
| Поддействие | Метод | Описание |
|---|---|---|
получить_купоны |
Запрос |
Когда пользователи нажимают на кнопку призыва к действию (CTA) в предложении скидки, WhatsApp передает параметры заказа , за исключением настроек оплаты . Он также передает
номер телефона пользователя в качестве входного параметра.Чтобы понять порядок действий и параметры ввода, ознакомьтесь запроса на получение купонов. |
|
Ответ |
Ожидается, что конечная точка оформления заказа передаст список информации о купоне, такой как код, идентификатор и описание.
Чтобы понять ожидаемый ответ, ознакомьтесь ответа на запрос "Получить купоны" | |
применить_купон |
Запрос |
Когда пользователи выбирают или вводят купон, WhatsApp передает параметры заказа, за исключением настроек оплаты . Он также передает
номер телефона пользователя и информацию о применяемом купоне в качестве входных параметров.Для понимания порядка действий и параметров ввода ознакомьтесь с запроса на применение купона. |
|
Ответ |
Ожидается, что конечная точка оформления заказа обновит цены товара и заказа в параметрах заказа и прикрепит купон к заказу.
Для понимания ожидаемого результата обратитесь к ответа на запрос о применении купона | |
удалить_купон |
Запрос |
Когда пользователи пытаются удалить примененный купон, WhatsApp передает параметры заказа , за исключением настроек оплаты . Он также передает
номер телефона пользователя в качестве входного параметра.Чтобы понять ожидаемый ответ, ознакомьтесь с запроса на удаление купона |
|
Ответ |
Ожидается, что конечная точка оформления заказа обновит цены товара и заказа в параметрах заказа и удалит купон, прикрепленный к заказу.
Чтобы понять ожидаемый ответ, обратитесь к ответа на запрос об удалении купона | |
apply_shipping |
Запрос |
Когда пользователи пытаются указать адрес доставки, WhatsApp передает параметры заказа , за исключением настроек оплаты . Он также передает
номер телефона пользователя и информацию о доставке в качестве входных параметров.Для понимания ожидаемого ответа обратитесь к запроса на отправку |
|
Ответ |
Ожидается, что конечная точка оформления заказа обновит информацию о товаре и стоимости доставки в параметрах заказа .
Обратитесь к ответа службы доставки , чтобы понять ожидаемый результат. |
Мы создали пример конечной точки оформления заказа на Node.js, который вы можете клонировать (ремикшировать) на Glitch, чтобы создать свою собственную конечную точку и быстро создать прототип логики оформления заказа. Следуйте инструкциям в README.md , чтобы начать работу. Использование Glitch совершенно необязательно. Вы можете клонировать пример кода с Glitch и запустить его в любой удобной для вас среде.
После выполнения вышеуказанных шагов, когда компания отправляет шаблон оформления заказа со связанными настройками оплаты, WhatsApp активирует купоны, обновления информации о наличии товаров и ценах в режиме реального времени, а также позволяет пользователям применять купоны и делиться адресами доставки.
При включении этой опции
предложение «Применить скидку» появится на экране сводки заказа.
Пользователь может нажать на кнопку
«Применить скидочное предложение» , чтобы просмотреть купоны. В этот момент WhatsApp отправляет get_coupons для получения списка купонов на основе указанного заказа и номера телефона пользователя .
Когда пользователь пытается применить купон, WhatsApp создает
событие apply_coupon и позволяет компаниям обновлять заказ или цену товара в зависимости от выбранного купона.
Подобно купонам, пользователь может поделиться адресом доставки, нажав кнопку
«Добавить адрес доставки» и выбрав адреса, сохраненные у компаний, или добавив новый адрес. WhatsApp отправляет apply_shipping , когда пользователь пытается ввести адрес, и позволяет компаниям проверять наличие товара и логистику на основе предоставленного адреса.

Затем пользователи могут продолжить оформление заказа, используя предпочтительный способ оплаты, указанный в клиенте WhatsApp:

После обработки заказа срабатывает веб-хук для обработки платежа
Многочисленные товары
Вы можете создать шаблон карусели медиа-карточек , который будет отображать до 10 товаров в карусели, каждый со своей кнопкой оформления заказа. Для этого просто создайте шаблон карусели медиа-карточек, как обычно, но замените одну из кнопок кнопкой оформления заказа и убедитесь, что это первая кнопка в карточке.
Кнопки оформления заказа в шаблонах карусели медиа-карточек запускают тот же процесс оформления заказа и оплаты, что и кнопки оформления заказа в шаблонах, демонстрирующих один товар.
Кнопки оформления заказа
Каждая кнопка оформления заказа в шаблоне должна соответствовать одному товару. При создании шаблона кнопки оформления заказа должны иметь следующий неизменяемый синтаксис:
Обратите внимание, что это всего лишь определение кнопки. Фактические сведения о продукте, который соответствует этой кнопке, будут включены в шаблон сообщения, которое вы отправляете . Например:
Если вы отправляете шаблон карусели медиа-карточек (который может содержать два или более товаров), каждая кнопка оформления заказа должна быть определена в шаблоне, и при отправке шаблона необходимо указать сведения о товарах, которые соответствуют каждой кнопке.
Отправить шаблон кнопки оформления заказа
После утверждения шаблона кнопки оформления заказа или шаблона карусели вы можете отправить его в виде шаблонного сообщения.
Пост тело
Этот синтаксис тела POST-запроса предназначен для шаблона кнопки оформления заказа. См. раздел «Отправка шаблонов карусели медиакарточек» для получения информации о синтаксисе полезной нагрузки тела POST-запроса для шаблона карусели медиакарточек.
Параметры тела после
| Заполнитель | Описание | Пример значения |
|---|---|---|
<DISCOUNT_AMOUNT>Целое число |
Обязательно при использовании скидки.
Сумма скидки, умноженная на значение discount.offset.
Например, чтобы обозначить скидку в 2 фунта стерлингов, значение будет следующим:
200.Сумма скидки применяется к общей сумме заказа. |
15000 |
<DISCOUNT_DESCRIPTION>Нить |
Необязательный.
Описание скидки.
Максимум 60 символов. |
Дополнительная скидка 10% |
<EXPIRATION_TIMESTAMP>Нить |
Обязательно, если используется срок действия заказа.
Временная метка UTC, указывающая, когда следует отключить Купить сейчас» . Эта метка времени будет использоваться для генерации текстовой строки, которая отобразится в нижней части сведений о заказе . Например:
Срок действия данного распоряжения истекает 30 сентября 2024 года в 12:00.
Пользователи WhatsApp, которые увидят сообщение после указанного времени, не смогут приобрести товар, используя кнопку оформления заказа.
Значения должны представлять время в формате UTC, по крайней мере, на 300 секунд позже момента отправки запроса на отправку сообщения. |
1726692927 |
<IMPORTER_ADDRESS_LINE_1>Нить |
Необходимый.
Адрес импортера, строка 1 (дверь, башня, номер дома, улица и т. д.).
Максимум 100 символов. |
Один БКК |
<IMPORTER_ADDRESS_LINE_2>Нить |
Необязательный.
Адрес импортера, строка 2 (ориентир, район и т. д.).
Максимум 100 символов. |
Бандра Курла Комплекс |
<IMPORTER_CITY>Нить |
Необходимый.
Город-импортер.
Максимальное количество символов: 120. |
Мумбаи |
<IMPORTER_NAME>Нить |
Необходимый.
Имя импортера.
Максимум 200 символов. |
Компания Lucky Shrub Imports and Exports |
<IMPORTER_POSTAL_CODE>Нить |
Необходимый.
Шестизначный почтовый индекс импортера.
Максимум 6 цифр. |
400051 |
<IMPORTER_ZONE_CODE>Нить |
Необходимый.
Двухбуквенный код зоны импортера. |
МХ |
<ITEM_COUNTRY_OF_ORIGIN>Нить |
Необходимый.
Страна происхождения товара.
Максимум 100 символов. |
Индия |
<ITEM_NAME>Нить |
Необходимый.
Название товара.
Максимум 60 символов. |
Алоэ синего эльфа |
<ITEM_PRICE>Целое число |
Необходимый.
Цена за единицу товара (цена за единицу), умноженная на сумму скидки.
Например, чтобы обозначить цену товара в 12,99 фунтов стерлингов, значение будет следующим: 1299. |
200000 |
<ITEM_QUANTITY>Целое число |
Необходимый.
Количество товаров в заказе, если заказ оформлен.
Максимум 100 целых чисел. |
1 |
<MESSAGE_BODY_TEXT_VARIABLE>Объект |
Обязательно, если в тексте сообщения шаблона используются переменные; в противном случае опустите.
Объект, описывающий переменную сообщения. Если шаблон использует несколько переменных, необходимо определить объект для каждой переменной.
Для этого значения нет максимального ограничения по количеству символов, но оно учитывается в общем объеме текста сообщения, который составляет 1024 символа. |
|
<MESSAGE_HEADER_ASSET_ID>Нить |
1558081531584829 | |
<MESSAGE_HEADER_FORMAT>Нить |
Необходимый.
Указывает тип заголовка и соответствующее имя свойства.
Обратите внимание, что
В приведенном выше примере тела сообщения заполнитель встречается дважды, поскольку он служит для обозначения значения свойства типа и соответствующего ему имени свойства.Ценность может представлять собой изображение или видео . |
изображение |
<PAYMENT_GATEWAY_CONFIGURATION_NAME>Нить |
Необходимый.
Название платежного шлюза, который вы настроили в своем аккаунте WhatsApp Business. |
prod-razor-pay-config-05 |
<PAYMENT_GATEWAY_NAME>Нить |
Необходимый.
Название платежного шлюза, которое вы настроили в своем аккаунте WhatsApp Business.
Возможные значения:
razorpayпаюзаакпай |
razorpay |
<PRODUCT_TYPE>Нить |
Необходимый.
Тип товара. Ценность может выражаться в цифровых или физических товарах . |
цифровые товары |
<QUICK_REPLY_BUTTON_PAYLOAD>Нить |
Необязательный.
Значение, которое будет включено в веб-хуки сообщений ( messages.button.payload ) при нажатии кнопки. |
уклоняться |
<REFERENCE_ID>Нить |
Необходимый.
Ваш уникальный идентификатор заказа или счета-фактуры. Учитывается регистр. Не может быть пустым. В процессе оформления заказа перед ним будет стоять символ решетки (#).
Значение должно быть уникальным для каждого шаблонного сообщения кнопки оформления заказа. При отправке шаблона карусели каждая кнопка оформления заказа должна иметь уникальный идентификатор.
Если вам необходимо отправить несколько сообщений для одного и того же заказа/счета, рекомендуется добавить к значению порядковый номер (например, -1).
Значения могут содержать только английские буквы, цифры, символы подчеркивания, дефисы или точки.
Максимальное количество символов: 35. |
abc.123_xyz-1 |
<SALE_PRICE>Целое число |
Обязательно, если используется сумма продажи.
Цена продажи, умноженная на
скидки .Например, чтобы обозначить цену продажи в 10 фунтов стерлингов, значение будет следующим: 1000. |
150000 |
<SHIPPING_AMOUNT>Целое число |
Необходимый.
Стоимость доставки заказа, умноженная на
доставки .Например, чтобы представить стоимость доставки в размере 0,99, значение будет следующим: 99. |
20000 |
<SHIPPING_INFO_ADDRESS>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Адрес получателя товара.
Максимальное количество символов: 512. |
Бандра Курла Комплекс |
<SHIPPING_INFO_BUILDING_NAME>Нить |
Необязательный.
Название здания, в котором находится получатель товара.
Максимальное количество символов: 128. |
Один БКК |
<SHIPPING_INFO_CITY>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Полное название города получателя товара.
Максимум 100 символов. |
Мумбаи |
<SHIPPING_INFO_FLOOR_NUMBER>Нить |
Необязательный.
Номер этажа получателя товара.
Максимум 10 символов. |
2 |
<SHIPPING_INFO_HOUSE_NUMBER>Нить |
Необязательный.
Номер дома получателя товара.
Максимум 8 символов. |
12 |
<SHIPPING_INFO_INDIA_PIN>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Почтовый индекс получателя товара.
Максимум 6 символов. |
400051 |
<SHIPPING_INFO_LANDMARK_AREA>Нить |
Необязательный.
Ориентир для получателя товара.
Максимальное количество символов: 128. |
Рядом с круговой развязкой BKC |
<SHIPPING_INFO_NAME>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Полное имя получателя товара.
Максимальное количество символов: 256. |
Нидхи Трипати |
<SHIPPING_INFO_PHONE_NUMBER>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Номер телефона получателя товара в WhatsApp.
Максимум 12 символов. |
919000090000 |
<SHIPPING_INFO_STATE>Нить |
Обязательно, если вам известны контактные данные получателя для доставки.
Полное наименование штата, в котором проживает получатель товара.
Максимум 100 символов. |
Махараштра |
<SHIPPING_INFO_TOWER_NUMBER>Нить |
Необязательный.
Номер вышки получателя товара.
Максимум 8 символов. |
2 |
<SUBTOTAL_AMOUNT>Целое число |
Необходимый.
Итого по заказу. Рассчитайте путем умножения.
к по промежуточному смещению .Например, если шаблон предназначен для оформления одного заказа, содержащего 2 товара по цене 12,99 фунтов стерлингов, то значение будет следующим: 2598. |
150000 |
<TAX_AMOUNT>Целое число |
Необходимый.
Сумма налога, умноженная на
налоговый вычет .Например, чтобы обозначить сумму налога в 5 фунтов стерлингов, значение будет следующим: 500. |
10000 |
<TAX_DESCRIPTION>Нить |
Необязательный.
Описание налога.
Максимум 60 символов. |
налог с продаж |
<TEMPLATE_LANGUAGE>Нить |
Необходимый.
шаблона и код локали . |
en_US |
<TEMPLATE_NAME>Нить |
Необходимый.
Название шаблона.
Максимальное количество символов: 512. |
item_back_in_stock_v1 |
<TOTAL_AMOUNT>Целое число |
Необходимый.
Общая сумма заказа, умноженная на
total_amount.offset .Например, чтобы представить общую сумму в 18 фунтов стерлингов, значение будет
1800.Должна представлять собой сумму:
order.subtotal.valueorder.shipping.valueorder.tax.value
Минус:
order.discount.value |
165000 |
<WHATSAPP_USER_PHONE_NUMBER>Нить |
Необходимый.
Номер телефона пользователя WhatsApp. |
+16505551234 |
Пример запроса
Приведенные ниже примеры запросов и ответов поддерживаются только при включении функции купонов, обновления информации о наличии товаров и ценах в режиме реального времени. Для получения дополнительной информации, пожалуйста, свяжитесь с нами по адресу [email protected]
Комментарии отсутствуют
Комментарии отсутствуют