I'm honestly not sure I can answer that. I could argue either direction. I think it boils down to how important the functionality is to your application. It seems like risky business to rely on a single third party for mission critical components of your operation. Also the assumption that ALL users you'll encounter will have an Amazon account is... optimistic. At least a payment service like PayPal offers a login or a blind CC processing option using the cards details. This lowers the bar, I've had a PayPal account for almost 10 years, I've processed multiple payments with it PayPal. In the past 4 years I haven't logged into my account to do so, I'll type in my actual card information rather than deal with remembering my password, recovering my password, updating my stored card information, etc.