Online payment problems and fixes
The customer paid but the link still shows open, the link expired, the card was declined, a refund failed or the gateway refused: what to check.
The customer paid, but the link still shows open
Why it happens
The payment reaches the booking when the customer comes back from the gateway's page, or when the gateway's notification arrives. If the customer closed the page and the notification did not arrive (or was refused), the booking waits for the automatic check, which runs every few minutes for payments that started more than about 10 minutes ago.
What to do
- Wait 10 to 15 minutes and reload the booking.
- Open Payments → Reconciliation and press Check stuck payments now. If the gateway confirms the payment, you see … stuck payments were confirmed and recorded.
- Open Payments → Gateway log, search the booking's link reference, and look for a Notification with Signature invalid or a Payment check that Failed. Fix the webhook secret or keys in Settings → Connections.
- If the gateway's own dashboard shows the payment but the system still does not, check Paid at the gateway, not recorded in Reconciliation and record the payment by hand with the gateway's reference.
Warning
Do not record the payment by hand while the check may still find it. If both happen, the booking shows the money twice and you must refund one of them.
The customer says the link does not work
- This payment link has expired: create a new link from the booking. See Send a payment link or a reminder.
- This payment link was cancelled: someone pressed Cancel link. Create a new one.
- Payment link not found: the link was copied wrongly. Copy it again with Copy link.
- The page opens but shows Test mode: your gateway is still in test mode in Settings → Connections.
The card was declined
The bank or the gateway refused the card. The customer can try again with the same link while it is open, or use another card. Nothing is recorded for a declined attempt; the Gateway log shows it as Failed.
The gateway refused or did not answer
- … rejected the credentials. Check the keys in Settings → Connections.: the keys are wrong, or live and test keys are mixed.
- … did not answer in time. Please try again.: try again in a moment.
- Could not reach …. Check the gateway address in Settings → Connections or try again later.: the gateway is down or its address is wrong.
- … is not set up yet. Add the merchant ID and API password in Settings → Connections.: finish the connection.
- Stripe takes … in steps of 0.010. Use an amount like ….: make the link amount end in 0 (for BHD, KWD, OMR and JOD).
A refund to the card failed
The Payments tab or Reconciliation shows Refund failed, and an urgent task asks you to refund another way. Return the money by cash or transfer, record it as a manual refund, and correct the booking. See Give a refund.
A refund is still pending
Refund pending means the gateway accepted it and has not finished. The system checks it again by itself; you do not need to do anything unless it turns into Refund failed.
The customer paid more than the balance
A high-priority task tells you the amount above the balance. Refund it to the card, or keep it as credit. See Refunds and customer credit.
Related articles
- Reconcile online payments with the gatewayCompare what your payment gateway collected with what is recorded on bookings, fix each difference and check the daily settlement.
- Check a call in the gateway logSee every call between the system and your payment gateway, what was sent and what came back, to find out what happened to a card payment.
- Payment links explainedWhat a payment link is, how long it works, what the customer sees and how the payment reaches the booking by itself.
- Give a refundReturn money to the customer: back to their card through the gateway, by hand in cash or by transfer, or as credit for a later trip.
- Error messages: payments and refundsEvery message you may see when you record payments, send payment links, confirm transfers, give refunds or connect a payment gateway.