A Shopify Plus protagonizou a maior reformulação de arquitetura de sua história ao aposentar o lendário arquivo `checkout.liquid` em favor do Checkout Extensibility. Para engenheiros de Digital Analytics e especialistas em tráfego pago, dominar a nova Web Pixels API é o único caminho para manter o rastreamento em operação.
1. A Revolução do Checkout Extensibility e o Fim da Injeção Livre
No ecossistema legado da Shopify Plus, qualquer script de rastreamento podia ser colado no arquivo checkout.liquid ou na caixa de texto de 'Scripts Adicionais'. Embora flexível, esse modelo gerava sérios riscos de segurança, vulnerabilidade a ataques de roubo de dados de cartão (formjacking/Magecart) e lentidão extrema que derrubava a conversão do checkout.
A Shopify encerrou essa era introduzindo o Checkout Extensibility. A partir desse padrão, nenhum código de terceiros tem permissão para rodar na thread principal da página de pagamento. Todo o rastreamento deve operar compulsoriamente através de Web Pixels em Sandbox.
2. A Anatomia da Web Pixels API no Sandbox Seguro
A Web Pixels API é um ambiente de execução isolado (Web Worker) que escuta as ações do consumidor e disponibiliza uma interface padronizada de eventos. Para conectar a Shopify Plus ao GTM Server-Side, criamos um Custom Web Pixel no painel administrativo em Configurações > Dados do Cliente > Pixels > Adicionar Pixel Personalizado.
O código do Custom Pixel inscreve-se nos eventos oficiais do ciclo de vida de compra da Shopify através do método analytics.subscribe():
// Custom Web Pixel na Shopify Plus para GTM Server-Side
analytics.subscribe("checkout_completed", async (event) => {
const checkout = event.data.checkout;
const payload = {
event_name: "purchase",
event_id: checkout.order.id,
user_data: {
email: checkout.email,
phone: checkout.phone,
first_name: checkout.shippingAddress?.firstName,
last_name: checkout.shippingAddress?.lastName,
city: checkout.shippingAddress?.city,
country: checkout.shippingAddress?.countryCode
},
ecommerce: {
transaction_id: checkout.order.id,
value: checkout.totalPrice.amount,
currency: checkout.totalPrice.currencyCode,
shipping: checkout.shippingLine?.price.amount || 0,
tax: checkout.totalTax.amount || 0,
items: checkout.lineItems.map(item => ({
item_id: item.variant.id,
item_name: item.title,
price: item.finalPrice.amount,
quantity: item.quantity
}))
}
};
// Envio assíncrono para o endpoint do GTM Server-Side
fetch("https://sgtm.sualoja.com.br/shopify-event", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(payload),
keepalive: true
});
});
3. Contornando as Limitações do Sandbox: Cookies e LocalStorage
Como a Web Pixels API executa em um Web Worker isolado, ela possui restrições de acesso ao objeto global window e ao document.cookie do navegador. Isso gerava pânico inicial nos gestores de mídia, temendo a perda dos identificadores de clique (_fbp, _fbc, _ga).
A solução de engenharia adotada com maestria consiste em:
- Leitura no Storefront Clássico: No tema da loja (Theme Liquid antes do checkout), capture o
_fbpe_fbce grave-os como atributos de nota do carrinho (Cart Note Attributes) via chamada à Cart API da Shopify. - Disponibilidade Nativa no Checkout: Quando o checkout é iniciado, esses atributos de carrinho são passados nativamente para o objeto
checkout.customAttributes, ficando perfeitamente acessíveis dentro do Web Pixel para inclusão no payload do servidor.
4. Blindagem Total: Shopify Webhooks (orders/paid) no Backend
Em grandes operações globais de Shopify Plus, a melhor prática não depende exclusivamente da confirmação de compra no navegador. Cerca de 8% a 15% das transações (especialmente com pagamentos assíncronos como boleto bancário ou aprovações manuais antifraude) não geram carregamento da tela de obrigado.
A arquitetura definitiva configura um Webhook no backend da Shopify escutando o tópico orders/paid. Quando o gateway confirma a captura financeira, a Shopify despacha um webhook HTTPS diretamente para o contêiner do GTM Server-Side ou servidor de nuvem, transmitindo o pedido faturado para a Meta CAPI e Google Ads com deduplicação nativa.
5. Checklist de Migração Segura na Shopify Plus
Ao realizar o desligamento definitivo de scripts legados:
- Certifique-se de que nenhum aplicativo de terceiros na loja continua tentando injetar código no antigo
checkout.liquid. - Valide nas ferramentas de teste de pixel da Shopify se os eventos disparam sem erros de CORS (Cross-Origin Resource Sharing) ao comunicar com seu subdomínio server-side.
- Monitore no Gerenciador de Eventos do Meta e no Google Ads a equivalência exata de volume de pedidos reportados contra o painel de vendas da Shopify.
Matriz Comparativa de Decisão e Governança
Artigos Complementares deste Topic Cluster
Aprofunde seus conhecimentos sobre Tracking Server-Side, CAPI & Infraestrutura First-Party com os guias técnicos e estratégicos relacionados:
- Digital Analytics & Tracking Auditoria de Tracking no Shopify Plus: Erros no Checkout Extensibility →
- Digital Analytics & Tracking TikTok Events API Web: Configurando Tracking Sem Depender do Navegador →
- Digital Analytics & Tracking Tracking Server-Side na VTEX IO: Guia de Implementação via Pixel App e Custom App no Checkout →
Perguntas Frequentes sobre tracking server side shopify plus checkout extensibility
O que é o Checkout Extensibility na Shopify Plus?
É o novo padrão de extensibilidade de checkout da Shopify que substitui o checkout.liquid, permitindo customizações seguras, velozes e compatíveis com upgrades automáticos através de extensões de UI e Web Pixels.
Por que a Web Pixels API roda em um Sandbox?
Para garantir segurança total contra vazamento de dados de cartão de crédito e impedir que scripts externos lentos travem a velocidade de processamento do checkout.
Como disparar eventos do Web Pixel para o GTM Server-Side?
Através da função JavaScript fetch() executada dentro do Custom Web Pixel, enviando os dados do evento em formato JSON para a URL do seu servidor GTM.
A Shopify Plus permite capturar o e-mail do cliente no Web Pixel?
Sim. Nos eventos de checkout_completed, a API disponibiliza o e-mail e telefone do cliente autenticado para envio seguro e criptografado para a Meta CAPI e Enhanced Conversions.