Posted - 01/22/2020 : 07:48:34
Thanks for helping with any leads. Yes, well our own custom payment providers are enabled. We don't use payprov id 14 at all and that is disabled. As it is now, the two payment providers are enabled, as a customer you can choose that payment provider, it goes to their site to pay and then gets directed back. When it comes back to the thanks.php page, that is when the error message shows. So the payment is completed, just the order shows as UNauthorized and the customer does not get a receipt confirmation. BTW the url format on the thanks page is like this: website dot com/thanks.php?order_id=21013&order_code=lcJBCYdL0x I don't know if that is how it usually is or not.
It's actually two custom payment providers we have through one company: Mollie and the payment providers are iDEAL and SOFORT. these each have a pay prov id assigned: 101 and 150 which are added to the database and are enabled. They do not use the customppreturn.php file. They have their own so the code we add a small bit of code to the incthanks.php. I'm still trying to track down if it's something we just need to add to our custom return files or if it has to do with just this little piece of code we add to the incthanks.php file.
The one thing I noticed is that the older version of incthanks when it was working for us was like this: }else{ @include './vsadmin/inc/customppreturn.php'; }
and the new version has this longer code: }else{ if(getpayprovdetails(14,$data1,$data2,$data3,$demomode,$ppmethod)){ @include './vsadmin/inc/customppreturn.php'; }else{ $errtext='No matching payment system'; order_failed(); }
This is what we usually add to the incthanks.php file: AFTER $GLOBALS['xxThkErr']=''; if($payment_status=='Pending') $errtext=$GLOBALS['xxPPPend']; else{ $sSQL="SELECT ordID FROM orders WHERE ordPayProvider=1 AND ordAuthNumber='no ipn' AND ordID='" . escape_string($ordID) . "'"; $result=ect_query($sSQL) or ect_error(); $paypalwaitipn=ect_num_rows($result)>0; ect_free_result($result); if($paypalwaitipn) $errtext=$GLOBALS['xxPPWIPN']; else $errtext=$GLOBALS['xxPPTOUT']; } order_failed(); } }else order_failed(); } }
INSERT // iDEAL Checkout - Return-start }elseif(getget('order_id') != '' && getget('order_code') != '' && getget('method') == '150') { include './vsadmin/inc/idealcheckoutideal.php'; // iDEAL Checkout - Return-end
}elseif(getget('order_id') != '' && getget('order_code') != '' && getget('method') == '101') { include './vsadmin/inc/idealcheckoutdirectebanking.php'; // iDEAL Checkout - Return-end
Is there additional data we need to make sure gets added to our return files?
Version: Ecommerce Plus PHP v7.1.7
Edited by - Crystal on 01/22/2020 08:22:52
|