Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Worldpay Support


Recommended Posts

I am confused? Mine is just a drop down with all 3 currencies, with the relevant amount on the drop down, how can they change that?

 

 

 

 

 

?/

 

 

 

 

 

AO

 

 

 

 

 

By using the oldest trick in the book. They:

 

 

 

 

 

1) save a copy of checkout_confirmation.php

 

 

 

2) change the amount and/or currency

 

 

 

3) reload the doctored page back into their browser and click [confirm order]

 

BLIMEY!!!

Link to comment
Share on other sites

  • Replies 180
  • Created
  • Last Reply

Top Posters In This Topic

Hi all,

 

I'm just doing the final testing of my shop and I've encountered rather an interesting problem.

 

I'm being informed by worldpay that I've tried to instigate a duplicate transaction.

 

The problem seems to occur only if I go in and start a second test transaction (without having first either logged off first or shutdown my browser).

 

I have also noticed that my session id is being passed to worldpay (as my cartid). It is this that I believe is causing the problem.

 

Personally I havent a clue how this can be overcome. I do think that I will be highly unlikely that any customer of mine or anyone elses will make a purchase from me and then go staight back in and make another without having first logged out.

 

I think that unless anyone else knows of a quick fix I quess its one to be put down on the known issues pile.

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

I know that this has been broached before however I don't think that anyone have given a definitive answer to it yet.

 

As far as I can tell neither the osc order id is not being passed to worldpay or the worldpay transaction id is not being passed back.

 

While I agree that at its a simple matter to match orders to payments whilst the transaction levels are relatively small. I think that when I'm dealing with (hopefully) thousand of transactions (day/min/hr/second) this wont be quite so easy to accomplish.

 

Giving this some thought would it be possible to pass the order id to oscommerce as the cartid instead of the session id or would it completely spanner the whole system?

 

If it is possible, would this solve my previous forum post regarding the duplicate transaction error?

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

Worldpay does have this facility. I believe its called pay forward. However the shop itself is not really geared for it (Unless someone has created a contribution that I'm not aware of)

 

I suggest you check out the contributions section to see if its there.

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

Ooop's typo :oops:

 

Giving this some thought would it be possible to pass the order id to oscommerce as the cartid instead of the session id or would it completely spanner the whole system?

 

I said oscommerce above I actually ment worldpay! :oops:

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

I'm being informed by worldpay that I've tried to instigate a duplicate transaction.

quote]

 

This doesnt seem like a fault to me - rather a benefit! Surely, no real customer would attempt to create two simultaneous payments?

Ian-san

Flawlessnet

Link to comment
Share on other sites

As far as I can tell neither the osc order id is not being passed to worldpay or  the worldpay transaction id is not being passed back.

 

I think that the key parameter is the session id - the WP transaction id is passed back but not stored - where would you put it? And passing the osc order id forward doesnt seem to achieve much to me?

Ian-san

Flawlessnet

Link to comment
Share on other sites

I agree with you myself.

 

however, I put it in the forum so that in the unlikely event that someone does manage to do this and they come back and say your shops broken you will remember my posting :lol:

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

is worldpay integrated with recurring monthly payment? IF so i will sign up now. Please let me know if you know it can do the recurring monthly payment.  

 

thanks

 

You cannot do this with this contribution although I think a few have spoken about it. I do not think it would be too hard to add but you would need a new form to enter the additional information and also to capture this information in a new database somewhere. Plus you would need some way to monitor / edit the transactions - thinking about it, maybe it would need to be a completely new contribution. :cry:

Ian-san

Flawlessnet

Link to comment
Share on other sites

Hi there ,

the contribution work fine howeevr on the call back when it displayes that the payment has been accepted i got the following error

 

on teh top of teh page :

Warning: session_start() [function.session-start]: The session id contains illegal characters, valid characters are only a-z, A-Z and 0-9 in /home/compusel/public_html/includes/functions/sessions.php on line 67

 

and at the bottom of teh page i got teh following

Warning: Unknown(): The session id contains illegal characters, valid characters are only a-z, A-Z and 0-9 in Unknown on line 0

 

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

 

pls help you can go and try it by your self i am still in test mode

use 41111111111111111

 

and any expiry date

 

looking for your help

 

thanks

storeman

Link to comment
Share on other sites

