Latest News: (loading..)
flykt

RBS World Pay Junior callback

54 posts in this topic

Hi all,

 

I am having an issue and am wondering if anyone has a resolution.

 

When I use the world pay callback url - http://<WPDISPLAY ITEM=MC_callback> - I get the return button to our website but nothing happens when you click it and the user is not redirected and we recieve a callback failure email.

 

 

and when I use the world pay junior callback url - http://www.yourcompa...or_callback.php - I get no return button and still nothing happens. no callback no result, can anyone help me with this as it's driving me crazy now.

 

cheers, flykt

Share this post


Link to post
Share on other sites

Hey flykt,

 

I'm having the exact same problem and have literally tried everything possible. RBS told us that the junior callback is the problem because it's not returning any html when called. If you manually run the junior_callback.php file is anything displayed? Does your callback file have an absolute url to your checout_process.php file?

Share this post


Link to post
Share on other sites

I got it working. Just make sure in your RBS control panels to have your junior_callback.php url entered and tick or enable the 3 checkboxes underneath to make it all work. I only had the first checkbox ticked and that seemed to have been the problem all along.

Share this post


Link to post
Share on other sites

You're a star I will check tha out now and get back to you , from what I hear this is a recurring problem.

Share this post


Link to post
Share on other sites

I got it working. Just make sure in your RBS control panels to have your junior_callback.php url entered and tick or enable the 3 checkboxes underneath to make it all work. I only had the first checkbox ticked and that seemed to have been the problem all along.

 

Hi hekg

 

I trust your RBS control Panel is the same as mine, so can you confirm that when you say "Check the 3 Checkboxes underneath" do you mean the ones below the :

Payment Response URL :

 

ie these ones

Payment Response enabled?

Enable Recurring Payment Response

Enable the Shopper Response

 

ian

Share this post


Link to post
Share on other sites

Hi hekg

 

I trust your RBS control Panel is the same as mine, so can you confirm that when you say "Check the 3 Checkboxes underneath" do you mean the ones below the :

Payment Response URL :

 

ie these ones

Payment Response enabled?

Enable Recurring Payment Response

Enable the Shopper Response

 

ian

 

 

Thats right , if you enable those three options and set the response url to the path callback.php path , which should look something like this; ext/modules/payment/worldpayjunior/callback.php

 

Once set up leave it for a day and then do your test , as i was testing it immediately but the system hadn't updated itself yet and was still showing an incorrect path.

Once you leave it a day the callback will work, it will return the shopper , empty the cart , and update any products purchased, invoices etc

 

and thats it a hidden secret which causes a lot of drama.

 

Flykt

Share this post


Link to post
Share on other sites

Thats right , if you enable those three options and set the response url to the path callback.php path , which should look something like this; ext/modules/payment/worldpayjunior/callback.php

 

Once set up leave it for a day and then do your test , as i was testing it immediately but the system hadn't updated itself yet and was still showing an incorrect path.

Once you leave it a day the callback will work, it will return the shopper , empty the cart , and update any products purchased, invoices etc

 

and thats it a hidden secret which causes a lot of drama.

 

Flykt

 

Flykt

 

Thanks for the clarification.

I think i am experiencing the "leave it for a day" problem at the moment. Its Really annoying.

 

Just one confirmation : the name you refer to is "callback.php". The one in my path is "ext/modules/payment/worldpayjunior/junior_callback.php"

 

So i gather thats the one to use. (id hate to have to wait another day to check it).

Share this post


Link to post
Share on other sites

Flykt

 

Thanks for the clarification.

I think i am experiencing the "leave it for a day" problem at the moment. Its Really annoying.

 

Just one confirmation : the name you refer to is "callback.php". The one in my path is "ext/modules/payment/worldpayjunior/junior_callback.php"

 

So i gather thats the one to use. (id hate to have to wait another day to check it).

 

 

yeah thats the one, what no one tells you is that is does take time to update but it should work , if after a day it doesnt check you account status with RBS. but yes if your account is live it should work.

Share this post


Link to post
Share on other sites

Flykt

 

did not work.

 

When i reconfigured the Worldpay Managment side as you suggested, my whole RBS payment could not be processed.

It just presents RBS page with errors like Account is not active or account details wrong ....

 

When i configure as per the Pdf document that comes with the contribution e.g

 

the "response URL" to https://<WPDISPLAY ITEM=MC_callback>

 

Iam able to get to the test RBs and process a test purchase.

 

However, after Make Payment, it stays on the RBS page, no callback

 

Regards

Share this post


Link to post
Share on other sites

Ok tried it again, with the ext/..../junior_callback.php again

 

and the system still works. waited a while and tried again to see if its just the updating.

 

Now it still works, i.e. i can test a payment, but cannot get the callback to fire.

 

I think ill sleep on it and try it again tomorrow.

Share this post


Link to post
Share on other sites

Ok tried it again, with the ext/..../junior_callback.php again

 

