Moclick Bridge
Integração

Postback S2S

Conversão notificada pelo backend do anunciante, autenticada por token. Sem JavaScript, sem cookie, sem navegador.

Quando usar#

O postback server-to-server é a via mais confiável de registrar conversão, porque não depende de nada que aconteça no navegador. Casos em que ele é a resposta certa:

  • Checkout em domínio de terceiro, onde o cookie não sobrevive
  • Conversão confirmada depois do pedido — pagamento aprovado, boleto pago, assinatura ativada
  • Conversão que acontece fora do site: telefone, aplicativo de mensagens, loja física, CRM
  • Anunciante que não pode ou não quer instalar JavaScript de terceiro
  • Ambiente com bloqueador agressivo de script

A URL de postback#

O time Moclick fornece a URL completa e o token da campanha. O token é gerado automaticamente por campanha e não é reaproveitado entre campanhas.

GET /wp-json/moclick/v1/postback Token
Formato
https://bridge.moclick.com.br/wp-json/moclick/v1/postback
  ?slug=SUA-CAMPANHA
  &token=SEU-TOKEN
  &click_id={CLICK_ID}
  &txid={TXID}
  &value={VALUE}
ParâmetroObrigatórioDescrição
slugSimIdentificador da campanha.
tokenSimToken da campanha, fornecido pela Moclick.
click_idSimIdentificador do clique, até 100 caracteres. Sem ele nada é gravado.
txidRecomendadoIdentificador da transação, até 100 caracteres. É a chave de deduplicação.
valueRecomendadoValor da conversão. Ponto como separador decimal.

Como o anunciante obtém o click_id#

O identificador precisa chegar ao backend do anunciante e ser guardado junto ao pedido. Se a tag global estiver instalada, ele já está em cookie — leia no servidor ao gravar o pedido:

PHPno backend do anunciante
// O nome do cookie é informado pelo time Moclick para a sua campanha.
$click_id = $_COOKIE[MOCLICK_COOKIE] ?? '';

// Guarde junto ao pedido, para usar quando a conversão confirmar
save_order_meta($order_id, 'moclick_click_id', $click_id);

Sem a tag global, capture o parâmetro de identificação na entrada e persista na sessão. O time Moclick informa qual parâmetro a campanha utiliza.

Exemplo de chamada#

Shell
curl -sS -G "https://bridge.moclick.com.br/wp-json/moclick/v1/postback" 
  --data-urlencode "slug=minha-campanha" 
  --data-urlencode "token=SEU_TOKEN" 
  --data-urlencode "click_id=abc-123" 
  --data-urlencode "txid=PEDIDO-9001" 
  --data-urlencode "value=249.90"

Respostas#

CódigoCorpoSignificado
200 OK em text/plain Recebido. Inclui o caso de duplicata, que é sucesso por contrato.
403 {"error":"invalid_token"} Token inválido, ausente ou campanha inexistente.
Por que os três casos dão o mesmo 403

Token errado, token vazio e campanha inexistente produzem resposta idêntica, e a comparação do token é feita em tempo constante. Isso evita que a resposta revele quais campanhas existem ou permita descobrir o token por medição de tempo.

Um detalhe que evita confusão: 200 OK confirma o recebimento, não necessariamente a gravação. Requisição sem click_id, ou em campanha que não usa medição própria, responde OK sem gravar — mesma política silenciosa dos demais endpoints. Ao integrar, confirme no painel que o evento apareceu.

Reenvio e idempotência#

A chamada é idempotente pelo par click_id + txid: repetir a mesma requisição não gera conversão duplicada. Isso torna o reenvio seguro, e o reenvio é recomendado.

Não descarte a conversão em caso de falha de rede

Trate o postback como fila, não como chamada única. Timeout ou erro 5xx deve entrar em nova tentativa com espera progressiva — por exemplo 1 min, 5 min, 30 min, 2 h. Como a operação é idempotente, não há risco em tentar de novo. Já 403 não deve ser repetido: é erro de configuração, e reenviar não resolve.

Segurança do token#

  • Mantenha o token no servidor. Nunca em JavaScript, HTML ou aplicativo móvel
  • Guarde em variável de ambiente ou cofre de segredos, não no repositório
  • Um token por campanha: comprometer um não expõe as outras
  • Quem tem o token pode inserir conversões nessa campanha — trate como credencial

A URL de postback contém o token. Não a publique em documentação compartilhada, ticket de suporte, log de acesso público nem repositório. Se um token vazar, peça um novo ao time Moclick e atualize a integração.

Atualizado em agosto 5, 2026