ESME_RX_R_APPN in SMPP
What is ESME_RX_R_APPN?
ESME_RX_R_APPN (Error Code: 0x00000066) is an SMPP error indicating that the SMSC encountered a reject error while processing a received request. This typically means the request was intentionally rejected by the SMSC application.
Possible Causes
- The SMSC rejected the request due to invalid parameters.
- Message filtering rules (e.g., blacklisting, spam protection) prevented message processing.
- Account restrictions, such as insufficient balance or permission issues.
- Operational policies of the SMSC preventing the request from being processed.
When Does It Happen?
This error occurs when the ESME sends a request to the SMSC, and the SMSC deliberately rejects it due to policy or validation failures.
Example SMPP PDU Transaction
Request PDU (submit_sm
) Sent by ESME
0000003F (Length) 00000004 (Command ID for submit_sm) 00000000 (Command Status) 00000001 (Sequence Number) 00 (Service Type) 01 (Source Address TON - International) 01 (Source Address NPI - ISDN) 31323334 00 (Source Address: "1234") 01 (Destination Address TON - International) 01 (Destination Address NPI - ISDN) 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 (Replace If Present Flag) 00 (Sm Default Msg ID) 0005 (Message Length) 48656C6C 6F (Message: "Hello")
Response PDU (submit_sm_resp
) with ESME_RX_R_APPN
00000010 (Length) 80000004 (Command ID for submit_sm_resp) 00000066 (Command Status - ESME_RX_R_APPN) 00000001 (Sequence Number)
Issue: The SMSC intentionally rejected the submit_sm
request due to application-level policies.
How to Solve It?
- Check if the destination number or message content is restricted by the SMSC.
- Verify the sender ID and ensure it is authorized for use.
- Ensure that the ESME account has sufficient permissions and balance.
- Review SMSC logs for additional rejection details.
- Contact the SMSC provider to understand why the message was rejected.
Resolving this issue typically requires coordination with the SMSC provider to determine the rejection reason and make necessary adjustments.