taktikz Posted July 18, 2012 Share Posted July 18, 2012 Once I enable the authorize.net module, I try a test order and when I hit the payment button, I get the following error: An unrecoverable error occurred: Missing parameter any ideas? Link to comment Share on other sites More sharing options...
phrasespot Posted July 20, 2012 Share Posted July 20, 2012 PrestaShop version? module version? Link to comment Share on other sites More sharing options...
Prestolabels Posted July 23, 2012 Share Posted July 23, 2012 PrestaShop version? module version? I am having the same issues. My prestashop version is 1.5.0.9 and the module version is 1.4.2 Link to comment Share on other sites More sharing options...
Dh42 Posted July 23, 2012 Share Posted July 23, 2012 What are the error messages that you are getting? Link to comment Share on other sites More sharing options...
Prestolabels Posted July 23, 2012 Share Posted July 23, 2012 What are the error messages that you are getting? An unrecoverable error occurred: Missing parameter Link to comment Share on other sites More sharing options...
tomerg3 Posted July 23, 2012 Share Posted July 23, 2012 Since you are using a version of PS that is still in development, it is to be expected. I suggest you try to post it in the bug tracker. Link to comment Share on other sites More sharing options...
Prestolabels Posted July 23, 2012 Share Posted July 23, 2012 Since you are using a version of PS that is still in development, it is to be expected. I suggest you try to post it in the bug tracker. I have this issue posted on the bug tracker as well. The issue seems to be somewhere within the validation.php file. Link to comment Share on other sites More sharing options...
taktikz Posted July 24, 2012 Author Share Posted July 24, 2012 I am using PS 1.4.6.2 Any fix for this? Otherwise, I'll be paying for Merchant services for no good reason. Link to comment Share on other sites More sharing options...
tomerg3 Posted July 24, 2012 Share Posted July 24, 2012 Hmmm, I believe the error is coming back from Authorize.net rather than the Prestashop module. Are you sure your account is active and working? Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 Actually those are internal error messages in the module. The way I would trace it is to open the validation.php file and at the top you can see error messages for different results. I would put something identifying in the message. if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter'); } if (!Validate::isLoadedObject($cart)) { Logger::addLog('Cart loading failed for cart '.(int)$_POST['x_invoice_num'], 4); die('An unrecoverable error occured with the cart '.(int)$_POST['x_invoice_num']); } if ($cart->id != $_POST['x_invoice_num']) { Logger::addLog('Conflit between cart id order and customer cart id'); die('An unrecoverable conflict error occured with the cart '.(int)$_POST['x_invoice_num']); } $customer = new Customer((int)$cart->id_customer); $invoiceAddress = new Address((int)$cart->id_address_invoice); if (!Validate::isLoadedObject($customer) || !Validate::isLoadedObject($invoiceAddress)) { Logger::addLog('Issue loading customer and/or address data'); die('An unrecoverable error occured while retrieving you data'); } That is what is there, I would change it to something like if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter 1st invoice error'); } if (!Validate::isLoadedObject($cart)) { Logger::addLog('Cart loading failed for cart '.(int)$_POST['x_invoice_num'], 4); die('An unrecoverable error occured with the cart 1st cart error '.(int)$_POST['x_invoice_num']); } if ($cart->id != $_POST['x_invoice_num']) { Logger::addLog('Conflit between cart id order and customer cart id'); die('An unrecoverable conflict error occured with the cart 2nd cart error '.(int)$_POST['x_invoice_num']); } $customer = new Customer((int)$cart->id_customer); $invoiceAddress = new Address((int)$cart->id_address_invoice); if (!Validate::isLoadedObject($customer) || !Validate::isLoadedObject($invoiceAddress)) { Logger::addLog('Issue loading customer and/or address data'); die('An unrecoverable error occured while retrieving you data 3rd error'); } 2 Link to comment Share on other sites More sharing options...
tomerg3 Posted July 24, 2012 Share Posted July 24, 2012 DH42, Good find, I was looking at the version from and older PS version... Link to comment Share on other sites More sharing options...
Prestolabels Posted July 24, 2012 Share Posted July 24, 2012 Actually those are internal error messages in the module. The way I would trace it is to open the validation.php file and at the top you can see error messages for different results. I would put something identifying in the message. if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter'); } if (!Validate::isLoadedObject($cart)) { Logger::addLog('Cart loading failed for cart '.(int)$_POST['x_invoice_num'], 4); die('An unrecoverable error occured with the cart '.(int)$_POST['x_invoice_num']); } if ($cart->id != $_POST['x_invoice_num']) { Logger::addLog('Conflit between cart id order and customer cart id'); die('An unrecoverable conflict error occured with the cart '.(int)$_POST['x_invoice_num']); } $customer = new Customer((int)$cart->id_customer); $invoiceAddress = new Address((int)$cart->id_address_invoice); if (!Validate::isLoadedObject($customer) || !Validate::isLoadedObject($invoiceAddress)) { Logger::addLog('Issue loading customer and/or address data'); die('An unrecoverable error occured while retrieving you data'); } That is what is there, I would change it to something like if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter 1st invoice error'); } if (!Validate::isLoadedObject($cart)) { Logger::addLog('Cart loading failed for cart '.(int)$_POST['x_invoice_num'], 4); die('An unrecoverable error occured with the cart 1st cart error '.(int)$_POST['x_invoice_num']); } if ($cart->id != $_POST['x_invoice_num']) { Logger::addLog('Conflit between cart id order and customer cart id'); die('An unrecoverable conflict error occured with the cart 2nd cart error '.(int)$_POST['x_invoice_num']); } $customer = new Customer((int)$cart->id_customer); $invoiceAddress = new Address((int)$cart->id_address_invoice); if (!Validate::isLoadedObject($customer) || !Validate::isLoadedObject($invoiceAddress)) { Logger::addLog('Issue loading customer and/or address data'); die('An unrecoverable error occured while retrieving you data 3rd error'); } So are you saying that the error is because it is missing an invoice number? If so how do I fix the error? I get this on every sample order I try to place. Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 I am saying that, that is a list of the internal error messages the module creates. I would edit them so you can see what the actual error is, then we can go from there. 1 Link to comment Share on other sites More sharing options...
Prestolabels Posted July 24, 2012 Share Posted July 24, 2012 I am saying that, that is a list of the internal error messages the module creates. I would edit them so you can see what the actual error is, then we can go from there. In the list of errors this is the one with that error message. There are no others. if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter'); } Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 What is the address of your shop? 1 Link to comment Share on other sites More sharing options...
Prestolabels Posted July 24, 2012 Share Posted July 24, 2012 What is the address of your shop? shopping.prestolabels.com Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 Oh, I completely missed that you were using a version > 1.5 Like tomerg3 said, it is not ready for production. The payment modules do not work with it completely yet. Also, there are pretty big changes from v 1.5.09 and 1.5.13, so you should upgrade also. Link to comment Share on other sites More sharing options...
devilsown Posted July 24, 2012 Share Posted July 24, 2012 Yea the prestashop version imo needs some help. If someones card is declinded it does not pull up any error messages on the screen. Just takes them back to the cc information page. So they try again. And it never charges there card so they get upset and leave and buy from someone else. I been thinking about buying the a.net mod from prestochango to see if that fixes my customers issues. I just bought his paypal modual yesterday and all seems good with it. Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 Devilsown, as someone that has used it I would highly recommend it. Unlike the one's from prestashop (except 1.32) it works right out of the box. They are also very responsive to help with issues if they ever come up. Link to comment Share on other sites More sharing options...
taktikz Posted July 24, 2012 Author Share Posted July 24, 2012 This is the error I'm getting when replacing the validation.php: An unrecoverable error occured: Missing parameter 1st invoice error Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 You are using 1.4.6.2, right? Send me a link to your store. Link to comment Share on other sites More sharing options...
taktikz Posted July 24, 2012 Author Share Posted July 24, 2012 (edited) Yes, check pm Edited July 24, 2012 by taktikz (see edit history) Link to comment Share on other sites More sharing options...
Dh42 Posted July 24, 2012 Share Posted July 24, 2012 Tomerg3 might know this, because I don't off the top of my head. Is $cart = Context::getContext()->cart; valid in 1.4.6.2? Link to comment Share on other sites More sharing options...
tomerg3 Posted July 25, 2012 Share Posted July 25, 2012 No, the Context class was introduced in PS1.5 Link to comment Share on other sites More sharing options...
Prestolabels Posted July 25, 2012 Share Posted July 25, 2012 I have downgraded to PS 1.4.8 and I am still having the same problem with the authorize.net module. Please help Link to comment Share on other sites More sharing options...
Prestolabels Posted July 25, 2012 Share Posted July 25, 2012 I have downgraded to PS 1.4.8 and I am still having the same problem with the authorize.net module. Please help I fixed the problem in 1.5.0.9. You have to have cURL installed in php in order for this to run. I could not find this stated anywhere in the documentation but it is a requirement. Also I removed the invoice number check as that check never passes. If there is a way to fix that I am open to suggestions but removing it works just fine. Thanks for everyones input Link to comment Share on other sites More sharing options...
Dh42 Posted July 25, 2012 Share Posted July 25, 2012 (edited) I don't know if the recent changes to the module are compatible with version 1.4.6. Edited July 25, 2012 by DesignHaus42 (see edit history) Link to comment Share on other sites More sharing options...
taktikz Posted July 26, 2012 Author Share Posted July 26, 2012 Any suggestions? Link to comment Share on other sites More sharing options...
devilsown Posted July 26, 2012 Share Posted July 26, 2012 Only thing i can think of is you have your login or key wrong. check for spaces at the end and begining. Link to comment Share on other sites More sharing options...
Dh42 Posted July 26, 2012 Share Posted July 26, 2012 I haven't had the time to install 1.4.6, but I am thinking it is not compatible because it use's the context class. Link to comment Share on other sites More sharing options...
imashav Posted August 10, 2012 Share Posted August 10, 2012 (edited) Thank you prestolabels. I have lost quite some time on this, specially due to the vulnerabilities in v1.3.2 that were publicly announced. I use PS 1.4.8.2 This is all due to "x_invoice_num" simply comment out the checks: /*if (!isset($_POST['x_invoice_num'])) { Logger::addLog('Missing x_invoice_num', 4); die('An unrecoverable error occured: Missing parameter'); } if (!Validate::isLoadedObject($cart)) { Logger::addLog('Cart loading failed for cart '.(int)$_POST['x_invoice_num'], 4); die('An unrecoverable error occured with the cart '.(int)$_POST['x_invoice_num']); } if ($cart->id != $_POST['x_invoice_num']) { Logger::addLog('Conflit between cart id order and customer cart id'); die('An unrecoverable conflict error occured with the cart '.(int)$_POST['x_invoice_num']); } */ Edited August 12, 2012 by imashav (see edit history) 1 Link to comment Share on other sites More sharing options...
Recommended Posts