Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Attn: WorldPay users


matbennett

Recommended Posts

  • Replies 121
  • Created
  • Last Reply

tried that - got the error below..

 

WorldPay Processing Error

Security failure: purchase parameters are not correctly signed

 

Sorry - there was an error in processing of this payment.

Note: This error may be due to the configuration of your browser. If you are using Microsoft Internet Explorer Version 6, please click here for more details.

 

 

Please send the following information to [email protected] so that we can investigate:

 

 

Thread-635204

Server time: 2002-10-04 18:01:20.07

 

? 2002 WorldPay Ltd

WorldPay Ltd, WorldPay Centre, The Science Park, Milton Road, Cambridge CB4 0WE, UK.

Tel: +44 (0)870 742 7002 Fax: +44 (0)870 742 7009 Email: [email protected]

Link to comment
Share on other sites

I don't know if this helps but this is how I installed Stu's 2.4 module:

 

Don't foget you need two files - (one in catalog/includes/languages/english/modules/payment and one in catalog/includes/modules/payment). When I downloaded the module only one of these files was present so I first installed the original 2.4 and then overwrote one of the files with the new version

Look in https://select.worldpay.com/wcc/admin for your account id - that is the prepayment id required by the module.

 

It seems to work.. I am now awaiting my first real live order using it!

Link to comment
Share on other sites

Forgot to mention I am using a release from a couple of weeks ago. I didn't upload result....html to WorldPay but still the information is passed back. I just get the error emails from WorldPay as I still can't find out how to turn them off but apart from that.. fingers crossed.

Link to comment
Share on other sites

stu,

 

I notice that in the module you created that there is no resultc or y.html

 

is this normal?

 

 

Yes I am very lazy:) I've just included the file that I've changed you will need all the others, sorry

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

david/stu - you mention that you overwrote one of the files - which one?

 

my site was working fine for several months on the original 2.4 wp (dan peachy worte this one) module - so I downloaded stus module and overwrote the file in the catalog/includes/modules/payment folder.

 

yet now when i try to put an order through i get the error message that i included on a previous post. any ideas guys?

Link to comment
Share on other sites

tried that - got the error below..

 

WorldPay Processing Error

Security failure: purchase parameters are not correctly signed

 

Gary,

 

 

Ok what you need to do is uninstall (switch off) the module, then install (switch on) the module and enter all the relevant details:

 

Your WP install ID

The Pre Auth set to E

Pre Auth accId1 (you are given this by wp when you set up pre auth)

 

Now log in, put something in your cart and go to checkout and select worldpay as your payment type. Now on this page checkout_confirmation.php View the html and you should see:

 

 

************************************************************

<input type="hidden" name="prod" value=""><input type="hidden" name="payment" value="Worldpay"><input type="hidden" name="shipping_cost" value="0"><input type="hidden" name="shipping_method" value="Royal Mail Recorded Delivery"><input type="hidden" name="cartId" value="Your Shop"><input type="hidden" name="currency" value="GBP"><input type="hidden" name="desc" value="Purchase from Your Shop"><input type="hidden" name="instId" value="00000"><input type="hidden" name="testMode" value="100"><input type="hidden" name="cost" value="8.99"><input type="hidden" name="name" value="Stuart Cutting"><input type="hidden" name="address" value="2 Road Somewhere"><input type="hidden" name="postcode" value="PO1 7NK"><input type="hidden" name="country" value="GB"><input type="hidden" name="tel" value="321321654"><input type="hidden" name="email" value="[email protected]"><input type="hidden" name="MC_callback" value="192.168.0.5/shop/checkout_process.php?PHPSESSID=5530c3636d0ed4570096b2a5fc095073&sendto=&payment=Worldpay&shipping_selected=flat&shipping_cost=0&shipping_method=Royal+Mail+Recorded+Delivery&comments=&PHPSESSID=5530c3636d0ed4570096b2a5fc095073"><input type="hidden" name="MC_successURL" value="http://192.168.0.5/shop/checkout_success.php?PHPSESSID=5530c3636d0ed4570096b2a5fc095073"><input type="hidden" name="MC_failURL" value="http://192.168.0.5/shop/checkout_payment.php?PHPSESSID=5530c3636d0ed4570096b2a5fc095073&sendto=&payment=Worldpay&shipping_selected=flat&comments=&PHPSESSID=5530c3636d0ed4570096b2a5fc095073"><input type="hidden" name="authMode" value="E"><input type="hidden" name="accId1" value="000000">

 

