chickendippers Posted January 17, 2008 Share Posted January 17, 2008 We've just a customer get charged 10 times for a product they'd already paid for! We use WorldPay Futurepay. The order was mistakenly identified as fraud by Varilogix, so I reset the hosting plan to "Pending" and the invoice from canceled to "Unpaid". The customer then duly paid and the hosting setup automatically as it should be. BUT the invoice was not marked as paid, despite the transaction being recorded in the transaction list on the invoice itself! As a result the customer was then charged every 10 minutes (our cron frequency) until the they canceled the agreement. There were no callback failures from WorldPay, so I think these must be something in WHMCS preventing previously canceled invoices being paid (even if they've been reset). Just a heads up. Link to comment Share on other sites More sharing options...
othellotech Posted January 17, 2008 Share Posted January 17, 2008 #1 stop running the cron every 10 mins #2 check the gateway log to see if WHMCS got the FP callback Link to comment Share on other sites More sharing options...
chickendippers Posted January 17, 2008 Author Share Posted January 17, 2008 We've already had the discussion about cron frequency here, Matt seems to suggest a frequent cron is better. Yes, each additional payment is recorded in the gateway log. Link to comment Share on other sites More sharing options...
WHMCS Developer WHMCS Andrew Posted January 17, 2008 WHMCS Developer Share Posted January 17, 2008 I don't think Matt said a frequent cron was better. What he suggested was setting up a script to run to make the futurepay amount take. Link to comment Share on other sites More sharing options...
Si Posted January 23, 2008 Share Posted January 23, 2008 I don't think Matt said a frequent cron was better. What he suggested was setting up a script to run to make the futurepay amount take. Following the previous discussions about this, I contacted Matt and hired him to create a script to do this. He did it within 24 hours, and after a couple of tweaks and changes, it works brilliantly. Link to comment Share on other sites More sharing options...
chickendippers Posted January 23, 2008 Author Share Posted January 23, 2008 So this custom scripting now works better with order grace days? Link to comment Share on other sites More sharing options...
Si Posted January 23, 2008 Share Posted January 23, 2008 Yep. While not fully knowing what the technical steps are, in testing, (and now with customers who have placed orders) this is my understanding of how it works: If the existing customer has a futurepay agreement in place with us already and during the order process for the new product they select futurepay, the moment they complete their checkout, the checkoutscript.php is triggered and this runs the futurepay script (normally run by the cron every 24 hours). The invoice amount is then debited from their card and the invoice marked paid. So order grace days are avoided altogether the order is never 'technically' in 'pending' or 'unpaid' status. Hope this helps. Si Link to comment Share on other sites More sharing options...
WHMCS CEO Matt Posted January 23, 2008 WHMCS CEO Share Posted January 23, 2008 This has gone off topic but regarding the original issue, you'd have to open a ticket. Matt Link to comment Share on other sites More sharing options...
Recommended Posts