If you’re interested in taking credit cards online, I think the best option on the internet right now is Paypal. But it depends on your volume:
Authorize.net
$150 setup fee
$30 a month monthly fee
You have to actually program a shopping cart using their API
Supports recurring billing
3% + some small amount per-transaction fee
Money goes to your bank account
PayPal
No setup fee
No monthly fee
You don’t have to program anything, although you might want to use javascript to make filling the form easier.
Supports recurring billing
3% + some large amount per-transaction fee
Money goes to PayPal’s bank account, which in theory you can transfer to your bank account.
That “in theory” is why I’ve waited so long to switch to PayPal. I’ve read numerous stories about how PayPal has frozen accounts, for no fault of the owner, because of scammers or other reasons. Just search for “Pay Pal sucks” in Google and you’ll see lots of horror stories about this.
The problem I had with Authorize.net is that they refused an overseas transaction (because it was overseas) for $1000 and didn’t ask me first or tell me about it until the pissed off customer contacts me and wants to know where his money is. Apparently his credit card company put a hold on the money anyway and there is some kind of asinine process where he can’t get his money although Authorize.net refused the transaction and there’s no way for me to help him out. Obviously, I cancelled Authorize.net and am out about $1200 counting the setup and monthly fee. If I had gotten PayPal originally this wouldn’t have happened (Paypal does accept overseas).
When I finally finish my MMO and have thousands of customers though, I will have to switch back. I can’t afford the risk of PayPal freezing an account clearing tens of thousands a month and the per-transaction charge will kill me.