Error codes returned by the carrier on SMS or MMS

You might receive error codes returned by the telephone carrier after you’ve sent a SMS or MMS.

The telephone carriers filter all the messages to protect the mobile subscribers from spam and other forms of unwanted messaging.

And, these systems look at both message content and volume.

Filtering in the United States and Canada can affect the delivery of your SMS and MMS messages.

Where do the error codes appear in aNinja

When in the lead view, in the history section, you can see error in red on the right corner under the sent SMS or MMS.

Hover your mouse over “error” to see the error code.

Error codes on SMS or MMS

Then, search for this code in the below section to understand the reason for this error.

Error codes references on SMS or MMS

Below are the most common error messages returned by the carriers.

  • 11751 => Media exceeds messaging provider size limit.
    • Maximum size limit depends on the messaging channel.
    • aNinja supports an MMS of 600KB.
  • 12300 => Invalid Content-Type.
    • Our carrier is unable to process the Content-Type of the provided URL.
    • You must return a Content-Type for all requests. Requests without a Content-Type will appear in the Debugger as a 502 Bad Gateway error.
  • 30003 => Unavailable or unreachable destination.
    • The destination handset you are trying to reach is switched off or otherwise unavailable.
  • 30005 => Unknown or inactive destination number.
    • The destination number you are trying to reach is unknown and may no longer exist.
    • The device you are trying to reach is not on or does not have sufficient signal.
    • The device cannot receive SMS (e.g. the phone number belongs to a landline).
    • There is an issue with the mobile carrier.
  • 30006 => Landline or unreachable destination.
    • The destination number is unable to receive this message. Potential reasons could include trying to reach a landline. Or, in the case of short codes, an unreachable carrier.
  • 30007 => Your message was blocked by the carrier due to spam, phishing, and fraud content.
  • 30008 => Delivery of your message failed for unknown reasons.
    • Our carrier receives a very generic error from the destination carriers that he has no further details about. He associates the message with the error code 30008 letting you know that he truly doesn’t know what caused this error from the provider.
  • 30019 => Content size exceeds carrier limit.
    • Message failed because the size of the content associated with the message exceeded the carrier limit.
  • 30410 => Provider timeout.
    • The provider used may be experiencing disruptions resulting in errors or request timeouts. Messages are failed and not retried to avoid duplicate message delivery.
  • 32017 => Carrier blocked call due to poor reputation score on the telephone number.
    • The calling number has a low answer rate from end users; or, generates low-duration calls; or it is responsible for large volumes of unwanted calls.

Handle “Outgoing SMS with error code” through Triggers

aNinja allows you to automatically handle the outgoing SMS with an error code through Triggers. You can set a trigger action to set those leads as “do not contact”.

SMS with Error code

When you attempt to send a text through aNinja, the system uses the primary phone number saved in the lead contacts to send your text.

If the phone number saved in the lead contacts is wrong, landline, or blocked by the carrier, your sent SMS will return with an error code.

Setting a trigger to automatically mark leads as “do not contact”

You can configure automatically marking a lead as “do not contact” and handle outgoing SMS with an error code through triggers. You don’t want to keep on sending texts to an invalid phone number.

  • On the left sidebar, click on Automations > Triggers
  • Hit + Add Trigger
  • In the Trigger Event:
    • Choose “Outgoing SMS with error code
    • From the dropdown, choose the error message you want to execute the trigger action.handle incoming SMS with error code
  • In the Trigger Action:

Set “Add all lead contacts to do not contact list

Regarding the leads that that were added to the “do not contact” list, they do get included in the bulk sequence, but their texts get blocked from our side so it doesn’t get actually sent.
You can check them by clicking on the blocked leads count in ‘Bulk Sequences’ widget.

Also, set “Break after Trigger executes” to YES / true so that no other triggers execute after this match on that Lead.

It’s good to give this trigger a high priority level (e.g. 100). This indicates which trigger should be processed first.

Text messages not going out

If your text messages are not going out, they might have been blocked by third-party telephony carriers. We recommend at least waiting a day before re-launching to allow for the queue to flush.

Reasons behind the text messages not going out

  • Our upstream telephony provider (Twilio) and third-party carriers that the texts get routed to, might be flagging your messages as Spam/Phising/ etc… displaying the following message:
    “Your message content was flagged as going against carrier guidelines.”
  • Also, your message could have been identified as spam or unwanted messaging by Twilio’s message filtering system due to people flagging it as spam. 
  • And/or the rate at which the messages are also being sent out.
  • It also could be that your text content could have triggered off this error.