Yes the session id would be the best one to insert into the orders table. but do you know which page actually writes the order to the orders table?

 

For completeness it may also be an idea to post the worldpay transaction id to the orders table as this is much easier to read than the osc session id.

 

I did look at this before myself but I could not identify what the worldpay transaction id variable passed by worldpay was called.

 

Any help you can give with this Ian would be appreciated as I'm writing a contribution report that does a csv spit of all customer orders that I hope will make the process of tying up orders and payments much simpler.

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

Yes the session id would be the best one to insert into the orders table. but do you know which page actually writes the order to the orders table?  

 

checkout_process.php is the main file but you could update the order table from anywhere e.g. from wpcallback

Ian-san

Flawlessnet

Link to comment
Share on other sites

Hi Guys would any one pls let me know how how can i fix the problem i mentioned , i contacted worldpay and they said it is a problem in my page not in there system

Thanks

Link to comment
Share on other sites

Warning: Unknown(): The session id contains illegal characters, valid characters are only a-z, A-Z and 0-9 in Unknown on line 0  

 

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0  

 

Are you storing your sessions in the database or not? - If not set this to true and see how you get on

 

Graeme

Link to comment
Share on other sites

Hi gerame and radlers and

 

Thanks for your help

i changed the setting in teh configre.php to true and it did not work then i changed it to false and it did not work too , then i changed it to mysql and i got the following error message at the end of teh page "the top error message has gone ":

1062 - Duplicate entry 'a7aa3c6e965bf4ba32f5c9e6adcd0d3a' for key 1

 

insert into sessions values ('a7aa3c6e965bf4ba32f5c9e6adcd0d3a?language=en', '1055423005', 'cart|O:12:"shoppingcart":4:{s:8:"contents";a:0:{}s:5:"total";i:0;s:6:"weight";i:0;s:12:"content_type";b:0;}language|s:7:"english";languages_id|s:1:"1";currency|s:3:"CAD";navigation|O:17:"navigationhistory":2:{s:4:"path";a:1:{i:0;a:4:{s:4:"page";s:14:"wpcallback.php";s:4:"mode";s:6:"NONSSL";s:3:"get";a:3:{s:6:"osCsid";s:44:"a7aa3c6e965bf4ba32f5c9e6adcd0d3a?language=en";s:7:"msgType";s:10:"authResult";s:12:"installation";s:5:"74163";}s:4:"post";a:35:{s:8:"authCost";s:5:"55.25";s:8:"testMode";s:3:"100";s:7:"address";s:25:"11111 toronto Ontario";s:8:"currency";R:8;s:13:"countryString";s:6:"Canada";s:12:"installation";s:5:"74163";s:3:"fax";s:0:"";s:12:"countryMatch";s:1:"S";s:7:"transId";s:8:"41134285";s:3:"AVS";s:4:"0001";s:12:"amountString";s:9:"Can$55.25";s:8:"postcode";s:6:"m1m2m2";s:7:"msgType";s:10:"authResult";s:3:"tel";s:8:"41111111";s:4:"name";s:15:"islam abokandil";s:4:"desc";s:25:"Purchase from Compuselect";s:11:"transStatus";s:1:"Y";s:8:"cardType";s:4:"Visa";s:4:"lang";s:2:"en";s:9:"transTime";s:13:"1055421551570";s:10:"authAmount";s:5:"55.25";s:16:"authAmountString";s:9:"Can$55.25";s:4:"cost";s:5:"55.25";s:6:"instId";s:5:"74163";s:9:"MC_oscsid";s:0:"";s:6:"amount";s:5:"55.25";s:8:"compName";s:16:"Bright Solutions";s:7:"country";s:2:"CA";s:11:"MC_callback";s:86:"www.compuselect.net/wpcallback.php?osCsid=a7aa3c6e965bf4ba32f5c9e6adcd0d3a?language=en";s:14:"rawAuthMessage";s:32:"authorised (testMode always Yes)";s:5:"email";s:18:"[email protected]";s:12:"authCurrency";s:3:"CAD";s:6:"cartId";s:39:"osCsid=a7aa3c6e965bf4ba32f5c9e6adcd0d3a";s:11:"rawAuthCode";s:1:"A";s:8:"authMode";s:1:"A";}}}s:8:"snapshot";a:0:{}}')

 

[TEP STOP]

 

 

