---
title: "Errori di consegna SMS"
description: "Consulta i motivi di errore SMS e i codici numerici del provider, inclusi i blocchi per protezione antifrode, nei dettagli del messaggio, nelle ricevute di consegna e nei webhook."
canonical: "https://bird.com/it-it/documentazione/guides/sms/delivery-errors"
---

# Errori di consegna SMS

Un SMS non riuscito ha uno stato di consegna e un errore che spiega l'esito. Usa questo riferimento per interpretare il motivo dell'errore e il codice numerico del provider riportati con un messaggio.

Gli errori di richiesta, come un payload di invio non valido, usano il [catalogo errori API](/docs/api/errors). I codici in questa pagina descrivono messaggi che sono stati accettati e successivamente non consegnati o rifiutati.

## Leggere l'errore

Apri un messaggio nel [log SMS](/docs/guides/sms/sms-log) e seleziona **Dettagli**. **Errore** mostra la descrizione e il motivo di errore normalizzato. **Codice errore operatore** mostra il codice numerico del provider, quando fornito.

Tramite API, leggi [`GET /v1/sms/messages/{message_id}`](/docs/api/reference/get-sms-message). Il suo `last_error` contiene:

| Campo                | Significato                                                                 |
| -------------------- | --------------------------------------------------------------------------- |
| `code`               | Motivo di errore normalizzato di Bird, ad esempio `unreachable` o `unknown` |
| `description`        | La spiegazione riportata in parole                                          |
| `carrier_error_code` | Il codice grezzo del provider, quando fornito                               |
| `occurred_at`        | Quando si è verificato l'errore                                             |

