# API04003: Risposta JSON Malformata

## Cosa Significa[​](#what-this-means "Collegamento diretto a Cosa Significa")

Il server ha restituito dati che sembrano essere JSON ma sono corrotti o non validi. Il POS non è riuscito a analizzare la risposta perché la sintassi JSON è interrotta.

## Cause Comuni[​](#common-causes "Collegamento diretto a Cause Comuni")

* **Avvisi/Warning PHP** — Output PHP prima del JSON
* **BOM (Byte Order Mark)** — Caratteri invisibili all'inizio del file
* **Problemi di codifica** — Problemi di codifica dei caratteri
* **Risposta troncata** — Risposta interrotta a metà trasmissione
* **Output di plugin** — Un plugin ha aggiunto contenuto non JSON

## Come Risolvere[​](#how-to-fix "Collegamento diretto a Come Risolvere")

### 1. Controlla gli Avvisi PHP[​](#1-check-for-php-notices "Collegamento diretto a 1. Controlla gli Avvisi PHP")

Gli avvisi/warning PHP prima del JSON interrompono l'analisi:

In `wp-config.php`:

```
define('WP_DEBUG', true);

define('WP_DEBUG_LOG', true);

define('WP_DEBUG_DISPLAY', false);
```

Esamina `wp-content/debug.log` e risolvi eventuali problemi.

### 2. Controlla i Caratteri BOM[​](#2-check-for-bom-characters "Collegamento diretto a 2. Controlla i Caratteri BOM")

Al editor di testo alcuni aggiungono caratteri BOM invisibili:

* Rileggi i file PHP senza BOM
* Utilizza codifica UTF-8 senza BOM
* Controlla i file modificati di recente

### 3. Verifica la Risposta Completa[​](#3-verify-complete-response "Collegamento diretto a 3. Verifica la Risposta Completa")

Se le risposte vengono troncate:

* Controlla le impostazioni di buffer di output PHP
* Aumenta `output_buffering` in php.ini
* Controlla eventuali problemi di timeout

### 4. Testa l'API Direttamente[​](#4-test-api-directly "Collegamento diretto a 4. Testa l'API Direttamente")

Nel tuo browser o usando curl:

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

Cerca eventuali contenuti imprevisti prima del JSON.

### 5. Controlla la Codifica dei Caratteri[​](#5-check-character-encoding "Collegamento diretto a 5. Controlla la Codifica dei Caratteri")

Assicurati che il database e PHP utilizzino UTF-8:

* Controlla le impostazioni di charset in `wp-config.php`
* Verifica che le tabelle del database siano in UTF-8
* Cerca caratteri speciali che causano problemi

## Errori Correlati[​](#related-errors "Collegamento diretto a Errori Correlati")

* [API04001](/it/error-codes/API04001.md) — Formato di Risposta Non Valido
* [API04005](/it/error-codes/API04005.md) — Tentativo di Recupero JSON
