You will need to get a merchant account with a bank, and sign up with a payment processing company. Googling for that will find many vendors. Each has its own API that you'll need to use. Paypal has its own API; check with them for details.
It's not against the law to store CC information.
Joined: Aug 16, 2007
...and sign up with a payment processing company
Is it possible to eliminate this step? Can we communicate directly with credit card company itself?