Skip to main content

Visão geral

O Upcart é um app separado do Aftersell, então as Strategies não estão integradas ao módulo Upsells da mesma forma que estão nos fluxos de pós-compra e checkout do Aftersell. Em vez disso, você conecta os dois apps com um pequeno script que chama a API de Strategies diretamente e envia o resultado para o módulo Upsells existente do Upcart por meio da API pública do Upcart. O script é pronto para uso - cole-o uma vez no HTML personalizado do Upcart, substitua dois valores (sua chave de API da Strategy e o ID da Strategy), e o módulo Upsells começará a exibir os produtos que a Strategy retornar.

O que você vai precisar

  1. Sua chave de API da Strategy. No Aftersell, vá em Settings → Product Strategy e, no card Security Token, copie seu token (essa é a sua chave de API da Strategy).
  2. O ID da Strategy. Abra a Strategy que você quer executar no editor de Strategy do Aftersell e copie o ID dela.
  3. O módulo Upsells ativado no Upcart. O script substitui a lista de produtos exibidos no bloco de upsell existente, então o módulo precisa estar ativado para que algo seja renderizado.

Adicionando o script

No Upcart, vá em Settings → Custom HTML → Scripts (before load) e cole o script abaixo. Substitua STRATEGY_ID e STRATEGY_API_KEY pelos valores do Aftersell e salve.
Sua chave de API da Strategy autoriza chamadas às Strategies da sua loja. O script acima a coloca em código do lado do cliente, que é a única maneira prática de invocar a API a partir do cart drawer. Trate a chave como trataria qualquer outra credencial pública da vitrine e rotacione-a no Aftersell em Settings → Product Strategy se ela for exposta de uma forma que você não pretendia.

O que a Strategy enxerga

Como isso é executado a partir do carrinho da vitrine, o contexto é um subconjunto reduzido do que está disponível nas superfícies nativas do Aftersell:

Contexto de produto

Os itens de linha atualmente no carrinho do Upcart são enviados como produtos de entrada. Gatilhos como tipo de produto, fornecedor, handle do produto, título do produto e quaisquer gatilhos de ID de produto / ID de variante são todos avaliados com base nesses itens.

Contexto do carrinho

  • Subtotal - subtotal do carrinho nas unidades principais da moeda da loja (por exemplo, dólares). O total_price do Upcart está em unidades menores (centavos), então o script divide por 100 para corresponder às unidades que o restante da API de Strategies usa - e às unidades em que suas regras de cart_subtotal são escritas.
  • Contagem de itens - quantidade total em todas as linhas.
  • Contagem de linhas - número de itens de linha distintos.

Contexto de sessão

  • Código de moeda - obtido de window.Shopify.currency.active.
Gatilhos de cliente e gatilhos UTM não corresponderão. O script padrão não envia tags de cliente, contagem de pedidos, localização nem parâmetros UTM - portanto, qualquer regra que use esses gatilhos nunca será acionada. Use gatilhos de produto, carrinho e moeda, ou um Catch all, para garantir que algo sempre seja retornado.

O que acontece quando a Strategy retorna

Os produtos retornados pela Strategy substituem completamente a lista que o Upcart exibiria no módulo Upsells. A lista de upsells definida pelo lojista é sobrescrita durante aquele carrinho - ela não é mesclada. Cada produto da Strategy é mapeado para o formato de produto esperado pelo Upcart (variantes, imagens, opções, metafields etc.), de modo que ele é renderizado dentro do bloco de upsell exatamente como qualquer outro produto.

Quando nenhum produto é retornado

Se a Strategy não retornar produtos, o módulo Upsells é renderizado vazio - nenhum upsell é exibido. Para evitar isso, configure um Catch all na Strategy para que sempre haja um produto de fallback para retornar. Consulte a página Criando Strategies para saber como configurar um Catch all.

Reavaliação nas mudanças do carrinho

Diferentemente dos upsells de checkout, a implementação do Upcart reavalia a Strategy toda vez que o carrinho muda - itens adicionados, removidos ou com quantidade atualizada. O script se inscreve no evento cartUpdated do Upcart, envia o novo carrinho para a API de Strategies e atualiza o cart drawer com a nova lista de upsells. Uma verificação de assinatura do carrinho pula chamadas redundantes se os itens de linha e as quantidades não tiverem realmente mudado, então eventos de carrinho consecutivos que não alteram o carrinho de forma significativa não acionarão a API novamente.

Dicas para Strategies do Upcart

  • Projete com base no carrinho. Gatilhos de formato do carrinho e de produto são os sinais mais fortes que você tem aqui. Histórico do cliente e segmentação baseada em UTM não são enviados pelo script padrão.
  • Use o Catch all como rede de segurança. Sem ele, o módulo Upsells não exibirá nada quando nenhuma regra corresponder.
  • Amigável a cache por padrão. A proteção de assinatura do carrinho evita acionar a API novamente se o carrinho não mudou de forma significativa - bom para compradores que abrem e fecham o carrinho sem editá-lo.