Pular para o conteúdo principal
Versão: 1.x

API04003: Resposta JSON Malformada

O Que Isso Significa

O servidor retornou dados que parecem ser JSON, mas estão corrompidos ou inválidos. O POS não conseguiu analisar a resposta porque a sintaxe JSON está quebrada.

Causas Comuns

  • Avisos/Notificações PHP — Saída PHP antes do JSON
  • BOM (Byte Order Mark) — Caracteres invisíveis no início do arquivo
  • Problemas de codificação — Problemas de codificação de caracteres
  • Resposta truncada — Resposta interrompida durante a transmissão
  • Saída de plugin — Um plugin adicionou conteúdo que não é JSON

Como Corrigir

1. Verifique Avisos PHP

Avisos/notificações PHP antes do JSON quebram a análise:

Em wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Revise wp-content/debug.log e corrija quaisquer problemas.

2. Verifique Caracteres BOM

Alguns editores de texto adicionam caracteres BOM invisíveis:

  • Salve novamente os arquivos PHP sem BOM
  • Use codificação UTF-8 sem BOM
  • Verifique arquivos editados recentemente

3. Verifique a Resposta Completa

Se as respostas estão sendo truncadas:

  • Verifique as configurações de buffer de saída PHP
  • Aumente output_buffering em php.ini
  • Verifique problemas de timeout

4. Teste a API Diretamente

No seu navegador ou usando curl:

curl -v https://yoursite.com/wp-json/wcpos/v1/

Procure por qualquer conteúdo inesperado antes do JSON.

5. Verifique a Codificação de Caracteres

Garanta que o banco de dados e o PHP utilizem UTF-8:

  • Verifique as configurações de charset em wp-config.php
  • Verifique se as tabelas do banco de dados estão em UTF-8
  • Procure por caracteres especiais que estejam causando problemas

Erros Relacionados

  • API04001 — Formato de Resposta Inválido
  • API04005 — Tentativa de Recuperação JSON