Logo
FAQ

Payments FAQ

Frequently asked questions about payments.

How long do payments take to process?

  • PromptPay: Instant (confirmed within seconds)
  • Bank Transfer: 5-30 minutes (varies by bank)

What happens if a payment fails?

If a payment fails, you'll receive a payment.failed webhook event. The payment status will be updated to payment_failed and you can retry the payment or notify the customer.

Can I cancel a payment?

Yes, you can cancel payments that are in certain statuses (processing, pending, requires_payment_method, etc.). See Cancel Payment for details.

How do I check payment status?

You can check payment status by:

  1. Retrieving the payment using the payment ID
  2. Polling the API periodically
  3. Using webhooks for real-time notifications (recommended)

What is an idempotency key?

An idempotency key ensures that if you retry a request with the same key, it won't create a duplicate payment. Always use unique idempotency keys for each payment attempt.

How do I handle expired payments?

Expired payments cannot be completed. You'll need to create a new payment for the customer.

Can I refund a payment?

Refunds are not currently available via the API. To process a refund, please contact support through your merchant dashboard. See the Refunds Guide for more information.

On this page