Cash Flow Inventory
Menu
Documentation

BulkSMSBD and order SMS

Connect BulkSMSBD with your API key and Sender ID, then send order SMS for confirmed, awaiting payment, packed, delivered and review request.

Where in the app
SettingsMessagesMessaging hubConnections
Last reviewed
Reading time
12 min

What it is

BulkSMSBD is a Bangladeshi SMS gateway. Once you connect it, the app sends your customer SMS through your own BulkSMSBD account: the order is confirmed, the parcel is packed and booked with the courier, the parcel is delivered, and a few days later a request for a review. Online-store orders that are still unpaid can get a message with the pay link.

Why it matters: a cash-on-delivery customer who knows the parcel is coming, and has the tracking link, is far more likely to be at home and to pay the courier. Fewer refused parcels means fewer return charges.

Example: a shop sends 900 orders a month and switches on four messages per order. Each message with a link is usually 2 SMS parts. That is 900 × 4 × 2 = 7,200 parts. At BDT 0.35 a part, that is about BDT 2,520 a month. If the messages save just 10 refused parcels at BDT 120 return charge each, they recover BDT 1,200 of it, before counting the sales that were not lost.

BulkSMSBD (bulksmsbd.net) is a different company from "BD Bulk SMS" (bdbulksms.net). The app supports both; this guide is about BulkSMSBD. For the messaging hub as a whole (templates, consent, inbox, reports) see the messaging hub.

Who it is for

  • Online and social-media shops in Bangladesh that deliver cash on delivery.
  • Owners who want order updates to go out by themselves, without a person typing each SMS.
  • Staff who answer "where is my parcel?" calls all day.
  • Shops that sell through a connected online store and want unpaid orders reminded.

Before you start#

  • Only the business owner can connect, change or remove the SMS connection.
  • Changing the automatic messages and templates needs the Messaging right.
  • You need a BulkSMSBD account, with balance, and a Sender ID that BulkSMSBD has approved for you.
  • BulkSMSBD sends to Bangladeshi mobile numbers only. Numbers go out as 8801XXXXXXXXX.
  • For Order Packed — Courier Booked you need a connected courier, so that bookings get a tracking number. See courier booking.
  • Each business has one SMS connection. Everything that sends SMS uses it.

Get your API key and Sender ID from BulkSMSBD#

An API key is a long secret code that lets the app send SMS from your BulkSMSBD account. Treat it like a password. A Sender ID is the name or number your customer sees as the sender. BulkSMSBD offers two kinds:

  • Non-masking: the SMS comes from a number. Cheaper.
  • Masking: the SMS shows your brand name (up to 11 characters). BulkSMSBD says masking approval takes 3–5 working days.
  1. Sign in at bulksmsbd.net (opens in a new tab), or choose Create an account there.
  2. Buy an SMS package. Current prices and package validity are on the BulkSMSBD home page (opens in a new tab).
  3. In your BulkSMSBD account, open the developer API page and copy your API key. BulkSMSBD's own developer page is behind its sign-in, so the exact menu name may differ; ask BulkSMSBD support if you cannot find it.
  4. In the same account, note the Sender ID BulkSMSBD approved for you.
  5. If your BulkSMSBD account uses an IP whitelist, add the address of the app's server there (ask our support for it), or switch the whitelist off.

Step by step#

  1. Open Settings › Messages › Messaging hub and choose the Connections tab.
  2. In the SMS card choose Connect (or Change connection if one is already there).
  3. In Provider choose BulkSMSBD (bulksmsbd.net).
  4. Paste your key into API key.
  5. Type your approved sender into Sender ID.
  6. Optionally fill Rate per SMS part (USD), so the cost reports can estimate what you spend.
  7. Choose Save connection. The app first asks BulkSMSBD for your balance. If BulkSMSBD refuses the key, nothing is saved and the reason is shown.
  8. Choose Test connection. You should see "BulkSMSBD answered: balance …" with your balance. Nothing is sent.
  9. Open the Automatic tab and set each order message to Off, Suggest — I approve each one or Automatic.
  10. For Review Request After Delivery, set Days after delivery (1 to 30; 3 by default).
  11. Open the Templates tab and check or write the SMS wording for each message (see below).

What each field means#

FieldWhat to enter
ProviderBulkSMSBD (bulksmsbd.net). Not "BD Bulk SMS", which is another company.
API keyThe key from your BulkSMSBD account. It is a password field. Once saved it is sealed and never shown again; the card only says it is set. Leave it blank to keep the stored key; type a new one to replace it.
Sender IDThe Sender ID BulkSMSBD approved for you. Required.
Rate per SMS part (USD)What one SMS part costs you, in USD, for cost estimates. BulkSMSBD charges in BDT, so convert it. Without a rate the cost shows as unknown.

