All posts
Payments05 Jun 2026· 10 min

bKash ISP Billing in Bangladesh: Payment Gateway, Webhook, and PayBill Guide 2026

Complete guide to accepting bKash payments for ISP billing in Bangladesh. Covers all three integration modes — Payment Gateway, Webhook IPN, and PayBill — with automatic invoice reconciliation and common pitfalls.

IE
iBilling Engineering
Network team

bKash is Bangladesh's dominant mobile financial service with over 70 million registered accounts. For ISPs, bKash is not optional — a significant portion of subscribers will only pay through bKash, and many will pay via the physical PayBill option at their local shop or bank. This guide covers all three bKash integration modes available in iBilling and explains which mode fits different ISP business models.

Why bKash Integration Matters for Bangladesh ISPs

ISPs that require only bank transfer or cash collection lose revenue to subscriber churn when payment is inconvenient. In Bangladesh, late payment is the primary cause of subscriber loss for small and mid-size ISPs. bKash removes the friction: subscribers pay from their phone in under 30 seconds, the payment posts immediately to the billing system, and the subscriber's account renews automatically — no operator intervention needed. The result is lower late-payment rates, fewer manual renewal calls, and faster cash flow.

Three bKash Integration Modes in iBilling

iBilling supports all three official bKash API integration patterns:

  • Payment Gateway: subscriber pays via a hosted bKash checkout page in the customer portal
  • Webhook IPN: subscriber-initiated payment to your bKash merchant number triggers automatic invoice matching
  • PayBill: subscriber pays via any bKash channel (app, USSD, agent) to your registered PayBill number

Most ISPs in Bangladesh use PayBill as the primary mode because it works for subscribers who do not use the customer portal. The bKash app, USSD menu, and bank counters all support PayBill payments — no portal login required.

bKash Payment Gateway Integration

The Payment Gateway mode uses bKash's Create Payment and Execute Payment API endpoints. When a subscriber clicks Pay in the iBilling customer portal, iBilling creates a bKash payment session and redirects the subscriber to the bKash checkout URL. After the subscriber completes payment on the bKash page, bKash redirects back to the iBilling portal with a payment ID. iBilling calls the Query Payment endpoint to verify the transaction and marks the invoice as paid. The subscriber's account renews automatically.

This mode requires a bKash merchant account with API access enabled. The API credentials (App Key, App Secret, Username, Password) are configured in iBilling under Settings > Payment Gateways > bKash.

bKash Webhook IPN Integration

The IPN (Instant Payment Notification) mode handles payments that subscribers make directly to your bKash merchant number outside the portal — via the bKash app or USSD. bKash sends a POST request to your iBilling webhook URL the moment a payment completes. iBilling receives the IPN, matches the payment amount and reference to an open invoice, and automatically reconciles. The subscriber's account renews without any manual action from your billing team.

The webhook URL format in iBilling is api.ibilling.net/v1/webhooks/bkash/[your-tenant-slug]. This URL must be registered with bKash as your merchant's IPN endpoint. iBilling verifies the webhook signature before processing any payment to prevent spoofed notifications.

bKash PayBill Integration

PayBill is the most widely used bKash mode for ISPs in Bangladesh. Subscribers pay to your registered bKash bill number from any channel — bKash app, USSD *247#, Nagad, bank counters, or bKash agent points. The payment posts to your merchant account and bKash sends a real-time notification. iBilling receives the notification, extracts the subscriber reference number from the bill payment details, matches it to the correct customer account, and applies the payment automatically.

To use PayBill, you must register a bKash bill number through your bKash business relationship manager. Once registered, iBilling handles all reconciliation — no manual payment entry, no daily spreadsheets.

Automatic Invoice Reconciliation in iBilling

Regardless of which bKash mode your subscribers use, iBilling reconciles payments automatically. The matching logic works as follows: iBilling extracts the payment amount and subscriber reference from the bKash notification, finds the oldest unpaid invoice for that subscriber with a matching or close amount, and marks it paid. If no match is found, the payment is logged as unmatched and appears in the billing team's reconciliation queue. Over 95% of bKash payments reconcile automatically without any manual action.

Common bKash ISP Billing Pitfalls

ISPs new to bKash integration frequently encounter these issues:

  • IPN endpoint not whitelisted in bKash merchant settings — webhooks silently fail
  • Subscriber reference number format mismatch — payments land in unmatched queue
  • bKash API version mismatch — bKash updates APIs regularly; always use current v1.2 endpoints
  • Missing HTTPS on the IPN endpoint — bKash rejects non-TLS webhook URLs
  • Timezone mismatch in transaction logging — bKash timestamps in BST, reconcile in BST not UTC

iBilling handles all of these automatically for tenants on the platform. API version updates are deployed centrally — you never need to update integration code when bKash changes their API.

Try it free
Automate this in iBilling.
Start free