Where you can send payouts in Bangladesh
PAYJN supports BDT payouts to bKash, Nagad and Upay accounts. Common uses include seller settlements, commissions and customer withdrawals.
| Destination | What the recipient receives | Recipient details |
|---|---|---|
| bKash | BDT sent to a bKash account | Account identifier as specified in your documentation |
| Nagad | BDT sent to a Nagad account | Account identifier as specified in your documentation |
| Upay | BDT sent to a Upay account | Account identifier as specified in your documentation |
Payouts are approved separately from collections. Confirm which destinations and beneficiary types are enabled for your merchant setup before you submit payout orders.
Prepare a payout request
| Area | Confirm with the team |
|---|---|
| Beneficiary | Wallet type and the required destination fields |
| Amount and currency | BDT amount format, fees and current payout limits |
| Funding | Required balance, charges and funding arrangements |
| Order reference | One stable merchant reference per payout and the supported retry rules |
| Status verification | Callback handling and the documented status-query process |
Use the codes and field formats from your approved PAYJN integration documentation. Do not substitute a wallet display name for its documented code.
How a Bangladesh payout flow works
A reliable payout integration separates "the request was accepted" from "the money arrived". Plan each step and the record your system keeps at that step.
- Fund the balance so it covers the payout amount and charges, according to your agreed arrangement.
- Validate the beneficiary: check the wallet type and account identifier, and use account validation where the route supports it.
- Create the payout with a unique reference: one business payout, one merchant reference. Store it before sending the request.
- Record the immediate response: an accepted or processing response means the request is being handled, not that the recipient has been paid.
- Confirm the final state from the verified callback, and query the payout status if the callback is late.
- Reconcile each payout against the transaction record and balance movements, including charges and any returned transfers.
Beneficiary checks before sending
Wrong or outdated destination details can lead to rejected or misdirected payouts, so check them before you send.
- Wallet type: record which wallet the recipient uses (bKash, Nagad or Upay) as a separate field, not inside a free-text note.
- Account identifier: collect the identifier your documentation requires, typically the mobile number linked to the wallet, and validate its format.
- Name checks: where the route returns an account name, compare it with your records and hold payouts that do not match for review.
- Changes: treat a changed wallet account as a new beneficiary and apply your approval rule before the first payout to it.
Payout states and what your system should do
| State | Meaning | Your system should |
|---|---|---|
| Accepted / processing | Request received and being handled | Wait for the final state; do not resend |
| Successful | Payout completed by the route | Mark the obligation paid; keep the PAYJN reference |
| Failed / rejected | Payout not completed | Check the reason, correct the details, and approve any new payout explicitly |
| Returned | Funds came back after an initial success | Reopen the obligation and contact the recipient |
| Unknown after timeout | No clear response to your request | Query the status first; never create a second payout |
Avoid duplicate payouts after a timeout
If your payout request times out, the payout may still have been created. Sending a new payout with a new reference can pay the same person twice. Keep the original reference, query the payout status, and only create a replacement after the original is confirmed as failed and someone has approved the replacement. The payout timeout and retry checklist explains this rule in detail; it applies in Bangladesh as well.
Successful payout, but the recipient has not received it
First compare the wallet type, account identifier, amount and time in your record with the PAYJN transaction. Then ask the recipient to check the right wallet account and its transaction history. If it still does not match, send the payout reference, amount and time to PAYJN support through the agreed channel. Do not send the payout again while the original is being investigated.
Funding and controls
- Keep enough balance for scheduled payout batches, including charges.
- Set approval rules for large payouts and for the first payout to a new beneficiary.
- Separate the people who add beneficiaries from the people who approve payouts.
- Reconcile payouts daily and review every failed or returned transfer.
For collections, wallet payment steps and reconciliation, see the Bangladesh payment API page and the bKash and Nagad integration checklist.