and the system still works. waited a while and tried again to see if its just the updating.

 

Now it still works, i.e. i can test a payment, but cannot get the callback to fire.

 

I think ill sleep on it and try it again tomorrow.

 

Any joy getting this to work?

Share this post


Link to post
Share on other sites

Hello Guys,

 

The problem's you're experiencing are caused by deprecated code within the callback page.

 

I've made an updated version the contribution and it can be found here http://addons.oscommerce.com/info/7151

 

Follow the original instructions and it should work fine.

 

Also ensure you update the payment language files as I've included a response for failed payments.

 

Hope it helps,

 

Pete

Share this post


Link to post
Share on other sites

Thanks for the reply

 

does 'ssl or not ssl' relate my website or world pay;s?

 

How do I set it up to return to my website after payment is made (I assume I need this for oscommerce to send out emails) - Can't find anything about this in the pdf

Share this post


Link to post
Share on other sites

Thanks for the reply

 

does 'ssl or not ssl' relate my website or world pay;s?

 

How do I set it up to return to my website after payment is made (I assume I need this for oscommerce to send out emails) - Can't find anything about this in the pdf

 

If you are using https:// (i.e. you have a valid ssl certificate) then enter the ssl version of the link i.e. https://<WPDISPLAY ITEM=MC_callback> in the Callback URL field within your Worldpay admin control/config panel.

 

If you dont have a valid ssl certificate then enter http://<WPDISPLAY ITEM=MC_callback> in the Callback URL field.

 

This is on Page 4 in the PDF.

Share this post


Link to post
Share on other sites

Also can you say if the

 

callback password, md5 password are necessary

 

Yes, this is detailed on Page 5 of the PDF

Share this post


Link to post
Share on other sites

Hi, for anyone still struggling with this, I have been told by RBS Worldpay that the only way they accept callback code with a redirect is to use a meta refresh, rather than javascript as the callback used to.

 

Therefore, to overcome this issue (worked for me anyway), you need to make sure you are using the latest junior_callback.php file in ext/modules/payment/worldpay, which can be obtained from here:

 

http://addons.oscommerce.com/info/7151

 

Open the junior_callback.php file in a text editor and at line 89, before:

<form action="<?php echo tep_href_link(FILENAME_CHECKOUT_PROCESS, tep_session_name() . '=' . $_POST['M_sid'] . '&hash=' . $_POST['M_hash'], 'SSL', false); ?>" method="post">

 

Add:

<meta http-equiv="refresh" content="0; url=<?php echo tep_href_link(FILENAME_CHECKOUT_PROCESS, tep_session_name() . '=' . $_POST['M_sid'] . '&hash=' . $_POST['hash'], 'SSL', false); ?>">

 

Repeat this at line 127, before:

<form action="<?php echo tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $_POST['M_sid'] . '&hash=' . $_POST['M_hash'], 'SSL', false); ?>" method="post">

 

Add:

<meta http-equiv="refresh" content="0; url=<?php echo tep_href_link(FILENAME_CHECKOUT_PROCESS, tep_session_name() . '=' . $_POST['M_sid'] . '&hash=' . $_POST['hash'], 'SSL', false); ?>">

 

This seems to invoke the redirect with the OSC session ID and Cart ID, where the form seems to lose them.

 

I hope this saves someone the hours it took me to work it out!

Share this post


Link to post
Share on other sites

Hi,

 

I'm getting these errors when using the meta refresh:-

 

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/.../public_html/.../ext/modules/payment/worldpay/junior_callback.php:25) in /home/.../public_html/.../includes/functions/sessions.php on line 102

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/.../public_html/.../ext/modules/payment/worldpay/junior_callback.php:25) in /home/.../public_html/.../includes/functions/sessions.php on line 102

 

Any ideas how to solve this? I don't get the errors when using the updated worldpay version listed here which doesn't use meta refresh http://addons.oscommerce.com/info/7151 but I'd rather it used the meta refresh than users having to click the button.

 

Thanks

Share this post


Link to post
Share on other sites

I'm getting these errors when using the meta refresh:-

 

Any ideas how to solve this? I don't get the errors when using the updated worldpay version listed here which doesn't use meta refresh http://addons.oscommerce.com/info/7151 but I'd rather it used the meta refresh than users having to click the button.

 

Thanks

 

HTML is being outputted to the screen before the sessions handlers/redirects can do their job. Most likely the meta redirect you've placed in it. You need to make sure it's placed in the page after all server side code.

Share this post


Link to post
Share on other sites

Thanks for the quick response.

 

It seems to be that junior_callback.php listed on the download here under "Callback with META Refresh" has a mistake in it. I used the junior_callback.php from your original download and manually added the meta refresh code and it doesn't create those errors. Do I need to repack the meta refresh version or contact whoever uploaded the "Callback with META Refresh" to let them know? Assuming this isn't just me getting that error.

 

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now