Push em App de Parceiro/Varejista¶
Guia de integração de notificações push em aplicativos próprios de parceiros e varejistas: formato do pushid, configuração com Firebase e uso do Push Direcionado (TAGs e deeplink).
Relação com a DDI v14
O pushid é enviado através das APIs de cliente da DDI — Versão 14 (Cadastro de Cliente, Alterar Cliente e a API dedicada Atualiza PushID).
Formato do pushid¶
O pushid é um JSON (serializado como string) que identifica o device do shopper para o serviço de push. O formato varia conforme a plataforma.
Serialização
Ao enviar o pushid nas APIs de cliente, o JSON acima deve ir serializado como string (com as aspas escapadas). Ex.:
"pushid": "{\"destino\":{\"PushNotificationService\":\"GCM\",\"MobileIdentification\":\"...\"}}"
Envio do pushid via API de Clientes¶
O fluxo padrão é chamar a API de clientes enviando o campo de push. Para inclusão de cadastro, envie o máximo de dados; para alteração de um cadastro existente, envie o mínimo necessário.
Referência da API
Detalhes de URL, headers e retornos estão na DDI v14 — Cadastro de Cliente e Alterar Cliente. Para atualizar somente o push, use Atualiza PushID.
{
"token": "",
"cpfcnpj": "somente numero do cpf ou cnpj",
"nome": "Thiago Watanabe",
"nascimento": "dd/MM/yyyy",
"celular": "somente numero, composto por DD + numero (ex: DD999999999)",
"idClassificacao": 0,
"classificacao": "",
"pushId": "{\"destino\":{\"PushNotificationService\":\"GCM\",\"MobileIdentification\":\"...\"}}",
"idmodulo": 5000
}
Integração com Firebase (Android/iOS)¶
Premissas de configuração para habilitar o push no app do parceiro.
| Etapa | Android | iOS |
|---|---|---|
| Bundle/App ID | Configurar no repositório do varejista | Configurar BundleId no projeto |
| Arquivo de serviço | Adicionar google-services.json no projeto Android |
Adicionar GoogleService-Info.plist no projeto iOS |
| Certificado/chave | — | Gerar .p12 (com senha) ou .p8 na Apple e configurar no Firebase |
| DynamoDB | Configurar configuracaoFCM (server key do parceiro) no CRM Bnex |
— |
| Rotina de PushID | Implementar inclusão/atualização do pushid sempre que o cliente logar |
Idem |
Conta Firebase da GS
Caso o varejista opte por usar a conta Firebase da GS, a única diferença é que a GS fornecerá os arquivos GoogleService-Info.plist e google-services.json.
Push Direcionado (TAGs e Deeplink)¶
O Push Direcionado abre o app em uma tela específica (ou um link) quando o usuário clica na notificação. Isso é feito inserindo uma TAG no texto do push, configurada em Campanhas de Ativação (Discovery, ativação do tipo Push).
Formato da TAG¶
O parceiro deve desenvolver no app uma rotina que faça o redirecionamento para as rotas conforme os parâmetros recebidos no payload (data.redirect).
Payloads de exemplo¶
Mensagem: Tenha um bom dia.!!oferta>>idoferta=10!!
O parceiro informa à Bnex a URL do deeplink (ex.: http://com.parceiro.app/).
Mensagem: Tenha um bom dia.!!oferta>>idoferta=10!!
O primeiro parâmetro da TAG é url e o segundo, o link.
Mensagem: Tenha um bom dia.!!url>>https://www.bnex.com.br!!
Passo a passo de utilização¶
Após o desenvolvimento da rotina de redirecionamento no app, o Push Direcionado é acionado criando uma ativação no Discovery do tipo Push e inserindo a TAG desejada na mensagem.
As opções de direcionamento são:
1. URL externa (abre no navegador do celular)¶
2. URL interna (abre em webview dentro do app)¶
3. Página específica do aplicativo¶
Coloque !! antes e depois do nome da página de destino.
4. Oferta de recomendação (Tabloide, Desconto Exclusivo ou Cashback)¶
Como obter o ID da oferta
Acesse o Discovery → tela de "recomendações geradas" → clique em "detalhes" e copie o número que aparece na URL. Use esse idoferta na TAG !!ofertas>>...!! da mensagem de push.