LogoLogo
Become a PartnerStatus Page
  • get started
    • Welcome to 360Dialog
    • Quickstarts
      • Register as a Meta Tech Provider
      • Add a WhatsApp Number
      • Set up Integrated Onboarding
      • Create a Message Template
      • Send a Message
      • (temp title) Getting started as a partner
    • Pricing & Billing
      • Payment Methods for BR: Pix & Boleto
      • Month Closing Invoice (MCI)
    • Get API Access
    • Tech Provider Program
      • Understanding the Meta Tech Provider Program
      • Becoming a Meta Tech Provider: A Step-by-Step Guide
  • MM Lite Beta Program
    • Onboarding
    • Sending Messages
    • Expected Errors & Programming Languages
    • MM Lite Sandbox Testing
      • Sending Messages using MM Lite Sandbox
      • Expected Erros & Programming Languages
  • Partner & Account Management
    • Solutions for Partners
      • Benefits for Partners
      • Partner Hub
      • WABA Management
    • Account Setup & Management
      • Prerequisites and best practices for account creation
      • Account Structure
      • Account Creation
  • Integrations & API Development
    • Webhook Events & Setup
      • Webhook Events (Partner & Messaging API)
      • Webhook Configuration & Management
    • Integration Best Practices
      • Architecture and Security
      • Best Practices for Designing Integrations
        • Design a Stable Webhook Receiving Endpoint
      • Sizing Your Environment Based on Expected Throughput
      • Design a Resilient Message Sending Service
      • Integrated Onboarding
        • Basic Integrated Onboarding
        • Custom Integrated Onboarding
        • Host Your Own Embedded Signup
      • API Key Authentication for the Partner API
  • API Reference
    • Messaging API
    • Messaging Health Status
    • Sandbox (Test API Key)
    • Differences Between Cloud API and On-Premise API for Partners
      • [will be deprecated] Messaging with On-Premise API
    • Partner API
  • WABA Management
    • Managing WABA Accounts
      • Using the Partner Hub to manage Clients and Channels
      • Using the Partner API to manage Clients and Channels
      • Partner Permission to Generate API Key
      • Checking Usage & Statistics
    • Phone Number & Hosting
      • Migrating a Phone Number
        • Migrate number from Meta or alternate BSP to 360Dialog
        • Migrate a phone number to a new WABA
        • Migrate a phone number to a new WABA to change messaging Currency
      • WhatsApp Coexistence
        • Coexistence Onboarding
        • Coexistence Webhooks
      • Hosting type Change (On-premise API to Cloud API)
    • WABA Profile & Compliance
      • Display Name Guidelines
      • WABA Profile Info
      • WABA Policy Enforcement
      • Business Account Verification
    • Partner change (between 360Dialog Partners)
    • WhatsApp Flows
    • Accelerated Onboarding
    • Business Account Verification
  • Messaging
    • Sending & Receiving Messages
      • Conversations
      • Receiving messages
      • Before sending a message
    • Message Types
      • Conversational Components
      • Checklist for Message Broadcasts and Campaigns
      • Text messages
      • Interactive messages
        • Single and Multi Product Messages
        • Location Request Messages
        • Address Messages (India and Singapore only)
      • Contacts & Location Messages
    • Template Messages
      • Template Library
      • Template Elements
      • Sending Template Messages
      • Authentication Templates
        • Zero-Tap Authentication Templates
        • One-Tap Autofill Authentication Templates
        • Copy Code Authentication Templates
      • Catalog Templates
      • Product Card Carousel Templates
      • Single-Product Message Templates
      • Coupon Code Templates
      • Limited-Time Offer Templates
      • Multi-Product Templates
    • Media Messages
      • Upload, retrieve or delete media
    • Messaging Health & Troubleshooting
      • Messaging Limits & Quality Rating
      • Errors While Messaging
      • Messages statuses
  • Commerce & Payments
    • Payments (India Only)
      • Receive WhatsApp Payments via Payments Gateway
      • Receive WhatsApp Payments via Payment Links
      • Order Details Template Message
    • Payments (Singapore Only)
      • Receive WhatsApp Payments via Stripe
    • Products and Catalogs
      • India Businesses: Compliance for Commerce
  • Support & Updates
    • Help & Troubleshooting
      • FAQ
      • Error Code Reference
      • User Support Documentation
        • Tutorials
          • Page How to Troubleshoot Login Issues in the 360dialog Hub
          • How to Report an Issue
          • How to Contact Support
        • How-To Guides
          • Raise a support request
          • Requesting a Status Update for Business Verification
        • Reference
          • Troubleshooting Embedded Signup Issues
          • Commerce Policy Checks for WhatsApp API Access
          • Support Availability & SLAs
          • Incident Issue Prioritization
          • Case Types Table
        • Explanation
          • Why Business Verification Takes Time
          • Why Some Issues Are Not Emergencies
          • Understanding the Support Process
      • Support with Meta
    • Imprint & Data Privacy
    • Product Updates & News
      • How to ensure your Template Messages will be received
      • Integrated Onboarding new look and Campaigns Best Practices
