Skip to main content

Prevent Duplicate Payments Across POS, Customer Portal, and Website

Written by Audry

You can now complete payments with more confidence across POS, Customer Portal, and Website checkout experiences.

This update introduces additional protection against accidental duplicate payments caused by situations such as:

  • Multiple browser tabs are being opened

  • Repeated clicks on the payment button

  • Simultaneous payment attempts across different channels

The goal is to make payment behavior more predictable while reducing duplicate charges, refund handling, and payment confusion.

How duplicate payment protection works

When a payment is started for an unpaid order, the system temporarily locks additional payment attempts while the payment is processing.

If another payment attempt is made during that time, the system will block the second attempt and display this message:

Payment is being processed in another session

This protection works across:

  • POS

  • Customer Portal

  • Website checkout

  • Multiple browser tabs

  • Different devices

Once a payment is completed successfully, additional payment attempts for the same order are blocked automatically.

Clearer payment processing experience

To reduce confusion during payment submission:

  • Payment buttons become temporarily unavailable while processing

  • The interface communicates that payment is currently underway

  • Repeated clicks and duplicate submissions are discouraged automatically

Most payments are complete within a few seconds.

If payment still appears to be processing after approximately 1 minute, users can refresh the page and verify the order status before retrying.

Retrying payments safely

If a payment fails, is canceled, or is interrupted, users can retry the payment immediately.

Examples include:

  • Declined payments

  • Canceled payment flows

  • Interrupted checkout sessions

  • Payment provider errors

The system is designed to prevent duplicate successful charges even when users refresh or retry after an unsuccessful attempt.

If no successful payment is recorded on the order, the payment most likely did not complete and can safely be retried.

Consistent protection across payment channels

The same duplicate payment protection rules now apply consistently across:

  • POS

  • Customer Portal

  • Website checkout

This helps reduce channel-specific edge cases where multiple payment attempts could previously happen simultaneously from different locations or sessions.

What’s changed from the previous experience

Previously:

  • Users could sometimes trigger multiple payment attempts for the same order

  • Duplicate payments were more likely during slow processing, repeated clicks, or multiple-tab scenarios

  • Payment processing states were less visible to users

With this update:

  • Additional payment attempts are blocked while the payment is processing

  • Duplicate successful payments are prevented across supported channels

  • Users now receive clearer processing feedback during payment submission

  • Retry behavior is safer and more predictable after failed payments

What to do if the payment appears stuck

If payment appears stuck in processing and no confirmation is received:

  1. Refresh the page

  2. Check the order status

  3. Confirm whether the payment was successfully recorded

If no payment exists on the order, the payment likely did not complete successfully and can be retried safely.

Notes:

This update focuses on preventing duplicate payments and improving payment processing clarity. It does not introduce new payment methods or checkout redesign changes.

Did this answer your question?