Bangladesh payments

Bangladesh payment gateway API.
bKash, Nagad and Upay collections and payouts.

Accept BDT payments from bKash, Nagad and Upay, and send BDT payouts to the same wallets, through one PAYJN order, callback and reconciliation model.

Pay-inbKash, Nagad, Upay
PayoutsbKash, Nagad, Upay
BDTOne order and callback model
Why Bangladesh

Mobile wallet payments, both directions.

PAYJN supports bKash, Nagad and Upay for both collections and payouts in Bangladesh. Customers pay from their wallet, and you can send funds back to bKash, Nagad and Upay accounts for withdrawals, commissions or seller settlements. For an international business, the hard part is not adding three wallet logos. It is matching each BDT payment to the right order, confirming the final result on your server and handling the exceptions: abandoned approvals, late callbacks and payouts with an unclear result.

PAYJN connects all three wallets through its API, with order references, transaction states and callbacks defined in your approved integration documentation.

Pay-in methodsbKash, Nagad and Upay wallet payments.
PayoutsTransfers to bKash, Nagad and Upay wallet accounts.
Best forDigital services, ecommerce, online platforms and other approved international businesses.
PAYJN roleAPI integration, route coordination, callback visibility, reconciliation support and exception handling.

Bangladesh payment methods PAYJN supports

Pay-in and payout coverage confirmed by PAYJN operations on 30 October 2026. Final availability, limits and fees are confirmed for each approved merchant setup.

Bangladesh pay-in and payout methods
MethodPay-inPayouts
bKashCustomer pays from a bKash walletBDT sent to a bKash account
NagadCustomer pays from a Nagad walletBDT sent to a Nagad account
UpayCustomer pays from an Upay walletBDT sent to an Upay account

Published scope only. Each method, limit and fee depends on merchant approval. Collection approval does not by itself enable payouts.

How a Bangladesh wallet payment works, step by step

  1. Your system creates the order with a unique merchant reference and the exact BDT amount, and calls the PAYJN API.
  2. PAYJN returns the payment step for the chosen wallet, as described in your integration documentation.
  3. The customer approves the payment in bKash, Nagad or Upay. Your page should explain what the customer will see and how long the request stays open.
  4. PAYJN sends a callback when the payment result is known. Your server verifies it and updates the order once, even if the callback arrives more than once.
  5. If the callback is late, query the order status instead of asking the customer to pay again.
  6. Reconcile daily against the transaction report, including expired and failed attempts.

bKash, Nagad and Upay: what to get right

Follow the authorization steps documented for each approved wallet route. Where the customer approves the payment outside your page, design the checkout so a slow or interrupted approval does not turn into a lost order or a double charge. Do not assume every wallet uses identical instructions; follow the flow documented for each approved method.

  • Wallet account details: collect the details your documentation requires, typically the mobile number linked to the wallet, and validate the format before creating the order.
  • Exact amount: show the BDT amount the customer will approve and do not let it change after the order is created.
  • Expiry: show how long the customer has to approve, and decide what happens to an approval that arrives after the order has expired.
  • Return to your page: treat it as navigation only. Mark the order paid only after your server receives and verifies the PAYJN callback, or confirms the status by query.
  • Never ask for a PIN: your support team should never request a customer's wallet PIN, password or one-time code.

For a detailed planning checklist, read the bKash and Nagad integration checklist.

Transaction states and what your system should do

Transaction states (illustrative; use the names in your approved documentation)
StateMeaningYour system should
Created / pendingPayment requested, not yet confirmedWait for the customer's approval; do not fulfil
PaidPayment confirmed for the orderFulfil once, record the PAYJN reference
FailedPayment declined or not completedLet the customer start a new attempt
ExpiredNo confirmed payment before the deadlineClose the order; investigate any later payment
Unknown after timeoutYour request or callback timed outQuery status before any retry; never create a duplicate order

Bangladesh payouts to bKash, Nagad and Upay

