Mostre seus produtos e compras do Shopify.

Shopify no Social Stream Ninja

Promova produtos públicos com imagens, preços, links legíveis e QR codes. Receba notificações assinadas de pedidos pagos como alertas de compra no feed de atividades, Multi Alerts e Event Flow. A promoção de produtos funciona independentemente dos alertas de pagamento.

Conectar compras · Importar produtos · Sobreposições do OBS · Teste com segurança · Limites e solução de problemas

Disponibilidade: alertas automáticos exigem que o receptor Shopify esteja implantado e ativado na API do SSN. Se estiver indisponível, Salvar configuração informa um erro e não ativa o Shopify. A importação de produtos públicos e a promoção manual funcionam independentemente. Este guia descreve o código da integração; um teste com comerciante real ainda é necessário antes de afirmar que o serviço ao vivo foi validado.

Conectar compras pagas

  1. No Shopify, abra Configurações → Notificações → Webhooks. Localize o segredo de assinatura mostrado para webhooks criados manualmente. Ele é diferente de um token Storefront.
  2. No SSN, abra Monetização → Compras do Shopify → Configuração. Insira seu domínio permanente your-store.myshopify.com e o segredo de assinatura do webhook. Ative Compras do Shopify e clique em Salvar configuração.
  3. Clique em Copiar URL do receptor. No Shopify, crie um webhook com o evento Pagamento de pedido, formato JSON, e essa URL do receptor. Selecione uma versão estável compatível da API de webhooks; esta integração foi desenvolvida com base no contrato de pedidos 2026-07.
  4. Salve o webhook do Shopify. Mantenha o SSN ligado para processar compras. O receptor verifica o HMAC do corpo bruto e a correspondência da loja antes de aceitar os dados do pedido.
Configuração do Shopify no SSApp com domínio da loja, segredo de assinatura limpo, URL do receptor e status
SSApp real com uma loja de exemplo isolada. Selecione a captura de tela para ampliar.

O segredo de assinatura é criptografado no receptor do SSN e limpo do campo após salvar. Uma chave privada separada de leitura fica neste dispositivo. Nenhuma delas é incluída nos links do OBS nem nos QR codes para o público. O Shopify usa seu receptor dedicado; a opção antiga de controle remoto por API não é necessária.

Uma URL gerada significa que a configuração foi salva, não que o Shopify entregou algo. O status distingue espera, teste verificado, evento ignorado e compra recebida. Para mudar de loja, é preciso Desconectar primeiro. Desativar o Shopify pausa o processamento local; Desconectar exclui seu receptor e eventos enfileirados. Remova o webhook correspondente no Shopify ao desconectar.

Shopify: criar webhooks manualmente · Shopify: verificar entregas

Importar um produto público

  1. Insira seu myshopify.com na configuração do Shopify. Você não precisa ativar alertas de compra nem inserir um segredo de assinatura para importar produtos.
  2. Expanda Importar um produto, cole uma URL pública de produto e clique em Carregar detalhes do produto.
  3. Se o acesso sem token não disponibilizar o produto, forneça um token Storefront público. O canal Headless do Shopify pode criar um. Publique o produto nessa vitrine e na Loja virtual. Não cole um token Admin API nem um token Storefront privado.
  4. O SSN abre o editor existente Produtos e links de apoio com título, imagem, preço e link público canônico retornados pelo Shopify. Revise, clique em Adicionar produto ou link, ative o catálogo e Salvar configuração.
Nome, URL de imagem, preço e link público canônico de produto do Shopify importados no editor compartilhado
Detalhes de produto de exemplo carregados no editor compartilhado para revisão antes de salvar.

A importação lê um produto por vez pela Storefront API. O token é opcional, usado apenas nessa requisição e limpo depois. A URL canônica da Loja virtual do Shopify se torna o link público, incluindo um domínio personalizado quando retornado pelo Shopify. Produtos indisponíveis e sem link público de Loja virtual são excluídos.

Um preço só é preenchido quando os preços mínimo e máximo das variantes do produto são iguais. Caso contrário, fica vazio; escolha um preço específico apenas se ele descrever corretamente a oferta. A informação importada é um registro pontual, não uma sincronização contínua de estoque ou preços. Revise quando sua loja mudar. Você sempre pode usar a entrada manual de produtos.

Autenticação Storefront do Shopify · Consulta de produto · Criar um token público usando Headless

Use as sobreposições existentes

Em Link da sobreposição para, escolha Produtos e links de apoio. Use Somente vitrine de produtos para imagens, preços e QR codes, Somente cartão de apoio para um pequeno link permanente ou periódico de loja, ou Somente alertas de atividade para compras. Copie cada link desejado do OBS para uma Fonte de navegador separada, começando com 800 × 600.

