Guest Posted March 17, 2008 Share Posted March 17, 2008 sorry had missed it! The Cardholder's name, although transferred to Protx and a compulsary field, is not actually verfied when the transaction is processed (so I am lead to believe) - the postcode and address numerics (along with the CVV) are the most imortant values - these are checked every time (if AVS checks are enable at the protx end). If you look at your protx_direct table in your db failures will be listed there along with the error code - may help you figure out why. Tom Thanks Tom, very helpful as always, will get into that database now! Quote Link to comment Share on other sites More sharing options...
pvtparts Posted March 17, 2008 Share Posted March 17, 2008 (edited) Can you do a test order with incorrect details then post the url that you are getting here? Ah, interesting. The URL string is: www.shopurl.site/checkout_payment.php?payment_error=protx_direct&error=The+given+card+type+is+incorrect.+Please+check+carefully+and+try+again.&osCsid=yadayada So, having been told where to look by you ;) I notice that there are & codes where we should just see & Sure enough, taking these & codes and replacing them with & gives us the correct error in the message box. So, the question is; what could be generating the & when I should have & ? Edited March 17, 2008 by pvtparts Quote Link to comment Share on other sites More sharing options...
pvtparts Posted March 17, 2008 Share Posted March 17, 2008 I also checked elsewhere on the site where '&' is expected in the string and they still work normally (no & substituation) (Sorry for the bold tags but IP.Board converts to a character otherwise ;) ) Quote Link to comment Share on other sites More sharing options...
Guest Posted March 17, 2008 Share Posted March 17, 2008 edit catalog/includes/functions/html_output.php find return $seo_urls->href_link($page, $parameters, $connection, $add_session_id); replace with return str_replace('&', '&', $seo_urls->href_link($page, $parameters, $connection, $add_session_id)); Quote Link to comment Share on other sites More sharing options...
pvtparts Posted March 17, 2008 Share Posted March 17, 2008 Sorry, I've gone and been all rash and fixed it myself :) The & query string issue lies with Chemo's Ultimate SEO URLs. There is an option in the SEO URLs config called "Output W3C valid URLs (parameter string)?". If this option is set to true, it causes the & to& substitution issue in the query and prevents the text displaying in the credit card error box on checkout_payment.php Hope this is useful for anyone else who encounters this issue. Quote Link to comment Share on other sites More sharing options...
markg-uk Posted March 17, 2008 Share Posted March 17, 2008 I installed this today on my site and I can't quite get it to work. It talks ok to the VSP Simulator (i.e. transactions are viewable on the protx site and also in my admin section). Its just that after submitting the cc details, I get a blank checkout_process.php page with this in the title: domain.com/checkout_process.php?protx_id=5&osCsid=92062k7t1f9a8ir3jdclpfkvp7 I do use 'Chemo's Ultimate SEO URLs' so installed the quick fix below to get rid of the &s to get to this: domain.com/checkout_process.php?protx_id=20&osCsid=92062k7t1f9a8ir3jdclpfkvp7 but it made no difference. I do have a few mods installed including the 'must agree to terms' (which I've disabled) plus one for tracking numbers but I don't think they are the issue as even a stock version gives the same. I've gone back many pages on here and couldn't find anything relevant Any ideas? :'( Quote Link to comment Share on other sites More sharing options...
Guest Posted March 18, 2008 Share Posted March 18, 2008 Do other payment modules work ok? Quote Link to comment Share on other sites More sharing options...
markg-uk Posted March 18, 2008 Share Posted March 18, 2008 Well, thats very strange - they did last week before we had the SSL cert installed and the protx contrib installed - now they don't (the cash on delivery one for example) - it gets the same problem. I did install Chemo's seo 2.1d contrib as well. I've disabled the SSL and it still fails - guess its the seo one So you've never seen this before? Quote Link to comment Share on other sites More sharing options...
smiley Posted March 18, 2008 Share Posted March 18, 2008 Clicking repeat will process a new payment (for the amount specified in the subsequent popup). This will not be recurring, you will need to click repeat every time you need the payment to be taken. If you need it to be automated that will need a custom coded solution. Tom Thanks Tom, We accept recurring donations. Would you or anyone familiar with this mod be able to code a custom solution to enable the payments to recur automatically? PM me if you prefer. Quote HTH Neil Common sense is genius dressed in working clothes. Ralph Waldo Emerson Link to comment Share on other sites More sharing options...
Guest Posted March 18, 2008 Share Posted March 18, 2008 MarkG - it sounds like you've got a syntax error in your checkout_process.php but with error reporting disabled. Enable error reporting and try again (it may have been disabled in your includes/application_top.php or more globally in the php.ini file) Quote Link to comment Share on other sites More sharing options...
markg-uk Posted March 18, 2008 Share Posted March 18, 2008 I rolled back to a set of files I knowed checkout worked with - any they still failed. It turned out to be something amiss with my database - when I moved it from my dev pc to the target webserver, something went wrong. Its all working now - many thanks (both for the contrib and help) Quote Link to comment Share on other sites More sharing options...
rosshand Posted April 3, 2008 Share Posted April 3, 2008 I've been using Protx Direct 2.2 for a long while now. However recently customers are complaining saying that their cards are being bounced saying they are invalid. It seems to happen on newish visa cards. It isnt a protx problem as it happends in the checkout_payment page. Can anyone help I'm loosing a lot of custom over this. I am using hte dropdown menus for customers to select the card tehy want to use. Quote Link to comment Share on other sites More sharing options...
Guest Posted April 3, 2008 Share Posted April 3, 2008 Can you be more specific about any error messages they are getting? Quote Link to comment Share on other sites More sharing options...
rosshand Posted April 3, 2008 Share Posted April 3, 2008 HI, it just says Invalid Card number, for newer Visa cards Quote Link to comment Share on other sites More sharing options...
Guest Posted April 3, 2008 Share Posted April 3, 2008 The only reason that a card would be rejected before reaching checkout_confirmation with "invalid card number" would be if it failed a LUHN check (http://en.wikipedia.org/wiki/Luhn)- which all valid card numbers should pass. If you want to disable this check edit catalog/includes/modules/payment/protx_direct.php, find: function pre_confirmation_check() { global $HTTP_POST_VARS; include(DIR_WS_CLASSES . 'protx_cc_validation.php'); $cc_validation = new cc_validation(); $result = $cc_validation->validate($HTTP_POST_VARS['protx_direct_cc_number'], $HTTP_POST_VARS['protx_direct_cc_expires_month'], $HTTP_POST_VARS['protx_direct_cc_expires_year']); $error = ''; switch ($result) { case -1: $error = sprintf(TEXT_CCVAL_ERROR_UNKNOWN_CARD, substr($cc_validation->cc_number, 0, 4)); break; case -2: case -3: case -4: $error = TEXT_CCVAL_ERROR_INVALID_DATE; break; case false: $error = TEXT_CCVAL_ERROR_INVALID_NUMBER; break; } if (($result == false) || ($result < 1)) { $payment_error_return = 'payment_error=' . $this->code . '&error=' . urlencode($error) . '&protx_direct_cc_owner=' . urlencode($HTTP_POST_VARS['protx_direct_cc_owner']) . '&protx_direct_cc_expires_month=' . $HTTP_POST_VARS['protx_direct_cc_expires_month'] . '&protx_direct_cc_expires_year=' . $HTTP_POST_VARS['protx_direct_cc_expires_year']; tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, $payment_error_return, 'SSL', true, false)); } $this->cc_card_type = $HTTP_POST_VARS['protx_direct_cc_type']; $this->cc_card_number = $cc_validation->cc_number; $this->cc_expiry_month = $cc_validation->cc_expiry_month; $this->cc_expiry_year = $cc_validation->cc_expiry_year; } change to function pre_confirmation_check() { global $HTTP_POST_VARS; $this->cc_card_type = $HTTP_POST_VARS['protx_direct_cc_type']; $this->cc_card_number = $HTTP_POST_VARS['protx_direct_cc_number']; $this->cc_expiry_month = $HTTP_POST_VARS['protx_direct_cc_expires_month']; $this->cc_expiry_year = $HTTP_POST_VARS['protx_direct_cc_expires_year']; } Tom Quote Link to comment Share on other sites More sharing options...
♥FWR Media Posted April 4, 2008 Share Posted April 4, 2008 I'd just like to say another thanks to perfectpassion for this great contribution. I use it myself. I have been working on a barclays ePDQ installation for a client, it's taken me days. Then yesterday another client called me to install PROTX. One hour later it was taking test orders. One hour after that it was LIVE. Superb. Quote Ultimate SEO Urls 5 PRO - Multi Language Modern, Powerful SEO Urls KissMT Dynamic SEO Meta & Canonical Header Tags KissER Error Handling and Debugging KissIT Image Thumbnailer Security Pro - Querystring protection against hackers ( a KISS contribution ) If you found my post useful please click the "Like This" button to the right. Please only PM me for paid work. Link to comment Share on other sites More sharing options...
rosshand Posted April 4, 2008 Share Posted April 4, 2008 The only reason that a card would be rejected before reaching checkout_confirmation with "invalid card number" would be if it failed a LUHN check (http://en.wikipedia.org/wiki/Luhn)- which all valid card numbers should pass. If you want to disable this check edit catalog/includes/modules/payment/protx_direct.php, find: Superb!! Thankyou!!!! Quote Link to comment Share on other sites More sharing options...
Stewart Gilray Posted April 9, 2008 Share Posted April 9, 2008 Tom I hope you can help with this un ... We're just upgrading the Aussie Floyd store... Started completely from scratch, just re-added ProTX Direct this morning, all seems fine. Doing a test transaction, click on confirm and ... 1146 - Table 'tapfs_db.table_protx_direct' doesn't exist insert into TABLE_PROTX_DIRECT (id, customer_id, order_id, vendortxcode, txtype, value, vpstxid, status, statusdetail, txauthno, securitykey, avscv2, address_result, postcode_result, CV2_result, 3DSecureStatus, CAVV, txtime) values ('', '3', '1944', '1944-04194179894677137284345800749955', 'PAYMENT', '33.42', '', '', '', '', '', '', '', '', '', '', '', '2008-04-09 13:01:01') [TEP STOP] Eeek squeek, have checked within the DB and it's there.. ideas? Stew Quote Link to comment Share on other sites More sharing options...
Guest Posted April 9, 2008 Share Posted April 9, 2008 make sure the following line is in your includes/database_tables.php define('TABLE_PROTX_DIRECT','protx_direct'); Tom Quote Link to comment Share on other sites More sharing options...
Stewart Gilray Posted April 9, 2008 Share Posted April 9, 2008 Bugger, feck knows how I missed that. Cheers ;-) Quote Link to comment Share on other sites More sharing options...
mark27uk3 Posted April 9, 2008 Share Posted April 9, 2008 Hi Guys, I have installed protx 4.4 and thought all was well until I tried to run a test transaction through the protx test server. I am receiving this error: Credit Card Error! The expiry date entered for the credit card is invalid. Please check the date and try again. I have googled forever and day and have noticed that others have had this issue but I can not find definitive resolve. I hope one of you kind people would be able to point me in the right direction as to why the test cc numbers always fail on the cards expiry date :'( Thanks Mark Quote Lifes a bitch, then you marry one, then you die! Link to comment Share on other sites More sharing options...
vmaster Posted April 9, 2008 Share Posted April 9, 2008 As per Protx's latest newsletter today, although Protx is PCI Compliant, merchants using Protx Direct would have to sort out their own PCI Compliance (latest card industry regulation), as the customer's card details are being collected at the Merchant's end. As per them, the only other alternative is to go with VSP Form or VSP Server, to avoid the cost and hassle of PCI Compliance. Now, wouldn't it be possible to go for the Protx Form payment in an IFRAME to maintain the feel of integration and yet stay away from the compliance hassle. Any ideas ... ? Quote Link to comment Share on other sites More sharing options...
Guest Posted April 9, 2008 Share Posted April 9, 2008 mark27uk3 - what expiry date are you using with the test card numbers? vmaster - take a look at http://www.mastercard.com/us/sdp/merchants...ant_levels.html - most merchants are Level 4 (less than 20,000 card transactions/yr) - this required an annual self assessment questionnaire, there is a loose requiement of quarterly network scans - I say loose because as you can see this requirement is set by the acquiring bank and not yet compulsary. To quote from http://www.pcicomplianceguide.org/step2e.html Though Level 4 merchants are not required by the PCI SSC, or by card issuers such as Visa and MasterCard, to submit to an onsite security assessment, it's up to the acquirer to make sure that its Level 4 merchants understand the need for being PCI compliant. Unfortunately if you are processing more than 20,000 card transactions/yr then you are level 3 and are required to have external security scanning as well as the questionnaire (or use protx form). Quote Link to comment Share on other sites More sharing options...
mark27uk3 Posted April 9, 2008 Share Posted April 9, 2008 mark27uk3 - what expiry date are you using with the test card numbers? Hi Tom, I have tried various expiration dates as it states in the module Mark Quote Lifes a bitch, then you marry one, then you die! Link to comment Share on other sites More sharing options...
Stewart Gilray Posted April 9, 2008 Share Posted April 9, 2008 Got another for you Tom :-/ 1366 - Incorrect integer value: '' for column 'id' at row 1 insert into protx_direct (id, customer_id, order_id, vendortxcode, txtype, value, vpstxid, status, statusdetail, txauthno, securitykey, avscv2, address_result, postcode_result, CV2_result, 3DSecureStatus, CAVV, txtime) values ('', '3', '1944', '1944-70379854230631859816653321893053', 'PAYMENT', '33.42', '', '', '', '', '', '', '', '', '', '', '', '2008-04-09 23:58:06') [TEP STOP] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.