← Blog

·

Plantilla carrusel en WhatsApp: tarjetas con imagen y botón

Actualizado el 28/10/2026

La plantilla carrusel de WhatsApp es una plantilla de marketing que envía un texto principal acompañado de 2 a 10 tarjetas con desplazamiento horizontal, cada una con imagen o video, texto corto y botones. Hay dos tipos de plantilla: el carrusel de tarjetas multimedia, con botones de respuesta rápida, URL o teléfono, y el carrusel de tarjetas de producto, que toma imagen, título y precio del catálogo de Meta. Fuera de las plantillas, la API también ofrece el carrusel interactivo, que solo se puede enviar dentro de la ventana de 24 horas.

Los tres tipos de carrusel en la API de WhatsApp

TipoCuándo usarloEncabezado de la tarjetaBotones por tarjeta¿Requiere plantilla?
Carrusel de tarjetas multimediaCampañas que llevan al sitio, a una respuesta o a una llamadaImagen o videoHasta 2: respuesta rápida, URL o teléfonoSí, categoría marketing
Carrusel de tarjetas de productoVitrina del catálogo con compra dentro del chatProducto del catálogo1: «View» (abre el producto) o URLSí, categoría marketing
Carrusel interactivo multimediaRespuesta a un cliente que ya está conversandoImagen o video1 URL o botones de respuesta rápidaNo, solo dentro de la ventana de 24 h

Según la documentación de Meta, las tarjetas de carrusel en plantillas solo están disponibles para mensajes de marketing. Para repasar cómo clasifica Meta las plantillas, mira categorías de plantillas.

Límites del carrusel de tarjetas multimedia

ElementoLímite
Cantidad de tarjetasMínimo 2, máximo 10, definida al crear
Texto principal (body)1.024 caracteres, admite variables
Texto de la tarjetaOpcional, hasta 160 caracteres (las variables cuentan)
Encabezado de la tarjetaImagen o video, recortado automáticamente en formato ancho
Botones por tarjetaHasta 2, combinando respuesta rápida, URL y teléfono
Etiqueta de cada botón25 caracteres
URL del botón2.000 caracteres, con como máximo 1 variable, al final
Número del botón de teléfono20 caracteres
Nombre de la plantilla512 caracteres

Tres reglas que confunden a muchos:

  • Todas las tarjetas tienen los mismos componentes. Si la primera tiene respuesta rápida y URL, todas deben tener respuesta rápida y URL, en el mismo orden.
  • El texto de la tarjeta es todo o nada. Si una tarjeta tiene texto, todas deben tenerlo, para mantener la misma altura.
  • La cantidad de tarjetas es fija. Una plantilla aprobada con 3 tarjetas solo se puede enviar con 3. Si quieres vitrinas de 3 y de 5 productos, crea dos plantillas.

¿Quieres probar mientras lees? Crea tu cuenta en Vectalk y envía el primer mensaje por la API oficial. Crear cuenta gratis →

Cómo crear una plantilla carrusel multimedia

La creación usa POST /<WABA_ID>/message_templates, con un componente body (texto principal) y un componente carousel con la lista de cards.

El encabezado de cada tarjeta necesita un ejemplo de medio en header_handle. Ese valor no es una URL: es un identificador generado por la API de carga reanudable (Resumable Upload API) de Meta.

Ejemplo con 2 tarjetas, cada una con respuesta rápida y URL con variable (para ideas de texto, mira los modelos de plantilla por sector):

{
  "name": "coleccion_verano_carrusel",
  "language": "es",
  "category": "marketing",
  "components": [
    {
      "type": "body",
      "text": "¡Hola, {{1}}! Llegó la colección de verano. Usa el cupón {{2}} hasta el domingo.",
      "example": { "body_text": [["Ana", "VERANO10"]] }
    },
    {
      "type": "carousel",
      "cards": [
        {
          "components": [
            { "type": "header", "format": "image", "example": { "header_handle": ["<HANDLE_IMAGEN_1>"] } },
            {
              "type": "buttons",
              "buttons": [
                { "type": "quick_reply", "text": "Lo quiero" },
                { "type": "url", "text": "Ver en la tienda", "url": "https://tienda.example.com/p/{{1}}", "example": ["vestido-lino"] }
              ]
            }
          ]
        },
        {
          "components": [
            { "type": "header", "format": "image", "example": { "header_handle": ["<HANDLE_IMAGEN_2>"] } },
            {
              "type": "buttons",
              "buttons": [
                { "type": "quick_reply", "text": "Lo quiero" },
                { "type": "url", "text": "Ver en la tienda", "url": "https://tienda.example.com/p/{{1}}", "example": ["sandalia-cuero"] }
              ]
            }
          ]
        }
      ]
    }
  ]
}