Powered by GitBook
On this page
  • Template Creation
  • Sending Catalog Templates

Was this helpful?

  1. Messaging
  2. Template Messages

Catalog Templates

PreviousCopy Code Authentication TemplatesNextProduct Card Carousel Templates

Last updated 10 months ago

Was this helpful?

Catalog Templates are only available while using Cloud API.

Catalog templates arethat allow you to showcase your product catalog entirely within WhatsApp. Catalog templates display a product thumbnail header image of your choice and custom body text, along with a fixed text header and fixed text sub-header.

Requirements

If you require any assistance, please reach out to our Support Team.

Template Creation

Use the create template endpoint and assemble the Catalog Template components in the request:

POST https://waba-v2.360dialog.io/v1/configs/templates

The message template name field is limited to 512 characters. The message template content field is limited to 1024 characters.

Headers

Name
Type
Description

D360-API-KEY

string

Request Body

Name
Type
Description

name*

string

components*

array[objects]

Array of objects that describe the components that make up the template.

category*

string

Allowed values: MARKETING

language*

string

Upon success, the API will respond with a JSON object describing the newly created template.

{
    "category": "MARKETING",
    "components": [
        {
            "text": "Lorem ipsum dolor sit amet",
            "type": "BODY"
        },
        {
            "format": "TEXT",
            "text": "Lorem ipsum",
            "type": "HEADER"
        },
        {
            "text": "Lorem ipsum",
            "type": "FOOTER"
        },
        {
            "buttons": [
                {
                    "phone_number": "+1(650) 555-1111",
                    "text": "Lorem ipsum",
                    "type": "PHONE_NUMBER"
                },
                {
                    "example": [
                        "https://www.website.com/dynamic-url-example"
                    ],
                    "text": "your-url-button-text",
                    "type": "URL",
                    "url": "https://www.website.com/dynamic-url-example"
                }
            ],
            "type": "BUTTONS"
        }
    ],
    "language": "en_US",
    "name": "template_test_123",
    "namespace": "f65cda29_76cb_af89_cee6_f7f5b2a4006a",
    "rejected_reason": null,
    "status": "submitted"
}

Once your template is approved, you can use Cloud API to send it in a template message.

Post Body

{
  "name": "<NAME>",
  "language": "<LANGUAGE>",
  "category": "MARKETING",
  "components": [
    {
      "type": "BODY",
      "text": "<BODY_TEXT>",
      "example": {
        "body_text": [
          [
            "<EXAMPLE_BODY_TEXT>"
          ]
        ]
      }
    },
    {
      "type": "FOOTER",
      "text": "<FOOTER_TEXT>"
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "CATALOG",
          "text": "View catalog"
        }
      ]
    }
  ]
}

Properties

Placeholder
Description
Sample Value

<BODY_TEXT>

String

Required.

Template body text. Variables are supported.

Maximum 1024 characters.

Now shop for your favourite products right here on WhatsApp! Get Rs {{1}} off on all orders above {{2}}Rs! Valid for your first {{3}} orders placed on WhatsApp!

