Primeros pasos para socios de soluciones

En esta guía se describen los pasos que deben seguir los socios de soluciones para poder ofrecer la API de nube a sus clientes. Hay cuatro fases principales:

  1. Preparar y planificar
  2. Configurar los recursos
  3. Firmar los contratos
  4. Crear la integración

Al terminar, mantente al día con las actualizaciones mensuales.

Preparar y planificar

Leer la documentación

Antes de empezar, te recomendamos que leas la documentación para desarrolladores y la colección de Postman. De esta forma, podrás comprender el funcionamiento de la API de nube, incluidos los primeros pasos y la migración de números.

Planificar la incorporación y la migración

Debes utilizar el registro insertado para incorporar nuevos clientes a la API de nube. Si todavía no lo has hecho, integra e inicia el registro insertado. El registro insertado es la forma más rápida y sencilla de registrar clientes, ya que les permite empezar a enviar mensajes en menos de cinco minutos.

A continuación, piensa en los clientes que quieres migrar a la API de nube en primer lugar. Nuestra recomendación general es que migres todos los clientes de la API local a la API de nube, pero las necesidades de cada uno de ellos pueden variar. Mientras piensas en los clientes que quieres migrar, considera lo siguiente:

ConsideraciónMás contexto

¿La API de nube admite los volúmenes de mensajes y el rendimiento de mis clientes?

La API de nube admite que la mayoría de las empresas alcancen un rendimiento máximo acumulado de 250 mensajes/segundo, incluidos mensajes de texto y multimedia, y entrantes y salientes.

¿La API de nube respeta las necesidades de cumplimiento de mi cliente?

La API de nube cumple con el RGPD y tiene la certificación SOC 2. Los servidores se alojan en Norteamérica y Europa.

¿Mis clientes utilizan funciones admitidas por la API de nube?

Se admiten la mayoría de las funciones principales. Consulta la lista completa aquí.

Cuando sepas los clientes que se van a migrar, puedes crear un calendario y un plan de la migración.

Al crear el plan, recuerda diseñar el sistema para dos escenarios: la incorporación de nuevos clientes y la migración de los clientes actuales de la API local a la API de nube. En el caso del escenario de migración, incluye planes para hacer una copia de seguridad de la instancia local y migrar esos números a la API de nube.

Planificar las comunicaciones con los clientes

En primer lugar, tienes que decidir si notificar a los clientes existentes sobre la migración. A continuación, debes determinar si necesitas crear o actualizar la documentación para admitir la configuración de la API de nube.

Tomar decisiones sobre los precios

Como los costes de alojamiento de la API de nube los cubre Meta, debes decidir si quieres actualizar tus precios en consonancia.

Configurar los recursos

Para usar la API de nube, los socios de soluciones deben tener los siguientes activos:

ActivoInstrucciones específicas

Business Manager

Puedes utilizar una cuenta existente o configurar una nueva. Guarda el identificador de Business Manager.

Cuenta de WhatsApp Business (WABA)

Para obtener ayuda, consulta Crear una cuenta de WhatsApp Business para la API de WhatsApp Business.

Aplicación de Meta

Si no tienes ninguna aplicación, tienes que crear una con el tipo “Empresa”. Recuerda añadir un nombre para mostrar y un correo electrónico de contacto a la aplicación.


Como socio de soluciones, tu aplicación debe someterse a la revisión de la aplicación y solicitar acceso avanzado para los permisos siguientes:

  • whatsapp_business_management: se usa para administrar los números de teléfono, las plantillas de mensaje, el proceso de registro y el perfil de empresa en una cuenta de WhatsApp Business. Para obtener este permiso, la aplicación debe someterse a la revisión de la aplicación.
  • whatsapp_business_messaging: se usa para intercambiar mensajes con los usuarios de WhatsApp, o para subir o descargar contenido multimedia en una cuenta de WhatsApp Business. Para obtener este permiso, la aplicación debe someterse a la revisión de la aplicación.

Consulta aquí un ejemplo de una solicitud de revisión de la aplicación.


