Passar para o conteúdo principal

AJUDA SE VOCÊ TIVER PROBLEMAS AO CONECTAR-SE AO WOOCOMMERCE

O WooCommerce é uma plataforma flexível e autogerenciada, o que significa que, ao contrário do Shopify, ela fica hospedada nos servidores de cada usuário. Isso lhe dá mais controle, mas também pode trazer desafios ao integrá-la com ferramentas externas como o Yuju ou qualquer outro módulo que utilize a API pública do WooCommerce.

Neste artigo, explicamos como o Yuju se conecta ao WooCommerce por meio de sua API e quais fatores você deve levar em consideração para evitar bloqueios no seu servidor que possam afetar a sincronização. Continue lendo e otimize sua integração!

Como o Yuju se conecta ao WooCommerce por meio da API?

A primeira coisa que você precisa saber é que nossa conexão usa a biblioteca oficial; não existe uma configuração exclusiva para o Yuju. No entanto, deixamos aqui outras informações importantes.

Protocolos

O Yuju se conecta ao WooCommerce usando HTTPS (protocolo seguro). Isso significa que:

  • A comunicação entre o Yuju e o servidor do WooCommerce é criptografada por SSL/TLS.

  • É obrigatório ter um certificado SSL válido no servidor do WooCommerce para que a API funcione corretamente.

Portas HTTP

As principais portas para garantir a conectividade são:

  • Porta 443: É a porta padrão para HTTPS. Certifique-se de que essa porta esteja aberta no servidor e em qualquer firewall ou rede intermediária.

  • Observação importante: se a porta 443 estiver bloqueada ou não estiver configurada corretamente, o Yuju não conseguirá se conectar ao seu servidor WooCommerce.

Conectividade entre o Yuju e o WooCommerce

Funcionamento da conexão:

  • Autenticação:

    • O Yuju utiliza credenciais de API geradas pelo WooCommerce: Consumer Key e Consumer Secret. No ponto 2 da documentação a seguir, você pode ver como extrair essas informações.

    • Essas credenciais são configuradas no Python Wrapper para a API do WooCommerce para autenticar as solicitações.

  • Endpoints da API REST:

    • O Yuju acessa os dados do servidor WooCommerce por meio da API REST. Alguns dos endpoints mais utilizados são:

      • Produtos: /wp-json/wc/v3/products

      • Pedidos: /wp-json/wc/v3/orders

    • Todos os endpoints exigem HTTPS para que a conexão seja segura.

  • Chamadas de API:

    • As solicitações são enviadas por meio de métodos HTTP, como:

      • GET: Obter dados de produtos, pedidos, clientes, etc.

      • POST: Criar novos registros (por exemplo, produtos, pedidos).

      • PUT: Atualizar registros existentes.

      • DELETE: Excluir dados (se necessário).

  • O Python Wrapper gerencia essas solicitações e a autenticação automaticamente.

  • Resposta do servidor:

    • O servidor WooCommerce retorna respostas no formato JSON, que o Yuju utiliza para processar e sincronizar as informações.

Por que não é possível conectar a conta do WooCommerce ao Yuju?

Se a conexão não for bem-sucedida e aparecer uma mensagem de erro como a seguinte:

El canal no ha sido agregado: Ha ocurrido un error con Woocommerce: <!DOCTYPE html><html lang="en-US"><head><title>Just a moment...</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=Edge"><meta name="robots" content="noindex,nofollow"><meta name="viewport" content="width=device-width,initial-scale=1"><style>*.....
Estatus de respuesta: 403. Accion: Validar llaves.

É provável que o tipo de erro se deva a alguma configuração do lado do proprietário da conta do WooCommerce; pode ser um firewall/waf/antimalware…

Erro na conexão com o Yuju: Casos de referência

5% dos clientes apresentaram um problema ao se conectar. A seguir, apresentamos um caso específico que pode servir de referência para resolvê-lo.

Caso 1: Bloqueio por sistema de segurança (Incapsula)

Contexto: O cliente utiliza o Incapsula, um sistema que bloqueia o scraping e outras solicitações não autorizadas.