<EXAMPLE_BODY_TEXT>

String (of an array of strings)

Required if body text uses variables.

Sample strings to replace variable placeholders in <BODY_TEXT> string.

Maximum 1024 characters.

100

<FOOTER_TEXT>

String

Optional.

Template footer text. Variables are supported.

Maximum 60 characters.

Best grocery deals on WhatsApp!

<LANGUAGE>

String

Required.

en_US

<NAME>

String

Required.

Template name.

Maximum 512 characters.

intro_catalog_offer

Example Request

{
  "name": "intro_catalog_offer",
  "language": "en_US",
  "category": "MARKETING",
  "components": [
    {
      "type": "BODY",
      "text": "Now shop for your favourite products right here on WhatsApp! Get Rs {{1}} off on all orders above {{2}}Rs! Valid for your first {{3}} orders placed on WhatsApp!",
      "example": {
        "body_text": [
          [
            "100",
            "400",
            "3"
          ]
        ]
      }
    },
    {
      "type": "FOOTER",
      "text": "Best grocery deals on WhatsApp!"
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "CATALOG",
          "text": "View catalog"
        }
      ]
    }
  ]
}

Sending Catalog Templates

Catalog template messages cannot be sent with the On-Premises API.

POST https://waba-v2.360dialog.io/messages

Request Body

Name
Type
Description

components

String

language

String

{
    "messaging_product": "whatsapp",
    "contacts": [
        {
            "input": "12015553931",
            "wa_id": "12015553931"
        }
    ],
    "messages": [
        {
            "id": "wamid.HBgLMTY1MDM4Nzk0MzkVAgARGBI4Qzc5QkNGNTc5NTMyMDU5QzEA"
        }
    ]
}

Post Body:

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "<TO>",
  "type": "template",
  "template": {
    "name": "<NAME>",
    "language": {
      "code": "<CODE>"
    },
    "components": [

      /* Body component required if template uses variables, otherwise omit */
      {
        "type": "body",
        "parameters": [
          {
            "type": "<TYPE>",
            "text": "<TEXT>"
          }
        ]
      },
      {
        "type": "button",
        "sub_type": "CATALOG",
        "index": 0,
        "parameters": [
          {
            "type": "action",
            "action": {
              "thumbnail_product_retailer_id": "<THUMBNAIL_PRODUCT_RETAILER_ID>"
            }
          }
        ]
      }
    ]
  }
}

Components

Placeholder
Description
Sample Value

<CODE>

String

Required.

en_US

<NAME>

String

Required.

Template name.

intro_catalog_offer

<THUMBNAIL_PRODUCT_RETAILER_ID>

String

Optional.

Item SKU number. Labeled as Content ID in the Commerce Manager.

The thumbnail of this item will be used as the message's header image.

If the parameters object is omitted, the product image of the first item in your catalog will be used.

2lc20305pt

<TEXT>

String

Required if template uses variables.

Template variable.

100

<TO>

String

Required.

Customer phone number.

+16505551234

<TYPE>

String

Required if template uses variables.

Template variable type.

text

Example Request

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "+16505551234",
  "type": "template",
  "template": {
    "name": "intro_catalog_offer",
    "language": {
      "code": "en_US"
    },
    "components": [
      {
        "type": "body",
        "parameters": [
          {
            "type": "text",
            "text": "100"
          },
          {
            "type": "text",
            "text": "400"
          },
          {
            "type": "text",
            "text": "3"
          }
        ]
      },
      {
        "type": "button",
        "sub_type": "CATALOG",
        "index": 0,
        "parameters": [
          {
            "type": "action",
            "action": {
              "thumbnail_product_retailer_id": "2lc20305pt"
            }
          }
        ]
      }
    ]
  }
}'

You must have inventory uploaded to Meta in an ecommerce catalog connected to your WhatsApp Business Account. See

Template .

See

Template .

Products and Catalogs.
View list of supported languages here.
language and locale code
View list of supported languages here.
language and locale code
Components
marketing templates
When a customer taps the View catalog button in a catalog template message, your product catalog appears within WhatsApp.