Responses & Errors - XML

When sending a request with an invalid part to the XML gateway, NO MESSAGES are created and the entire request is rejected. You will receive a plain text response with details why the request was rejected.

Example response of a failed XML request:

Status: 200 OK

Error: ERROR No account found for the given authentication

XML POST responses

HTTP statusError textRemarks
400(none)No HTTP GET or POST was used to send your request
200Error: ERRORUnknown error An unexpected error occurred. Check the provided values. Contact CM for support.
200(empty)The request was accepted
200Error: ERROR No account found for the given authenticationNo account found for the provided product token.
200Error: ERROR Insufficient balance.Trial accounts only: You are out of trial messages. Order new messages via your dashboard. If you are a regular prepaid customer, you will be notified that you have run out of quota in a Status Report.
200Error: ERROR Message is unrouteable.Your request could not be routed. Contact CM for support.
200Error: ERROR Invalid product token.Invalid or missing product token
200Error: ERROR No FROM field found in a MSG node.The ‘FROM’ element is missing within the ‘MSG’ element
200Error: ERROR A MESSAGES node requires at least one MSG nodeA MSG node within the MESSAGE node is required and is missing.
200Error: ERROR No phone numbers found. Message will not be sent.The Phone Number value for the TO element is missing
200Error: ERROR Rejected: Gsm '' is not a number.The value for the TO element is not a valid Phone Number

Errors

Error codeShort descriptionFull description
5Message not delivered at third partyThe message has been confirmed as undelivered but no detailed information related to the failure is known.
7Message not delivered at operator because recipient has insufficient creditTemporary - Used to indicate to the client that the message has not yet been delivered due to insufficient subscriber credit but is being retried within the network.
8Message expired at third partyTemporary - Used when a message expired (could not be delivered within the life time of the message) within the operator SMSC but is not associated with a reason for failure.
20Message not delivered because of a malformed requestUsed when a message in its current form is undeliverable.
21Message expired at operatorTemporary - Only occurs where the operator accepts the message before performing the subscriber credit check. If there is insufficient credit then the operator will retry the message until the subscriber tops up or the message expires. If the message expires and the last failure reason is related to credit then this error code will be used.
22Message not delivered at operator because recipient has insufficient creditTemporary - Only occurs where the operator performs the subscriber credit check before accepting the message and rejects messages if there are insufficient funds available.
23Message not delivered because of an incorrect recipient number (invalid/blacklisted/barred)Used when the message is undeliverable due to an incorrect / invalid / blacklisted / permanently barred Phone Number for this operator. This Phone Number should not be used again for message submissions to this operator.
24Message not delivered because the recipient was unreachableTemporary - Used when a message is undeliverable because the subscriber is temporarily absent, e.g. his/her phone is switch off, he/she cannot be located on the network.
25Message not delivered at third partyTemporary - Used when the message has failed due to a temporary condition in the operator network. This could be related to the SS7 layer, SMSC or gateway.
26Message not delivered because of a temporary handset issue (sim card full/memory exceeded/SME busy)Temporary - Used when a message has failed due to a temporary phone related error, e.g. SIM card full, SME busy, memory exceeded etc. This does not mean the phone is unable to receive this type of message/content (refer to error code 27).
27Message not delivered because of a permanent handset issue (unable to receive SMS)Permanent - Used when a handset is permanently incompatible or unable to receive this type of message.
28Message not delivered because submission speed is too high (throttling errors)Used if a message fails or is rejected due to suspicion of SPAM on the operator network. This could indicate in some geographies that the operator has no record of the mandatory MO required for an MT.
29Message not delivered because content is not permittedPermanent - Used when this specific content is not permitted on the network / shortcode.
30Message not delivered because the set spend limit is reachedTemporary - Used when message fails or is rejected because the subscriber has reached the predetermined spend limit for the current billing period.
31Message not delivered because the recipient was suspended from premium servicesUsed when the Phone Number is for a valid subscriber on the operator but the message fails or is rejected because the subscriber is unable to be billed, e.g. the subscriber account is suspended (either voluntarily or involuntarily), the subscriber is not enabled for bill-tophone services, the subscriber is not eligible for bill-to-phone services, etc.
33Message not delivered because of parental lockUsed when the subscriber cannot receive adult content because of a parental lock.
34Message not delivered because age check failurePermanent - Used when the subscriber cannot receive adult content because they have previously failed the age verification process.
35Message not delivered because age check missingTemporary - Used when the subscriber cannot receive adult content because they have not previously completed age verification.
36Message not delivered because age check unavailableTemporary - Used when the subscriber cannot receive adult content because a temporary communication error prevents their status being verified on the age verification platform.
37Message not delivered because recipient is in national Do-Not-Call Register (for example, the Dutch SMS DienstenFilter and Chinese DnD list)The Phone Number is on the national blacklist
38Message not delivered because maximum concatenation tariff exceededUsed when the total tariff of a concatenated message exceeds the maximum tariff per message set by the operator
39Message not delivered because quota is emptyUsed when a customer is out of qouta.
40Message not delivered because the conversation window is closedMessage failed to send, conversation window closed. The channel specific conversation window is no longer open to send messages towards this customer.
41Message not delivered because too many messages were sent from this numberToo many messages send from this number, blocked notifications or marked as spam.
42Message not delivered because recipient is not capable to receive a message from this channelUsed when a recipient is not capable to receive a message from this channel. (For example, the user did not install WhatsApp).
43Message not delivered because a template related error occuredTemplate name does not exist for this language and namespace.
44Message not sent due to previous errors. Message not sent due to previous errors. Please contact support if this persists.
45User's number is part of an experiment. Failed to send message because this user's phone number is part of an experiment.
https://developers.facebook.com/docs/whatsapp/cloud-api/guides/experiments
47Message blocked by SafeguardUsed when the message was blocked because of security configuration, please check settings or contact the account manager