Como integrar com o OpenCart
O que você vai aprender
Saiba como integrar o OpenCart com a Klaviyo. Após concluir essas etapas, você poderá personalizar e segmentar e-mails com base na compra e na atividade no site de cada cliente. A integração do OpenCart sincroniza de hora em hora.
Antes de começar
Observe que a Klaviyo não sincroniza seu catálogo do OpenCart.
Adicione a integração do OpenCart
O processo de adicionar as integrações do OpenCart da Klaviyo tem várias etapas e exige que você realize ações tanto no OpenCart quanto na Klaviyo.
Para começar, atualmente a Klaviyo oferece suporte ao OpenCart 1.4.x e 1.5.x. Baixe o módulo OpenCart da Klaviyo aqui: https://www.klaviyo.com/media/downloads/OpenCartKlaviyo-1.1.0.tgz.
- Extraia o arquivo compactado na raiz da sua instalação do OpenCart.
- Faça login na seção de administração do OpenCart e vá para a página Extensões > Módulos.
- Instale o módulo do Klaviyo e depois clique em Editar no módulo do Klaviyo.
- Copie e cole o seguinte código PHP no final de
upload/index.php, logo antes da linha$response->getOutput();:
// [Klaviyo] Save customer cart if it exists.
if ($registry->get('cart')->hasProducts()) {
$registry->get('load')->model('module/klaviyo');
if ($registry->get('customer')->isLogged()) {
$registry->get('model_module_klaviyo')->saveCustomerCart(
session_id(),
$registry->get('customer')->getId(),
$session->data['cart']
);
} else if (array_key_exists('guest', $session->data)) {
$registry->get('model_module_klaviyo')->saveGuestCart(
session_id(),
$session->data['guest'],
$session->data['cart']
);
}
}- Na Klaviyo, selecione a aba Integrações.
- Clique em Explorar aplicativos e procure por OpenCart; em seguida, clique no cartão. Em seguida, clique em Instalar.
- Digite a URL do seu site OpenCart em URL da loja e clique em Conectar ao OpenCart.

- Na próxima página, copie a chave de API em módulo Klaviyo OpenCart e cole-a nas configurações do módulo Klaviyo no OpenCart. Salve as configurações do módulo Klaviyo no admin do OpenCart. Guarde uma cópia desta chave em um local seguro antes de concluir a configuração; o Klaviyo não vai mostrá-la novamente depois.