La cantidad de ejemplos en body_text debe coincidir con la de variables. La plantilla solo se puede enviar con estado APPROVED. Si la rechazan, la guía de plantilla rechazada en WhatsApp repasa los motivos más comunes.

Cómo enviar la plantilla carrusel

En el envío, cada tarjeta recibe el medio real y los valores de las variables. El medio va por ID: súbelo con POST /<PHONE_NUMBER_ID>/media y usa el id devuelto. card_index empieza en 0 e indica la posición de la tarjeta; el index del botón también empieza en 0 y sigue el orden definido en la plantilla.

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "5215512345678",
  "type": "template",
  "template": {
    "name": "coleccion_verano_carrusel",
    "language": { "code": "es" },
    "components": [
      {
        "type": "body",
        "parameters": [
          { "type": "text", "text": "Ana" },
          { "type": "text", "text": "VERANO10" }
        ]
      },
      {
        "type": "carousel",
        "cards": [
          {
            "card_index": 0,
            "components": [
              { "type": "header", "parameters": [{ "type": "image", "image": { "id": "1234567890" } }] },
              { "type": "button", "sub_type": "quick_reply", "index": 0, "parameters": [{ "type": "payload", "payload": "quiero:vestido-lino" }] },
              { "type": "button", "sub_type": "url", "index": 1, "parameters": [{ "type": "text", "text": "vestido-lino" }] }
            ]
          },
          {
            "card_index": 1,
            "components": [
              { "type": "header", "parameters": [{ "type": "image", "image": { "id": "1234567891" } }] },
              { "type": "button", "sub_type": "quick_reply", "index": 0, "parameters": [{ "type": "payload", "payload": "quiero:sandalia-cuero" }] },
              { "type": "button", "sub_type": "url", "index": 1, "parameters": [{ "type": "text", "text": "sandalia-cuero" }] }
            ]
          }
        ]
      }
    ]
  }
}

Cuando el cliente toca «Lo quiero», el webhook de mensajes llega con el payload del botón en messages.button.payload. Si el orden o el tipo de los botones en el envío no coincide con la plantilla, la API devuelve error, porque index no reordena botones.

El botón de URL abre el sitio fuera de WhatsApp, y los pedidos hechos allí no generan webhook de pedido.

Carrusel de tarjetas de producto

El carrusel de productos mantiene la compra dentro de WhatsApp. Cada tarjeta muestra imagen, título y precio del catálogo, y el botón «View» abre el detalle del producto, donde el cliente puede agregarlo al carrito y enviar el pedido. Al enviarse el pedido, llega un webhook de mensaje de tipo pedido.

  • Catálogo conectado. Necesitas un catálogo de productos con inventario conectado a tu cuenta de mensajes. Mira catálogo y mensajes de producto en la API.
  • Crea con 2 tarjetas, envía hasta 10. Es la orientación de Meta para este tipo.
  • Encabezado product. Al crear, cada tarjeta lleva "format": "product" y un botón spm (el «View») o un botón de URL.

En el envío, cada tarjeta apunta a un producto del catálogo:

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "5215512345678",
  "type": "template",
  "template": {
    "name": "vitrina_productos",
    "language": { "code": "es" },
    "components": [
      { "type": "body", "parameters": [{ "type": "text", "text": "Ana" }] },
      {
        "type": "carousel",
        "cards": [
          {
            "card_index": 0,
            "components": [
              { "type": "header", "parameters": [{ "type": "product", "product": { "product_retailer_id": "SKU-001", "catalog_id": "194836987003835" } }] }
            ]
          },
          {
            "card_index": 1,
            "components": [
              { "type": "header", "parameters": [{ "type": "product", "product": { "product_retailer_id": "SKU-002", "catalog_id": "194836987003835" } }] }
            ]
          }
        ]
      }
    ]
  }
}

Carrusel interactivo, sin plantilla

Si el cliente ya está conversando contigo, la ventana de 24 horas está abierta y puedes enviar un carrusel como mensaje interactivo (type: "interactive", interactive.type: "carousel"), sin crear ni aprobar plantilla.

