Manual vs Automatic Payment Verification for Bangladesh Online Shops
There are three common ways to confirm a wallet payment for an online shop in Bangladesh. You can check the TrxID yourself, you can use software that reads the payment SMS, or you can use an official gateway or merchant API from the provider. Manual is cheapest to start, a gateway is the most official, and SMS-based confirmation sits between them.
Option 1: manual TrxID checking
The customer sends money and gives you a TrxID. You open your SMS inbox or wallet app, find the payment, compare the amount and time and mark the order paid. Nothing to install, nothing to pay, and it works for any wallet. It also depends completely on you being at your phone and paying attention.
It is a fine way to start. It becomes the bottleneck when orders grow, when you want to sleep, or when more than one person needs to confirm payments.
Option 2: SMS-based automatic confirmation
A small app on the shop's Android phone reads the payment-received SMS and sends it to a server. The server matches the message to a waiting order using the order reference or the TrxID, plus the exact amount, then tells your store the order is paid. QRPayBD is one example of this approach. The money still goes straight from the customer to your wallet number, and the software never touches it.
The strength is that it reuses the payment message you already receive and needs no merchant account. The weakness is that it depends on that message: it must arrive, be readable and be genuine.
Option 3: official gateway or merchant API
Here the wallet provider itself tells your store that a payment succeeded, through an API. This is the most direct and official route, and it does not depend on SMS. It usually requires a merchant account approved by the provider and a technical integration. What it costs, and how long approval takes, varies by provider, so ask them.
Side-by-side comparison
| Manual TrxID check | SMS-based automatic | Official gateway or merchant API | |
|---|---|---|---|
| Effort per order | High. You check each one. | Low once set up. | Low once set up. |
| Speed | As fast as you are. | Usually soon after the SMS arrives; delays are possible. | Depends on the provider's system. |
| Cost | Varies. Mostly your time. | Varies by product. | Varies. Ask the provider. |
| Fraud resistance | Depends on your care. Screenshots are weak. | Better than screenshots. Forged SMS is still possible. | Strongest, because the provider confirms. |
| Setup needed | None. | Android phone, app, store connection. | Merchant account, approval, integration. |
| Depends on | You being available. | Phone on, online, and SMS arriving. | The provider's API and uptime. |
| Fits personal number? | Yes. | Yes. | No. It needs a merchant account. |
What to ask before you choose
- How many orders do I confirm in a normal week, and how many of them arrive when I cannot check my phone?
- How costly is one wrongly confirmed order for my shop: a small item or a large, hard-to-reverse one?
- Do I have a developer, or a platform such as WooCommerce, that can connect to an automatic option?
- Do my wallet provider's terms allow me to take business payments on this account?
- Can I keep a phone on and online all day to read SMS?
Your answers usually point to one option quickly. If the honest answer to the second question is 'a lot', lean towards the official route or add a manual balance check for large orders.
Who should pick what
- Manual: a very small shop with a few orders a day, a new shop testing demand, or anyone who prefers to look at every payment.
- SMS-based automatic: a shop that takes wallet Send Money on a personal number, has too many orders to check by hand, and has a store or developer who can connect it. Your provider's terms about business use still apply.
- Official gateway or merchant API: a shop with regular or larger sales, a developer to integrate it, and a provider that has approved the account. If you have official credentials, use them.
Many shops move through these in order: manual first, then automatic as volume grows, then an official account when the business can support it.
Honest limits of SMS-based confirmation
SMS-based confirmation is not an official wallet API. Messages can be delayed, missed or reworded. A forged SMS is possible, because the sender name of an SMS can be faked. The phone must stay on and online. For large or hard-to-reverse orders, check your balance in the wallet app as well.
With QRPayBD specifically: the message readers for bKash, Nagad and Upay have been verified on real payments, and any payment that does not match automatically can be matched by hand from the Unmatched screen. Rocket and banks are planned. It needs an Android phone, and a store or developer to create orders through the API or the WooCommerce and Elementor plugin. There is no payment link you can send in a chat yet.
How matching works in QRPayBD
- Reference: the customer types the order reference (QP-XXXX) in the wallet app's Reference field. If it appears in the SMS and the amount matches, the order confirms automatically.
- TrxID: if there is no reference, the customer enters the TrxID on the QRPayBD payment page, and it is matched to the SMS.
- Amount only: an optional shop setting that matches by exact amount alone. It is off by default and applies only when exactly one order is waiting.
In every case the amount must match exactly, and one TrxID can confirm only one order.
Read: how to verify a bKash TrxID automatically
Want to try the SMS-based option on a real order? It is free during early access.