Gli [eventi webhook di errore](/docs/guides/sms/events#failure-events) e gli [eventi della timeline del messaggio](/docs/api/reference/list-sms-message-events) contengono gli stessi campi in `error`.

Il nome del campo `carrier_error_code` copre anche i codici emessi dal provider di invio di Bird, inclusi i blocchi della protezione antifrode. Un codice mancante significa che il provider non ne ha fornito alcuno o che il messaggio è stato rifiutato prima dell'invio.

## Motivi di errore normalizzati

Questi sono i motivi di errore definiti dallo [schema del messaggio API](/docs/api/reference/get-sms-message). Le ricevute del provider possono contenere un codice numerico più specifico rispetto al motivo normalizzato. Ad esempio, un messaggio con `code: unknown` può comunque riportare un `carrier_error_code` riconosciuto.

| Motivo                        | Significato                                                         |
| ----------------------------- | ------------------------------------------------------------------- |
| `invalid_destination`         | Il numero non è assegnato o non è valido                            |
| `unreachable`                 | Il dispositivo è spento o fuori copertura                           |
| `blocked_by_carrier`          | L'operatore ricevente ha filtrato il messaggio                      |
| `blocked_by_fraud_protection` | La protezione antifrode di Bird ha bloccato un sospetto SMS pumping |
| `blocked_by_recipient`        | Il dispositivo del destinatario ha bloccato il mittente             |
| `landline_unreachable`        | La linea fissa non accetta SMS                                      |
| `content_rejected`            | L'operatore ha rifiutato il contenuto                               |
| `sender_unregistered`         | Il mittente non ha la registrazione richiesta                       |
| `recipient_opted_out`         | Il destinatario è in una lista di soppressione                      |
| `provider_unavailable`        | Il provider o la rete non era disponibile                           |
| `insufficient_balance`        | Il portafoglio dello spazio di lavoro non ha potuto coprire l'invio |
| `unknown`                     | L'errore non ha potuto essere classificato                          |

Si tratta di un insieme aperto: accetta valori non riconosciuti e conserva la descrizione e il codice grezzo per eventuali indagini. Una causa temporanea termina comunque questo tentativo di invio; non garantisce un reinvio automatico.

## Codici di errore del provider

Cerca la stringa numerica restituita in `carrier_error_code`. Questi codici appartengono al provider di invio SMS di Bird; un provider diverso può assegnare altri significati agli stessi numeri.

| Codice | Significato                                                 |
| ------ | ----------------------------------------------------------- |
| `0`    | Nessun errore                                               |
| `1`    | Abbonato sconosciuto                                        |
| `2`    | Stazione base sconosciuta                                   |
| `3`    | Centrale mobile sconosciuta                                 |
| `5`    | Abbonato non identificato                                   |
| `7`    | Impossibile connettere il terminale                         |
| `8`    | Roaming non consentito                                      |
| `9`    | Autenticazione dell'abbonato non riuscita                   |
| `10`   | Bearer SMS non provisionato                                 |
| `11`   | Servizio SMS non attivato                                   |
| `12`   | Terminale in lista nera                                     |
| `13`   | Servizio SMS bloccato                                       |
| `21`   | SMS non supportato                                          |
| `26`   | Handover di rete fallito                                    |
| `27`   | Abbonato non disponibile                                    |
| `28`   | Fuori copertura                                             |
| `29`   | Terminale spento                                            |
| `30`   | Errore del centralino mobile                                |
| `31`   | Abbonato occupato                                           |
| `32`   | Errore di consegna SMS                                      |
| `33`   | Archivio messaggi in attesa pieno                           |
| `34`   | Errore di sistema della rete                                |
| `35`   | Dati obbligatori mancanti                                   |
| `36`   | Valore imprevisto in un campo del messaggio                 |
| `39`   | Numero di instradamento roaming non disponibile             |
| `40`   | Memoria di rete esaurita                                    |
| `71`   | Alfabeto non supportato                                     |
| `72`   | USSD occupato                                               |
| `100`  | Saldo di invio insufficiente                                |
| `101`  | Saldo dell'abbonato insufficiente                           |
| `103`  | Abbonato ha rinunciato                                      |
| `104`  | Mittente non registrato                                     |
| `105`  | Contenuto non registrato                                    |
| `106`  | Volume della campagna superato                              |
| `107`  | Throughput della campagna superato                          |
| `110`  | Messaggio filtrato dall'operatore                           |
| `130`  | SurgeGuard ha rilevato traffic pumping                      |
| `131`  | SurgeGuard ha bloccato una destinazione sospetta di pumping |

Il codice `0` è omesso da `carrier_error_code` nelle letture di messaggi ed eventi su Bird. Un codice non riconosciuto dovrebbe restare disponibile nei tuoi record quando contatti il supporto.

## Blocchi della protezione antifrode

SurgeGuard è la protezione antifrode SMS di Bird.

I messaggi bloccati dalla protezione antifrode hanno il motivo di errore `blocked_by_fraud_protection` e la descrizione "Blocked by fraud protection: suspected SMS pumping." Lo stato di consegna resta `failed`, `rejected` o `expired`, in base al report del provider. Lo stesso motivo e la stessa descrizione compaiono nei dettagli del messaggio, negli eventi della timeline e nei webhook di errore. Il codice grezzo del provider resta disponibile in `carrier_error_code` quando fornito.

Nel log SMS, filtra **Failure reason** per **Blocked by fraud protection** per trovare questi messaggi.

I record più vecchi possono ancora mostrare `unknown` e `generic_delivery_failure`. Queste etichette da sole non identificano un blocco della protezione antifrode. Cerca il relativo `carrier_error_code` in [Codici di errore del provider](#codici-di-errore-del-provider) per identificare la causa. Se il codice è assente o non riconosciuto, contatta il supporto con l'ID dello spazio di lavoro, l'ID del messaggio, il timestamp e il codice del provider, se fornito.

Quando indaghi su un OTP bloccato, correla il SMS con l'account o la richiesta di verifica che lo ha generato. Evita di reinviare automaticamente o di cambiare rotta per aggirare il blocco. Se sospetti che una richiesta legittima sia stata bloccata, contatta il supporto con l'ID dello spazio di lavoro, l'ID del messaggio, il timestamp e il codice del provider.

## Passaggi successivi

- [Log SMS](/docs/guides/sms/sms-log): ispeziona un messaggio e la sua cronologia di consegna.
- [Eventi SMS](/docs/guides/sms/events): consuma i webhook di consegna e di errore.
- [Metriche SMS](/docs/guides/sms/tracking-and-metrics): esamina i risultati aggregati degli errori.
- [Errori API SMS](/docs/api/errors/E12xxx): interpreta gli errori restituiti da una richiesta API.

## Related resources

- [Sending your first SMS](/learn/sms/sending-your-first-sms) (video)
- [What does SMS mean?](/explained/sms/what-does-sms-mean) (answer)
- [SMS](/sms-api) (product)
- [Build your first integration](/learn/paths/integration) (course)

[Get an implementation brief](/learn/workspace?topic=sms)
