Jump to content
Sign in to follow this  
perfectpassion

Protx Direct v2.22

Recommended Posts

Hi,

 

The basket error is a known fault when there is no shipping cost - as per the previous posts the temporary fix is to set "send shopping cart" to false - the permanent fix is in the new version that i'll upload soon.

 

I'm not quite sure what's happening with the invisible orders - this module doesn't alter the checkout processing so should be the cause of that - is this a new problem? What happens if you do test orders with another payment method?

 

Tom

Thnx Tom

This means that either i can use the download option or the delivery option. I cant use both or both will work.

Share this post


Link to post
Share on other sites

Ok the PROTX emergency seems to be over (fingers crossed)

 

I must say that I'm amazed at the very few posts that there were in this thread considering the immensity of the (PROTX) problem. (I call a half days trade possibly lost immense)

 

I think this is a very good time to realise that the developers of this contrib (Vger/perfectpassion) have kept us constantly ahead of the game with solid code through 3d secure and on to the latest changes with hardly a blip.

 

All of this work is conducted entirely free of charge. I personally rely on the sales processed through this system as they make up the vast majority of sales (vs PayPal/Google checkout).

 

Well a big thanks from me anyway.

Share this post


Link to post
Share on other sites

echoing babygurgles

 

have not posted but have been monitoring the forum, our downtime was about 2 hours but without this forum and the regular contibuters it would be a lot longer

 

so thank you to vger and perfectpassion for their constant support for this module

 

regards

 

 

Chris

http://glosticks.co.uk

Share this post


Link to post
Share on other sites

It's Tom you need to thank. I posted the original but Tom has been the one keeping it up to date since then - except for the "No shipping address" fix I posted this past week.

 

Vger

Share this post


Link to post
Share on other sites

@Babygurgles

 

And its a yes from me as they say :thumbsup:

 

@perfectpassion

@Vger

Hi Guys

 

On the code changing front, I've made changes to admin/orders_protx.php as per the new url docs from protx but they fail (just trying to add my bit really). I've commented them out below as the old ones still work ... It's not another typo from me is it ??? :blush:

 

Line 35 ish

 

switch ($_GET['process']) {

case 'release':

$data = 'VPSProtocol=2.22' .

'&TxType=RELEASE' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $transaction['vendortxcode'] .

'&VPSTxID=' . $transaction['vpstxid'] .

'&SecurityKey=' . $transaction['securitykey'] .

'&TxAuthNo=' . $transaction['txauthno'];

$service = 'VendorReleaseTX';

//$service = 'release.vsp'; new path ending as per protx

break;

 

case 'refund':

require_once(DIR_WS_CLASSES . 'order.php');

$order = new Order($oID);

$uid = tep_create_random_value(32, 'digits');

$VendorTxCode = $oID . '-'. $uid;

$data = 'VPSProtocol=2.22' .

'&TxType=REFUND' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $VendorTxCode .

'&Amount=' . $_GET['value'] .

'&Currency=' . $order->info['currency'] .

'&Description=' . urlencode('Refund via osC Admin Area') .

'&RelatedVPSTxId=' . $transaction['vpstxid'] .

'&RelatedVendorTxCode=' . $transaction['vendortxcode'] .

'&RelatedSecurityKey=' . $transaction['securitykey'] .

'&RelatedTxAuthNo=' . $transaction['txauthno'];

$service = 'VendorRefundTX';

/ /$service = 'refund.vsp'; new path ending as per protx

break;

 

case 'authorise':

$uid = tep_create_random_value(32, 'digits');

$VendorTxCode = $oID . '-'. $uid;

$data = 'VPSProtocol=2.22' .

'&TxType=AUTHORISE' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $VendorTxCode .

'&Amount=' . $_GET['value'] .

'&Description=' . urlencode('Authorise via osC admin area') .

'&RelatedVPSTxId=' . $transaction['vpstxid'] .

'&RelatedVendorTxCode=' . $transaction['vendortxcode'] .

'&RelatedSecurityKey='. $transaction['securitykey'];

$service = 'VendorAuthoriseTX';

//$service = 'authorise.vsp'; new path ending as per protx

break;

 

case 'cancel':

$data = 'VPSProtocol=2.22' .

'&TxType=CANCEL' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $transaction['vendortxcode'] .

'&VPSTxId=' . $transaction['vpstxid'] .

'&SecurityKey=' . $transaction['securitykey'];

$service='VendorCancelTX';

//$service='cancel.vsp'; new path ending as per protx

break;

 

case 'abort':

$data = 'VPSProtocol=2.22' .

'&TxType=ABORT' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $transaction['vendortxcode'] .

'&VPSTxId=' . $transaction['vpstxid'] .

'&SecurityKey=' . $transaction['securitykey'] .

'&TxAuthNo=' . $transaction['txauthno'];

$service='VendorAbortTX';

//$service='abort.vsp'; new path ending as per protx

break;

 

case 'void':

$data = 'VPSProtocol=2.22' .

'&TxType=VOID' .

'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .

'&VendorTxCode=' . $transaction['vendortxcode'] .

'&VPSTxId=' . $transaction['vpstxid'] .

'&SecurityKey=' . $transaction['securitykey'] .

'&TxAuthNo=' . $transaction['txauthno'];

$service='VendorVoidTX';

//$service='void.vsp'; new path ending as per protx

break;

}

