Single-product message templates
Updated: Nov 4, 2025 This document describes single-product message (SPM) templates, their uses, and how to use them. SPM templates are marketing templates that allow you to present a single product from your ecommerce catalog, accompanied by a product image, product title, and product price (all pulled from your product within your catalog), along with customizable body text, optional footer text, and an interactive View button.
WhatsApp users can tap the button to see details about the product, and can add or remove the product from the WhatsApp shopping cart:
If the WhatsApp user adds the product to the carts and submits an order, you will be notified via webhook and the user will see that an order has been placed:
Users who place an order are also able to use the View details button to see information about the order:
Limitations
Customers must be using WhatsApp v2.22.24 or greater. Message forwarding is disabled for SPM templates.Catalogs
You must have an ecommerce product catalog, with inventory, connected to your WhatsApp Business Account. See the Cloud API Commerce guide to learn more about connecting a catalog to your account.Webhooks
When a customer adds one or more products to their cart and submits an order, an order messages webhook is triggered, describing the order.Creating SPM templates
Use the POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates endpoint to create an SPM template.Request syntax
Request parameters
| Placeholder | Description | Example Value |
|---|---|---|
<ACCESS_TOKEN>String | Required. Access token. | EAAAN6tcBzAUBOZC82CW7iR2LiaZBwUHS4Y7FDtQxRUPy1PHZClDGZBZCgWdrTisgMjpFKiZAi1FBBQNO2IqZBAzdZAA16lmUs0XgRcCf6z1LLxQCgLXDEpg80d41UZBt1FKJZCqJFcTYXJvSMeHLvOdZwFyZBrV9ZPHZASSqxDZBUZASyFdzjiy2A1sippEsF4DVV5W2IlkOSr2LrMLuYoNMYBy8xQczzOKDOMccqHEZD |
<API_VERSION>String | Optional. API version. If omitted, defaults to the newest API version available to your app. | v23.0 |
<CARD_BODY_TEXT>String | Required. Card body text. Supports variables. Maximum 160 characters. | Use code {{1}} to get {{2}} off our newest succulent! |
<CARD_FOOTER_TEXT>String | Optional. Footer text. Maximum 60 characters. | September 30, 2024 |
<PARAMETER_NAME>String | Required if body text uses parameters. Example parameter value string(s). You must include a parameter example for each parameter in your body text. | 25OFF |
<PARAMETER_FORMAT>String | Optional. Parameter format. Value can be: namedpositionalIf the parameter_format property is omitted, the template will use positional formatting. | Lucky Shrub: Your gateway to succulents! |
<TEMPLATE_LANGUAGE>String | Required. Template language and locale code. | en_US |
<TEMPLATE_NAME>String | Required. Template name. Maximum 512 characters. | abandoned_cart_offer |
<WHATSAPP_BUSINESS_ACCOUNT_ID>String | Required. WhatsApp Business Account ID. | 546151681022936 |
Example request
Sending single-product template messages
Request syntax
Use the POST /<BUSINESS_PHONE_NUMBER_ID>/messages endpoint to send an SPM template message.Request parameters
| Placeholder | Description | Example Value |
|---|---|---|
<ACCESS_TOKEN>String | Required. Access token | EAAAN... |
<API_VERSION>String | Optional. API version. If omitted, defaults to the newest API version available to your app. | v23.0 |
<BUSINESS_PHONE_NUMBER_ID>String | Required. WhatsApp business phone number ID. | 106540352242922 |
<CATALOG_ID>String | Required. ID of connected ecommerce catalog containing the product. | 194836987003835 |
<PARAMETER_NAME>String | Required if template uses one or more named parameters. Name of named parameter. | code |
<PARAMETER_VALUE>String | Required if template uses one or more named parameters. Named parameter value. | 10OFF |
<PRODUCT_ID>String | Required. Product ID. | nqryix03ez |
<TEMPLATE_LANGUAGE>String | Required. Template language and locale code. | en_US |
<TEMPLATE_NAME>String | Required. Template name. Maximum 512 characters. | spm_template_named_params |
<WHATSAPP_USER_PHONE_NUMBER>String | Required. WhatsApp user phone number. | +16505551234 |

