Pular para o conteúdo
Renan Furlan

Plugin para WordPress

Ponte Headless para WooCommerce

Carrinho e checkout pela Store API a partir do seu servidor, CORS só para os seus domínios, carrinho sem cache e o motivo real da recusa do pagamento.

Capa do plugin Ponte Headless para WooCommerce

A ponte entre a sua loja headless e o WooCommerce.

Para quem é

Para desenvolvedores e agências que constroem a loja em Next.js, Nuxt, Astro ou aplicativo e usam o WooCommerce como motor.

Este plugin não mostra nada para o visitante. Ele resolve os obstáculos que aparecem quando o front fica fora do WordPress. Se a sua loja usa um tema comum do WordPress, você não precisa dele.

Para que serve

A Store API do WooCommerce foi pensada para o navegador de quem está no site WordPress. Quando o front é outro, aparecem cinco problemas:

  1. O carrinho e o checkout exigem um nonce que o seu servidor não tem.

  2. O navegador bloqueia chamadas de outro domínio (CORS).

  3. O cache de página pode entregar o carrinho de um visitante para outro.

  4. Quando o pagamento é recusado, a resposta vem sem o motivo.

  5. A lista de usuários do site fica aberta para qualquer visitante.

A Ponte Headless resolve os cinco, sem alterar o resto da loja.

Como funciona

  1. Defina um segredo no wp-config.php ou gere um na tela do plugin.

  2. Coloque o mesmo segredo no servidor do seu front.

  3. Envie o segredo no cabeçalho X-RF-Headless-Secret nas chamadas que alteram o carrinho ou fecham o pedido.

  4. Se o navegador chamar o WordPress direto, informe os domínios permitidos.

A aba Conexão mostra um checklist do que está configurado, os cabeçalhos que o front precisa enviar e o trecho pronto para colar no wp-config.php.

Recursos

  • Carrinho e checkout a partir do servidor. Chamadas com o segredo correto dispensam o nonce. Todas as outras continuam exigindo. Sem segredo configurado, nada muda na loja.

  • CORS só para os seus domínios. Nenhuma outra origem recebe permissão.

  • Carrinho sem cache. As respostas de carrinho e checkout saem com cabeçalhos que impedem o cache, inclusive no LiteSpeed.

  • Motivo real da recusa do pagamento. Muitos gateways feitos para o checkout clássico perdem a mensagem de erro na Store API. O plugin devolve o motivo que o gateway informou.

  • Lista de usuários protegida. A rota que expõe os nomes de login fica fechada para visitantes.

  • Rota de resumo do pedido para a sua página de "obrigado", autorizada pela chave do pedido.

  • Rota de status para o seu servidor conferir a configuração.

  • Campos brasileiros no checkout (opcional): CPF, número e bairro, gravados no pedido.

  • Cada função tem o próprio liga e desliga.

Segurança

  • O segredo nunca aparece em tela, em JavaScript nem em resposta da API.

  • A comparação do segredo é feita em tempo constante.

  • A rota de status só responde a quem tem o segredo ou a um gerente da loja.

  • A rota de pedido responde "não encontrado" tanto para pedido inexistente quanto para chave errada.

Requisitos

  • WordPress 6.8 ou superior e PHP 7.4 ou superior.

  • WooCommerce 8.0 ou superior. Os campos brasileiros pedem WooCommerce 8.9 ou superior.

  • Interface em português do Brasil.

  • No painel do WordPress, o plugin aparece com o nome original: Headless Bridge for WooCommerce.

Perguntas frequentes

O plugin altera a aparência da loja?

Não. Ele não exibe nada para o visitante e não carrega nenhum arquivo fora da própria tela no painel.

Posso enviar o segredo a partir do navegador?

Não. O segredo deve sair só do servidor do seu front. No navegador, qualquer pessoa conseguiria ler.

Como mantenho o carrinho do visitante entre as chamadas?

Devolva em cada chamada o cabeçalho `Cart-Token` que a Store API envia.

Funciona junto com os outros plugins da linha?

Sim. Os demais plugins já entregam os próprios dados na Store API ou em rotas REST. A Ponte Headless cuida da conexão.

Se eu excluir o plugin, perco os dados?

Não. Nada é apagado, a menos que você marque essa opção nas configurações.

Outros plugins