How duplicate payments are created
When a payment request is received, Adyen doesn’t check the merchant reference for uniqueness. This means that a shopper can open multiple payment sessions during checkout and pay in all opened sessions. A shopper, for example, can open and pay in multiple tabs in their browser.
On your system, these sessions have most likely the same merchant reference. However, Adyen's system sees them as unique payment requests, and creates a unique PSP reference for each of the sessions, causing duplicate payments.
Duplicate payments can’t always be prevented. However, API idempotency can be an option to help avoid them.
How to manage duplicate payments
There are two types of duplicate payments.
Duplicate payment on two separate PSP references: After checking there is indeed a double charge, we recommend you to send a refund. The transaction should be refunded according to the settlement delay. Duplicate payment on a single PSP reference: We recommend you to reach out to Support who will check the payment history and take care of the refund.