Las reglas del mensaje interactivo, según la documentación:

  • De 2 a 10 tarjetas; texto principal obligatorio (hasta 1.024 caracteres), sin encabezado ni pie.
  • Cada tarjeta tiene imagen o video (por link público) y texto opcional de hasta 160 caracteres, con como máximo 2 saltos de línea.
  • Cada tarjeta tiene un botón de URL o botones de respuesta rápida, y el tipo y la cantidad deben ser iguales en todas. Las etiquetas tienen hasta 20 caracteres.
{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "5215512345678",
  "type": "interactive",
  "interactive": {
    "type": "carousel",
    "body": { "text": "Te separé dos opciones:" },
    "action": {
      "cards": [
        {
          "card_index": 0,
          "type": "cta_url",
          "header": { "type": "image", "image": { "link": "https://tienda.example.com/img/vestido-lino.jpg" } },
          "body": { "text": "*Vestido de lino*\n$899 MXN" },
          "action": { "name": "cta_url", "parameters": { "display_text": "Comprar", "url": "https://tienda.example.com/p/vestido-lino" } }
        },
        {
          "card_index": 1,
          "type": "cta_url",
          "header": { "type": "image", "image": { "link": "https://tienda.example.com/img/sandalia-cuero.jpg" } },
          "body": { "text": "*Sandalia de cuero*\n$699 MXN" },
          "action": { "name": "cta_url", "parameters": { "display_text": "Comprar", "url": "https://tienda.example.com/p/sandalia-cuero" } }
        }
      ]
    }
  }
}

Cuánto cuesta un carrusel

La plantilla carrusel se cobra como un mensaje de marketing, por mensaje y no por tarjeta. Las tarifas de Meta dependen del país del destinatario. Para destinatarios en Brasil, la tarifa de marketing desde el 1 de octubre de 2026 es de R$ 0,3217 (reales brasileños) por mensaje entregado, así que 10.000 carruseles entregados cuestan R$ 3.217,00 en la tabla de Meta. El carrusel interactivo, enviado dentro de la ventana de atención, es un mensaje de servicio: cada número tiene 1.000 mensajes de servicio gratis al mes y, desde el 1.001, paga R$ 0,0350 por mensaje a Brasil. Para fechas pico, la guía de Black Friday en WhatsApp ayuda a planificar volumen y presupuesto.

Buenas prácticas para un carrusel que convierte

  • Imágenes con el mismo estilo. Meta recorta el encabezado en formato ancho según el dispositivo: deja el producto al centro y evita texto en los bordes.
  • La tarjeta más fuerte primero. Las tarjetas aparecen de izquierda a derecha desde card_index 0; las siguientes solo se ven si el cliente desliza.
  • ID del producto en el payload. Así sabes qué tarjeta generó la respuesta y contestas con el producto correcto.
  • Variable de URL para seguimiento. La única variable permitida en el botón de URL va al final; úsala para el slug del producto o un parámetro de campaña.
  • Opt-in y frecuencia. El carrusel es marketing: envíalo solo a quien aceptó recibir ofertas. El límite de marketing por usuario (error 131049) y la pausa de plantillas por baja calidad siguen aplicando. Mira error 131049 y límite de marketing.

Cómo hacerlo con Vectalk

Vectalk es un proxy de la WhatsApp Cloud API oficial de Meta, y los payloads son los mismos de Meta. Con un token de instancia:

  1. Subes las imágenes del envío a POST https://apis.vectalk.com.br/api/media y usas el id devuelto en los encabezados de las tarjetas.
  2. Creas la plantilla en POST https://apis.vectalk.com.br/api/templates con el JSON de creación. Para el ejemplo de medio del encabezado (header_handle), revisa el formato aceptado en la página de creación de plantillas de la documentación.
  3. Envías el carrusel en POST https://apis.vectalk.com.br/api/messages con el mismo JSON de envío mostrado arriba.

Pagas la mensualidad de Vectalk y mantienes un saldo prepago: cada mensaje entregado se descuenta de ese saldo, y Vectalk paga a Meta, sin tarjeta registrada en Meta. Cada endpoint está detallado en la documentación de Vectalk, y la cuenta se crea en apps.vectalk.com.br/register. Para el panorama general, mira la guía de WhatsApp Cloud API.

Preguntas frecuentes

¿Puedo crear un carrusel en la categoría utilidad?

No. La documentación de Meta indica que las tarjetas de carrusel en plantillas solo están disponibles para mensajes de marketing.

¿Cuántas tarjetas puedo enviar?

De 2 a 10. En el carrusel multimedia, el número se fija al crear la plantilla. En el de producto, la creas con 2 tarjetas y puedes enviar hasta 10.

¿Puedo enviar un carrusel sin plantilla?

Sí, como mensaje interactivo, pero solo dentro de la ventana de 24 horas abierta por el último mensaje del cliente. Para iniciar la conversación, necesitas la plantilla de marketing.


Fuentes oficiales consultadas el 28/10/2026: Media card carousel templates (Meta, actualizado el 24/06/2026), Product card carousel templates (Meta, actualizado el 18/06/2026), Interactive media carousel messages (Meta, actualizado el 21/05/2026), Templates overview (Meta), Pricing (Meta), Vectalk: crear plantilla, Vectalk: carga de medios, Vectalk: autenticación.

Prueba hoy la API oficial de WhatsApp

Crea tu cuenta, genera el token y envía el primer mensaje con la guía de la documentación. Los mismos payloads y webhooks de la Cloud API de Meta.