Pular para o conteúdo principal

Sincronizar Consentimento com o CRM via Webhooks

Mantenha as opções de opt-in de e-mail marketing do seu CRM sincronizadas com as decisões de consentimento do ConsentForge automaticamente.

Arquitectura

O utilizador aceita/rejeita marketing → Webhook ConsentForge → O seu backend → API do CRM

Passo 1: Criar um endpoint de webhook

Configure um endpoint no seu backend que gira o payload do ConsentForge:

// Exemplo Express
app.post('/webhooks/consentforge', express.raw({ type: '*/*' }), async (req, res) => {
// 1. Verificar assinatura
const valid = verifyConsentForgeWebhook(
req.body.toString(),
req.headers['x-consentforge-signature'],
req.headers['x-consentforge-timestamp'],
process.env.CONSENTFORGE_WEBHOOK_SECRET
);
if (!valid) return res.status(401).send('Unauthorized');

// 2. Analisar payload
const payload = JSON.parse(req.body);

// 3. Gerir apenas eventos de consentimento de marketing
if (['consent.created', 'consent.updated'].includes(payload.event)) {
const hasMarketingConsent = payload.data.choices.marketing === true;

// 4. Actualizar CRM
await updateCRMContact({
ip_hash: payload.data.ip_hash,
marketing_opt_in: hasMarketingConsent,
consent_timestamp: payload.timestamp,
receipt_id: payload.data.receipt_id,
});
}

res.json({ received: true });
});

Passo 2: Registar o webhook no ConsentForge

Propriedade → Webhooks → Adicionar Endpoint

  • URL: https://suaaplicacao.com/webhooks/consentforge
  • Eventos: consent.created, consent.updated
  • Copie o segredo do webhook

Passo 3: Mapear o contacto do CRM

Uma vez que o ConsentForge armazena identificadores com hash (não e-mails), necessita de uma forma de ligar o recibo a um contacto do CRM. Opções:

  1. Utilizadores com sessão iniciada: Armazene o ID do recibo ConsentForge no registo do utilizador no início de sessão
  2. Formulários de e-mail: Após a submissão de um formulário, chame ConsentForge.getReceiptId() e armazene-o junto ao e-mail

Consulte também: Webhooks · Segurança de Webhooks