I understand payments are a tricky thing, but I'm yet to find a worthy alternative to PayPal. I want to change from PayPal because I think they are expensive and it doesn't work in all countries. Furthermore, I think that the API is sufficient, but could be better. The API documentation, however, is total utter crap.
I am looking for a payment / transaction service that is more developer friendly, preferably with:
I suppose Google Checkout is somewhat worthy, but it requires both the developer and prospective purchasers to have a Google account. Any other suggestions are very much appreciated!
Stripe fits a lot of your criteria — you can accept credit card payments without a merchant account. You also get to control the payment flow without having to worry about PCI compliance.
A clean and well-structured REST API
The API is based entirely on REST — you can even use curl to charge cards:
curl https://api.stripe.com/v1/charges
-u <YOUR_API_KEY>:
-d amount=400
-d currency=usd
-d "description=Charge for [email protected]"
-d "card[number]=4242424242424242"
-d "card[exp_month]=12"
-d "card[exp_year]=2012"
-d "card[cvc]=123"
Excellent developer tools and a sandbox
You can test your payment form integration with test API keys before going live. More info: https://stripe.com/docs/testing
Good example API implementations, preferably in in Python or Ruby
Stripe has official libraries in Python, Ruby, PHP and Java, and there are more community-supported ones here: https://stripe.com/docs/libraries
Worldwide credit/debit card coverage
You can charge all international credit and debit cards with Stripe.
Rates cheaper than PayPal (or the possibility to chose a payment plan)
You pay one standard rate of 2.9% + 30¢ per transaction. Unlike PayPal, there's no extra charge for American Express or international payments. Details here: https://stripe.com/help/pricing
I am an engineer at Stripe. Feel free to drop by our chatroom if you have more questions. You can also email us at [email protected].