Como socio de soluciones, también puedes usar la misma aplicación de Meta en diferentes clientes y cuentas WABA. No obstante, ten en cuenta que cada aplicación solo puede tener un extremo de webhooks y debe someterse a la revisión de la aplicación.

Usuario del sistema

Para obtener ayuda, consulta Añadir usuarios del sistema a tu Business Manager.


Actualmente, una aplicación de Meta con los permisos whatsapp_business_messaging, whatsapp_business_management y business_messaging tiene acceso a un máximo de:

  • Un usuario administrador del sistema
  • Un usuario empleado del sistema

Te recomendamos usar el usuario administrador del sistema para la implementación de producción. Para obtener más información, consulta Información sobre los roles y permisos de Business Manager.

Número de teléfono de la empresa

Se trata del número de teléfono que la empresa usará para enviar mensajes. Es necesario verificar los números de teléfono mediante una llamada de voz o un SMS.


En el caso de los socios de soluciones y las empresas directas, si quieres usar tu número de teléfono, debes añadir un número de teléfono en el Administrador de WhatsApp y verificarlo con el extremo de verificación a través de la API Graph.


En el caso de las empresas que usan socios de soluciones, si quieres usar tu número, debes añadir y verificar los números mediante el proceso de registro insertado del socio de soluciones.


El estado de verificación de un número de teléfono no afecta a la migración entre la API local y la API de la nube. Si no tienes acceso al registro insertado para verificar los números de teléfono, te recomendamos verificarlos mediante la solución local y, a continuación, migrarlos a la API de la nube.

No hay ningún límite en cuanto a la cantidad de números de teléfono de la empresa que se pueden incorporar a la API de nube.


Un número de teléfono único solo se puede utilizar en una plataforma a la vez: un número de teléfono para la API de la nube y otro número para la API local. Esto significa que un número de teléfono de producción no se puede usar con la API local y la API de la nube. Te recomendamos realizar las pruebas con un número de prueba (uno existente o uno nuevo) y, a continuación, trasladar tu número de teléfono a la API de la nube cuando te asegures de que ya puedes pasar al uso de producción.

Número de teléfono del consumidor

Se trata de un número de teléfono que actualmente usa la aplicación de WhatsApp del consumidor. Este número recibirá los mensajes que envíes mediante el número de teléfono de la empresa.

Firmar los contratos

Aceptar las Condiciones del servicio

Para poder acceder a la API de nube de mensajes de WhatsApp Business, primero debes aceptar las Condiciones del servicio de la Plataforma de WhatsApp Business en nombre de tu empresa.

Para ello, accede al Administrador de WhatsApp y acepta las Condiciones del servicio en el banner de información.

Si eres un socio beta existente de la API de nube, dispones de un periodo de gracia de 90 días. Esto quiere decir que tienes que aceptar las condiciones antes del 5 de julio de 2022 o perderás el acceso.

En el caso de las nuevas empresas de la API de nube, incluidas las que realizan la migración desde la API local, tendrás que aceptar las Condiciones del servicio para poder empezar a usar la API de nube. Se producirá un error en las llamadas de registro hasta que aceptes las Condiciones del servicio.

Como desarrollador, tienes que aceptar las Condiciones del servicio. Si eres socio de soluciones, no es necesario que tus clientes las acepten.

Crear la integración

Paso 1: Obtener el identificador de acceso de usuario del sistema

Las llamadas a la API Graph usan los identificadores de acceso para la autenticación. Para obtener más información, consulta Identificadores de acceso. Te recomendamos usar tu usuario del sistema para generar el identificador.

