I have made an iPhone app for users to book hotel rooms. A third party provides the service for booking the hotel rooms and charging the credit cards. At the moment, my app makes no attempt to save credit card information. It simply sends the credit card info to the third party provider when the user wishes to book a room. But I would like to save the credit card info so that the user doesn't have to repeatedly type it in.
If I build a RESTful API that stores credit card data, is it prudent to secure this with OAuth rather than Basic Authentication? I could use OAuth provided by Google, Facebook, Twitter, etc so that users just "Sign in with whoever".
From a technical perspective, I have read that OAuth is more secure than Basic Authentication. Is this true?
It's worth mentioning that I will likely use Google App Engine for the backend. As App Engine has recently become PCI DSS compliant, this should be fine. And of course App Engine uses SSL. So I really only need to make sure that my app is authenticating properly, hence this question.