unset($response);

 

if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {

$url = 'https://ukvpstest.protx.com/vps200/dotransaction.dll?Service='.$service;

} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {

$url = 'https://ukvpstest.protx.com/showpost/showpost.asp';

} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {

$url = 'https://ukvpstest.protx.com/VSPSimulator/VSPServerGateway.asp?Service='.$service;

} else {

$url = 'https://ukvps.protx.com/vps200/dotransaction.dll?Service='.$service;

}

 

 

// THIS SET FAILS WITH THE NEW PATHS UNCOMMENTED ABOVE

 

// if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {

// $url = 'https://ukvpstest.protx.com/vpsgateway/service/'.$service;

// } elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {

// $url = 'https://ukvpstest.protx.com/showpost/showpost.asp';

// } elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {

// $url = 'https://ukvpstest.protx.com/VSPSimulator/VSPServerGateway.asp?Service='.$service; --- this needs changing too

// } else {

// $url = 'https://ukvps.protx.com/vpsgateway/service/'.$service;

// }

 

James

Share this post


Link to post
Share on other sites

Thanks for the support - much appreciated.

 

@cottonmiller - unfortunately it's the vsp vs. vps spelling again! The correct new url is ukvps.protx.com/vspgateway/service/

 

The new urls are in the update - I'll probably post it over the weekend now things are settling down at the Protx end - I wanted to wait so that if there were any issues it would be clearer if it was Protx or the update!

 

Tom

Share this post


Link to post
Share on other sites

@cottonmiller - This is how I did mine

 

 case 'release':
 $data  =  'VPSProtocol=2.22' .
		'&TxType=RELEASE' .
		'&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME . 
		'&VendorTxCode=' . $transaction['vendortxcode'] .
		'&VPSTxID=' . $transaction['vpstxid'] . 
		'&SecurityKey=' . $transaction['securitykey'] . 
		'&TxAuthNo=' . $transaction['txauthno'];
 $TESTservice = 'VendorReleaseTX';
 $LIVEservice = '/vspgateway/service/release.vsp';
break;

case 'refund':
 require_once(DIR_WS_CLASSES . 'order.php');
 $order = new Order($oID);
 $uid = tep_create_random_value(32, 'digits');
 $VendorTxCode = $oID . '-'. $uid;
 $data = 'VPSProtocol=2.22' .
	  '&TxType=REFUND' . 
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME . 
	  '&VendorTxCode=' . $VendorTxCode .
	  '&Amount=' . $_GET['value'] . 
	  '&Currency=' . $order->info['currency'] .
	  '&Description=' . urlencode('Refund via osC Admin Area') .
	  '&RelatedVPSTxId=' . $transaction['vpstxid'] .
	  '&RelatedVendorTxCode=' . $transaction['vendortxcode'] .
	  '&RelatedSecurityKey=' . $transaction['securitykey'] . 
	  '&RelatedTxAuthNo=' . $transaction['txauthno'];
 $TESTservice = 'VendorRefundTX';
 $LIVEservice = '/vspgateway/service/refund.vsp';
break;			

