Actually the cash on delivery has a bug in it. A person pays for it, and then claims they weren't the one who paid for it. Or the mailman/fedex man pocketed the money and then went through various layers of bueracracy for it to be found that it had been pocketed. Then there was the transmittal of the money via the delivery agency back to you. That might be once a month or more which meant the business man had to pay up front for the device and its replacement stock AND then wait for the money to be transmitted to them if it did at all.
While the problem may occur in only <10% of cases of COD, the costs involved in tracking those cases made it much more expensive than dealing with banks or credit cards. Plus you can get various levels of "insurance" via credit card purchases you couldn't via COD.