Defina o filtro opcional de fonte de alertas como shopify para mostrar somente atividades do Shopify na sobreposição genérica de monetização. Ative Produtos e links de apoio para essa visualização genérica. Multi Alerts e o feed de atividades existentes recebem compras do Shopify independentemente do catálogo de produtos.

Alerta de compra do Shopify com Comprador anônimo e título público do produto
Compra paga recebida pelo receptor local com assinatura e exibida pelo SSApp. A identidade do cliente permanece privada.

Os cartões de produtos levam a páginas públicas de produtos. Use Copiar link público para compartilhar o endereço clicável no chat e teste o QR code pelo celular no tamanho final da transmissão. Um alerta de compra nunca usa o QR code ou imagem de um produto sem relação na rotação. Webhooks de pedidos não fornecem URLs confiáveis de imagens de produtos, então alertas de compra usam texto; cartões promocionais importados podem mostrar imagens.

No Event Flow, escolha Tipo de evento purchase e filtre a fonte/tipo como shopify. Compare meta.commerce.orderTotal para regras de valor de pedidos e confira meta.commerce.currency antes de comparar valores. São compras: nenhum hasDonation ou donoValue é emitido e as metas de doação não aumentam. Um cartão promocional rotulado como Presente não muda a classificação dos eventos de pedido. Enviar para outra pessoa não comprova que seja um presente para o criador.

Visualize e teste com segurança

Prévia de exemplo abre uma sobreposição isolada de exemplo sem conexão de sessão. Nunca dispara o Event Flow, altera totais nem verifica pagamentos.

Pedidos do Shopify explicitamente marcados como test: true são confirmados e mostrados como testes no status do receptor, sem alertas nem ações de compra. Ausência de marcadores de teste, pedidos não pagos/parcialmente pagos, pedidos cancelados, totais zero e horários antigos ou inválidos também são ignorados. Use uma loja de desenvolvimento para testes completos. Uma amostra administrativa sem um marcador de teste confiável não deve ser enviada a um fluxo ativo de recompensas; a prévia do SSN é a forma segura de conferir a aparência.

O que verificamos sem uma loja

Testes isolados cobrem entrega HTTP real com JSON Unicode assinado, assinaturas adulteradas, entregas duplicadas, isolamento de pedidos de teste, precisão de moedas, requisições grandes demais, remoção de dados privados de clientes e recuperação offline pelo runtime real do SSApp. Essas verificações não fazem pedidos nem exigem conta de comerciante.

O receptor de produção do Shopify permanece desativado até um teste real de entrega de loja. A promoção manual de produtos pode ser usada de forma independente. Webhooks de exemplo da Shopify CLI podem ajudar a testar o tratamento dos payloads, mas não validam assinaturas de eventos nem novas tentativas e ainda exigem credenciais do aplicativo. Veja Limitações dos testes de webhook pela Shopify CLI.

Limites de entrega e solução de problemas

  • Receptor indisponível: o operador da API do SSN precisa implantar e ativar o receptor Shopify. Veja a configuração do servidor. Não use a antiga URL de webhook de sessão sem assinatura como substituta.
  • Aguardando um evento: confira Pagamento de pedido, JSON, a URL exata do receptor, o domínio permanente correspondente da loja e o segredo de assinatura desse webhook. O webhook de um aplicativo personalizado usa o segredo de assinatura desse aplicativo, não o segredo manual de Notificações.
  • Evento assinado ignorado: esta integração exige um pedido positivo totalmente pago, test: false e um corpo assinado updated_at nos últimos sete dias (com tolerância de cinco minutos para relógio adiantado). Ela não deduz pagamento a partir da criação de pedido, do atendimento ou do estoque.
  • O SSN estava offline: eventos aceitos ficam enfileirados por até sete dias. Reinicie o SSN para retomar. Status e tarefas pendentes persistem após reiniciar o receptor. O serviço tem armazenamento limitado e pede ao Shopify que tente novamente quando não consegue armazenar a tarefa de forma durável.
  • Duplicatas: o receptor elimina duplicatas por loja/pedido, mesmo se os IDs de entrega do Shopify forem diferentes. Os registros de deduplicação duram sete dias. O SSN persiste os IDs processados antes de confirmar. Uma falha entre uma ação externa e esse salvamento ainda pode repetir a ação; use sua própria proteção de idempotência para automações com consequências relevantes.
  • Nome do comprador ausente: é intencional. O SSN exclui nomes de clientes, e-mails, endereços, notas de pedidos, propriedades personalizadas de itens, URLs de checkout e IDs brutos de pedidos. Títulos públicos de produtos permanecem em texto simples.
  • Reembolsos ou alterações de pedidos: este é um feed de alertas ao vivo, não um sistema contábil ou de atendimento de pedidos. Reembolsos, cancelamentos e totais editados não revertem alertas anteriores. Não há conciliação de histórico de pedidos nem remoção automática de produtos.

Veja: Contrato de eventos do Shopify e guia compartilhado de produtos e QR codes.