ESME_RINVSRCNPI in SMPP
What is ESME_RINVSRCNPI?
ESME_RINVSRCNPI (Error Code: 0x00000049) is an SMPP error indicating that the source NPI (Numbering Plan Indicator)
value provided in the PDU is invalid or not supported by the SMSC.
Possible Causes
- The
source NPI
field contains an incorrect or unsupported value. - The SMSC does not recognize the specified
NPI
. - The
source NPI
does not match thesource TON
configuration. - Using a reserved or undefined
NPI
value.
When Does It Happen?
This error occurs when an ESME sends a submit_sm
, deliver_sm
, or similar PDU with an invalid source NPI
value.
Example SMPP PDU Transaction
Incorrect submit_sm
PDU (Invalid Source NPI)
0000002F (Length) 00000004 (Command ID for submit_sm) 00000000 (Command Status) 00000001 (Sequence Number) 00 (Service Type) 01 (Source Address TON - International) FF (Invalid Source Address NPI) 31323334 00 (Source Address: "1234") 01 (Destination Address TON) 01 (Destination Address NPI) 39383736 00 (Destination Address: "9876") 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")
Response PDU (submit_sm_resp
) with ESME_RINVSRCNPI
00000010 (Length) 80000004 (Command ID for submit_sm_resp) 00000049 (Command Status - ESME_RINVSRCNPI) 00000001 (Sequence Number)
Issue: The source NPI
field is set to an invalid value (0xFF
), which is not recognized by the SMSC.
How to Solve It?
- Use a valid
source NPI
value based on SMPP specifications: 0x00
- Unknown0x01
- ISDN (E.164)0x03
- Data (X.121)0x04
- Telex (F.69)0x06
- Land Mobile (E.212)0x08
- National0x09
- Private0x0A
- ERMES0x0E
- Internet (IP)0x12
- WAP Client ID- Confirm with the SMSC which
source NPI
values are supported. - Ensure the
source NPI
is correctly paired with thesource TON
. - Review and correct the SMPP PDU construction before sending.
If the issue persists, enable debug logs and contact the SMSC provider for further troubleshooting.