case 'authorise':
  $uid = tep_create_random_value(32, 'digits');
  $VendorTxCode = $oID . '-'. $uid;
  $data = 'VPSProtocol=2.22' .
	  '&TxType=AUTHORISE' .
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .
	  '&VendorTxCode=' . $VendorTxCode .
	  '&Amount=' . $_GET['value'] .
	  '&Description=' . urlencode('Authorise via osC admin area') .
	  '&RelatedVPSTxId=' . $transaction['vpstxid'] .
	  '&RelatedVendorTxCode=' . $transaction['vendortxcode'] .
	  '&RelatedSecurityKey='. $transaction['securitykey'];
$TESTservice = 'VendorAuthoriseTX';
$LIVEservice = '/vspgateway/service/authorise.vsp';
 break;

 case 'cancel':
  $data = 'VPSProtocol=2.22' .
	  '&TxType=CANCEL' .
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .
	  '&VendorTxCode=' . $transaction['vendortxcode'] .
	  '&VPSTxId=' . $transaction['vpstxid'] .
	  '&SecurityKey=' . $transaction['securitykey'];
$TESTservice='VendorCancelTX';
$LIVEservice = '/vspgateway/service/cancel.vsp';
 break;		

 case 'abort':
  $data = 'VPSProtocol=2.22' .
	  '&TxType=ABORT' .
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .
	  '&VendorTxCode=' . $transaction['vendortxcode'] .
	  '&VPSTxId=' . $transaction['vpstxid'] .
	  '&SecurityKey=' . $transaction['securitykey'] .
	  '&TxAuthNo=' . $transaction['txauthno'];
$TESTservice='VendorAbortTX';
$LIVEservice = '/vspgateway/service/abort.vsp';
 break; 

 case 'void':
  $data = 'VPSProtocol=2.22' .
	  '&TxType=VOID' .
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME .
	  '&VendorTxCode=' . $transaction['vendortxcode'] .
	  '&VPSTxId=' . $transaction['vpstxid'] .
	  '&SecurityKey=' . $transaction['securitykey'] .
	  '&TxAuthNo=' . $transaction['txauthno'];
$TESTservice='VendorVoidTX';
$LIVEservice = '/vspgateway/service/void.vsp';
 break; 

case 'repeat':
 require_once(DIR_WS_CLASSES . 'order.php');
 $order = new Order($oID);
 $uid = tep_create_random_value(32, 'digits');
 $VendorTxCode = $oID . '-'. $uid;
 $data = 'VPSProtocol=2.22' .
	  '&TxType=REPEAT' . 
	  '&Vendor=' . MODULE_PAYMENT_PROTX_DIRECT_VENDOR_NAME . 
	  '&VendorTxCode=' . $VendorTxCode .
	  '&Amount=' . $_GET['value'] . 
	  '&Currency=' . $order->info['currency'] .
	  '&Description=' . urlencode('Repeat via osC Admin Area') .
	  '&RelatedVPSTxId=' . $transaction['vpstxid'] .
	  '&RelatedVendorTxCode=' . $transaction['vendortxcode'] .
	  '&RelatedSecurityKey=' . $transaction['securitykey'] . 
	  '&RelatedTxAuthNo=' . $transaction['txauthno'];
 $TESTservice = 'VendorRepeatTX';
 $LIVEservice = '/vspgateway/service/repeat.vsp';
break;		

}
 unset($response);

 if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {
$url = 'https://ukvpstest.protx.com/vps200/dotransaction.dll?Service='.$TESTservice;
 } elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {
$url = 'https://ukvpstest.protx.com/showpost/showpost.asp';
 } elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {
$url = 'https://ukvpstest.protx.com/VSPSimulator/VSPServerGateway.asp?Service='.$TESTservice;
 } else {
$url = 'https://ukvps.protx.com' . $LIVEservice;
 }

Share this post


Link to post
Share on other sites

I've uploaded v4.4.

 

The main changes are:

 

- Updated URLs

- Improved failed transaction messages for customers

- Fixed no shipping address error (Thanks to Vger)

- Fixed zero shipping cost causing invalid basket error

- Extra card validation checks if JS is disabled

- 3D-Secure information popup (thanks to kdenby)

- Fixed dropped sessions in admin

- Added moving timer image whilst waiting post 3D-Secure (thanks to Babygurgles)

 

Tom

Share this post


Link to post
Share on other sites
Protx have changed their URLs - they have insisted that the old urls will continue to work and be redirected to the new ones but presumably by the 404 message that isn't happening.

 