************************************************************

 

Worlpay needs all this. Now the error sounds like its not passing your install id (instId) but it's very hard to tell. Have a look at what you in the form on checkout_confirmation.php and ensure all the values are there.

 

Let us know how you get on.

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

Stu - thanks for your time on this one...

 

I did as you said and this is the extract from the page (looks ok to me:)

 

<input type="hidden" name="prod" value=""><input type="hidden" name="shipping_cost" value="0"><input type="hidden" name="shipping_method" value=""><input type="hidden" name="cartId" value="1st4supplements.co.uk"><input type="hidden" name="currency" value="GBP"><input type="hidden" name="desc" value="Purchase from 1st4supplements.co.uk"><input type="hidden" name="instId" value="47117"><input type="hidden" name="authMode" value="E"><input type="hidden" name="accId1" value="3722545"><input type="hidden" name="testMode" value="0"><input type="hidden" name="cost" value="24.99"><input type="hidden" name="name" value="Gary Ford"><input type="hidden" name="address" value="43 Gentian Court "><input type="hidden" name="postcode" value="WF2 0FE"><input type="hidden" name="country" value="GB"><input type="hidden" name="tel" value="07797799315"><input type="hidden" name="email" value="[email protected]"><input type="hidden" name="MC_callback" value="www.1st4supplements.co.uk/catalog/checkout_process.php/PHPSESSID/5beb06c9f145ee448603a1f10c6a5fcf/sendto//payment/Worldpay/shipping_selected/flat/shipping_cost/0/shipping_method//comments/"><input type="hidden" name="MC_successURL" value="http://www.1st4supplements.co.uk/catalog/checkout_success.php"><input type="hidden" name="MC_failURL" value="http://www.1st4supplements.co.uk/catalog/checkout_payment.php/PHPSESSID/5beb06c9f145ee448603a1f10c6a5fcf/sendto//payment/Worldpay/shipping_selected/flat/comments/"><input type="hidden" name="signatureFields" value="amount:currency:email"><input type="hidden" name="signature" value="5e20271a8ff283dd5dcb343833acc744"><input type="image" src="includes/languages/english/images/buttons/button_confirm_order.gif" border="0" alt="Proceed to secure payment area">

Link to comment
Share on other sites

The module I have modded is *only* for use with deferred payments (pre auth) as it *will* fail if you have not set up pre auth with worldpay.

 

I am working on one that will do both, should be out soon!

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

Hmmm

 

 

