ESME_RINVDESTFLAG in SMPP

What is ESME_RINVDESTFLAG?

ESME_RINVDESTFLAG (Error Code: 0x00000035) is an SMPP error indicating that the destination flag in the submit_multi PDU is invalid or not recognized by the SMSC.

Possible Causes

  • The dest_flag field in the submit_multi PDU contains an unsupported or incorrect value.
  • The destination flag is missing or incorrectly formatted.
  • An attempt was made to send a message using a flag that is not supported by the SMSC.

When Does It Happen?

This error occurs when sending a submit_multi PDU with an incorrect or invalid destination flag.

Example SMPP PDU Transaction

Incorrect submit_multi PDU (Invalid Destination Flag)

0000003C (Length)
00000021 (Command ID for submit_multi)
00000000 (Command Status)
00000002 (Sequence Number)
00 (Service Type)
01 (Source Address TON)
01 (Source Address NPI)
31323334 00 (Source Address: "1234")
00 (ESM Class)
00 (Protocol ID)
00 (Priority Flag)
00000000 (Schedule Delivery Time - Not Set)
00000000 (Validity Period - Not Set)
00 (Registered Delivery)
00 (Replace If Present Flag)
00 (Sm Default Msg ID)
0005 (Message Length)
48656C6C 6F (Message: "Hello")
01 (Number of Destinations)
03 (Invalid Destination Flag)
39383736 00 (Destination Address: "9876")

Response PDU (submit_multi_resp) with ESME_RINVDESTFLAG

00000010 (Length)
80000021 (Command ID for submit_multi_resp)
00000035 (Command Status - ESME_RINVDESTFLAG)
00000002 (Sequence Number)

Issue: The destination flag provided ("03") is not a valid flag for submit_multi.

How to Solve It?

  • Ensure the correct destination flag is used (either 0x01 for SME address or 0x02 for distribution list).
  • Check for typos or incorrect values in the destination flag field.
  • Verify the SMSC documentation for supported destination flags.
  • Enable debugging logs to inspect the exact values being sent in the PDU.

If the issue persists, contact the SMSC provider to clarify supported destination flags and resolve configuration issues.

More information