Try editing protx_process.php, near the top find

	  if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {
	  $url = 'https://ukvpstest.protx.com/vpsDirectAuth/Callback3D.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {
	  $url = 'https://ukvpstest.protx.com/showpost/showpost.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {
	  $url = 'https://ukvpstest.protx.com/VSPSimulator/VSPDirectCallback.asp';
	} else {
	  $url = 'https://ukvps.protx.com/vpsDirectAuth/Callback3D.asp';
	}

 

and replace with

	  if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {
	  $url = 'https://ukvpstest.protx.com/vspgateway/service/direct3dcallback.vsp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {
	  $url = 'https://ukvpstest.protx.com/showpost/showpost.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {
	  $url = 'https://ukvpstest.protx.com/VSPSimulator/VSPDirectCallback.asp';
	} else {
	  $url = 'https://ukvps.protx.com/vspgateway/service/direct3dcallback.vsp';
	}

 

further down find:

	  if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {
	  $url = 'https://ukvpstest.protx.com/vpsDirectAuth/PaymentGateway3D.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {
	  $url = 'https://ukvpstest.protx.com/showpost/showpost.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {
	  $url = 'https://ukvpstest.protx.com/VSPSimulator/VSPDirectGateway.asp';
	} else {
	  $url = 'https://ukvps.protx.com/vpsDirectAuth/PaymentGateway3D.asp';
  }

and replace with

	  if (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Test') {
	  $url = 'https://ukvpstest.protx.com/vspgateway/service/vspdirect-register.vsp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Server IP Test') {
	  $url = 'https://ukvpstest.protx.com/showpost/showpost.asp';
	} elseif (MODULE_PAYMENT_PROTX_DIRECT_TRANSACTION_MODE == 'Simulator') {
	  $url = 'https://ukvpstest.protx.com/VSPSimulator/VSPDirectGateway.asp';
	} else {
	  $url = 'https://ukvps.protx.com/vspgateway/service/vspdirect-register.vsp';
  }

 

Let me know if that helps

Tom

I have made the above URL changes on my site now. Can we activate the shpping cart info now?

 

Also wanted to thank:

@Babygurgles

@perfectpassion

@Vger

 

Vger - Has been my hosting company for 2 years now and she has been very supportive and would definately recommend TerraNetwork to any one looking for a good host. Cheers!!

 

Kunal :thumbsup:

Share this post


Link to post
Share on other sites

Changing the urls will have no impact on the shopping cart error - this is fixed in the latest release of the module (v4.4) - I suggest updating to that.

 

Tom

Share this post


Link to post
Share on other sites
Good to hear things are going well.

 

@johnr3 - I hadn't considered the situation with no delivery address - I will included next time an update is needed, thanks.

 

Tom

 

Hi Tom, is this fix in the new version? Thanks John

Share this post


Link to post
Share on other sites
Hi Tom, is this fix in the new version? Thanks John

 

I've just tested it on our development server and i'm getting basket error again if I have no delivery address.

 

Any idea?

Share this post


Link to post
Share on other sites

Hi Tom,

 

I installed the update yesterday morning and I've just been having a look back through the protx_direct table as we've had a couple of customers phone up and say they couldn't order due to 404 and one was a card error issue.

 

I have this error against one failed transaction

 

3DAUTH 2007 : Please redirect your customer to the ACSURL, passing the MD and PaReq.

 

Does this mean anything to you?

 

Thanks

 

Dave

Share this post


Link to post
Share on other sites
Hi Tom,

 

I installed the update yesterday morning and I've just been having a look back through the protx_direct table as we've had a couple of customers phone up and say they couldn't order due to 404 and one was a card error issue.

 

I have this error against one failed transaction

 

3DAUTH 2007 : Please redirect your customer to the ACSURL, passing the MD and PaReq.

 

Does this mean anything to you?

 

Thanks

 

Dave

 

Hi Stubsy

 

Seems to me that this is happening when PROTX times out .. I bet you find the following in the PROTX VSP panel

 

Transaction CANCELLED by Protx systems after 15 minutes of inactivity, or no reply from Notification POSTs.

 

I've been on to PROTX today re: timout issues and they are looking into it.

 

I tried this morning (about 8:30) to buy something from my site myself (live) and it kept timing out for a good 20 mins.

