I am working on a new project, which needs Authorize.net CIM to be integrated as a payment gateway. User can have multiple cards, Can you please anyone let me know the minimum details I need to save in DB and DB schema for saving the card details?
You should never save Credit Card Details on your Database, let's imagine that someone can access that table? even from your Hosting company...
You should read about PCI (Payment Card Industry) compliance rules.
I know that you probably want to ease the pain of the user to always write the same number, but I would go with "Please add credit card details as we don't save any information about it" kinda message.
Regarding the process of multiple cards ... humm, what can I buy that I need to split up in multiple cards?
Authorize.net allows you to process a payment card at a time, if you have more, you need to queue them.
You completely missed the point of CIM. CIM let's you store credit card information in Authorize.Net's database. All you need to be storing is the payment profile ID they give you for each credit card you store with them. Then when you want to charge the customer you send them the amount and that payment profile ID and the customer gets charged.