Acompanhamento de conversões

Aviso: verifique se, como parte dos dados de conversão, a identificação pessoal do usuário As informações (PII) não são enviadas ao Google.

Implementação

Resumo

A implementação do acompanhamento de conversões tem três partes:

  • Coletar o rwg_token e o merchant_id da página de destino / app e ponto de entrada.
  • Manter o rwg_token e o merchant_id para a atribuição apropriada janela.
  • Compare merchant_id e merchant_id persistidos no momento da conversão (reserva concluída).
  • Enviar um evento de conversão no momento da conversão (reserva concluída).

Essa implementação do acompanhamento de conversões não exige o uso do Google Google Analytics ou qualquer outro JavaScript de terceiros.

Antes de começar a trabalhar na implementação do acompanhamento de conversões, é necessário Decida se você quer acompanhar as conversões no nível do dispositivo ou do usuário:

  • O nível do dispositivo inclui o uso de cookies do navegador, armazenamento local e local do app. armazenamento ou qualquer outro método que possa manter o token por 30 dias janela de atribuição. Como o token seria armazenado localmente no dispositivo, se o usuário alterar o dispositivo que está usando, limpa a senha local armazenamento ou cookies, ou está usando uma navegação privada ou modo de navegação anônima, evento de conversão não foi atribuído corretamente. Ao usar o nível do dispositivo acompanhamento de conversões, é necessário reimplementá-lo em todos os (incluindo dispositivos móveis).
  • O nível do usuário inclui a persistência no banco de dados do aplicativo, por meio de um sistema de análise do lado do servidor ou outros sistemas do lado do servidor. Como o token seria armazenado no lado do servidor, se o usuário alterar o dispositivo que estão usando, limpam o armazenamento local ou os cookies ou usam um de navegação ou de navegação anônima, o evento de conversão ainda será atribuído uma vez o usuário fizer login novamente. Ao usar o acompanhamento de conversões no nível do usuário, dependendo na arquitetura do seu sistema, você poderá implementá-la de vez em quando lado do servidor e reutilizá-lo em todas as superfícies com suporte.

Como coletar o rwg_token

Sempre que o Google exibe um action_link que você forneceu pelos feeds, esse URL é modificado para incluir um parâmetro de consulta exclusivo: rwg_token. A O valor rwg_token é uma string codificada que contém alguns metadados sobre a link em que o usuário clicou, mas sem dados do usuário. Você deve armazenar esse token e e transmiti-la como parte do evento de conversão.

Em cada página de destino / ponto de entrada do app, você precisa analisar o valor definido para o parâmetro de consulta rwg_token e armazene-o. Requisitos para o armazenamento são descritos na etapa "Como manter o rwg_token".

Um exemplo de como esse token pode ser analisado para rastreamento no nível do dispositivo por meio de do navegador está incluído abaixo. Como alternativa, você pode coletar esse token do lado do servidor ao responder à solicitação:

var query = location.search.substring(1);
var params = query.split('&');
var rwgToken = undefined;
for (var i = 0; i < params.length; ++i) {
  var pair = params[i].split('=');
  if (pair[0] == 'rwg_token') {
    rwgToken = decodeURIComponent(pair[1]);
    break;
  }
}

Como coletar o merchant_id

Se você implementar a lógica de acompanhamento de conversões no front-end, na página de destino você precisa implementar um script personalizado que encontre e capture a merchant_id: Normalmente, o merchant_id pode já estar presente no página de destino ou no URL para que você possa capturá-lo de lá. Caso contrário, você precisa encontrar uma maneira de expô-los em algum lugar para que possam ser capturados, o que provavelmente implicaria alterações de back-end.

Se você implementar a lógica de acompanhamento de conversões no back-end, poderá descobrir que os merchant_id junto com os dados que consultam seu sistema interno para gerar a página de front-end.

O merchant_id precisa ser o mesmo que você compartilhou com o Google em seu feed.

Manter o rwg_token e o merchant_id

Será necessário manter o parâmetro de URL rwg_token, que será anexado a todos os links de ação fornecidos por você, por uma duração total de 30 dias. O valor de rwg_token precisa ser armazenado e retornado sem nenhuma edição.

Além do rwg_token, você vai precisar armazenar o merchant_id associado com o link de ação.

Se houver um token de um acesso anterior, quanto mais cedo rwg_token e merchant_id precisam ser substituídos, e a janela de 30 dias para o armazenamento deve ser redefinido.

Ao manter o par acima, você pode armazenar os valores no dispositivo ou no nível do usuário:

  • O nível do dispositivo inclui o uso de cookies do navegador, armazenamento local e local do app. armazenamento ou qualquer outro método que possa manter o token por 30 dias janela de atribuição.
  • O nível do usuário inclui a persistência no banco de dados do aplicativo, por meio de um sistema de análise do lado do servidor ou outros sistemas do lado do servidor.