The order messages#

You find these on the Automatic tab, under Sales. Each line shows when it goes, whether it uses your template or the built-in wording, and how many SMS parts the latest real order would take.

MessageWhen it goes
Order ConfirmedWhen an order is approved, in the app or from your online store.
Order Awaiting PaymentWhen an order from your online store arrives unpaid with a pay link. Never for cash on delivery.
Order Packed — Courier BookedWhen the courier booking is made and the parcel has its tracking number. One per parcel.
Order DeliveredWhen a delivery is marked delivered, or the courier reports it delivered.
Review Request After DeliverySome days after the order is delivered (you choose how many), once per order.

The levels:

  • Off: nothing is sent.
  • Suggest — I approve each one: the message waits on the Waiting tab until someone chooses Approve or Decline.
  • Automatic: sent as soon as it happens. Quiet hours and opt-outs still apply.

Each message goes once per event per order. If the same event happens again, it is not sent twice. Without a courier connection nothing is booked, so Order Packed — Courier Booked does not go; Order Shipped covers that case. A review request is taken back if the order is cancelled or goods are returned before it goes.

How to write an SMS template#

  1. Open Settings › Messages › Messaging hub › Templates and choose New template (or open an existing one to Change template).
  2. Choose the channel sms, the message (for example Order Packed — Courier Booked) and the language.
  3. Type the text. Use Insert a placeholder… to add a value such as {{first_name}} where the cursor is.
  4. Watch the counter under the text: "Without the values: 1 SMS part(s), 120 characters (plain: 160 a part) — the filled-in values add to it."
  5. Choose Preview with a real order. You see the text as it would go for your latest real order, with real links, and "One SMS = 2 part(s), …".
  6. Read any warnings below the preview, then choose Save.

Useful placeholders for order SMS:

PlaceholderWhat it becomes
{{first_name}}, {{customer_name}}The customer's first name, full name.
{{customer_order_no}}The order number your customer knows. For an online-store order, the store's order number.
{{invoice_link}}A private link to the order's invoice PDF (the order PDF until it is invoiced). It opens only that document and expires after 30 days.
{{payment_link}}Where the customer pays: the store's pay page, or the invoice's pay-online page when online payment is connected.
{{carrier}}, {{tracking_link}}The courier and its tracking page.
{{review_link}}Your website (or write your Facebook page link straight into the text).
{{business_name}}Your business name.

SMS parts and length

An SMS is billed in parts. The app counts them the way the gateways do:

  • Plain text (English letters, numbers, common signs): 160 characters in one part; a longer message is split into parts of 153.
  • Unicode (Bangla, emoji, some special signs): 70 characters in one part; then parts of 67.
  • A few signs, such as { } [ ] ~ | and the euro sign, count as 2 in plain text.
  • Nothing is ever cut. A long message simply costs more parts.
  • Links are long. A message with the invoice link is usually 2 parts.

Daily use#

A cash-on-delivery shop in Bangladesh

A Facebook shop in Dhaka takes orders by phone and from its online store. It sets Order Confirmed, Order Packed — Courier Booked and Order Delivered to Automatic, and Review Request After Delivery to Automatic with Days after delivery at 3. It leaves Order Awaiting Payment on, because only prepaid store orders ever get it; cash-on-delivery orders never do.

When the courier booking is made, the customer gets the tracking link and knows the parcel is coming. When the courier reports the parcel delivered, the thank-you SMS goes. For how the cash is settled, see cash on delivery settlement.

Bangla or English

A message in Bangla costs more than twice as many parts as the same length in English (70 per part instead of 160). Short Bangla texts work well. If BulkSMSBD tells you masking SMS must be in Bangla, either write the template in Bangla or use a non-masking Sender ID.

What you see#

Example of the built-in English wording (before you write your own):

MessageBuilt-in text
Order ConfirmedHi Rahima, your order 1203 is confirmed. (items, total, delivery date) — Your shop
Order Awaiting PaymentHi Rahima, order 1203 is awaiting payment. Please complete your payment to confirm your order. (pay link) — Your shop
Order Packed — Courier BookedHi Rahima, order 1203 has been packed and is ready for courier dispatch. Courier: Steadfast. Track your order: (tracking link) — Your shop
Order DeliveredHi Rahima, your order 1203 has been delivered. Thank you for shopping with Your shop.
Review Request After DeliveryHi Rahima, we hope you love your purchase! We'd appreciate your feedback — please leave us a review. (review link) — Your shop

