Support the VirtueMart project and become a member

Main Menu

Wish Worldpay!!

Started by Marc, March 31, 2008, 00:24:00 AM

Previous topic - Next topic


Hi there

I'm he putting on the wish list for a working payment mod for worldpay

as Virtuemart says its comes with a working worldpay module but has anyone tried to use it recently??

Im notting having a go im just frustrated after weeks of trying to get this to work, i've used several diffrent servers and configs with all the same results, Yes it will take payments..

BUT!! and its a biggie

There is no callback for starters a minor problem but the biggie is that is does not update the order status..  so i have to manualy check orders with payment recived to findout whats going on.

If you use the search in the forum you will see this is a common problem. infact from people ive spoken to the only way that have world pay working in virtumart is via ecom sollutions module.

Again sorry if this comes across as a moan or rant its not im just frustarated that all.

even tried the manual lol...

Quote4.12.3.2. Worldpay

Worldpay integration is made using a Webform that transfers the customer to the Worldpay site.

Allows automatic Order Status Updates. There's a file in /administrator/components/com_virtuemart/ which is called worldpay_notify.php. You will need to enter the appropriate URL (web address) for the script file in WorldPay's control panel. When a customer finishes the Payment, Worldpay copnnects to this script on your server and when the transaction AND the payment have been successful, updates the order status.

Many Thanks



I have the worldpay module working, I've not made any changes to it that I recall, this is my payment extra info:

<form action="" method="post">
  <input type=hidden name="testMode" value="0">
  <input type="hidden" name="instId" value="<?php echo WORLDPAY_INST_ID ?>" />
  <input type="hidden" name="cartId" value="<?php echo $db->f("order_id"?>" />
  <input type="hidden" name="amount" value="<?php echo $db->f("order_total"?>" />
  <input type="hidden" name="currency" value="<?php echo $_SESSION['vendor_currency'?>" />
  <input type="hidden" name="desc" value="Willow Tree Crafts" />
  <input type="hidden" name="email" value="<?php echo $user->email?>" />
  <input type="hidden" name="address" value="<?php echo $user->address_1?>&#10<?php echo $user->address_2?>&#10<?php echo
&#10<?php echo $user->state?>" />
  <input type="hidden" name="name" value="<?php echo $user->title?><?php echo $user->first_name?>. <?php echo $user->middle_name?><?php echo $user->last_name?>" />
  <input type="hidden" name="country" value="<?php echo $user->country?>"/>
  <input type="hidden" name="postcode" value="<?php echo $user->zip?>" />
  <input type="hidden" name="tel"  value="<?php echo $user->phone_1?>">
  <input type="hidden" name="withDelivery"  value="true">
  <br />
  <input type="submit" value ="PROCEED TO SECURE PAYMENT PAGE" />

I beleive the call back it set at the worldpay site not in VM,

Please add your VM and Joomla Version to your signature to make it easier to help you:

Most of my code posted in the forum is for VirtueMart 1.0  -  not for 1.1


Hi Thanks 4 the reply

I'v set the callback to point to worldpay_notify.php   an nothing im guessingthis is where the problem lies as its not using the vm.notify to change thr order status. i know this may sound cheakey but would i be able to see your worldpay_notify.php just to check if its that at fault?

but as others on here i've called worlpay support on it and no succsess either. but your the first i've spoken to that says it works out of the box?

and again thanks 4 the reply, you have given me a glimmer of hope that my hair might have a chance if growing back lol lol


EDIT (sorry for the bad spelling i was feeding my daughter at the time lol)


I COULD KISS YOU!!!!!  :o :o :o :o :o :o :o

;D ;D ;D

your payment extra info: solved it....... im usnure why and whats diffrent from the origonal????

I changed 2 things


<input type=hidden name="testMode" value="100">
<input type="hidden" name="desc" value="our name" />

And it works.. but from default dident work it was your payment info that solved it :)


i've just pasted in the origonal in again from backup i had... and its stopped working???? i might see whats causing it later but tbh im soo happy its working now lol lol lol




Glad it helped!

I've changed the icon to solved to help others looking for a solution, hope  you don't mind,
Please add your VM and Joomla Version to your signature to make it easier to help you:

Most of my code posted in the forum is for VirtueMart 1.0  -  not for 1.1


Np! and thanks again

Just one last thing i've noticed for contry codes.. lol sorry to be a pain

Worldpay uses the contry codes 2  eg  United Kingdom = GB   But for somereason VM sends across the country code 3 = GBR which leaves the contry code blank.

I've solved for the time being by changing the

Quote<input type="hidden" name="country" value="<?php echo user->country?>"/>


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

but for the time being i can only sell to uk, not a huge problem but we have plans to ship worldwide. but for the time being im more thatn happy with what we have lol

again thanks for your help ;)


Just for the above post re the contry codes

Solution is here

Hope that helps someone else ;)


This has been a really good thread and been quite helpful apart from that mine still does not update the order status..??  I have gone through and changed everything that is recommended on this thread but still no luck....

I am currently running in WorldPay test mode and wondered if that was the issue?

Also where is this callback response? In my WorldPay admin panel under the test installation I have a "Payment Response URL", is that it? If so I have added the link which is "http://{mydomainname}/administrator/components/com_virtuemart/worldpay_notify.php" , is that correct?

There is no redirect to take them back to the website either? That seems wrong to me.

One more thing sorry.  When I click confirm order it takes me to the next page where you "have to" click "proceed to payment".  At the top of the page though it reads:
No valid database connection
No valid database connection
Thank you for your order.

Success Your order has been successfully placed!

Is that right too? (no valid database connection)

Sorry for bring a pain, I can't find the correct solution at the moment and it is keeping me from going live....

Thanks in advance...   


Just wandered if anyone has resolved this issue yet. I too have worldpay setup and it does work but doesn't update the status of orders.

I'm running VM1.1.14 on J 1.5.15


This updated worldpay_notify.php may help if you still have the same problem.


Thanks Rocxa

Worked Perfect...

Just one problem i am having is that it is not bringing the Trans Id in?
it updates the status, being a newbie not to hot on php but looking at your worldpay_notify cant see any reference to trans id
Any Ideas will be much appreciated