Para generar un identificador de acceso de usuario del sistema, sigue estos pasos:

  1. Accede a Business Manager > Configuración de la empresa > Usuarios > Usuarios del sistema para ver el usuario del sistema que has creado.
  2. Haz clic en ese usuario y selecciona Añadir activos. Esta acción inicia una nueva ventana.
  3. En Seleccionar tipo de activo en el panel del lado izquierdo, selecciona Aplicaciones. En Seleccionar activos, elige la aplicación de Meta que quieres usar (la aplicación debe tener los permisos correctos). Activa Desarrollar la aplicación para dicha aplicación.
  4. Selecciona Guardar cambios para guardar la configuración y volver a la pantalla principal de usuarios del sistema.
  5. Ahora ya puedes generar el identificador. En la pantalla principal de usuarios del sistema, haz clic en Generar identificador y selecciona la aplicación de Meta. Tras seleccionar la aplicación, ves una lista de los permisos disponibles. Selecciona whatsapp_business_management y whatsapp_business_messaging. Haz clic en Generar identificador.
  6. Se abre una nueva ventana con el usuario del sistema, la aplicación asignada y el identificador de acceso. Guarda el identificador.
  7. De manera opcional, puedes hacer clic en el identificador y ver el depurador de identificadores. En el depurador, deberías ver los dos permisos seleccionados. También puedes pegar directamente el identificador en el depurador de identificadores de acceso.

Paso 2: Configurar los webhooks

Con los webhooks configurados, puedes recibir notificaciones HTTP en tiempo real de la Plataforma de WhatsApp Business. Esto significa que obtienes una notificación cuando, por ejemplo, recibes un mensaje de un cliente o se producen cambios en tu cuenta de WhatsApp Business (WABA).

Para configurar el webhook, tienes que crear un servidor web accesible desde internet con una URL que cumpla los requisitos de WhatsApp y Meta. Consulta Crear un extremo para obtener instrucciones sobre cómo hacerlo. Si necesitas un extremo para realizar pruebas, puedes generar un extremo de webhooks de prueba.

Configuración de la aplicación

Cuando el extremo esté listo, configúralo para que lo use la aplicación de Meta:

En el panel de aplicaciones, busca el producto “WhatsApp” y haz clic en Configuración. A continuación, busca la sección de webhooks y haz clic en Configurar un webhook. Al hacer clic, aparece un cuadro de diálogo en la pantalla que pide dos elementos:

  • URL de devolución de llamada: la URL a la que Meta enviará los eventos. Consulta la guía Webhooks, Primeros pasos para obtener información sobre la creación de la URL.
  • Identificador de verificación: al crear el extremo del webhook, debes configurar esta cadena.

Después de añadir la información, haz clic en Verificar y guardar.

Vuelve al panel de aplicaciones y haz clic en WhatsApp > Configuración en el panel lateral de la izquierda. En “Webhooks”, haz clic en Administrar. Se abrirá un cuadro de diálogo con todos los objetos de los que puedes recibir notificaciones. Para recibir mensajes de los usuarios, haz clic en Suscribirse a los mensajes.

Solo tienes que configurar los webhooks una vez para cada aplicación que tengas. Puedes usar el mismo webhook para recibir distintos tipos de eventos de distintas cuentas de WhatsApp Business. Para obtener más información, consulta la sección Webhooks.

Cada aplicación de Meta solo puede tener un extremo configurado. Si quieres enviar actualizaciones de webhooks a varios extremos, necesitarás varias aplicaciones de Meta.

Paso 3: Suscribirse a la cuenta WABA

Para asegurarte de recibir las notificaciones de la cuenta correcta, suscribe la aplicación:

curl -X POST \
'https://graph.facebook.com/v19.0/WHATSAPP_BUSINESS_ACCOUNT_ID/subscribed_apps' \
-H 'Authorization: Bearer ACCESS_TOKEN'

Si obtienes la siguiente respuesta, todos los eventos de webhooks de los números de teléfono de esta cuenta se enviarán al extremo de webhooks configurado.

{
  "success": true
}

Paso 4: Obtener el identificador del número de teléfono

Para enviar mensajes, tienes que registrar el número de teléfono que quieres usar, que se corresponde con el número de teléfono de la empresa mencionado en la sección Antes de empezar.

Para poder continuar con el registro, tienes que encontrar el identificador de ese número de teléfono. Para obtener el identificador del número de teléfono, realiza la siguiente llamada a la API:

curl -X GET \
'https://graph.facebook.com/v19.0/WHATSAPP_BUSINESS_ACCOUNT_ID/phone_numbers' \
-H 'Authorization: Bearer ACCESS_TOKEN'