The built-in wording is long for SMS; most shops write a shorter own template.

Example of a short own template for the packed message, in plain English so it fits in fewer parts:

{{first_name}}, order {{customer_order_no}} is packed. Track: {{tracking_link}} - {{business_name}}

The SMS card on Connections shows the state: Working, Not working (with the reason) or Not checked yet, and Fields set: API key, Sender ID. The Sent tab lists every message with its status, and a failure as a plain sentence. Reports shows sent, delivered, failed and costs per channel.

Good practice#

  • Keep SMS short: one or two parts. Put the most important words first.
  • Use Preview with a real order after every change; links make texts longer than they look.
  • Keep a little more balance than a week's need; a low balance holds your messages.
  • Never send your API key by chat, e-mail or to the assistant. Type it only into the API key field.
  • Set a Monthly cap for SMS under Costs this month so marketing stops at your limit; order messages still go.
  • Check the Sent tab once a day for failures.
  • Try a new message on Suggest — I approve each one for a day, approve each one on Waiting, then switch it to Automatic.

Troubleshooting#

What you seeWhyWhat to do
"Your BulkSMSBD balance is too low — top it up in your BulkSMSBD account."No balance left.Top up. The message is tried again later.
"Your BulkSMSBD balance validity has expired — renew it in your BulkSMSBD account."The package validity ended.Renew it. The message is tried again later.
"BulkSMSBD does not know this API key — enter the right key in Messaging › Connections."Wrong or old key.Copy the key again from BulkSMSBD and save it.
"BulkSMSBD refused this server’s address (IP not whitelisted) — add the server’s IP address in your BulkSMSBD account."Your account allows only listed addresses.Add the server's address, or switch the whitelist off.
"BulkSMSBD refused the Sender ID (not correct or switched off) — check the Sender ID approved in your BulkSMSBD account."The Sender ID is not approved or is mistyped.Type it exactly as BulkSMSBD shows it.
"Your BulkSMSBD account is not verified yet — finish the verification with BulkSMSBD."Account not verified.Finish BulkSMSBD's verification.
"Your BulkSMSBD account or its price is switched off (code …) — contact BulkSMSBD."BulkSMSBD switched the account off.Contact BulkSMSBD.
"BulkSMSBD says the mobile number is not valid."The customer's number is wrong.Correct it on the customer. This message is not tried again.
"BulkSMSBD sends to Bangladeshi mobile numbers only."A foreign number.Use e-mail or WhatsApp for that customer.
"BulkSMSBD sends masking SMS in Bangla only — write the message in Bangla or use a non-masking Sender ID."BulkSMSBD rule for masking senders.Rewrite the template in Bangla, or change the Sender ID.
"BulkSMSBD could not be reached — the message is tried again later."A network or BulkSMSBD outage.Nothing; it retries.
"No sms template — these messages are skipped. Add one."A message is on but has no SMS template.Add one on Templates.
"Choose between 1 and 30 days after delivery."Days after delivery out of range.Enter 1 to 30.
Messages wait and the card says Not workingAfter 3 refusals in a row (wrong key, IP, Sender ID, account off) the connection stops so messages are not wasted. Nothing is lost.Fix the cause, then choose Test connection or save the key again. The waiting messages then go.

Limits and what is not there yet#

  • BulkSMSBD is built and tested against recorded answers from BulkSMSBD's published interface; a real live account is the proof for your shop.
  • Bangladeshi numbers only.
  • Cost estimates use a rate you enter in USD; the app does not read your BulkSMSBD price.
  • Couriers that are only polled do not trigger the "delivered" message yet; couriers with webhooks, such as Steadfast and Pathao, do.
  • There is no one-time-code SMS.

Questions#

Does the test send an SMS?

No. Test connection only asks BulkSMSBD for your balance. To see a real message, set a message to Suggest — I approve each one and approve one order to your own number.

Will cash-on-delivery customers get the "awaiting payment" SMS?

No. Order Awaiting Payment goes only for online-store orders that arrive unpaid with a pay link. It is never sent for cash on delivery.

Do customers need to opt in to order SMS?

Order messages are transactional: about the customer's own order, so no opt-in is needed. A customer who opts out completely gets none. Opt-outs are checked again when the review request goes. See the messaging hub for consent.

What if I remove the connection?

Remove wipes the key and stops sending. Messages switched on for SMS wait until a new connection is saved.

Can the assistant set my SMS for me?

Yes. Ask it to set these SMS. It shows a preview first, with the text for a real order and the parts, and a person with the Messaging right approves the change. It never asks for or takes your API key.

All guides

Type at least 2 letters.↑ ↓ to moveEnter to openEsc to close