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:
Al terminar, mantente al día con las actualizaciones mensuales.
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.
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ón | Má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.
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.
Como los costes de alojamiento de la API de nube los cubre Meta, debes decidir si quieres actualizar tus precios en consonancia.
Para usar la API de nube, los socios de soluciones deben tener los siguientes activos:
Activo | Instrucciones 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. |
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:
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
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. |
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.
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:
whatsapp_business_management
y whatsapp_business_messaging
. Haz clic en Generar identificador.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.
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:
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.
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 }
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.
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.
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:
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 }
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.
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" } ] } ] }
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.
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.
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.
No, we will continue to provide the On-Premises API for now. See On-Premises API for information.
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.
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.
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.