É preciso ter um modelo de mensagem para começar conversas sobre marketing, serviços e autenticação. As conversas podem incluir mensagens de atendimento ao cliente, lembretes sobre horas marcadas, atualizações de pagamento ou envio, alertas e muito mais.
Consulte Categorias.
Ao enviar um modelo de mensagem, é necessário especificar o idioma com o campo language
. A empresa é responsável por todas as traduções que pretende usar.
A seguir, há exemplos de idiomas com suporte para modelos de mensagem.
Idioma | Código |
---|---|
Africâner | af |
Albanês | sq |
Árabe | ar |
Azerbaijano | az |
Bengalês | bn |
Búlgaro | bg |
Catalão | ca |
Chinês (CHN) | zh_CN |
Chinês (HKG) | zh_HK |
Chinês (TAI) | zh_TW |
Croata | hr |
Tcheco | cs |
Dinamarquês | da |
Holandês | nl |
Inglês | en |
Inglês (Reino Unido) | en_GB |
Inglês (EUA) | pt_BR |
Estoniano | et |
Filipino | fil |
Finlandês | fi |
Francês | fr |
Alemão | de |
Grego | el |
Guzerate | gu |
Hauçá | ha |
Hebraico | he |
Hindi | hi |
Húngaro | hu |
Indonésio | id |
Irlandês | ga |
Italiano | it |
Japonês | ja |
Canarês | kn |
Cazaque | kk |
Coreano | ko |
Laociano | lo |
Letão | lv |
Lituano | lt |
Macedônio | mk |
Malaio | ms |
Malaiala | ml |
Marati | mr |
Norueguês | nb |
Persa | fa |
Polonês | pl |
Português (BR) | pt_BR |
Português (POR) | pt_PT |
Punjabi | pa |
Romeno | ro |
Russo | ru |
Sérvio | sr |
Eslovaco | sk |
Esloveno | sl |
Espanhol | es |
Espanhol (ARG) | es_AR |
Espanhol (ESP) | es_ES |
Espanhol (MEX) | es_MX |
Suaíli | sw |
Sueco | sv |
Tâmil | ta |
Telugo | te |
Tailandês | th |
Turco | tr |
Ucraniano | uk |
Urdu | ur |
Uzbeque | uz |
Vietnamita | vi |
Zulu | zu |
Os modelos de mensagem são armazenados em pacotes de idiomas. Um pacote de idiomas é um conjunto de elementos de modelos de mensagem para determinado idioma ou localidade. Se uma empresa utiliza pelo menos uma tradução para um idioma ou uma localidade, um pacote para tal idioma ou localidade será criado.
Um namespace de modelo de mensagem é um conjunto de pacotes de idiomas para uma determinada empresa.
Se o modelo de mensagem for enviado com o campo language: policy
definido como deterministic
, o valor padrão, o WhatsApp veiculará o modelo de mensagem exatamente no mesmo idioma e localidade solicitados. Depois, o dispositivo consultará o servidor para obter o pacote desse idioma específico.
Quando a mensagem for entregue ao dispositivo, acontecerá o seguinte:
"policy": "deterministic"
e "code": "en"
, há um pacote en
em cache no dispositivo?
en
no servidor?
structure_unavailable
por meio de um Webhook, e nenhuma mensagem é renderizada no dispositivo."element": "hello_world"
existe?
en
mais recente do servidor e repita a Verificação de elemento.structure_unavailable
via Webhook, e nenhuma mensagem será renderizada no dispositivo.As configurações de idioma/localidade do dispositivo serão completamente ignoradas.
Um problema que pode surgir ao usar a política deterministic
é se o que você estiver solicitando não existir. Confirme que:
Os modelos de mensagem dão suporte imediato localizando a mensagem de acordo com as configurações locais do dispositivo.
Os modelos têm parâmetros que são dinamicamente incorporados à mensagem. Para o exemplo usado neste documento, o modelo de mensagem será assim:
"You made a purchase for {{1}} using a credit card ending in {{2}}."
No caso de "namespace": "cdb2df51_9816_c754_c5a4_64cdabdcad3e"
com "element_name": "purchase_with_credit_card"
, o primeiro valor listado substitui a variável {{1}} no modelo de mensagem, e o segundo valor substitui a variável {{2}}.
O número de parâmetros transmitidos para a carga deve corresponder ao número de parâmetros no objeto template
. Caso contrário, você receberá um retorno de chamada informando que houve um problema com a exibição do modelo de mensagem.
Alguns dos parâmetros (por exemplo, date_time
ou currency
) são localizáveis para que sejam exibidos de forma adequada com base nas preferências de idioma e localidade do cliente. Se o dispositivo não conseguir localizar um parâmetro, o valor fallback_value
será definido por padrão.
Para especificar moeda e data além de fallback_value
, use os objetos currency
e date_time
. Dessa forma, o cliente poderá otimizar a localização dos dados da melhor forma possível, definindo fallback_value
como padrão quando não for possível localizar os dados.
Veja as opções de localizable_params
na tabela abaixo:
Nome | Descrição |
---|---|
Tipo: string | Obrigatório. Texto padrão se a localização falhar. Todos os parâmetros de localização devem ter um valor de fallback. Ao especificar o texto, apenas o valor de fallback será necessário. |
Tipo: objeto | Opcional. Se o objeto |
Tipo: objeto | Opcional. Se o objeto |
currency
O cliente da WhatsApp Business API tenta formatar a moeda de acordo com a localização definida.
Nome | Descrição |
---|---|
Tipo: string | Obrigatório. Código da moeda conforme a norma ISO 4217. |
Tipo: número inteiro | Obrigatório. Valor multiplicado por 1.000. |
{ "type": "currency", "currency" : { "fallback_value": "$230.99", "code": "USD", "amount_1000": 230990 } }
date_time
O cliente da WhatsApp Business API tenta formatar a data/hora de acordo com a localização especificada. Os formatos de data e horário compatíveis incluem os seguintes:
Nome | Descrição |
---|---|
Tipo: DateTimeComponent | Obrigatório se Data/hora por componente. |
Tipo: DateTimeUnixEpoch | Obrigatório se Data/hora da época do Unix. |
Pelo menos um dos seguintes campos é obrigatório: component
ou unix_epoch
. Caso sejam usados, somente um deles pode estar presente.
Nome | Descrição |
---|---|
Tipo: string | Opcional. Se for diferente do valor obtido com a data (caso tenha sido especificada), use o valor obtido. Tanto strings quanto números são aceitos. |
Tipo: número inteiro | Opcional. O ano. |
Tipo: número inteiro | Opcional. O mês. |
Tipo: número inteiro | Opcional. O dia do mês. |
Tipo: número inteiro | Opcional. A hora. |
Tipo: número inteiro | Opcional. O minuto. |
Tipo: string | Opcional. O tipo de calendário. |
{ "type": "date_time", "date_time" : { "fallback_value": "October 25, 2020", "day_of_week": "Saturday", "day_of_month": 25, "year": 2020, "month": 10, "hour": 12, "minute": 0 } }
DateTimeUnixEpoch
ficará obsoleto. DateTimeComponent
será o padrão a partir de então. Faça alterações no seu código para evitar problemas.
Nome | Descrição |
---|---|
Tipo: número inteiro | Obrigatório. Registro de data e hora de época em segundos. Este campo ficará obsoleto. |
Este documento contém informações de referência sobre modelos de mensagens. Para ver um guia de como criar e enviar um modelo, consulte Como enviar modelos de mensagem. Para ver todos os parâmetros que podem ser usados em um modelo de mensagem, consulte Mensagens, Modelo de mensagem.
https://developers.facebook.com/docs/whatsapp/message-templates/creation#step-1--create-template-using-the-whatsapp-manager