codeignitor-authorizenet-cim-library
codeignitor-authorizenet-cim-library copied to clipboard
Customer account is charged twice
In the line 733 & 736 (AuthorizeCimLib.php file), CURL_EXEC is called twice which caused to charge the customer twice. Simply, you can check $this->_response == false if you want to check the curl response is false of not. By calling curl_exec twice, the customer credit profile is charged twice.
It is very interesting that why the Authorize.net allowed to charge twice the customer as it is duplicate transaction (Authorize.net throws an error if system tries to charge the same customer, same CC and same amount with in 2mins).
Put a PR in for this ( #11 ) , shoot should have referenced this issue directly, my apologies for the githubfail.
At the time, Authorize.NET was switching their infrastructure over slowly to use Akamai and some kinds of caching algorithms to try and scale their transaction handling, but it negatively affected their ability to quickly identify duplicate transactions. So, their duplicate transaction settings were still working, unless the transactions were hitting fast enough. And they certainly were.