PayPal Standard Users May Encounter The Following Error:
This invoice has already been paid. For more information, please contact the merchant.
While PayPal Standard does not require an invoice id to process a transaction it will still monitor received invoice ids in an attempt to prevent duplicate payments. The invoice id number is sent to PayPal during payment and returned after the transaction has been completed to signify that the purchase has indeed been completed.
An error may occur in existing PayPal Business accounts that have had several transactions due to history with previous websites where the MarketGrabber Software may be generating invoice ids that have already been used and recorded in the PayPal environment. This error is most prone to occurring when a PayPal account has been or is currently attached to more than one website with the PayPal Standard gateway. This error causes PayPal to prevent the payment from being processed.
MarketGrabber software generates a new invoice id every time a purchase is attempted so this is only an issue when ranges of invoice ids generated by the MarketGrabber software are in conflict with the PayPal records preventing any payment to be made (where as the occasional conflict can simply be resolved by attempting the purchase again).
Action should be taken only if this error is reoccurring regularly for distinct purchases.
- This error can be avoided by opening up a new PayPal business account that doesn't have a transaction history.
- For Developers:
A potential solution is to reseed the identity column in the invoice table to a higher number (such as 50,000). This will cause the MarketGrabber software to generate invoice numbers that are less likely to be in conflict with ranges of registered invoice numbers with the associated PayPal account.
Please consider the following SQL statement to reseed the invoice table:
DBCC CHECKIDENT ('MGINVOICE', RESEED, 500000)