Payments

bKash and Cash on Delivery for Ecommerce in Bangladesh: A Practical Guide

How COD and bKash work for an online store in Bangladesh: COD risks, bKash setup, delivery charges in advance and keeping payment status straight.

UrShop Team

Published 7 min read

Illustration of a parcel being handed over at a doorstep, with cash on one side and a phone showing a payment confirmation on the other

For most online stores in Bangladesh, payment comes down to two things: cash on delivery and mobile financial services such as bKash. Both work, and both create work for you after the order is placed.

This guide covers how each one actually runs day to day, where money and time get lost, and how to set things up so you always know which orders are paid. It's general advice; fees, limits and terms come from your courier and payment provider, so confirm them with them directly.

Why your payment options matter

Payment is the moment a shopper decides whether they trust you. The options you offer affect more than convenience:

  • Trust. A shopper buying from a new shop for the first time may only be willing to pay once the parcel is in their hands.
  • Friction. Every extra step (leaving the site, entering a code, waiting for a confirmation) is a chance for the shopper to give up.
  • Cash flow. Prepaid orders put money in your account before you ship. Cash-on-delivery money arrives later, through your courier.
  • Risk. Cash-on-delivery orders can be refused at the door, and you still pay for the delivery attempt.

The goal isn't the most payment options; it's the right mix for your buyers that you can also reconcile reliably.

How cash on delivery works for an online store

  1. The shopper places an order and chooses cash on delivery.
  2. You confirm the order and hand the parcel to your courier with the amount to collect.
  3. The rider collects cash from the customer at the door.
  4. The courier pays the collected amount to you, minus their charges, according to the payout schedule in your agreement.
  5. You match the payout against your delivered orders.

Cash on delivery lowers the barrier to a first order, which is why many sellers offer it from day one. The cost is that the risk, and the waiting, moves to you.

The real risks of cash on delivery

  • Refused and fake orders. Some orders are placed on impulse, as a joke, or by someone who changes their mind. You pay delivery, and often return delivery, for nothing.
  • Cash tied up. Money for delivered parcels sits with the courier until the next payout.
  • Stock tied up. Products traveling to customers who refuse them can't be sold to anyone else.
  • Reconciliation errors. Without a routine, it's easy to miss a parcel that was delivered but never paid out, or paid out at the wrong amount.

How to reduce cash-on-delivery risk

  • Confirm before you ship. A quick call or message for new customers and high-value orders catches many orders that would be refused.
  • Check the customer's delivery history where you have a tool for it, especially for large orders.
  • Be clear on product pages. Accurate photos, sizes and delivery charges prevent "this isn't what I expected" at the door.
  • Set honest delivery expectations. A parcel that arrives much later than the buyer expected is more likely to be refused.
  • Ask for the delivery charge in advance on orders where the risk is higher (see below).
  • Track your refusal rate by product, area and source, and act on what you find.

How bKash online payment works

There are two very different ways sellers take bKash, and the difference matters.

Manual: send money and share the transaction ID

The buyer sends money to a number and messages a screenshot or transaction ID, and the seller checks it by hand. It needs no setup, but every payment has to be checked, screenshots can be edited, and it doesn't scale. It also mixes business money with your personal wallet.

Integrated: a bKash merchant account at checkout

With a bKash merchant account connected to your store, the shopper picks bKash at checkout and is taken to bKash to approve the payment with their account. bKash then confirms the payment to your store, and the order is marked paid automatically. Nobody has to compare screenshots, and refunds can go back through the same channel.

Getting a merchant account, and the charges that apply, depend on bKash's current requirements and your agreement with them, so check with bKash directly.

Asking for the delivery charge in advance

A common middle ground is to ask the shopper to pay the delivery charge online when they order and the rest in cash on delivery. It filters out many orders that were never going to be accepted, and if a parcel is refused, the delivery cost is already covered.

The trade-off is a little more friction at checkout. Explain it clearly at checkout and in your shipping policy, so honest buyers understand why you ask.

UrShop calls this Secure COD: the shopper pays the delivery charge with bKash at checkout and the rest in cash on delivery. It isn't a percentage deposit or full prepayment. Secure COD is switched on per store, so ask the UrShop team if you'd like to use it, or read how Secure COD works.

Keep payment status and order status separate

Whether an order has been paid and where it is in delivery are two different questions. Mixing them up is how sellers end up shipping unpaid bKash orders or forgetting to chase a courier payout. Track them separately:

Order status and payment status in common situations
SituationDelivery statusPayment status
Cash-on-delivery order on its wayShippedUnpaid
bKash payment confirmed, not yet packedProcessingPaid
Cash-on-delivery parcel deliveredDeliveredCash collected by the courier; check it arrives in your payout
Parcel refused at the doorReturned or cancelledUnpaid
bKash order cancelled before shippingCancelledRefund due, then refunded
Shopper left the bKash page without payingNot ready to shipUnpaid: follow up or offer cash on delivery

On UrShop, an order's payment status is tracked separately from its order status, so a cash-on-delivery order can be on its way before it has been paid for.

Illustration of an order card with two separate progress tracks, one for payment and one for delivery
Paid or unpaid, and where the parcel is: two questions, tracked separately.

Failed and abandoned online payments

Some online payments won't complete: the shopper closes the bKash page, enters the wrong code, doesn't have enough balance, or loses their connection. A few rules keep this from becoming a mess:

  • Never ship a bKash order until the payment is confirmed by the payment system, not by a screenshot.
  • Follow up quickly. A short message offering to help, or to switch the order to cash on delivery, rescues many of these orders.
  • Look for patterns. If many shoppers abandon at the payment step, check whether the step is clear on a phone and whether the delivery charge surprised them.
  • Recover unfinished checkouts. Shoppers who left before ordering can be reminded, with their consent.

Where abandoned-checkout recovery is enabled for an UrShop store and an SMS account is connected, shoppers who started but didn't finish checkout can get an SMS with a link that restores it.

Common payment mistakes

  • Collecting business payments into a personal mobile wallet
  • Accepting payment screenshots as proof
  • Shipping before an online payment is confirmed
  • Not matching courier payouts against delivered cash-on-delivery orders
  • Adding the delivery charge only at the last step of checkout
  • Having no written refund policy, so every refund is negotiated
  • Offering more payment methods than you can reconcile

When to offer more than one method

A practical starting point for most stores is cash on delivery plus one online method. Add more when:

  • Customers regularly ask for a method you don't offer
  • You can confirm and reconcile it as reliably as your existing methods
  • Its charges still leave you a margin
  • It's integrated with your store, so payment status updates without manual checking

Payment setup checklist

  • Cash on delivery is available, with a clear delivery charge shown before the order is placed
  • bKash is connected through a merchant account, if you're offering it
  • You've placed a test order with each method you offer
  • Your refund and return policy says how refunds are paid
  • You've decided when to confirm cash-on-delivery orders by phone
  • You know your courier's payout schedule and statement format
  • Someone matches payouts and payments against orders on a regular schedule

Payments are one part of the order journey. For the rest, see how to start an online store in Bangladesh and how to choose a courier, or see how payments and delivery connect on UrShop.

Found this useful? Share it.

Written by the UrShop Team

We build UrShop, an ecommerce platform for selling online in Bangladesh. Our guides aim to be useful whether or not you use UrShop.

Last reviewed . Spotted something out of date?

Back to top

Put it into practice

Open your store on UrShop and sell with cash on delivery, bKash and local couriers.

Explore features

More help in Resources, or contact UrShop.