Amazon skips the credit card fees. The businesses working with them probably don't have to pay Amazon the money for a few weeks, meaning they get to carry an interest-generating balance in the meantime.
If you don't spend all of the money you put on your account, then Amazon gets to hold that cash until you do, generating interest on the money held.
All the while, the customers who need this service get something they couldn't before- online shopping without a credit card, including the better selection and price competition that online shopping offers. (Yes, it's sometimes cheaper offline, but not always).