Here are the things we recommend

Sometimes, aNinja is forced to comply and temporarily block your SMS sending capability until we add more remediation steps.

  1. Make sure you’re using opt-in lists (carriers use software to detect leaked / non-opt-in lists).  An opt-in list is a list of your customers who willingly give you permission to text them.
  2. Sender Identification: Ensure that your messages clearly identify who is sending the message
  3.  An opt-out language: The initial message that you send to an individual needs to include the following language: “Reply STOP to unsubscribe,” or the equivalent using another standard opt-out keyword, such as STOPALL, UNSUBSCRIBE, CANCEL, END, and QUIT.
  4. High key messaging metrics: A high delivery error rate, which indicates you may be attempting to contact numbers that are no longer in service, or are unreachable, such as landlines and/or external carrier filters are refusing to deliver your messages.
  5. Review your template content:
    1. To includes Sender identification
    2. And an opt-out language
    3. Try and use multi-step sequences to engage customers.
    4. Also, there are few things you want to consider before sending out texts.
  6. Lastly, you can provide us with your business address; there is an additional verification process (A2P) that we can set up that helps reduce the chances of being flagged by carrier systems as long as the above is being followed. Reach us at

Enabling Auto-recharge for Billing

You might want to make sure that your team can continue to send texts without interruption. By enabling Auto-recharge for Billing, when the plan included add-ons are hit, aNinja system automatically tries to bill. When the payment is successfully processed, the system bumps up your SMS add-ons limits.

Enabling Auto-recharge for Billing

  • Scroll down to the “Auto-recharge” section
  • Toggle the checkbox to enable auto-recharge.
  • When auto-recharge is turned ON, you get the following confirmation message that the payment has been sent to the bank:

“Payment has been successfully updated”

Enabling Auto-recharge for Billing

How the auto-recharge works

  • By enabling auto-recharge, when you hit the plan included SMS add-ons limit, the system puts your outgoing texts in queue. It sends the charges to your bank; when the payment is processed, it recharges your account and releases the on-hold texts.


Your plan included add-ons represent your monthly spending limit  over all the users. You can check it in Settings > Billing > Usage SMS

  • Every time the limit is hit, it automatically recharges.
  • You can manage the auto-recharge process by disabling it at any time of the month. Just un-toggle the checkbox.
  • However, disabling the auto-recharge option doesn’t stop the payment in-process.
What if the payment fails

When you hit the monthly spending limit of SMS, the system claims the payment from your bank. If the payment fails, your current outgoing texts stay in queue until the next month on your plan, unless add-ons are purchased.

Schedule your text message

In this article, we show you how you can schedule your text message to delay the delivery to send it at a later time and date.

To reach out to your lead, you can send him a text message via aNinja.

Start Messages and create a text message, but don’t send it. Choose the time you want to send the message.

Scheduling a text to be sent later

  • On the lead view, click on the Text from the toolbar.Schedule your text message
  • Create the text but don’t send it.
  • Next to the send button, click the arrow to choose the date & time.
  • Then, hit Schedule > Send.
  • As a result, on the set date & time, the system sends the text to your lead.

Rescheduling a text

  • On the lead view, locate the text in the history section and click Reschedule.
  • Then, choose the new date & time and hit Schedule.

Cancelling a scheduled text

  • On the lead view, locate the text in the history section and click on Cancel.
  • As a result, the system will cancel your text.
  • Cancelling the scheduled texts is enabled on the web app but we don’t have it on the mobile app yet.

Checking the status of the scheduled text

You can see the scheduled texts only on the date they’ve been created. They don’t get rendered again when sent.

So you can check them in the lead view. Go back through the lead interactions to the date when the scheduled text was created.

The status of the text is on the right bottom of the text.

  • Scheduled for day & time: The text is still not sent until the day & time are due.
  • Success: On the set date, the system sent your text successfully.
  • Cancelled (was scheduled): This is a text that you cancelled.

Creating Text & Email Sequences

Creating Text & Email Sequences allows the automation of scheduled sequences of texts or emails.

Creating Text Sequences

    • Go ahead and click on the help (?) icon next to Sequences. It will redirect you to a short youtube video to get an overview of the sequences.

