Ponte CRM

Quando uma sessão recebe um nome, a gravação vira uma nota dessa pessoa no CRM: no contato existente, sem criar outro.

1. O que faz, em uma frase

Ao identificar uma sessão, buscamos a pessoa no CRM pelo identificador recebido e adicionamos uma nota com o link da gravação.

Só isso. Sem novos contatos, negócios ou mudanças no pipeline. Um CRM que cria um duplicado a cada visita à página de preços é pior que nenhuma integração.

Se não encontramos a pessoa, nada acontece. Criá-la seria escrever um registro no CRM com base numa sessão do navegador, que não é uma fonte confiável sobre quem são seus clientes.

2. A chave de correspondência: como encontramos a pessoa

Esta parte merece dez minutos de atenção: é aqui que integrações CRM costumam falhar silenciosamente.

Conhecemos o visitante pelo que seu site informou: MousePlayer.setUserId(), um ID distinto recuperado da ferramenta de análise ou uma chamada de identificação do servidor. Seu CRM também o conhece por algum dado. Os dois precisam ser o mesmo.

Buscamos porPode alterar
HubSpoto e-mail do contatonão: o endpoint de busca se baseia nele
Pipedrivepessoas por termo, primeiro por e-mailnão
Salesforceum campo informado por você, padrão Emailsim

Por que o Salesforce pergunta pelo campo

Instalações Salesforce raramente usam e-mail como chave. A sua pode usar Customer_Number__c, ou um ID externo do faturamento. Se buscássemos por e-mail mesmo assim, não encontraríamos nada e informaríamos sucesso: a pior falha, porque a integração parece funcionar.

Por isso o formulário pergunta: qual campo de Contact contém o valor que enviamos? Insira o nome API, incluindo o sufixo __c se for um campo personalizado.

O nome do campo é validado por um padrão rigoroso antes de entrar numa consulta. Campos CRM usam letras, dígitos e sublinhados: o restante é rejeitado, não escapado, porque o escape pode conter erros sutis e a rejeição não.

3. Quando dispara e quando não dispara de propósito

Na identificação: quando seu site chama MousePlayer.setUserId(), quando a ponte de análise recupera um ID distinto do PostHog, Mixpanel ou Amplitude, ou quando seu servidor chama o endpoint de identificação.

Uma vez por sessão, não por página

Uma pessoa que entra e visita onze páginas gera uma nota, não onze. A linha do tempo do CRM precisa ser legível.

Não sem identificador

Uma sessão anônima não tem como ser associada. Não adivinhamos pelo IP nem vinculamos a gravação a quem compartilha aquele endereço.

Não se a pessoa for desconhecida no CRM

Conta como concluído, não como falha: um possível cliente que ainda não está no CRM é normal e tentar amanhã não mudaria nada.

4. Como é a nota e onde fica o token

Uma nota na linha do tempo: uma linha informando a sessão gravada e o link. Seu vendedor clica e vê o que a pessoa realmente fez antes de escrever.

A credencial

Armazenada criptografada com AES-256-GCM. Nunca mais é mostrada: o campo exibe asteriscos e salvar com eles mantém o valor. Também fica fora da fila interna: a fila é um estado compartilhado, o lugar errado para uma chave.

O Salesforce precisa de três itens; os outros, dois

O Salesforce autentica por uma Connected App com token de atualização, então pede Consumer Key, Consumer Secret e token de atualização, além da URL da instância. HubSpot e Pipedrive usam um único token API. O aplicativo é seu em todos os casos: o MousePlayer não opera um app de marketplace no qual você precise confiar.

5. Zoho CRM e Freshsales

Mais dois CRMs, com esforços de configuração muito diferentes.

Zoho CRMFreshsales
Você fornececentro de dados, ID do cliente, segredo do cliente e token de atualizaçãochave API e seu domínio Freshworks
Buscamos porum campo informado por você, padrão Emailum campo informado por você, padrão email
A nota ficano contato, como registro Noteno contato, como nota

O Zoho usa um de seis centros de dados

Uma conta fica em com, eu, in, com.au, jp ou com.cn, e nada na chave indica qual. Escolher errado faz o Zoho responder INVALID_TOKEN - parece chave inválida e leva você ao lugar errado. Por isso o campo é uma lista suspensa.

Configurar Self Client uma vez

Crie um Self Client no console API do Zoho, gere um token de autorização para ZohoCRM.modules.ALL e ZohoSearch.securesearch.READ, e troque uma vez por um token de atualização. Ele não expira; os tokens de acesso horários são obtidos a partir dele e nunca armazenados.

O Zoho responde 200 mesmo quando recusa

A troca de tokens e a gravação de registros podem retornar HTTP 200 com erro ou status por registro no corpo. Lemos o corpo: confiar só no status informaria sucesso para uma nota que nunca foi criada.

Todas as marcas mencionadas pertencem aos respectivos proprietários. O MousePlayer não mantém relação comercial com esses fornecedores.