I'm开发者_JS百科 having a nightmare setting up and testing the Paypal Pro hosted solution.
I'm using a french Paypal pro test account, as that's the only one that seems to work in sandbox, but can't get the GetTransactionDetails api to work.
I've set-up the api credentials in the French test account, here's an example of a request and response (I assume the transaction id is the tx=xxxx part of the url when I'm returned to my site after making a payment):
Request:
METHOD=GetTransactionDetails&
VERSION=61.0&
PWD=7696QBU7L3SUYMWT&
USER=pro_1287586586_biz_api1.c2clearcreative.co.uk&
SIGNATURE=AZM7qyLQwGJWoFkHbU-9kOpoRAKJAIqby-nxAv-RpPwdcTpWS6v67SeO&
TRANSACTIONID=48K385189F726971V
Response:
Array (
[TIMESTAMP] => 2011%2d09%2d01T13%3a47%3a03Z
[CORRELATIONID] => 8c86184720e0
[ACK] => Failure [VERSION] => 61%2e0
[BUILD] => 2089897
[L_ERRORCODE0] => 10002
[L_SHORTMESSAGE0] => Security%20error
[L_LONGMESSAGE0] => Security%20header%20is%20not%20valid
[L_SEVERITYCODE0] => Error
)
10002 is a very general error that seems to imply API authorisation problem.
I've checked and double checked the api credentials.
Does anyone know of other things I can try to get this working?
Many thanks for any advice
The 10002 error only means 1 of 2 things.
- Your API credentials are invalid (extra spaces in any field make it invalid)
You're sending the request to the wrong server (where the API username you're submitting does not exist)
- Check your API Username, Password, and Signature for leading/trailing spaces
- Check that your shopping cart does not have 'test mode' on, or 'development mode' or anything like that. It should be sending the API requests to .paypal.com if you're using live credentials. (.sandbox.paypal.com if you're using sandbox credentials)
Successful API call here Even though you're trying to get information about a transaction that isn't on that sandbox account.
精彩评论