Share this post


Link to post
Share on other sites
Hi Stubsy

 

Seems to me that this is happening when PROTX times out .. I bet you find the following in the PROTX VSP panel

 

Transaction CANCELLED by Protx systems after 15 minutes of inactivity, or no reply from Notification POSTs.

 

I've been on to PROTX today re: timout issues and they are looking into it.

 

I tried this morning (about 8:30) to buy something from my site myself (live) and it kept timing out for a good 20 mins.

 

Yep, thats exactly it!

 

Good to know its not at my end :)

 

Cheers

 

Dave

Share this post


Link to post
Share on other sites

Hi,

 

Been also getting:

 

1. "Transaction CANCELLED by Protx systems after 15 minutes of inactivity, or no reply from Notification POSTs. "

2. "Transaction reached initial registration stage but has proceeded no further."

 

No answer from PROTX via email, the support forums are red hot with angry people all getting problems/losing money.

 

Who ever gets an update to these timeout problems PLEASE post here for the rest of us! and i will do the same.

 

Lets hope someone finds and answer soon.

 

Thanks in advance.

Share this post


Link to post
Share on other sites

my website is current using protx form.We also have a dedicated ssl certificate on the site.We have decided to move to protx direct.Protx have asked me for a ip address.

 

we are using 1and1 shared hosting.I am comfused as to what ip address they are asking me for.I phoned 1and1 and they gave me the server ip address.

 

I am confused as what happens if another site on the shared hosting is also using protx..So what ip address do i need to give them. if i do a nslookup on my site it has different ip address compared to what 1and 1 gave me. help me clear this confusion...

 

thanks in advance.

 

nafri

Edited by nafri

Share this post


Link to post
Share on other sites

The IP address to give to Protx is the servers shared ip address - even if your website has its own dedicated ip address.

 

Protx knows which site it is by the 'vendor name' supplied.

 

Vger

Share this post


Link to post
Share on other sites
Thanks for the support - much appreciated.

 

@cottonmiller - unfortunately it's the vsp vs. vps spelling again! The correct new url is ukvps.protx.com/vspgateway/service/

 

The new urls are in the update - I'll probably post it over the weekend now things are settling down at the Protx end - I wanted to wait so that if there were any issues it would be clearer if it was Protx or the update!

 

Tom

 

Hi Tom

 

My coding skills are good, my spelling is a jooke :'(

 

Thanks again

James

Share this post


Link to post
Share on other sites
@cottonmiller - This is how I did mine

 

Loads a code woz ere

 

Thanks for the tip, like the use of case test ... I've been tied up with other issues since and will apply the new updates later, thanks for your support again

 

James

Share this post


Link to post
Share on other sites

Many customers have been complaining today about time-outs using various card types; using the support here (thanks to the usual suspects) and from Protx has kept sales alive to a degree today although phone sales have been up - there's a shock!

 

Just for everyone's info Tesco reported card processing erros for 3 hours this morning and there were one or two issue with the Clear Commerce Engine (Barclays, HSBC etc) so it seems that customers may have encountered online transactional problems with the big boys too ... helps keep things positive ;)

 

James

Edited by cottonmiller

Share this post


Link to post
Share on other sites

@nafri - This post gives you information about how to find the IP address you need and add to to Protx admin.

 

@stubbsy - that message is stored in the database when the first part of creating the transaction is complete, it is normally overwritten when the customer returns from doing their 3D-Secure password - if it remains then either they closed their browser/went away when it appeared or perhaps a timeout issue.

 

There seems to be a lot of timeout issues still with Protx - though they are denying any current problems - perhaps today it really wasn't their fault but the banks - thanks to cottonmiller for the info.

 

Tom

Share this post


Link to post
Share on other sites

I've just installed V4.4 on a previous V2 system and carried out the relevant upgrade etc.

 

However on the "Confirm Checkout" button I get directed to this page:

 

https://secure.ohmhealthcare.com/protx_proc...0issuing%20bank

 

And it's just blank, no source code, no display and it doesn't go anywhere.

 

I don't think this is normal, what've I done wrong?

 

Thanks

Share this post


Link to post
Share on other sites

It looks as if you have "Use search engine friendly url's (still in development)" enabled. If you do then try turning them off and then see what happens.

 

Vger

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
Sign in to follow this  

×