Omnikyo/Help Center
Troubleshooting

Payments troubleshooting

Fix payment issues on your storefront and in orders.

বাংলায়: বিকাশ পেমেন্ট নিয়ে সমস্যা সমাধান করুন। কখনো বিকাশ চেকআউটে দেখা দেয় না বা পেমেন্ট লিঙ্ক এক্সপায়ার হয়। অর্ডারে পেন্ডিং স্ট্যাটাস আটকে থাকলেও উপায় আছে।

Where to find it: Payment problems show on the order details modal (Orders › open an order › Payments card), or on the storefront checkout.

bKash does not appear at checkout

The storefront shows only Cash on delivery when you expect bKash to be an option.

What you see: The checkout Payment step lists only Cash on delivery. The bKash option is missing.

Why it happens: bKash appears at checkout only when two things are both true:

  1. The toggle "Show bKash at checkout" is On in Settings ▸ Payments ▸ bKash.
  2. The connection test has succeeded (status verified). The Payments settings page then shows "On at checkout".

If either condition is not met, the storefront hides bKash and shows only COD.

How to fix it:

  1. Open Settings ▸ Payments ▸ bKash.
  2. Check the toggle "Show bKash at checkout". If it is off or greyed out, switch it on.
  3. If the toggle is on but the status is not "On at checkout", select Test connection. Wait for the test to complete.
  4. If the test fails, verify your App key, App secret, Username and Password are correct and pasted without extra spaces. Copy them exactly as bKash gave them to you.
  5. Paste them again and save, then test again.

Still stuck? The test may time out if your server cannot reach bKash. Contact support with your store slug and the error message.

Payment stays on "Pending"

A customer completed the bKash checkout, but the order shows "bKash Pending" and does not move to Paid.

What you see: Open the order. The Payments row shows "bKash Pending" and the status does not change.

Why it happens: The order is waiting for bKash to confirm the payment. The confirmation page keeps checking the payment status while the customer waits. If bKash sent the payment confirmation late, or if the customer's browser closed before the confirmation, the status can stay pending longer than expected.

How to fix it:

  1. Open the order and find the payment badge (bKash Pending) in the order's payment section.
  2. Select the small refresh icon next to the badge (tooltip "Recheck bKash payment"). This asks bKash about the payment right now.
  3. When the recheck completes, the status updates. If bKash confirms it was paid, the amount is recorded as an advance payment, the badge changes to "bKash Paid" (once nothing is due) and the order is set to Confirmed.
  4. If the recheck still shows Pending, wait a minute and try again. Payment confirmations can arrive late.

Still stuck? If the payment was already taken from the customer's bKash account but Omnikyo never settled it, contact support.

"Duplicate session" error at checkout

A customer tries to pay with bKash but gets an error message: "A previous payment attempt for this checkout already exists. Please retry with a new checkout session."

What you see: The checkout form shows the error. The customer is asked to retry with a new checkout session.

Why it happens: The same checkout session tried to create a bKash payment twice with the same internal key. This can happen if the customer clicked the payment button twice, or if their browser re-sent the request after a network interruption.

How to fix it:

  1. Ask the customer to refresh the page and start checkout again from the beginning. A new checkout session will have a new internal key.
  2. The customer can then select bKash and complete the payment normally.

Still stuck? If the customer has already been charged by bKash, but sees this error, contact support to link the payment to the order.

A customer (or you) tries to pay using a bKash link, but the page shows "Expired" or the link does not work.

What you see: Open the payment link URL, or look at the Payments card on the order. The link status shows "Expired".

Why it happens: Every payment link is valid for 48 hours from when you created it. Once that time passes, the link stops working. The status changes to "Expired" and customers cannot use it to pay.

How to fix it:

  1. Open the order. On the Payments card, scroll to the "Expired" link.
  2. Select "Create link" to create a new one. Choose Full amount or Partial (enter an Amount (BDT)), and select Create link. The new link is valid for 48 hours.
  3. Share the new link with the customer.

Still stuck? If a customer opened a link but did not complete payment, the link status becomes Opened and they can try again from the same link until it expires or is revoked. Once a link is Paid it cannot be used again.

You revoked a payment link (by selecting Revoke on it in the Payments card), but the customer still has the URL.

What you see: The customer tries to use the link. The page says the link is no longer valid.

Why it happens: When you select Revoke on a payment link, it is revoked. The status changes to "Revoked" and the link stops working immediately.

How to fix it:

  1. Create a new payment link as described above.
  2. Share the new link URL with the customer.

Still stuck? If the customer has payment proof from bKash showing they paid, but the order still shows it as due, contact support.

"Refunded" badge does not match the refund amount

An order shows "bKash Refunded" but the refund amount is less than you expected.

What you see: The order details show "bKash Partially Refunded" or "bKash Refunded". The amount refunded is not what you requested.

Why it happens: When you issue a refund through the Payments card, Omnikyo sends it to bKash. The badge shows "bKash Partially Refunded" whenever the total refunded so far is more than zero but less than the payment, and "bKash Refunded" once it covers the whole payment.

How to fix it:

  1. Open the order. On the Payments card, select the Payments row to open the payment history.
  2. Look at the Refunded entries. Check the amounts and timestamps.
  3. If an amount is still refundable, select Refund on that payment and issue the remaining amount.
  4. The refund goes to the customer's bKash account.

Still stuck? If bKash rejected a refund, contact support with the order number and refund amount.

Other ways people ask this

  • bkash checkout e dhekhasse na
  • payment pending keno asche
  • payment link expire hole ki hobe
  • link revoke korbo kivabe
  • duplicate session error kine asche
  • পেমেন্ট লিঙ্ক এক্সপায়ার হয়েছে
  • বিকাশ পেমেন্ট ব্যর্থ হয়েছে
  • refund korbo kivabe
  • payment failed what to do
  • customer payment pending keno
  • কাস্টমার পেমেন্ট করছে না
  • link stopped working
  • bkash checkout missing why

Checked against the product on 2026-10-02.