Posted: March 22, 2018 at 7:14 am
|
I’m getting a 4020 SagePay error that’s complaining about the uniqueness of transaction IDs generated from Event Espresso. Is there any way I can add a unique prefix to the transaction IDs? Like the year, or a company code? Or perhaps begin the numbering again from a much higher number with more digits? Thanks |
Hi there, A 4020 error from SagePay actually means the server’s IP address doesn’t match the IP address set in your SagePay account. Here are the instructions from SagePay that show how to fix: |
|
|
Sorry – my bad! I’ve had so many codes I got them mixed up! The correct code should be 4042 and it reads: The VendorTxCode has been used before for another transaction. All VendorTxCodes must be unique. Thanks |
The VendorTxCode value already has a unique prefix, so I’m not sure if adding more prefixes would help in this case. If you were testing transactions on a dev server, then it’s possible the live server could have the same prefix from a transaction from the dev server. That said, the VendorTxCode would still be unique because a timestamp generated suffix gets appended to the field. You can check what’s actually being sent as the VendorTxCode by going to Event Espresso > Payment Methods > Logs. Each transaction sent to Sagepay will have at least 3 log items and at least one of them will include the VendorTxCode value. Are there actually duplicates logged there? |
|
|
Yes, looking in the logs I can see several duplicate transactions: |
|
Can you see this link: https://imgur.com/a/wWPkv |
Those are not duplicate transactions. Each transaction has many log items because there are more than one API call per transaction. If you check each log entry for a given Transaction you’ll see each API call has unique data. |
|
|
So I think I know why it was triggering the VendorTxCode error – whenever I try to make a booking, I get the red “because of a technical error” message. So I refreshed the page and tried the same booking again. This triggered the TxCode error. I just tried another booking, got the red technical error, but instead of refreshing I went back to start the booking again from scratch. From the logs I can see the transactions are being added with unique txn codes, but nothing’s going through – Im just seeing the red technical error message. Thanks |
Usually if you’re seeing the “A valid payment method could not be determined due to a technical issue” it’s because the gateway is set to “Debug Mode On”, but the gateway is using live account credentials. Do you have Debug Mode On to Yes or No, and which type of credentials are being used? |
|
The support post ‘Transaction ID prefix?’ is closed to new replies.
Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.