I'll try to summarise here where things lie with regard to the new upgraded WorldPay integration. The following applies only to transactions in TEST mode. If anyone has put any LIVE transactions through an upgraded account could they please post the result.
Thanks to cosmicegg for allowing me to put through test transactions from my test site via her upgraded account.
This is what I get:
1. When I confirm the order I see a WorldPay page asking if I want to re-direct to the test server. This is as expected.
2. When I click the 'Redirect to TEST' button I see the normal WorldPay opening page with the 'Test Mode' message at the top. Again this is as I would expect. However I am not seeing all the card payment options I would expect - only Mastercard and Amex. All the card options available on your account should be available here, however loutka in his post above reports that this only applies to the TEST environmenet and that the full set of card payment options are available in the Live environment.
3. I choose 'Mastercard' and got the normal WorldPAy card details page with the 'Test Mode' message at the top. Again this is as expected.
4. I then input test card details and changed the 'Cardholder's Name' field as follows:
a) 'REFUSED' - result, refused transaction message.
b) 'AUTHORISED' - result, the WorldPay standard 'Thank You' page, no callback to my test site and therefore no order created in Zencart. Email received from WorldPay
c) 'ERROR' - reult, error message
d) 'CAPTURED' - result, the WorldPay standard 'Thank You' page, no callback to my test site and therefore no order created in Zencart. Email received from WorldPay
The above would appear to bethe same results as reported by Nickster99 above.
If you experience the same resulyts you should report the lack of a callback in b) and d) to WorldPay. It looks as if WorldPay are not attempting the callback. My test site works fine with my old, non-upgraded account. Others also report that their sites also worked perfectly prior to upgrade so I think WorldPay is where the problem lies.
Please post here any response you get from WorldPay.
According to the WorldPay documentation upgraded accounts should use the old WorldPay URL for LIVE transactions:
https://select.worldpay.com/wcc/purchase
and use a new URL for TEST transactions:
https://select-test.worldpay.com/wcc/purchase
I set up my test site to access the new TEST URL. If anyone else wants to try this you should set TEST MODE in admin to 100 or 101, and in includes/modules/payment/worldpay.php comment out line 53 and add a new line 54 as follows:
Here are the results I got:Code:// $this->form_action_url = 'https://select.worldpay.com/wcc/purchase'; $this->form_action_url = 'https://select-test.worldpay.com/wcc/purchase';
When I confirm the order in Zencart the first thing I get is a warning page from Internet Explorer telling me that the security certificate for the website (WorldPay) is dodgy and advising me strongly not to continue.
If I ignore the warnings I get to the normal WorldPay entry page (with Test Mode message) but again can only choose Mastercard or Amex. Choosing Mastercard and using test card data but leaving the 'Cardholder's Name' field as is I get the WorldPay 'Thank You' page but no callback to my test site. I also get an email from WorldPay. I get the 'Thank You' page, ie successful transaction, regardless of whether my TEST MODE is set to 100 or 101!
However if I replace the 'Cardholder's Name' field with 'REFUSED', 'AUTHORISED', 'ERROR' or 'CAPTURED' I get the predicted outcome. It looks like this is the way it is going to have to work from now on.
The main issues here are the problem with the security certificate and the lack of the callback. If you get the same results as me - pester the life out of WorldPay. The whole point of the TEST environment is to test that the callback works!
Incidentaly if you try to access the new TEST URL via a non-upgraded account it won't work - you will get an error message (and a certificate problem warning).
Alan
Bookmarks