- No Klaviyo, selecione Adicionar novos clientes do OpenCart a uma lista do Klaviyo e escolha uma lista se você quiser adicionar clientes que optaram por receber a newsletter do OpenCart quando os dados do pedido forem sincronizados. Essa configuração não os inscreve para receber mensagens de marketing no Klaviyo. Se você não quiser adicionar clientes a uma lista, desmarque a caixa de seleção.
- De volta à Klaviyo, clique em Concluir configuração para começar a sincronizar dados.
Instalar o rastreamento no site da Klaviyo
Para rastrear a atividade no site no OpenCart, primeiro encontre sua chave de API pública do Klaviyo clicando no nome da sua conta no canto inferior esquerdo e navegando até Configurações > chaves de API. Copie a chave em Chave de API pública/ID do site. Sua chave pública tem 6 caracteres e é diferente da chave do módulo do OpenCart usada acima. Há 2 tipos de rastreamento no site que você pode instalar:
- Ativo no Site
Essa métrica é rastreada sempre que um navegador identificável visita seu site - Viewed Product
Essa métrica é rastreada sempre que um navegador identificável visualiza uma página de produto no seu site
Adicione o rastreamento de "com atividade no site"
Essa métrica é rastreada sempre que um navegador identificável visita seu site. Para começar a rastrear a atividade Com atividade no site:
- Adicione o seguinte trecho de código ao modelo principal da sua loja para que ele seja incluído em todas as páginas. Você deve colocar esse trecho junto com outros scripts de análise que você usa ou logo antes da tag de fechamento </body>:
<script type="text/javascript" async="" src="https://static.klaviyo.com/onsite/js/PUBLIC_API_KEY/klaviyo.js"></script>
<script type="text/javascript">
//Initialize Klaviyo object on page load
!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}(); </script>- Certifique-se de substituir
PUBLIC_API_KEYpela chave de API pública da sua conta da Klaviyo. - Se os visitantes ou clientes puderem criar contas para sua loja, adapte o exemplo a seguir para a linguagem de modelo do OpenCart e, em seguida, adicione-o diretamente abaixo do primeiro snippet. Substitua os campos de cliente do exemplo pelos dados do cliente conectado da sua loja antes de publicar:
<script type="text/javascript">
var klaviyo = window.klaviyo || [];
{% if user.is_logged_in %}
klaviyo.identify({
$email: '{{ user.email }}',
$first_name: '{{ user.first_name }}',
$last_name: '{{ user.last_name }}'
});
{% endif %}
</script>- Dependendo dos tipos de modelos que você usa no seu site, a sintaxe {% if user.is_logged_in %} e {{ user.email }} provavelmente é diferente. Usando a linguagem de modelo disponível, você precisa verificar se a pessoa que está vendo a página atual está com login feito. Se estiver, você deve exibir o e-mail e o nome dela, se disponíveis. Se você não tiver informações de nome, remova essas duas linhas e a vírgula final após a linha do e-mail $email. Escape os valores de e-mail e nome para JavaScript para que as aspas não quebrem o snippet.
Adicionar rastreamento de "Produto visualizado"
Se você quiser configurar um fluxo de carrinho abandonado ou criar segmentos com base em dados de navegação de produtos, você vai querer adicionar rastreamento de eventos JavaScript para uma métrica de "Produto visualizado".
- No modelo da sua página de produto, adicione o exemplo a seguir depois do snippet principal de rastreamento no site e do código de inicialização dele. Adapte os placeholders ao idioma do seu modelo do OpenCart antes de publicar:
<script type="text/javascript">
var klaviyo = window.klaviyo || [];
klaviyo.track("Viewed Product", {
Title: '{{ product.title }}',
ItemId: {{ product.id }},
Categories: {{ category in product.categories|json }}, // The list of categories is an array of strings.
ImageUrl: '{{ product.image_url }}',
Url: '{{ product.url }}',
Metadata: {
Brand: '{{ product.brand }}',
Price: {{ product.price }},
CompareAtPrice: {{ product.compare_at_price }} // If you have a compare at price. You could also include this for a sale or special price.
}
});
</script>- O snippet acima usa placeholders de exemplo
{{ }}. Substitua-os por valores renderizados dinamicamente para o produto que está sendo visualizado, usando a linguagem de modelo do OpenCart. Renderize categorias como um array de strings e preços como números e faça o escape de valores de texto para JavaScript, para que nomes que contenham aspas não quebrem o snippet. Remova o campo de preço de comparação se sua loja não o usa. - Depois que o rastreamento de Viewed Product tiver sido configurado no seu site, os dados de Viewed Product devem começar a ser preenchidos na sua conta da Klaviyo conforme visitantes conhecidos navegarem pelas páginas de produtos.
Como funciona o rastreamento no site
A Klaviyo associa a atividade no site a um perfil assim que o navegador do visitante é identificado. Uma visita anterior não é necessária. Sua loja pode identificar um visitante das seguintes maneiras:
- Se alguém tiver, em algum momento, clicado em um Klaviyo Email para acessar seu site
- Se alguém, em algum momento, se inscrever através de um formulário da Klaviyo
- Se alguém fizer login na sua loja e o snippet de identificação acima enviar as informações do cliente para a Klaviyo
Se o preenchimento retroativo anônimo estiver habilitado, a Klaviyo poderá armazenar a atividade no site no navegador do visitante antes que ele seja identificado e adicioná-la ao perfil dele depois. Saiba mais sobre o preenchimento retroativo da atividade de visitantes anônimos.
Monitore a sincronização do Klaviyo
O tempo que leva para sincronizar dados históricos de clientes e pedidos da sua loja OpenCart depende do tamanho da sua loja. Para verificar o progresso, abra integrações e selecione OpenCart e, em seguida, abra a aba Dados. A seção dados históricos mostra o andamento da sincronização e confirma quando a sincronização histórica foi concluída.
Para verificar suas integrações:
- Acesse Análises > Métricas e filtre por OpenCart. Abra Placed Order e selecione a aba Feed de atividades. Se a sua integração tiver começado a sincronizar dados, você vai começar a ver eventos de Placed Order sendo exibidos aqui.
- O Klaviyo importa automaticamente pedidos históricos com endereços de e-mail de cliente válidos e os status de pedido listados abaixo. Depois que a sincronização histórica terminar, compare o número de eventos Placed Order em um dia específico com os pedidos correspondentes no OpenCart.
- Por exemplo, abra a aba Gráfico para Pedido realizado, escolha Diário e Total e selecione um intervalo de datas que inclua ontem. Passe o mouse sobre o ponto de dados de ontem ou veja a tabela abaixo do gráfico para saber quantos pedidos foram registrados.
- Compare essa contagem com os pedidos do OpenCart do mesmo dia que atendem aos requisitos de e-mail e de status acima. Se as contagens forem diferentes, verifique se a sincronização foi concluída e se ambas as visualizações usam o mesmo fuso horário.
- Para conferir ou atualizar o fuso horário da sua conta:
- Clique no nome da sua conta no canto inferior esquerdo.
- Selecione Configurações.
- Vá até a guia Conta e encontre Fuso horário.
- Se necessário, selecione o fuso horário correto e clique em Salvar.
Dados sincronizados do OpenCart
- Dados de vendas e pedidos
Quais produtos foram comprados, incluindo detalhes e imagens do produto. - Informações do cliente
Endereço de e-mail, nome, sobrenome, número de telefone, grupo de clientes, loja do OpenCart e informações de aceite para receber a newsletter. - Dados do checkout iniciado
Usado para acionar e-mails de carrinho abandonado. Isso exige o snippet de código PHP que você adicionou durante a integração e um carrinho associado a um cliente conectado ou a detalhes de checkout como convidado que contenham um endereço de e-mail válido. - Dados de pedidos atendidos
Usados para acompanhar quando os pedidos são enviados. - Rastreamento no site
As atividades Com atividade no site e Produto visualizado são coletadas pelos snippets de JavaScript que você instala separadamente. Esses eventos são separados da sincronização de pedidos e checkout do OpenCart.
Para ver suas métricas do OpenCart, navegue até Análises > Métricas no Klaviyo, onde você pode filtrar por OpenCart.

Por padrão, a Klaviyo sincroniza os seguintes status para as métricas de Placed Order e Fulfilled Order:
- Pedido feito: Pendente, Processado, Em processamento, Enviado, Concluído
- Pedido atendido: Enviado, Concluído
Recursos adicionais
- Referência de frequência de sincronização das integrações
Aprenda quais dados são sincronizados a partir de uma integração específica da Klaviyo e com que frequência a sincronização é executada. Organizamos essas integrações por plataformas de e-commerce, ESP e outras integrações de dados.
- Klaviyo's Agency Partners