If you want automatic account creation, you should purchase client billing software that works with your control panel. For example, if you were running cPanel, you could get ModernBill or WHM-AutoPilot.
Then, you could get a online merchant account to process the payments via credit card. Once the billing system processes the order, you can set it to create the account and send the information to the client.
While this is not my personal recommendation to have automatic account creation, it is/can be done using the above software.
I would highly advice against the automatic setup thing. I have WHM Autopilot and ran it that way briefly. In 2 weeks I have about 6 fraudulent accounts get setup, and so I turned it off. You really should verify that the people are who they say they are before proceeding with giving them access to your server.