Before you start

You need a BulkSMS account with credits, and admin access to your CleverTap account.

Log in to BulkSMS, go to Settings > Developers and click Create API Token. Make a note of the Token ID and Token Secret. The secret is only shown once.

We recommend using an API token rather than your BulkSMS username and password. You can revoke a token at any time without changing your login details.

Add a new SMS provider

Log in to CleverTap and go to Settings > Engage > Channels > SMS.

Click + Add Provider and select Generic as the provider type.

Enter the connection details

Fill in the provider form with the values below.

CleverTap field Value
Nickname Any name you like, for example BulkSMS
Request Type POST
HTTP Endpoint https://api.bulksms.com/v1/messages?auto-unicode=true
Authentication Basic Auth
Username Your BulkSMS Token ID
Password Your BulkSMS Token Secret
Headers Key Content-Type, value application/json

auto-unicode=true tells BulkSMS to send messages that contain non-GSM characters (such as emoji or accented letters) as Unicode, so they arrive correctly.

Set up the message payload

Set the payload encoding to JSON and leave batching turned off.

Paste in the payload below. CleverTap replaces $$To and $$Body with each recipient's phone number and the message text.

{
    "to": "$$To",
    "body": "$$Body"
}

To send from a registered sender ID or number, add a from field:

{
    "to": "$$To",
    "body": "$$Body",
    "from": "YourSenderID"
}

Phone numbers should be in international format, for example +447700900123 or 447700900123. You don't need $$TemplateID or $$TemplateVariables; they are only used for Indian DLT templates.

Save and send a test

Save the provider, then send a test message to your own phone.

In BulkSMS, open Reports > Sent Messages to check that the message was accepted and see its delivery status.

When the test works, select this provider when you create SMS campaigns in CleverTap.

Delivery reports and callbacks

CleverTap shows a Callback URL on the provider form. CleverTap needs delivery, click and reply events in its own format, and BulkSMS doesn't send that format. This means CleverTap's campaign stats won't show delivered, clicked or replied counts for messages sent through BulkSMS.

You can see delivery status for every message in your BulkSMS account under Reports.

Troubleshooting

Response What to check
201 Created Success. BulkSMS accepted the message.
401 Unauthorized The Token ID or Token Secret is wrong, or the token has been revoked.
400 Bad Request Check that the payload is valid JSON, the Content-Type header is set, and the phone number is in international format.
403 Forbidden Check that your BulkSMS account has enough credits and is allowed to send to that country.

All setup and ready to go!

If you have any questions, please contact our support team. Include your account name and put CleverTap in the subject line, and we'll be happy to help.

For more about CleverTap's provider settings, see the CleverTap Generic SMS documentation.

Struggling with one or more steps? Our support team can help you get set up.