Skip to main content

Request

Use type as interactive and set interactive.type to product. A single-product message displays one product from your catalog. The recipient can view the product details, add it to their WhatsApp cart, and send the cart back as an order.

Field types

  • to: string (required)
  • type: string = interactive (required)
  • interactive: object (required)
  • interactive.type: string = product (required)
  • interactive.body: object (optional)
  • interactive.body.text: string (optional)
  • interactive.footer: object (optional)
  • interactive.footer.text: string (optional)
  • interactive.action: object (required)
  • interactive.action.catalog_id: string (required)
  • interactive.action.product_retailer_id: string (required)
  • tags: array of strings (optional)
  • metadata: object | string (optional)

Field behavior and limits

  • interactive.action.catalog_id is the ID of the Meta catalog connected to the WhatsApp Business account.
  • interactive.action.product_retailer_id is the retailer ID (SKU) of the product within the catalog.
  • interactive.body.text is optional, max 1024 characters.
  • interactive.footer.text is optional, max 60 characters.
  • Product data (image, name, price, stock) is fetched by WhatsApp at delivery time — the recipient always sees the latest catalog state.
  • If the product_retailer_id does not exist in the catalog, the message is not delivered and an error is returned.
  • Cannot be sent as a notification — only inside an existing conversation.