There can be different reasons for failing of an SMS such as exception time out, message inbox full or if the number is out of reach.
These are the basic reasons for the failure of an SMS:
EXP Abssubs - Subscriber is not available at that time
EXP Memexcd - Inbox memory is full or exceeded
EXP Smstmout - SMS timeout after all retry
EXP Nwfail - Network failed
ABSENT SUBSCRIBER- Unidentified Subscriber, No response from the handset.
NUMBER TEMPORARILY UNAVAILABLE- Number out of coverage area/ Switched Off.
CALL BARRED- The recipient cannot receive incoming messages.
SYSTEM FAILURE- Network or Protocol Failure other than the listed. The task cannot be performed because of a problem in another entity. The type of entity or network resource may be indicated by a network resource.
HLR/ MSC Timeout- If HLR (Home Location Register) does not get the response from the MSC ( Mobile Switching Centre) then there will be a timeout.
INBOX CAPACITY EXCEEDED- Short Message rejected by MS because of no memory capacity to store the messages.
SUBCRIBR BSY FOR MT SMS- Congestion Encountered at the visited MSC or the SGSN.
TLESERVCE NOT PROVSND- Recipient MS has no SMS subscription.
Services temporarily blocked- Terminated due to mobile subscriber operator (services blocked by the network operator)
UNKNWN SBCRIBR- No allocated IMSI or directory number for the mobile subscriber in the HLR.
ILEGAL SBSCRIBR- The PLMN has rejected the short message because the MS failed authentication.
EXPIRED MAXIMUM RETRIES EXCEEDED- All the retries from different operators have been made.
SM DELIVERY FAILURE- It can be due to below mentioned reasons,
Unknown Service Center Address.
Service center congestion.
Invalid short message entity address.
Failed - No specific reason found for non delivery (after certain attempts by multiple operators)
Rejected by Provider - The SMS were rejected by the provider due to the promotional content through transactional route.