How to Verify a bKash TrxID (Manually and Automatically)
To verify a bKash TrxID, find the payment-received message in your own SMS inbox or bKash app and compare four things with the order: the TrxID, the exact amount, the sender and the time. If all match and the code has not been used for another order, the payment is real. This is reliable but slow, and it can be automated by reading the same SMS with software.
How to check a bKash TrxID by hand
The customer sends money to your bKash number and gives you a TrxID, often by typing it into a form or a chat. Do not trust the code or a screenshot on its own. Check it against what your own phone received.
- Open your SMS inbox and search for the TrxID the customer gave. Search the exact code, not part of it.
- If you find a message, read it. It usually states the amount received, the sender's number, the TrxID, your balance and the time.
- Compare the amount with the order total. It must be exactly the same, not just close.
- Check the time. It should fit when the customer placed the order.
- Check the sender number if the customer told you which number they paid from.
- Confirm in the bKash app, in your transaction history, that the same payment is listed.
- Write the TrxID next to the order, and make sure it is not already on another order.
If the search finds nothing, the payment may not have arrived yet, the message may be delayed, or the code may be wrong or invented. Wait a few minutes and look at your transaction history and balance before you decide.
What to compare, and why each item matters
- TrxID: ties the check to one specific payment.
- Amount: a payment of a different amount is a different payment. Short payments are a common mistake, and sometimes an attempt.
- Time: an old TrxID reused for a new order will show an old time.
- Sender: helps when two customers pay similar amounts around the same time.
- Balance: your balance should have gone up by the amount. For large orders this is the strongest check.
Why manual checking breaks down
Manual verification is fine for a handful of orders a day. It starts to fail when volume grows or when you are not at your phone.
- Customers wait while you search, especially at night or on busy days.
- Payment messages sit among personal messages and are easy to miss.
- Tired people make mistakes: marking the wrong order, missing a short payment, approving a reused code.
- Only one person can do it, because the SMS arrives on one phone.
- There is no record that links the message to the order unless you write it down.
How automatic bKash TrxID verification works
Automatic confirmation does the same comparison with software. It does not log in to bKash and it does not need your PIN. It reads the payment SMS that already arrives on your phone.
- A small app on the shop's Android phone reads incoming payment SMS and sends them to a server.
- Your store creates an order with the exact amount. The customer is shown the shop's wallet number, the amount and an order reference.
- The customer pays with Send Money. If the wallet app has a Reference field and they type the order reference there, the reference appears in the SMS and the order can be matched directly. If not, they enter the TrxID on the payment page.
- The server looks for a message with that reference or TrxID and the exact amount. If found, and the TrxID is unused, the order is marked paid and your store is notified.
QRPayBD works this way. Its free Collector app reads the payment SMS, QRPayBD matches it to the order and sends your store a signed webhook. It never holds or moves money. An optional shop setting can match by exact amount alone, but it is off by default and only applies when exactly one order is waiting.
What if the TrxID is not found?
Not finding the code does not always mean the customer is lying. Work through the usual causes before you refuse the order.
- The payment is still on its way, or the SMS is delayed. Check the app's transaction history and your balance.
- The customer mistyped one character. Ask them to copy the code from their message instead of typing it.
- The customer paid a different number. Ask which number they sent to.
- The customer gave a code from the payer's side that differs from the one in your message. This was seen once with a Upay Bangla QR payment, and it is not known whether bKash does the same.
- The payment really did not happen, or was cancelled. Ask for the time and the amount and keep the order on hold.
What you should still check yourself
Automatic confirmation based on SMS is not an official bKash API. SMS can arrive late, be missed or be reworded after a format change, and a forged SMS is possible. Real wallet messages usually come from a named sender rather than a phone number, but do not rely on that alone. For large payments, open the bKash app and check your balance before you ship.
Also keep an inbox for payments that did not match, such as a wrong amount or a missing reference, and resolve them by hand. A good setup reduces manual work. It does not remove your responsibility for high-value orders.
What to know before you rely on it
The message readers for bKash, Nagad and Upay have been verified on real payments. Even so, SMS is not an official API, so a message can be delayed, missed or reworded, and some payments may need a manual match from the Unmatched inbox in your dashboard. Before you switch your whole checkout, test with one small payment and watch how it behaves.
Also remember that bKash may restrict business use of personal accounts in its own terms. Check the provider's current terms and follow them. QRPayBD is not affiliated with bKash.
Read: what a TrxID is and where to find it
If you want to try automatic confirmation on a small order, an account is free during early access.