Processo e detecção do problema:

  • O Yuju realizou validações internas e detectou um bloqueio que impedia a conexão.

    • Nenhuma solicitação não detectada pelo navegador funciona

      • Com a biblioteca oficial: Não funciona

      • Com CURL: Não funciona

      • Com o Postman: Não funciona

    • A única que funcionou foi via navegador

  • O cliente solicitou o IP da Yuju para adicioná-lo à sua lista de permissões. No entanto, por estar hospedada na Amazon Web Services (AWS), a Yuju não possui IPs fixos, apenas dinâmicos.

  • Fornecemos o IP do nosso desenvolvedor como teste, o que permitiu uma conexão bem-sucedida. No entanto, ao testar em outro dispositivo, o bloqueio persistiu.

  • O cliente tentou autorizar a zona de onde a Yuju realiza as solicitações, mas, devido à sua amplitude, isso não era viável. Sugeriu-se permitir o tráfego dos EUA e do México, embora isso não garantisse a conexão. Após habilitar essas zonas, o WooCommerce continuava sem se conectar à Yuju.

Como o cliente resolveu o problema?:

Foi indicado ao cliente que, assim que conseguisse executar o seguinte CURL, o Yuju também conseguiria se conectar:

curl https://mitienda.mx/wp-json/wc/v3/products -u ck_XXXXXXX:cs_XXXXXXXX

Para isso, o cliente criou uma instância na AWS (us-west-2) para testar a conexão por meio do CURL.

  • Detalhes técnicos do servidor:

  • Plataforma: Linux/UNIX

  • Arquitetura: x86_64

  • Nome da AMI: ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.04-amd64-server-20250115

O endereço IP do servidor criado indica que ele está localizado em Oregon, EUA.

IP: XX.XXX.XX.XX

O teste do CURL foi executado corretamente, retornando os resultados esperados.

Este caso demonstra que certos bloqueios no servidor podem afetar a conexão entre o WooCommerce e o Yuju. Se você enfrentar um problema semelhante, verifique a configuração do seu firewall e as restrições de acesso na sua hospedagem.

Caso 2: Restrição de recursos na API do WooCommerce em um endpoint específico

Contexto: O cliente conseguiu estabelecer a conexão entre o Yuju e o WooCommerce sem problemas. No entanto, quando o Yuju consulta os produtos no WooCommerce, nenhuma informação era recebida.

Processo e detecção do problema: Quando um vendedor vende no WooCommerce e o conecta ao Yuju, é necessário executar um mapeamento de produtos para sincronizar o catálogo de ambos os sistemas. Neste caso, ao tentar realizar o mapeamento, o WooCommerce não retornava dados.

Apesar disso, após vários testes entre o Yuju e a equipe do cliente, constatou-se que as vendas chegavam corretamente ao Yuju e que outros processos dentro da integração funcionavam normalmente. Isso sugeria que o problema se limitava a um endpoint específico da API do WooCommerce, que impedia a consulta de produtos.

Como o cliente resolveu isso?

Para resolver o problema, o cliente tomou as seguintes medidas:

  1. Revisão e ajuste de recursos: entrou em contato com seu provedor de hospedagem para aumentar os limites de recursos (memória, tempo de execução, etc.) no servidor, permitindo que o endpoint da API do WooCommerce pudesse processar as consultas sem restrições.

  2. Verificação das configurações de segurança: foram revisados e ajustados os plugins de segurança e as configurações do firewall que poderiam estar limitando as solicitações ao endpoint em questão.

  3. Otimização da consulta: Trabalhou-se em conjunto com a equipe da Yuju para otimizar a forma como a consulta de produtos é realizada, com o objetivo de reproduzir o erro e encontrar uma solução.

Essas ações permitiram que a API do WooCommerce retornasse corretamente as informações necessárias para o mapeamento de produtos, resolvendo o problema de sincronização com o Yuju.

Conclusões:

  • Isso pode ser resolvido pela sua própria equipe técnica; não é necessário que a equipe da Yuju execute testes. Se o software não for gerenciado pela sua equipe interna, entre em contato com quem presta suporte aos seus servidores.

  • Em plataformas como Shopify e Jumpseller, onde o cliente não administra o servidor, a conexão não apresenta problemas.

  • Aproximadamente 5% dos nossos clientes gerenciam seu próprio servidor e precisam realizar certas configurações para garantir uma integração fluida. Aqueles que consultaram esta documentação conseguiram resolver com sucesso seus problemas de conexão.


Para qualquer dúvida e/ou esclarecimento, entre em contato com seu KAM designado ou escreva para soporte@yuju.io.

Respondeu à sua pergunta?