Si la solicitud se realiza correctamente, en la respuesta se incluyen todos los números de teléfono conectados a la cuenta WABA:

{
  "data": [
    {
      "verified_name": "Jasper's Market",
      "display_phone_number": "+1 631-555-5555",
      "id": "1906385232743451",
      "quality_rating": "GREEN"
    },
    {
      "verified_name": "Jasper's Ice Cream",
      "display_phone_number": "+1 631-555-5556",
      "id": "1913623884432103",
      "quality_rating": "NA"
    }
  ]
}

Guarda el identificador del número de teléfono que quieres registrar. Consulta Leer números de teléfono para obtener más información sobre este extremo.

Excepción de migración

Si migras un número de teléfono desde la API local a la API de la nube, debes realizar algunos pasos adicionales antes de registrar un número de teléfono en la API de la nube. Consulta el tema sobre la migración entre la API local y la API de la nube para ver todo el proceso.

Paso 5: Registrar el número de teléfono

Una vez que tienes el identificador del número de teléfono, puedes registrarlo. En la llamada a la API de registro, debes realizar dos acciones a la vez:

  1. Registrar el teléfono.
  2. Activar la verificación en dos pasos mediante la configuración de un código de registro de seis dígitos que debes establecer por tu parte. Guarda y recuerda este código, ya que te lo podemos pedir más tarde.

La configuración de la autenticación en dos pasos es un requisito para usar la API de nube. Si no la configuras, recibirás un mensaje de error de incorporación:

Ejemplo de solicitud:

curl -X POST \
'https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER_ID/register' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"messaging_product": "whatsapp","pin": "6_DIGIT_PIN"}'

Ejemplo de respuesta:

{
  "success": true
}

Usuarios del registro insertado

Un número de teléfono debe registrarse como máximo 14 días después de someterse al proceso de registro insertado. Si un número no se registra durante ese periodo, el teléfono debe volver a someterse al proceso de registro insertado antes de registrarse.

Paso 6: Recibir un mensaje de una aplicación de consumidor

Cuando los clientes participantes envían un mensaje a tu empresa, obtienes 24 horas de mensajes gratis con ellos. Dicho periodo de tiempo se denomina periodo de atención al cliente. Con el propósito de realizar pruebas, queremos activar este periodo para que puedas enviar los mensajes que quieras.

Desde una aplicación personal de WhatsApp para Android o iOS, envía un mensaje al número de teléfono que acabas de registrar. Tras enviar el mensaje, deberías recibir un mensaje entrante en el webhook con una notificación con el formato siguiente.

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "WHATSAPP_BUSINESS_ACCOUNT_ID",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "16315551234",
              "phone_number_id": "PHONE_NUMBER_ID"
            },
            "contacts": [
              {
                "profile": {
                  "name": "Kerry Fisher"
                },
                "wa_id": "16315555555"
              }
            ],
            "messages": [
              {
                "from": "16315555555",
                "id": "wamid.ABGGFlA5FpafAgo6tHcNmNjXmuSf",
                "timestamp": "1602139392",
                "text": {
                  "body": "Hello!"
                },
                "type": "text"
                }
            ]
          },
        "field": "messages"
        }
      ]
    }
  ]
}

Paso 7: Enviar un mensaje de prueba

Cuando hayas activado el periodo de atención al cliente, podrás enviar un mensaje de prueba al número del consumidor que has usado en el paso anterior. Para ello, haz la siguiente llamada a la API:

curl -X  POST \
'https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"messaging_product": "whatsapp", "to": "16315555555","text": {"body" : "hello world!"}}'

Si la llamada se realiza correctamente, en la respuesta se incluirá un identificador de mensaje. Usa ese identificador para realizar un seguimiento del progreso de los mensajes mediante webhooks. La longitud máxima del identificador son 128 caracteres.

Ejemplo de respuesta:

{
  "id":"wamid.gBGGFlaCGg0xcvAdgmZ9plHrf2Mh-o"
}

Con la API de la nube, ya no es posible comprobar de forma explícita si un número de teléfono tiene un identificador de WhatsApp. Para enviar un mensaje mediante la API de la nube, envíalo directamente al número de teléfono del cliente una vez que haya otorgado su consentimiento. Consulta Referencia, Mensajes para obtener ejemplos.

