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_bufferingem 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