I heard an explanation once - I don't know if it's true, but it makes some sense - that the credit card companies don't just accept/decline every transaction, but rather score it based on what information is presented and how well it matches up with what they have on file (including lots of little things, like does the transaction have your 5-digit zip code while their data has your 9-digit zip code or vice versa), and transactions where the data matches most closely get the best fee rates, while more iffy transactions cost more to process (effectively insurance for the credit card company in case of fraud), and both ends have some latitude on how much risk they're willing to accept (and, of course, the retailer has to decide how much processing cost they're willing to accept). And I'd guess that Amazon has invested a whole lot of time and money into their own algorithms for accessing the risk of any given transaction.