Skip to main content

When trying to make a payment in a Magento 2 with PayPal, a payment error occurs rejecting the request due to duplicate invoice ID.

PayPal gateway has rejected request. Payment has already been made for this InvoiceID (#10412: Duplicate invoice)

The issue occurs when Magento invoices with the same IDs are sent to PayPal. I encountered the issue after making a staging version of the site to update Magento, the theme and several plugins. In that time the live and development order IDs became out of synch, so when the dev version was put live PayPal complained that it had already dealt with that order / invoice ID.

magento 2 - paypal error payment has already been made for this invoiceid

Solution

To fix the problem, multiple payments per invoice ID have to be enabled in PayPal’s Payment settings. PayPal then accepts payments with no error messages, even for invoices with duplicate IDs.

Finding ‘No, allow multiple payments per invoice ID’

This setting wasn’t easy to find. PayPal often change their documentation and admin panel. Numberous blogs, StackOverflow and Magento’s Docs all pointed to My selling tools but is has since moved.

Steps

1. Log in to your account at https://www.paypal.com or use the direct link https://www.paypal.com/businessmanage/account/paymentPreferences .
2. Click Username (Profile – upper-right corner) > Profile settings.
3. Go to Account settings > Payment preferences
5. Navigate to Block payments Limit payments, add instructions and more and use the Update link.

paypal - block payments

6. Under Block Accidental Payments , choose No, allow multiple payments per invoice ID .
7. The setting change should auto save .

paypal - allow multiple payments per invoice ID
Andrew Taylor

A senior UI designer with over 25 years of web design and web development experience working for some of the largest companies in the UK. An expert in all things Magento and WordPress.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.