Creating Text & Email Sequences

  • Here, click on Add Text Sequence

  • Give a name to your text sequence.
  • And add each step to your text sequence:
    • Select when you want the sequence step to be sent out:
      • If you want to send out the step as soon as you launch the sequence, choose “Immediate”. This fires the step within the acceptable text time window that’s set in Global Settings.
      • If you want to send out the step with disregard to the acceptable text time window, choose “Immediate (skip global settings validations). This fires your step immediately.
      • Otherwise, define the number of days after which you want the step to be sent out.
    • And choose which text template you want to use.
  • Lastly, you can add a new text template. Just click on the link View template.

Creating Email Sequences

  • On the left sidebar, click on Automations > Sequences
    • Go ahead and click on the help (?) icon next to Sequences. It will redirect you to a short youtube video to get an overview of the sequences.
  • Then, click on Add Email Sequence
  • Give a name to your email sequence.
  • And add each step to your email sequence:
    • Select when you want the sequence step to be sent out:
      • If you want to send out the step as soon as you launch the sequence, choose to send after a delay of 0 days from launch.
      • Otherwise, define the number of days after which you want the step to be sent out.
    • And choose which email template you want to use.
  • Lastly, you can add a new email template. Just click on the link View template.


So, creating text & email sequences allows you to use them in your triggers to target your leads and turn them into clients!

Adding Attachments to Templates

Adding attachments to the templates sounds interesting especially if you’re trying to launch a special campaign with a nice catchy design.

Attachments to email templates

We presently don’t allow attachments to email templates.

We recommend hosting your attachment files on your website or a file hosting service and adding the link to download it in your template call to action.

This has the following advantages:

  • If need be, you can update the file at the link source.
    • This is useful if the attachments need urgent changes after the emails have been sent out.
  • It increases the reachability of your emails:
    • As it lowers the email spam score.
    • And you’ll be sending smaller-sized outbound emails.

Attachments to text templates

Adding an attachment to your text template will change the SMS text into an MMS.

In Settings > Templates > Add text template > Choose file Adding Attachments to Templates

In such cases, you want to consider counting the characters included in the text to avoid your text being counted as multiple segments and being overcharged for them.

To prevent such incidents, we recommend hosting your attachment files on your website or a file hosting service and adding the link to download it in your template call to action.

Sending a text (SMS) via aNinja

Sending a text (SMS) via aNinja is a way to communicate with your leads and nurture them with your campaigns.

What’s an SMS

SMS (Short Message Service) is a text message that can contain up to 160 alphanumeric characters for every segment.

From a business’s perspective, there are hundreds of potential use cases for text message marketing including sales reminders, discounts and special offers, emergency alerts, and more.

The most effective business text messages are timely, informative, compelling, and easy to understand.

While SMS was built to send short messages, MMS focuses on sending multimedia messages.

Sending a text (SMS) via aNinja

  • When on the lead view, click on Text from the toolbar
  • Your phone number is automatically injected next to “From”.
    • If you’re an Admin user, from the dropdown, you can choose the phone number you want to send the text through.
  • The primary phone number is also automatically injected next to “To”.
  • You can either select an available template
    • The content of the template will be injected into the body section.
  • Or you can manually type the message in the body section.
  • Before you send your text, you want to make sure that it does not exceeds 160 characters, to avoid being billed for more messages.
  • Check the counters under the SMS body. When you go over 160 characters, the characters counter turns red, and the segment counter increases by 1.
  • Click Send to send your text immediately,
  • Or click on the arrow next to send to schedule your text to send at a later date and time.

Text Segmentation / Message Length

  • Maximum Message Length with aNinja Messaging
    The aNinja Programmable Messaging platform has a limit of 160 characters in a single incoming or outgoing message request.
  • Additional Considerations for Long SMS Messages
    Although aNinja supports large message payloads for all Messaging channels including SMS; it is important to understand that some wireless carriers and devices may behave differently than others when receiving long SMS messages. In addition, the length of an SMS, and which characters are present will affect its price, because of a concept called segmentation.

    • What’s a text segment or Segmentation? SMS industries count messages before sending them through your carrier. They count the number of characters that a text contains. Each segment is of 160 characters. If your text contains more characters, you’d end up with two messages on your bill.

Need help in sending a text (SMS) via aNinja? Leave us an email at And, we will happily assist you!