Warning: Unknown(): A session is active. You cannot change the session module's ini settings at this time. in Unknown on line 0

 

pls advice how can i fix this ?

Thanks

Link to comment
Share on other sites

I am not an expert on sessions but I think this error occurs when you attempt to write the same session id twice to the sessions database which doesnt allow duplicates.

 

There is a whole pile of reasons why this might happen - in the case of WP, my belief is that when you are retuning to your store from WP, your current session has become inactive after being written to the sessions database so when the session id is returned by WP, the store attemps to rewrite it to the database again, and so gets an error.

 

To resolve, you need to discover why the active session is being lost whilst you are at Worldpay or why the store attempts to restart the same session again. e.g. do you have cookies turned off? Are you moving away from the hosting server? Are you retuning to a html page rather than php etc etc?

 

I dont think this is a fault generated by the WP module - it is probably just that you only discover this fault when using WP.

Ian-san

Flawlessnet

Link to comment
Share on other sites

Can anyone tell me how I can reference the wp transaction id?

I wish....

I had the Money of Bill [Gates]

The Wit of Oscar [Wilde]

and could play the guitar like Carlos [santana]!!!

 

 

I guess I'll just have to settle with being me! :D

Link to comment
Share on other sites

I hope that some one can help?

 

We have found that our Worldpay module is not operating as it was designed, after completing the purchase, we are being returned to an empty shopping cart.php instead of the page that says ?Order processed successfully?

 

 

 

I am using the Latest MS1 version (Worldpay_MS1_version_a) from the OS contributions with my call back set up exactly as stated in the INSTALL.TXT file. (http://<wpdisplay item="MC_callback">) with both my tick boxes, ticked.

 

Any one had this problem, I am in test mode so feel free to make a purchase with 4444333322221111

 

http://www.alfaowner.com/store

 

We are desperate to go live, please help us if you can. I tried emailing graeme but he must be busy.

 

Regards,

 

AO

 

You don't have MC_callback set in your final page.........

This is the output of your system prior to gong to Worldpay (instId protected)

 

<form name="checkout_confirmation" action="https://select.worldpay.com/wcc/purchase" method="post">

<input type="hidden" name="instId" value="66666">

<input type="hidden" name="currency" value="GBP">

<input type="hidden" name="desc" value="Purchase from Alfaowner.com">

<input type="hidden" name="cartId" value="osCsid=c38c2aaf8c15b7d39423abab81c2bb70">

<input type="hidden" name="amount" value="144.82">

<input type="hidden" name="authMode" value="E">

<input type="hidden" name="testMode" value="0">

<input type="hidden" name="name" value="Ritchie Dakin">

<input type="hidden" name="address" value="The street&#10;&#10;City&#10;Avon">

<input type="hidden" name="postcode" value="WR14 4ES">

<input type="hidden" name="country" value="GB">

<input type="hidden" name="tel" value="0870 752  1100">

<input type="hidden" name="myvar" value="Y">

<input type="hidden" name="fax" value="">

<input type="hidden" name="email" value="[email protected]">

<input type="hidden" name="MC_oscsid" value="">

<input type="image" src="includes/languages/english/images/buttons/button_confirm_order.gif" border="0" alt="Confirm Order" title=" Confirm Order "></form>

 

 

The values for your postage look a little strange too !

Link to comment
Share on other sites

This is for those people using the version stated at the beginning of this topic and are experiencing 'random lost orders', ie Worldpay says it's paid but OSC seems to have lost it.

 

I have tracked down a potential cause of this problem. This is only relevant if the user has disabled cookies and OSC is relying on the osCsid to track the user. At the wpcallback.php page if the user is impatient and does not wait for the meta-refresh and instead manually clicks on the [CONTINUE] button the osCsid is not passed to checkout_success.php and thus OSC loses track of the user and order.

 

The fix is very simple. Just change the line (roughly line 93):

 

  <tr align="right"><td><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL', false) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?><td></tr>

 

to

 

  <tr align="right"><td><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_PROCESS, $cartId, 'SSL', false) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?><td></tr>

 

 

and (roughly) line 115:

 

  <tr align="right"><td><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL', false) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?><td></tr>

 

to

 

  <tr align="right"><td><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT, $cartId, 'SSL', false) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?><td></tr>

Jason Wong

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...