Sincronização com o Joinotify Cloud
A sincronização na nuvem do Joinotify manda os clientes e os eventos deste site para a sua conta do Joinotify, onde eles viram contatos e disparam os fluxos do Cloud. É o que liga a loja às campanhas, ao inbox e às audiências do painel.
Ela vem desligada. Liga-se em Configurações → Geral, com o botão Configurar para as opções, ou na aba Fontes de Audiências & Contatos. A janela de configuração diz exatamente o que é enviado antes de você ligar.
O que é enviado
| Fonte | Eventos |
|---|---|
| WooCommerce | Pedido criado, pago, cada mudança de status, concluído, cancelado, falhou, reembolsado; novo cliente |
| WooCommerce Subscriptions | Criada, ativada, renovada, renovação falhou, expirada, cancelada |
| WordPress | Cadastros e mudanças de telefone, nome ou e-mail |
| WPForms e Elementor | Envios de formulário que trazem um telefone ou um e-mail |
| Flexify Checkout | Leads coletados e carrinhos abandonados, recuperados e perdidos |
Cada pedido sai com o histórico de compras do cliente (quantos pedidos, quanto gastou, primeira e última compra) e os links de pagar, ver e avaliar. "Criado" e "pago" saem uma vez por pedido, por mais que o status mude, e uma falha ao montar um evento nunca interrompe o checkout.
Na mesma janela dá para deixar de fora formulários, carrinhos, itens do pedido e endereços
completos (cidade e estado vão sempre), e marcar todo contato com o nome do site ou com uma tag
sua. Cada opção da janela, com o padrão dela, está em
Sites conectados; a lista exata do que cada envio
leva está na seção External services do readme.txt do plugin.
Como os eventos saem
Nada é enviado durante um checkout ou o carregamento de uma página. Os eventos entram numa fila em tabela própria e saem em lotes, por uma tarefa agendada. Um lote que falha espera e tenta de novo.
A sincronização pausa sozinha — em vez de mandar pedidos de teste para clientes reais — quando:
- a chave da API foi revogada;
- o site foi removido do painel;
- o site parece ser uma cópia em outro endereço (um staging clonado da produção, por exemplo).
A janela da sincronização mostra se ela está ligada, por que pausou (com o botão Tentar novamente), quantos eventos esperam, quantos saíram e de quantos ela desistiu — que podem ser reenviados ou descartados.
Enviar os clientes que já existem
Enviar clientes existentes manda, uma única vez, os usuários e os compradores sem conta que a loja já tem, com o histórico de pedidos e sem iniciar nenhum fluxo. Antes de confirmar, a tela mostra quantos seriam enviados. O envio roda em segundo plano, em etapas que retomam depois de uma falha, e no fim diz quantos saíram, quantos ficaram de fora por não ter telefone e quantos o limite de contatos do seu plano barrou.
Consentimento de marketing
Também desligado por padrão. Quando ligado, uma caixa desmarcada, com o texto que você escrever, aparece no checkout clássico e no de blocos, nos formulários de cadastro e em Minha conta.
- Quem marca é registrado como opt-in no Joinotify, com o texto da caixa, onde e quando, como evidência.
- Quem desmarca em Minha conta vira opt-out lá também.
- Um opt-in ou opt-out feito no Joinotify atualiza a preferência do cliente no site.
- No checkout de blocos, um cliente que já concordou vê a caixa marcada, e o que ele enviar nela não muda o consentimento que já deu.
Formulários do WPForms e do Elementor podem ter uma regra própria que aponta qual caixa é o consentimento — veja Audiências & Contatos.
Dados pessoais
As ferramentas Exportar dados pessoais e Apagar dados pessoais do WordPress cobrem a sincronização: os registros de consentimento e os eventos da pessoa ainda na fila. Apagar também pede ao Joinotify que apague os contatos que este site enviou para ela.
Desligar a sincronização para tudo na hora. O que já foi recebido continua na sua conta do Joinotify, onde os contatos podem ser apagados.
Para desenvolvedores
joinotify_track() enfileira um evento seu, que chega aos fluxos do Cloud pela mesma fila. O nome
é custom. seguido de um a três segmentos [a-z0-9_]; a função devolve o id do evento, ou
false quando a sincronização está desligada ou o nome está fora do espaço custom.*.
joinotify_track(
'custom.orcamento.solicitado',
array( 'orcamento' => array( 'id' => 991, 'total' => '1290.00' ) ), // nos fluxos: {{trigger.orcamento.total}}
array( // opcional: de quem é o evento
'ref' => array( 'kind' => 'wp_user', 'id' => (string) $user_id ),
'phone' => '+5541987654321',
'email' => '[email protected]',
'first_name' => 'Ana',
)
);Sem ref, o evento é registrado mas não chega a nenhum contato. O kind é wp_user,
wc_customer, wc_guest ou lead; nos dois últimos o id precisa ser um hash (o plugin usa o
SHA-256 do e-mail em minúsculas), nunca um dado pessoal em claro.
| Filtro | Para quê |
|---|---|
Joinotify/Cloud_Sync/Catalog | Descrever um evento custom.*, para o editor de fluxos do Cloud oferecê-lo com os campos |
Joinotify/Cloud_Sync/Event_Data | Acrescentar dados a um evento, ou devolver false para descartá-lo |
Joinotify/Cloud_Sync/Order_Data | Acrescentar um meta do pedido a todo pedido enviado |
Joinotify/Cloud_Sync/Links | Trocar os links de um pedido — por exemplo, para as páginas de uma loja headless |
Joinotify/Cloud_Sync/Contact_Block | Acrescentar uma tag ou um atributo ao contato de todo evento |
Joinotify/Contacts/Sources/Forms | Listar um formulário de outro plugin na aba Fontes |
Joinotify/Builder/Webhook_Action/Trigger_Body | Mudar o que a ação Enviar webhook manda no modo "dados do gatilho" |
A ação Joinotify/Cloud_Sync/Ready dispara quando a sincronização está ligada e ouvindo — é onde
pendurar os seus próprios emissores. Como os eventos chegam ao Cloud e viram gatilho de fluxo está
em Eventos do site.