Paypal PDT Error 4002 - php

I am integrating Paypal into a website via Worldpay's APM payment API.
I have enabled PDT on my paypal sandbox and am using Paypal's PHP example code from their github repo to retrieve the data, however every call I do to verify the transaction via PDT returns FAIL Error: 4002.
This appears to be a generic error message and the solutions on the paypal developer website has not helped me to resolve the problem.
I also found a question from this site (in 2015) which suggested uppercase-ing the tx code. This has not helped either.
Does anyone have experience verifying with PDT while using Worldpay who has resolved this issue?

In this case it appears that Worldpay's simulator is not compatible with the Paypal sandbox, therefore no payments are going to Paypal.

Related

Paypal Payments Pro Sandbox error We’re sorry, we can’t complete your payment now. Please try again later

I am integrating Paypal using my Sandbox account.
My integration is working when using my PayPal account but when using sandbox, it showed below error:
When form is submit so that time this error is occurs.
Error: Error Processing Payment
We’re sorry, we can’t complete your payment now. Please try again later.
I have already tried to make simple html code posted but sandbox is not working. So what's the problem? Please send me any idea.
My sandbox paypal id is a business account.
So please tell me what is wrong?
It might be of your browser cookies or cache issue, clear-up everything and for better results try using the upgraded version of Chrome or FF.
Cheers!

Specs met, but still: IPN was not sent, and the handshake was not verified. Please review your information

I've been trying to integrate my website with the PayPal IPN, but I've been unsuccessful so far. The Paypal documentation HERE: SSL Certificate Upgrade Microsite entails some specifications that need be met. My server supports SHA-256 and uses VeriSign G2 Root Certificate as well. I've installed SSL on this domain too, but still I get nothing with the Paypal IPN.
I have a file IPNSampleCode.php at (NOT MY REAL WEBSITE) https://XYXYXYX.com/IPN/IPNSampleCode.php which is supposed to be called by the Instant Payment Notification (IPN) Simulator, but I keep getting 'IPN was not sent, and the handshake was not verified. Please review your information.
' whenever I run the IPN simulator against the IPN handler URL 'https://XYXYXYX.com/IPN/IPNSampleCode.php'
What could I be missing, or what might I be doing wrong?
Thank you for contacting PayPal Merchant Technical Services, I apologize for the delay in responding to your email.
We are aware of this issue with our IPN Simulator and our development team is working on a fix. Until this issue is fixed, I'd suggest running your IPN tests by making payments in Sandbox as we do send IPN requests with every payment.
If you have a similar issue with your payment tests, please let us know and we can take a look.
My apologies for the inconvenience caused.

How to correctly integrate PayPal's API with paypal payments pro?

I just finished building a donation form on a client's website, which processes payments through PayPal's classic api. It works fine in Sandbox mode, but I'm getting a 10501 - This transaction cannot be processed due to an invalid merchant configuration. error.
I know that this error is caused by PayPal payments pro not being enabled on the account the API is trying to access. That is were I'm somewhat confused. The account I'm connecting this donation form to is subscribed to Paypal Payments Pro.
When I first encountered the 10501 error, I thought that PayPal may require myself to log in and enable the Payments Pro service. I found a "get started" button under the payments pro section of the site, but when I click it, I'm taken to a page which only provides a link to the API documentation.
I've never worked with PayPal's API before or launched a live paypal application. I'm hoping someone can point me in the right direction.
NOTES
Just to make it clear, the PHP donation form DOES work in PayPal's sandbox mode
I have acquired the correct API keys from the live account and I know for a fact that I did not mix up the live credentials with the sandbox.
this donation form is on a website, not an mobile app (do I still need to register it as a paypal app?)
Thanks
A lot of times what happens is that PayPal enables the Virtual Terminal for you, but not the DoDirectPayment API. I would just give them a call and let them know you have Pro, but your DDP calls are resulting in this error, and they can probably get it enabled for you.
It's also possible that your version of Pro requires you to use the PayFlow API instead of DoDirectPayment. That's something they can tell you when you call them.

PayPal Express Checkout Instant Update CallbackURL not being called in live setup

I'm working on integrating PayPal Express Checkout into an existing web application using Zen Cart .
Everything, including the Instant Update Callback, works fine in a setup that uses Sandbox settings. The Callback works fine both on HTTP and HTTPS in the Sandbox. But as soon as I switch to Live credentials, the PayPal UI stops hitting the CallbackURL and falls back to using the (fall back) shipping costs sent in SetExpressCheckout.
I'm using the latest version of the PayPal PHP SDK . The only settings that are changed to switch the setup from Sandbox to Live are:
UserName
Password
Signature
mode (from sandbox to live)
Any help on this issue will be greatly appreciated. The SSL is certified by mainstream SSL issuing company.
Do you have a business account? Are you verified?
I'm just throwing guesses as I just worked on part of API that requires verified bussiness account.
Did you check out the call output? It'd be better if you posted source code.

Paypal express checkout going live using NVP - "Security header is not valid"

I integrated the Paypal express checkout into our eCommerce system (NVP version 76.0, PHP 5.2) that has a bespoke checkout process.
While in development mode (using the sandbox details) everything works but the moment I switch the signature information (username, password, api_signature and the paypal url) to the live Paypal account information it stopped working. It always responds with a error code: 10002 and message: Security header is not valid
If I switch back to sandbox details it starts to work again.
Here is the error example:
TIMESTAMP: 2011-12-06T19:09:31Z
CORRELATIONID: cb966ebeb254d
ACK: Failure
VERSION: 76.0
BUILD: 2271164
L_ERRORCODE0: 10002
L_SHORTMESSAGE0: Security error
L_LONGMESSAGE0: Security header is not valid
L_SEVERITYCODE0: Error
I found some posts on stack overflow of people having the same problem but there solution didn't work #Paypal and I did some digging around (on google) and found that a lot of people experience this problem but there is no definitive solution or a thread that would outline what you need to change when you go live because just changing the details mentioned above (and in the paypal express checkout documentation) doesn't seem to work.
Did anyone find a solution to this problem or maybe I just missed something?
OK so I found the answer:
I contacted Paypal support and even after outlining the issue they still didnt provide a solution but at least there response gave me an idea of what is actually wrong.
When you put the system live you not only have to change the:
API_USERNAME
API_PASSWORD
API_SIGNATURE
PAYPAL_URL
with the live details (from Sandbox > Live) but you have to change:
API_ENDPOINT
which they do not provide in there documentation.
What I found was that when you switch to live (depending what version of the paypal SDK you have) you have to change the endpoint to the one found in this list API Endpoints
The one I had to use was:
Environment: Live
Authentication: API Signature
Calling: Name-Value Pair
Endpoint: https://api-3t.paypal.com/nvp

Categories