Ok It could be an MD5 thing (we've not tested with md5) so it's something we need to look into.

 

I think someone said that the MD5 in 2.4 was a bit of a mess - so what with my code butchering and all...

 

We are using an early 2.2 and this module without MD5 and things seem fine atm.

 

I'll do some more testing on the latest one and if anyone wants to give it a go with MD5 let me know.

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

Stu - thanks for your time on this one...

 

I did as you said and this is the extract from the page (looks ok to me:)

 

/PHPSESSID/5beb06c9f145ee448603a1f10c6a5fcf/sendto****//*****payment/Worldpay/shipping_selected/flat/comments

 

Just noticed the above *might* be causing an error

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

Stu,

 

I have disabled MD5 in my payment module and I got wp to disable MD5 there end and now I am back to the original error...

 

basically that the cart is not clearing after wp do there bit.

 

with regards to your last reply - where is that info coming form ? and do you know how I could go about rectifying it?

 

wp did say earlier today that the error was due to the location replace in the result_c and y that I have???

 

Heeellllpppp.... it is driving me mad. :roll:

Link to comment
Share on other sites

I know how frustrating this can be when you are trying to run a business!

 

Lets me get this situation clear in my head first:

 

You had osc 2.2 and the 2.4 wp module all working fine?

It went wrong "out of the blue"?

you installed the mod i did?

Still Gettting the *same* error?

 

 

Worlpay *have* been changing stuff at their end - now Worldpay have told me several times that resultC/Y do NOT have anything to do with sending the result of your purchase back to your shop. This is done by their java response object. In fact Worldpay had a *hissy fit* when they saw that resultC/Y did a redirect as they say this is strictly prohibited.

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

This is certainly becoming an epic , it must indicate something :?:

 

For clarification: We have two completely different WorldPay problems/ solutions wrapped up in this thread. Both versions of the WorldPay payment module work but both still have some problems.

 

Version 2.4 (with or without pre-auth) works on older 2.2's.

Version 3c (with or without pre-auth) works on newer 2.2's.

 

And as 3c corrected some other problems, MD5 works with 3c but is unlikely to work with 2.4.

 

And 2.4 uses Callback whereas 3c does not (but should!) - read on...

 

-----------------------------------------------------------------------------------

 

Now for WorldPay's view:

 

WorldPay require the shop owner to use Callback to tell the site that the transaction has been completed and that payment was successful or was cancelled. A failed transaction is never returned to OS.

 

Worldpay have told me several times that resultC/Y do NOT have anything to do with sending the result of your purchase back to your shop. This is done by their java response object.

 

The ResultC/Y files are therefore intended, by WorldPay, to be simple pop-up windows to display to the customer that the that is clearly prevented is auto-redirect is used. So, the ResultC/Y files should not be doing any re-direct or passing of variables. But in 3c, that is exactly what they do.

 

----------------------------------------------------------------------------------

 

This is because, for everything to work correctly, the OS checkout_process would have to analyse the WorldPay callback string and determine if it contains the variable 'transStatus=Y' in which case continue with a successful payment or 'transStatus=N' in which case redirect the customer back to the payment page.

 

The code to do this mod to checkout_process was not written and instead a simpler solution was used which was to use the ResultC/Y files to (illegally) perform an auto-redirect to get the customer back to the right page in the store (e.g. Payment or checkout_process) and to pass back the key variables, results of the transaction including the SID etc.

 

Note that when the customer gets back to OS, they see clearly if they have paid or not and they also get an email from both WorldPay and OS to tell them this fact which also includes all essential information. So despite the breach of WP T's &Cs, the situation is not quite as bad as it first seems.

 

So, in Ver 3c, the callback is actually pointless and if used, creates an error message back to the store owner but otherwise does no harm.

 

Actually, it is not clear to me how 2.4 manages to fail a cancelled payment. From what I have said above, if it is true, a cancelled payment should still create a callback and this callback would then trigger checkout_process to record a successful payment.

 

However, the 2.4 users are not reporting any problems so something is still wrong / not understood yet. My best guess is that despite using callback, 2.4 still uses the modified ResultC/Y which arrive a few micro-seconds after the callback and switch the customer back to the right page.

 

So, again it is just my guess, but if you use 2.4 with the standard WorldPay ResultC/Y files, I STRONGLY suggest that you should test to see how a cancelled payment is handled.

 

------------------------------------------------------------------------------------

 

So why has 3c not been modified to manage Callbacks correctly? Well, the simple answer to that must be that no one with the skill to do it, or who understands WorldPay, is currently using 3c and it is not a core module for OS so it has not done by the clever people in the core team. (Please not that I am not a programmer but just a frustrated user :oops: )

 

Finally, going back to the start of this epic reply to an epic problem, can anyone in the core team help? For example, can we add WorldPay to the CVS or can anyone help to create a module that works correctly?

Ian-san

Flawlessnet

Link to comment
Share on other sites

Stu,

 

In answer to your questions..

 

You had osc 2.2 and the 2.4 wp module all working fine? yip

It went wrong "out of the blue"? yip

you installed the mod i did? yip

Still Gettting the *same* error? didn't work at all untill I disabled MD5 at my end and got wp to disable there end as well - now it gives me the same problem whereas the payment goes through on wp but sends me back to my site and the cart has not been cleared - nore has the order gone in my db.

Link to comment
Share on other sites

The best thing to do is to get Worldpay to send you all the trasaction details of these orders (ssid is handy) and you can track them back.

 

Worldpay's Java Response Object should be hitting checkout_process.php page with the session ID that matched the customers and updating your DB - there are many reasons this can fail - ensure that the callback url is correct and you are storing the sessions in mysql (see config.php in catalog and admin)

 

Another reason this can fail is if your host has set the max_execution_time to a *very* low value ( a look at server info in admin will tell you - others here can tell you more than I but 10 is the limit, pref 30) - also WP should be able to tell you what response they are getting from your page and any html outputted

 

This is one of those problems where you just have to look at everything and then say; "should of known it!"

 

Hope this is of some help.

Stu

 

There a 2 ways doing things. . .

The Hard Way & The Easy Way. . .

The Hard Way is Bloody Hard! The Easy Way Doesn?t work!

Link to comment
Share on other sites

got worldpay to send me a log file - it looks as though it is sending the callback - however it is not getting to me in one form or another....

 

I am going to try and re-install the wp payment mod (though I don't think it will do any good at all)

 

:cry:

Link to comment
Share on other sites

here is the extract from wp's logs

 

Callback log as discussed.

 

select log

 

[09:46:35 MerchReq-638]: Starting...

[09:46:35 MerchReq-638]: <HTTP Request> to: www.1st4supplements.co.uk

[09:46:35 MerchReq-638]: <HTTP Response> Received: 302: Found

[09:46:35 MerchReq-638]: <HTTP Response> Parsed: text/html

[09:46:35 MerchReq-638]: Done.

POST /catalog/checkout_process.php/PHPSESSID/6986888f083b8ef52a82708bca1e2e38/sendto//payment/Worldpay/shipping_selected/flat/shipping_cost/0/shipping_method//comments/?msgType=authResult&installation=47117 HTTP/1.0

Host: www.1st4supplements.co.uk

Content-Type: application/x-www-form-urlencoded; charset=ISO-8859-1

Content-Length: 1152

User-Agent: WJHRO/1.0 (WorldPay Java HTTP Request Object)

 

instId=47117&email=jrob869%40aol.com&transTime=1033811195000&country=GB&msgType=authResult&rawAuthCode=A&amount=64.98&installation=47117&tel=01253+869562&address=55+parkstone+avenue%0D%0A&rawAuthMessage=A9213&authAmount=64.98&cardType=Switch&amountString=%26%23163%3B64.98&AVS=0112&cost=64.98&currency=GBP&testMode=0&authAmountString=%26%23163%3B64.98&fax=〈=en&transStatus=Y&compName=PureStrength+Group&authCurrency=GBP&postcode=fy55ae&MC_successURL=http%3A%2F%2Fwww.1st4supplements.co.uk%2Fcatalog%2Fcheckout_success.php&authCost=64.98&countryMatch=Y&desc=Purchase+from+1st4supplements.co.uk&cartId=1st4supplements.co.uk&transId=25732777&accId1=3722545&authMode=E&MC_callback=www.1st4supplements.co.uk%2Fcatalog%2Fcheckout_process.php%2FPHPSESSID%2F6986888f083b8ef52a82708bca1e2e38%2Fsendto%2F%2Fpayment%2FWorldpay%2Fshipping_selected%2Fflat%2Fshipping_cost%2F0%2Fshipping_method%2F%2Fcomments%2F&MC_failURL=http%3A%2F%2Fwww.1st4supplements.co.uk%2Fcatalog%2Fcheckout_payment.php%2FPHPSESSID%2F6986888f083b8ef52a82708bca1e2e38%2Fsendto%2F%2Fpayment%2FWorldpay%2Fshipping_selected%2Fflat%2Fcomments%2F&countryString=United+Kingdom&name=marc+roberts

HTTP/1.1 302 Found

Date: Sat, 05 Oct 2002 09:46:34 GMT

Server: Apache/1.3.26 (Unix) mod_perl/1.26 mod_throttle/3.1.2 PHP/4.2.2 FrontPage/4.0.4.3 mod_ssl/2.8.10 OpenSSL/0.9.6f

X-Powered-By: PHP/4.2.2

Set-Cookie: PHPSESSID=98e6e6c28a52efa786e4c22d56f5aebf; path=/catalog

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma: no-cache

Location: http://www.1st4supplements.co.uk/catalog/l...6e4c22d56f5aebf

Connection: close

Content-Type: text/html

Link to comment
Share on other sites

and this is a typical extract form ym servers log

 

80.225.178.61 - dbusername [05/Oct/2002:22:52:44 +0000] "POST /catalog/checkout_confirmation.php HTTP/1.1" 200 24351 "http://www.1st4supplements.co.uk/catalog/checkout_payment.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"

195.35.90.62 - - [05/Oct/2002:22:53:38 +0000] "POST /catalog/checkout_process.php/PHPSESSID/4ccd8033a8746a1137c5308ec6acc764/sendto//payment/Worldpay/shipping_selected/flat/shipping_cost/0/shipping_method//comments/?msgType=authResult&installation=47117 HTTP/1.0" 302 0 "-" "WJHRO/1.0 (WorldPay Java HTTP Request Object)"

80.225.178.61 - dbusername [05/Oct/2002:22:53:40 +0000] "GET /catalog/checkout_success.php HTTP/1.1" 200 20479 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"

80.225.178.61 - dbusername [05/Oct/2002:22:54:00 +0000] "GET /catalog/checkout_success.php HTTP/1.1" 200 12690 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...