PAYJN payouts in Bangladesh send BDT to bKash, Nagad and Upay wallet accounts. Common uses include seller settlements, commissions and customer withdrawals. Plan each payout with validated beneficiary details, a funded balance, one stable merchant reference and a clear rule for timeouts: query the original payout first, and create a replacement only after the original is confirmed as failed and the replacement is approved.

The Bangladesh payout API page covers beneficiary checks, payout states and controls in detail.

Reconciliation and exception handling

Finance teams should be able to explain every BDT movement. Match each paid order to its PAYJN transaction reference and amount every day, and keep a short list of open exceptions with an owner for each.

  • Paid but order still pending: check whether the callback reached your server, then query the order status.
  • Customer says they paid, no record: ask for the payment time, amount and wallet transaction ID, and send them to PAYJN support through the agreed channel.
  • Duplicate callbacks: acknowledge each one, but credit the order only once. See how to handle duplicate payment webhooks.
  • Repeated attempts: if a customer tries again after a failure, link the attempts to the same order so only one can be fulfilled.

Prepare a Bangladesh merchant or partner enquiry

Explain your role in the proposed integration so the team can review the business and payment flow together.

  • Direct merchant: the product or service you sell, your website or app URL, customer locations and expected BDT order amounts.
  • Platform or software team: the merchant you are integrating for, the contracting company and how orders and payment results will be matched.
  • Payment or referral partner: your service, the downstream merchant types and which entity would receive onboarding review.

For each enquiry, include your company registration jurisdiction, the methods and directions you need (collections, payouts or both), current or forecast monthly BDT volume and intended launch timing. Do not send API secrets, identity documents or customer data in a first enquiry. Fees, limits, settlement arrangements and timelines are agreed for each approved business. A new business with no prior processing history can apply too; see what PAYJN reviews instead. Start with the local payment API checklist or review the integration approach.

Bangladesh payment services are subject to merchant onboarding, route approval and applicable local requirements. PAYJN does not claim to be a bank or a Bangladesh-licensed payment institution, and payment method names identify coverage, not endorsement, sponsorship or a direct partnership.
Business workflow review

Scope your Bangladesh checkout project.

Help the team evaluate your actual product, contracting entity and payment flow. Share your company or product URL, your role and whether the business is already processing payments or preparing to launch.

These are business-review and integration-planning workflows, not confirmation that a sector, entity or funds flow has been approved. Disclose regulated activities, wagering, prizes and cash-redeemable balances accurately. Method availability and eligibility require a separate merchant-specific review.

Bangladesh payment FAQ.

Which payment methods does PAYJN support in Bangladesh?

PAYJN supports bKash, Nagad and Upay for BDT collections and payouts. The methods and directions enabled for your business are confirmed during onboarding.

Can I send payouts to bKash, Nagad and Upay accounts?

Yes. PAYJN supports BDT payouts to bKash, Nagad and Upay wallet accounts. Payouts are approved separately from collections, and limits are confirmed for each merchant setup.

Can I use bKash, Nagad and Upay through one API integration?

Yes. PAYJN connects all three wallets through one order, callback and reconciliation model. Follow the documented flow for each approved method; do not assume every wallet uses identical instructions.

When should my system mark a Bangladesh order as paid?

Only after your server receives and verifies the PAYJN callback, or confirms the status by query. A customer returning to your page is not proof of payment.

How are Bangladesh fees, limits and settlement agreed?

Provide your website, business model, expected monthly BDT volume and average order value. Collection and payout charges, limits and settlement terms are agreed for your approved setup; there is no single public rate for every merchant.

What do I need to start accepting payments in Bangladesh?

Your company details and website, a description of what customers pay for, the methods you need, expected monthly BDT volume and average order value, and a callback endpoint for testing.

Before you integrate

Bangladesh resources.

Bangladesh / payouts

Bangladesh payout API

Send BDT payouts to bKash, Nagad and Upay with beneficiary checks, clear states and safe retry rules.

Grow in Bangladesh

Discuss your Bangladesh payment flow.

Share your product, the methods you need, expected BDT volume and average order value. We will reply with a practical next step.

Request a Bangladesh business proposal →