Mantenerse al día con las actualizaciones mensuales

Publicaremos actualizaciones de la API de nube el primer martes de cada mes. Dichas actualizaciones incluirán nuevas funciones y mejoras. No es necesario que hagas nada para usar las nuevas funciones, ya que la API de nube se actualiza automáticamente.

Preguntas frecuentes

Preguntas frecuentes generales

WhatsApp develops and operates the WhatsApp Business API, which enables businesses to communicate with WhatsApp consumer users on the WhatsApp network. When using the Cloud API, Meta will host the WhatsApp Business API for you and provide an endpoint for the WhatsApp service for your incoming and outgoing WhatsApp communications.

No, there is no difference in messaging prices between the Cloud API and the On-Premises API. Access to Cloud API is free, and we expect it to generate additional cost savings for developers. The two types of cost savings for the Cloud API are 1) set up cost (including server or external cloud provider cost), 2) ongoing cost of maintenance (including engineering time for API upgrades).

A Solution Partner can select which setup a given client should use. We recommend that the majority of clients use the Cloud API for ease of implementation and maintenance. Solution Partners can also continue to maintain integration with the On-Premises API.

We want to make it clear what it means to message with a business on WhatsApp. Some businesses may choose to use Meta or another company to help them manage and store their messages. When a business chooses to manage their messages with another company, we will let consumers know by showing a different system message. Learn more.

We expect Cloud API to provide the same key features as the On-Premises API soon, including user change notifications and sticker pack management. Our goal is for the Cloud API to become the preferred platform for new features.

We will release updates monthly with new features and improvements. There is no work required to access these features - the Cloud API updates automatically.

Preguntas frecuentes sobre la implementación técnica

The Cloud API architecture significantly simplifies the Solution Partner's operational and infrastructure requirements to integrate with WhatsApp Business Platform. First, it removes the infrastructure requirements to run Business API docker containers (CAPEX savings). Second, it obviates the need of operational responsibilities to manage the deployment (OPEX savings). For details, refer to the architecture diagram comparing the On-Premises and Cloud API deployments.

Solution Partners and direct clients do not need the WebApp and CoreApp containers that are used in the On-Premises API. Meta will manage all database data and media data on behalf of the Solution Partner or direct client.

We will have disaster recovery and data replication across multiple regions. The expected downtime would be within our SLA and usually in the order of less than a minute to less than five minutes.

As your on-premises performance depends heavily on your hardware, software, and connectivity to WhatsApp servers, if you wish to understand these differences, you can perform your own load tests on Cloud API as you might have done for your own on-premises installation. You can also refer to our performance comparison to understand more details around how the on-premise and Cloud APIs compare.

Preguntas frecuentes sobre la seguridad y la privacidad de datos

La API de nube se ejecuta en los centros de datos de Meta, excepto si los negocios optan por la modalidad de almacenamiento local. Meta cuenta con centros de datos en Norteamérica y la Unión Europea.

Los mensajes en reposo se cifran y se eliminan automáticamente a los 30 días.

Tal como ocurre con otros partners de soluciones de API para WhatsApp Business, Meta administra las claves de cifrado y descifrado en nombre del negocio. Para poder enviar y recibir mensajes a través de la API de nube, esta administra las claves de cifrado y descifrado en nombre del negocio. Meta opera la API de nube, y sus condiciones limitan su uso a la prestación de este servicio para la entrega de mensajes únicamente. WhatsApp no tiene acceso a las claves ni a los mensajes.

Preguntas frecuentes sobre el cumplimiento normativo

En Meta nos tomamos la protección de datos y la privacidad de las personas muy en serio. Por ello, tenemos el compromiso de seguir cumpliendo las leyes de protección de datos. La API de nube permite a nuestros clientes seguir cumpliendo con sus obligaciones conforme al Reglamento General de Protección de Datos (RGPD). Meta cumple los requisitos legales, normativos y del sector y sigue las prácticas recomendadas de la industria. Ver más.