Transaccional e marketing
O que muda entre as duas streams, e porque estão separadas de todo.
Há duas streams, e a escolha faz-se ao adicionar um domínio. Não muda depois.
A diferença, em uma frase
Transaccional é o que uma pessoa está à espera de receber porque fez alguma coisa. Marketing é o que não pediu explicitamente naquele momento.
| Transaccional | Marketing | |
|---|---|---|
| Recibo de compra | ✓ | |
| Código de verificação | ✓ | |
| Recuperação de password | ✓ | |
| Confirmação de marcação | ✓ | |
| Newsletter | ✓ | |
| Campanha de saldos | ✓ | |
| "Sentimos a tua falta" | ✓ |
Se hesitares, olha para a pergunta: se esta mensagem não chegar dentro de segundos, alguém fica bloqueado? Se sim, é transaccional.
Porque estão separadas
Porque a reputação é por origem, e as duas comportam-se de maneira completamente diferente.
Uma newsletter tem taxas de abertura baixas, algumas queixas e muitos endereços antigos. Um recibo é aberto quase sempre e quase nunca dá queixa. Se saírem pelos mesmos IPs, a newsletter arrasta o recibo consigo: o filtro do destinatário vê uma origem só, e a média é pior do que o recibo merecia.
Com as streams separadas:
- cada uma tem o seu subdomínio, o seu selector DKIM e o seu Return-Path;
- cada uma sai por um conjunto de IPs próprio;
- uma campanha que corra mal não afecta a entrega dos recibos.
É a razão de existir a separação, e é por isso que ela é ao nível do domínio e não da mensagem: um domínio só sai por um sítio.
O que o marketing obriga
Uma mensagem na stream de marketing tem de trazer um URL de cancelamento de
subscrição. Se não trouxer, o pedido é recusado com 422 e a mensagem não sai.
{
"from": "novidades@marketing.aempresa.pt",
"to": "alguem@example.org",
"subject": "As novidades deste mês",
"html": "<p>...</p>",
"unsubscribe_url": "https://aempresa.pt/cancelar/abc123"
}
A partir desse URL escrevemos os cabeçalhos List-Unsubscribe e
List-Unsubscribe-Post, que é o que põe o botão de cancelar subscrição no topo
da mensagem no Gmail e no Outlook. Desde 2024 que os dois exigem isso a quem
envia volume.
É recusado em vez de corrigido de propósito: só tu sabes qual é o link que cancela a subscrição da pessoa certa na tua base de dados.
Escolher, e não poder mudar
A stream fica fixa no domínio quando o crias. A razão é a reputação outra vez: mudar um domínio de stream levaria o histórico de uma para a outra, e o histórico é precisamente o que estamos a manter separado.
Se precisares das duas, cria dois domínios. O padrão que funciona é:
mail.aempresa.pt → transaccional
marketing.aempresa.pt → marketing
Cada um tem os seus registos de DNS, e a configuração faz-se uma vez.
Uma chave por stream
Ao criar uma chave de API podes limitá-la a uma stream. Uma chave limitada a
transaccional não consegue enviar por um domínio de marketing, e o pedido é
recusado com 403.
Vale a pena: a ferramenta de campanhas e a aplicação que emite recibos raramente são a mesma coisa, e uma chave que só pode fazer o seu trabalho é uma chave que não pode fazer o trabalho errado.