# SMPP-Fehlercodes.

- Kanonische URL: https://www.broadnet.me/de/tools/smpp-error-codes
- Sprache: de
- Zuletzt aktualisiert: 2026-10-21
- Herausgeber: BroadNet (https://www.broadnet.me)
- Markdown-Fassung der Seite, aus der ausgelieferten Seite erzeugt.

SMPP-v3.4-Referenz · command_status

Jeder `command_status` in der SMPP-v3.4-Spezifikation definierte Wert — Hex-Code, symbolischer Name, klare Bedeutung sowie wahrscheinliche Ursache und Behebung. Suchen Sie nach Code oder Name, um einen Bind- oder submit_sm-Fehler schnell zu beheben.

48 von 48 Codes

| Hex | Symbolischer Name | Bedeutung & wahrscheinliche Ursache/Behebung |
|---|---|---|
| 0x00000000 | ESME_ROK | Kein Fehler. Die PDU wurde akzeptiert. Bei submit_sm bedeutet dies nur, dass das SMSC die Nachricht zur Verarbeitung angenommen hat, nicht dass sie zugestellt wurde — verfolgen Sie die Zustellung über den Zustellbericht (DLR) in deliver_sm. |
| 0x00000001 | ESME_RINVMSGLEN | Ungültige Nachrichtenlänge. short_message bzw. message_payload ist für die verwendete Kodierung zu lang oder leer. Segmentieren Sie lange Inhalte oder verwenden Sie das TLV message_payload; prüfen Sie, ob data_coding zur Byte-Länge passt. |
| 0x00000002 | ESME_RINVCMDLEN | Ungültige Kommandolänge. Der command_length im PDU-Header stimmt nicht mit den tatsächlich gesendeten Bytes überein. Fast immer ein Fehler im PDU-Encoder des Clients oder ein Framing-/Puffergrenzenfehler. |
| 0x00000003 | ESME_RINVCMDID | Ungültige Kommando-ID. Die command_id ist unbekannt oder wird vom SMSC nicht unterstützt. Prüfen Sie, ob Sie eine gültige Operation und die richtige SMPP-Version senden. |
| 0x00000004 | ESME_RINVBNDSTS | Falscher BIND-Status für das gegebene Kommando. Operation im aktuellen Bind-Modus nicht erlaubt — z. B. submit_sm bei einem Receiver-Bind oder eine Anfrage vor Abschluss des Binds. Zuerst als Transmitter oder Transceiver binden. |
| 0x00000005 | ESME_RALYBND | ESME ist bereits im gebundenen Zustand. Ein zweiter Bind wurde auf einer bereits gebundenen Sitzung ausgeführt. Nutzen Sie die bestehende Sitzung weiter oder führen Sie vor dem erneuten Bind ein Unbind durch. |
| 0x00000006 | ESME_RINVPRTFLG | Ungültiges Prioritäts-Flag. priority_flag liegt außerhalb des vom SMSC akzeptierten Bereichs 0–3. Verwenden Sie einen unterstützten Wert (üblicherweise 0). |
| 0x00000007 | ESME_RINVREGDLVFLG | Ungültiges Flag für registrierte Zustellung. registered_delivery enthält einen nicht unterstützten Wert. Verwenden Sie eine vom SMSC unterstützte Bitmaske (z. B. 0x01 für einen finalen DLR). |
| 0x00000008 | ESME_RSYSERR | Systemfehler. Allgemeiner Fehler auf SMSC-Seite, der die Verarbeitung verhindert. Vorübergehend — mit Backoff erneut versuchen; bei anhaltendem Fehler den Anbieter kontaktieren. |
| 0x0000000A | ESME_RINVSRCADR | Ungültige Quelladresse. source_addr (die Absender-ID) ist fehlerhaft oder nicht zulässig — falsche Länge, unzulässige Zeichen oder eine nicht registrierte alphanumerische Absender-ID. Absender registrieren bzw. freigeben. |
| 0x0000000B | ESME_RINVDSTADR | Ungültige Zieladresse. destination_addr ist fehlerhaft oder nicht routbar — falsches MSISDN-Format, fehlende Landesvorwahl oder gesperrter Bereich. Auf E.164 normalisieren. |
| 0x0000000C | ESME_RINVMSGID | Ungültige Nachrichten-ID. Die message_id in einem query_sm, cancel_sm oder replace_sm passt zu keiner bekannten Nachricht. Verwenden Sie die exakte, in submit_sm_resp zurückgegebene ID. |
| 0x0000000D | ESME_RBINDFAIL | Bind fehlgeschlagen. Die Bind-Anfrage wurde aus einem anderen Grund als den Zugangsdaten abgelehnt — z. B. IP nicht freigegeben, TLS erforderlich oder Bind-Typ für das Konto nicht zulässig. |
| 0x0000000E | ESME_RINVPASWD | Ungültiges Passwort. Das Passwort in der Bind-PDU ist falsch oder abgelaufen. Zugangsdaten prüfen; das Feld ist in SMPP 3.4 auf 8 Oktette begrenzt. |
| 0x0000000F | ESME_RINVSYSID | Ungültige System-ID. Die system_id (Benutzername) ist dem SMSC unbekannt. Kontokennung und deren Aktivierung prüfen. |
| 0x00000011 | ESME_RCANCELFAIL | Cancel SM fehlgeschlagen. cancel_sm konnte die Nachricht nicht entfernen — sie wurde möglicherweise bereits zugestellt oder ist abgelaufen. Kein erneuter Versuch nötig. |
| 0x00000013 | ESME_RREPLACEFAIL | Replace SM fehlgeschlagen. replace_sm konnte die Nachricht nicht aktualisieren, meist weil sie die Warteschlange bereits verlassen hat. Stattdessen eine neue Nachricht senden. |
| 0x00000014 | ESME_RMSGQFUL | Nachrichtenwarteschlange voll. Die Store-and-Forward-Warteschlange des SMSC ist ausgelastet. Sendetempo drosseln und mit Backoff erneut versuchen. |
| 0x00000015 | ESME_RINVSERTYP | Ungültiger Diensttyp. Der Wert von service_type wird nicht erkannt oder ist nicht zulässig. Leer lassen oder einen mit dem Anbieter vereinbarten Wert verwenden. |
| 0x00000033 | ESME_RINVNUMDESTS | Ungültige Anzahl von Zielen. number_of_dests in einer submit_multi-PDU liegt außerhalb des zulässigen Bereichs. Innerhalb des vom SMSC festgelegten Ziel-Limits pro PDU bleiben. |
| 0x00000034 | ESME_RINVDLNAME | Ungültiger Verteilerlistenname. Die in submit_multi referenzierte Verteilerliste existiert auf dem SMSC nicht. Liste anlegen oder an explizite Adressen senden. |
| 0x00000040 | ESME_RINVDESTFLAG | Zielkennzeichen ungültig. In submit_multi ist das dest_flag eines Eintrags weder eine SME-Adresse (1) noch eine Verteilerliste (2). Kennzeichen je Ziel korrigieren. |
| 0x00000042 | ESME_RINVSUBREP | Ungültige 'Submit with Replace'-Anfrage. replace_if_present_flag wurde bei einer Operation gesetzt, die dies nicht unterstützt, oder mit Verteilerlisten kombiniert. Flag entfernen. |
| 0x00000043 | ESME_RINVESMCLASS | Ungültige Daten im Feld esm_class. esm_class enthält eine nicht unterstützte Kombination — z. B. ein UDHI- oder Zustellbericht-Bit, das der SMSC ablehnt. Modus-/Typ-Bits der Nachricht erneut prüfen. |
| 0x00000044 | ESME_RCNTSUBDL | Senden an Verteilerliste nicht möglich. Das Konto ist nicht berechtigt, an die angegebene Verteilerliste zu senden. Direkte Adressierung verwenden oder Berechtigung anfordern. |
| 0x00000045 | ESME_RSUBMITFAIL | submit_sm oder submit_multi fehlgeschlagen. Allgemeiner Sendefehler auf SMSC-Seite. Oft vorübergehend (Routing/Kapazität) — mit Backoff erneut versuchen; TLVs auf einen genaueren Grund prüfen. |
| 0x00000048 | ESME_RINVSRCTON | Ungültiger TON der Quelladresse. source_addr_ton passt nicht zum Absenderformat — z. B. wird TON 5 (alphanumerisch) für eine Text-Absender-ID benötigt, es wurde aber ein numerischer TON gesendet. |
| 0x00000049 | ESME_RINVSRCNPI | Ungültiger NPI der Quelladresse. source_addr_npi ist ungültig oder inkonsistent mit dem TON. NPI 0 bei alphanumerischen Absendern und NPI 1 (E.164) bei MSISDNs verwenden. |
| 0x00000050 | ESME_RINVDSTTON | Ungültiger TON der Zieladresse. dest_addr_ton ist für das Ziel ungültig. TON 1 (international) mit einer MSISDN im E.164-Format verwenden. |
| 0x00000051 | ESME_RINVDSTNPI | Ungültiger NPI der Zieladresse. dest_addr_npi ist ungültig oder inkonsistent mit dem TON. NPI 1 (ISDN/E.164) ist der übliche Wert für Mobilfunknummern. |
| 0x00000053 | ESME_RINVSYSTYP | Ungültiges Feld system_type. Der system_type in der Bind-PDU wird nicht akzeptiert. Leer lassen oder den vom Anbieter zugewiesenen exakten Wert verwenden. |
| 0x00000054 | ESME_RINVREPFLAG | Ungültiges Flag replace_if_present. replace_if_present_flag ist auf einen anderen Wert als 0 oder 1 gesetzt. Ein gültiges boolesches Flag senden. |
| 0x00000055 | ESME_RINVNUMMSGS | Ungültige Anzahl von Nachrichten. Das Feld sm_count / Anzahl der Nachrichten liegt außerhalb des Bereichs. Wert in der PDU korrigieren. |
| 0x00000058 | ESME_RTHROTTLED | Drosselungsfehler — Nachrichtenlimit überschritten. Sie senden schneller als die für das Konto erlaubte Rate (Nachrichten pro Sekunde). Sendeschleife drosseln und mit Backoff erneut versuchen. Vorübergehender, wiederholbarer Zustand. |
| 0x00000061 | ESME_RINVSCHED | Ungültige geplante Zustellzeit. schedule_delivery_time ist fehlerhaft formatiert oder liegt in der Vergangenheit. Das absolute/relative SMPP-Zeitformat (YYMMDDhhmmsstnnp) verwenden oder das Feld leer lassen. |
| 0x00000062 | ESME_RINVEXPIRY | Ungültige Gültigkeitsdauer der Nachricht. validity_period ist fehlerhaft formatiert oder liegt außerhalb des zulässigen Fensters. Das SMPP-Zeitformat verwenden oder für den SMSC-Standardwert leer lassen. |
| 0x00000063 | ESME_RINVDFTMSGID | Vordefinierte Nachricht ungültig oder nicht gefunden. sm_default_msg_id verweist auf eine vorgefertigte Nachricht, die der SMSC nicht besitzt. Vollständigen Text oder eine gültige vordefinierte ID senden. |
| 0x00000064 | ESME_RX_T_APPN | Temporärer Anwendungsfehlercode des ESME-Empfängers. Wird von Ihrem ESME (oder einem vorgelagerten System) zurückgegeben, um einen temporären Anwendungsfehler bei der Verarbeitung von deliver_sm/data_sm zu signalisieren. Der SMSC kann die Zustellung später erneut versuchen. |
| 0x00000065 | ESME_RX_P_APPN | Permanenter Anwendungsfehlercode des ESME-Empfängers. Die empfangende Anwendung lehnt die Nachricht dauerhaft ab. Der SMSC wiederholt den Versuch nicht — den nachgelagerten Handler oder den Ablehnungsgrund beheben. |
| 0x00000066 | ESME_RX_R_APPN | Fehlercode für Nachrichtenablehnung des ESME-Empfängers. Die empfangende Anwendung bittet den SMSC, die Nachricht abzulehnen. Wird verwendet, um bestimmte eingehende Inhalte abzulehnen. |
| 0x00000067 | ESME_RQUERYFAIL | query_sm-Anfrage fehlgeschlagen. Die Statusabfrage konnte nicht abgeschlossen werden — die message_id ist möglicherweise unbekannt oder im SMSC-Speicher abgelaufen. ID prüfen. |
| 0x000000C0 | ESME_RINVOPTPARSTREAM | Fehler im optionalen Teil des PDU-Bodys. Der TLV-Stream (optionaler Parameter) ist fehlerhaft — falsche Länge oder abgeschnitten. TLV-Encoder im Client korrigieren. |
| 0x000000C1 | ESME_ROPTPARNOTALLWD | Optionaler Parameter nicht zulässig. Ein TLV wurde gesendet, das diese Operation oder der SMSC nicht zulässt. Den nicht unterstützten optionalen Parameter entfernen. |
| 0x000000C2 | ESME_RINVPARLEN | Ungültige Parameterlänge. Die angegebene Länge eines TLV stimmt nicht mit seinem Wert überein. Das Längenfeld des optionalen Parameters korrigieren. |
| 0x000000C3 | ESME_RMISSINGOPTPARAM | Erwarteter optionaler Parameter fehlt. Ein für diese Operation erforderliches TLV wurde nicht mitgeliefert (z. B. message_payload, wenn short_message leer ist). Den erforderlichen optionalen Parameter hinzufügen. |
| 0x000000C4 | ESME_RINVOPTPARAMVAL | Ungültiger Wert des optionalen Parameters. Ein TLV enthält einen Wert außerhalb des zulässigen Bereichs. Die SMPP-Spezifikation zu den zulässigen Werten dieses Parameters prüfen. |
| 0x000000FE | ESME_RDELIVERYFAILURE | Zustellfehler (data_sm_resp). Wird mit data_sm verwendet, um anzuzeigen, dass die Nachricht nicht an das Endgerät zugestellt werden konnte. Wie einen fehlgeschlagenen DLR behandeln und Netz/Route prüfen. |
| 0x000000FF | ESME_RUNKNOWNERR | Unbekannter Fehler. Sammelcode, wenn der SMSC keinen spezifischen Code hat. Einmal mit Backoff erneut versuchen; bei anhaltendem Problem beim Anbieter mit einem PDU-Beispiel melden. |

Nicht aufgeführte Werte sind reserviert. Gemäß SMPP-v3.4-Spezifikation: 0x00000100–0x000003FF ist für SMPP-Protokollerweiterungen reserviert, 0x00000400–0x000004FF für SMSC-anbieterspezifische Fehler, und 0x00000500–0xFFFFFFFF ist reserviert. Einzelne Lücken unterhalb von 0xFF (z. B. 0x09, 0x10) sind laut Standard reserviert.

Die kurze Antwort

## Was ist ein SMPP-Fehlercode?

Ein SMPP-Fehlercode ist der Wert im Feld command_status jeder SMPP-Antwort-PDU. Er teilt dem Client (ESME) mit, ob das SMSC die Operation akzeptiert hat — 0x00000000 (ESME_ROK) bedeutet Erfolg, und jeder von null verschiedene Wert gibt an, warum ein Bind, submit_sm, query_sm oder eine andere Anfrage fehlgeschlagen ist. Die Codes sind in der SMPP-v3.4-Spezifikation definiert und über konforme SMSCs hinweg konsistent.

Ein erfolgreiches submit_sm_resp mit ESME_ROK bestätigt nur, dass das SMSC die Nachricht zur Verarbeitung angenommen hat — die endgültige Zustellung an das Gerät wird separat im Zustellbericht (deliver_sm) gemeldet. Behandeln Sie Sende- und Zustellfehler als zwei unterschiedliche Ebenen.

## Häufig gestellte Fragen

**Was ist command_status in SMPP?**

command_status ist ein 4-Byte-Feld im Header jeder SMPP-Antwort-PDU. In einer Anfrage-PDU ist es auf null gesetzt; in einer Antwort trägt es das Ergebnis — 0x00000000 (ESME_ROK) für Erfolg oder einen von null verschiedenen Fehlercode, der den Fehler angibt. Es ist das primäre Signal, mit dem Ihr Client entscheidet, ob erneut versucht, die PDU korrigiert oder abgebrochen wird.

**Was bedeutet ESME_RTHROTTLED (0x00000058)?**

Es bedeutet, dass Sie Nachrichten schneller senden, als die für Ihr Konto erlaubte Rate (Nachrichten pro Sekunde) zulässt. Verlangsamen Sie Ihre Sendeschleife, wenden Sie exponentielles Backoff an und bleiben Sie innerhalb des mit Ihrem Anbieter vereinbarten Durchsatzes. Es ist ein vorübergehender, wiederholbarer Zustand.

**Was ist der Unterschied zwischen ESME_RINVSRCADR und ESME_RINVDSTADR?**

ESME_RINVSRCADR (0x0000000A) bedeutet, dass die Quelladresse — Ihre Absender-ID — fehlerhaft oder nicht zulässig ist, oft ein nicht registrierter alphanumerischer Absender. ESME_RINVDSTADR (0x0000000B) bedeutet, dass die Ziel-MSISDN fehlerhaft oder nicht routbar ist. Normalisieren Sie Adressen auf E.164 und registrieren Sie Absender-IDs, wo erforderlich.

**Bedeutet ESME_ROK, dass die Nachricht zugestellt wurde?**

Nein. ESME_ROK bei submit_sm_resp bestätigt nur, dass das SMSC die Nachricht zur Verarbeitung angenommen hat. Die endgültige Zustellung an das Gerät wird später im Zustellbericht (deliver_sm) gemeldet, der einen eigenen Status wie DELIVRD, UNDELIV oder EXPIRED trägt. Gleichen Sie die Sendeannahme immer mit dem DLR ab.

**Welche SMPP-Fehler können gefahrlos wiederholt werden?**

Vorübergehende, systemseitige Codes sind mit Backoff wiederholbar: ESME_RSYSERR (0x08), ESME_RMSGQFUL (0x14), ESME_RTHROTTLED (0x58), ESME_RSUBMITFAIL (0x45) und ESME_RUNKNOWNERR (0xFF). Validierungsfehler wie ungültige Adressen, TON/NPI, Nachrichtenlänge oder falsche Zugangsdaten sind dauerhaft — beheben Sie die Anfrage oder Konfiguration, anstatt es erneut zu versuchen.

**Sind diese Codes bei allen SMSCs gleich?**

Die Codes 0x00000000–0x000000FF sind in der SMPP-v3.4-Spezifikation definiert und über konforme SMSCs hinweg konsistent. Die Bereiche 0x00000400–0x000004FF sind für anbieterspezifische Fehler reserviert, sodass ein bestimmtes SMSC dort zusätzliche Codes mit eigener Bedeutung zurückgeben kann — prüfen Sie dafür immer die Dokumentation Ihres Anbieters.

[Protokollreferenz Die Spezifikation hinter diesem Tool in der Referenzbibliothek.](https://www.broadnet.me/de/reference/smpp-command-status-errors) [SMSC-Gateway SMSC in Carrier-Qualität über SMPP + SS7.](https://www.broadnet.me/de/operators/smsc-gateway) [SMS-API REST + SMPP 3.4, Bearer-Token-Authentifizierung, Zustell-Webhooks.](https://www.broadnet.me/de/products/sms-api) [Entwicklerbereich Schnellstart, TypeScript SDK, Referenzen und Tools.](https://www.broadnet.me/de/developers)

## Bauen Sie eine SMPP-Session auf?

BroadNet bietet direkte SMPP-3.4-Binds mit vorhersehbarem Durchsatz und klarer command_status-Behandlung. Sprechen Sie mit unserem Team über eine Verbindung.

[Entwicklerbereich](https://www.broadnet.me/de/developers) [SMSC-Gateway](https://www.broadnet.me/de/operators/smsc-gateway)