Abaixo está um exemplo de acompanhamento de conversões no nível do dispositivo, armazenando esses valores em em um navegador da Web usando um cookie primário. Este exemplo pressupõe que você analisou o em uma variável, como no exemplo acima. Para usar esse exemplo, precisa atualizar o rootdomain.com para seu domínio.

if (typeof rwg_token !== 'undefined') {
  document.cookie =
  "_rwg_token=" + rwg_token + ";_merchant_id=" + merchantid + ";max-age=2592000;domain=rootdomain.com;path=/";
}

Ao usar o acompanhamento de conversões no nível do usuário, rwg_token + merchant_id precisam armazenados no servidor e associados ao usuário.

Enviar dados de conversão

Quando um usuário conclui uma transação que pode ser atribuída a um Google Place Link da ação, é necessário enviar uma solicitação POST HTTP para o endpoint de conversão. Há dois endpoints, um para o ambiente de produção e outro para o ambiente de sandbox.

  • Produção: https://www.google.com/maps/conversion/collect
  • Sandbox: https://www.google.com/maps/conversion/debug/collect

O corpo da postagem deve ser um objeto codificado JSON no formato:

{
  "conversion_partner_id": <partnerId>,
  "rwg_token": <rwg_token_val>,
  "merchant_changed": 1|2
}

Exemplo (comerciante inalterado com o token de teste do parceiro 20123456):

{
  "conversion_partner_id": 20123456,
  "rwg_token": "AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==",
  "merchant_changed": 2
}

O valor merchant_changed é usado para determinar se o comerciante foi alterado. do comerciante de redirecionamento inicial. Há dois valores que podem ser passados

Valor da mudança do comerciante Requisito
1 Esse valor deve ser usado quando um usuário sair da site do comerciante original e concluiu uma compra na sua plataforma com um comerciante diferente
2 Esse valor deve ser usado quando o cliente concluiu uma transação por meio da entidade Entity original (Comerciante).

Nos ambientes de sandbox e de produção, você deve fornecer um rwg_token válido ao enviar um evento de conversão. Para fins de teste, use o token de teste a seguir nos dois ambientes até o lançamento:

AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==

Para testar no sandbox, você precisa anexar manualmente o seguinte parâmetro de URL a seus links do sandbox:

rwg_token=AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ%3D%3D

Um exemplo completo de acompanhamento de conversões no nível do dispositivo (usando um cookie na página do dispositivo) em JavaScript sobre como fazer essa solicitação de postagem está incluída abaixo:

const partnerId = XXXXXXXXXX;

const endpoint = `https://www.google.com/maps/conversion/collect`;

const rwgTokenCookie = document.cookie
  .split('; ')
  .find(row => row.startsWith('_rwg_token='));

if (typeof rwgTokenCookie !== 'undefined') {
  const rwgTokenVal = rwgTokenCookie.split('=')[1];
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: rwgTokenVal,
      merchant_changed: merchantChanged
    })
  });
}

Ao usar o acompanhamento de conversões no nível do usuário, você deve recuperar o token que seja associado ao usuário (independentemente da superfície em que ele está) do seu mecanismo de armazenamento do lado do servidor e enviar o token usando o mesmo mecanismo endpoints do sandbox.

Requisitos de atribuição de conversão

O padrão obrigatório do Google para a atribuição de conversões é uma atribuição de 30 dias para qualquer interação com um link de lugar, em qualquer loja.

Esta janela de atribuição significa que o Google espera que um evento de conversão seja enviados em qualquer um dos seguintes cenários:

  • Um usuário acessa um link de posicionamento de ação e faz um pedido para o mesmo comerciante na mesma sessão. (Valor da mudança do comerciante = 2)
  • Um usuário segue um link de posicionamento de ação e retorna de um canal diferente dentro do período de 30 dias para fazer um pedido para o mesmo comerciante. (Comerciante Valor da mudança = 2)
  • Um usuário segue um link de posicionamento de ação e faz um pedido em outro na mesma sessão ou em uma sessão diferente no período de 30 dias janela. ( Valor da mudança do comerciante = 1)

Além disso, o Google espera que os eventos de conversão sejam enviados de todas as plataformas que o usuário pode acessar a partir de um link de ação de lugar. como:

  • Aplicativos da Web para computadores ou dispositivos móveis
  • Aplicativos móveis, seja por meio de um link direto de aplicativo ou de uma intenção de aplicativo registrada para seu domínio

Se o token estiver armazenado no nível do usuário (consulte "Como persistir o token"), ele será espera que você forneça a atribuição entre dispositivos. Ou seja, um usuário que segue um link de ação no computador e, em seguida, conclui a transação no dispositivo móvel (usando a mesma conta de usuário), devem acionar um evento de conversão.

Se o token for armazenado exclusivamente no nível do dispositivo, como no navegador não é esperado que você forneça a atribuição entre dispositivos. Neste Nesse caso, cada dispositivo teria um token separado persistido se o usuário tivesse seguido um link de ação naquele dispositivo, e cada dispositivo seguiria a atribuição separadamente.