News for hackers. Stuff that matters.
Re:Ask HN: Stripe or Braintree? by davismwfl on Monday July 11, 2016 @08:45AM (#12070621)
You can search HN and find this question many times.

My 2 cents, I don't trust any company owned by Paypal as Paypal has a very strange, aggressive and non-transparent and inflexible process to holding funds from businesses, charities etc (even after providing all the extra "evidence" they ask for).

Stripe has a lot of advantages, API being a huge one. I have heard of a few people that complain about delays in responses from them, but at least for me I have never had that. In fairness too, 99% of the time the answers I have needed are in their documentation.

If I were you, no matter who you choose to integrate, I'd encapsulate it behind your own payment "service" so that even if you have to switch or you need to add more then one (highly recommended), then you can. Some will argue this is overkill, but I have done a lot of payment integrations, with specific banks, First Data and Stripe, Paypal etc. Having it encapsulated means a little more design but a lot less breakage and lets you minimize risk if a vendor decides to shut you down or freeze funds etc.

IMO if you are accepting payments you should already have encapsulated your payment vendor, as a real risk to business continuity exists if they decide to freeze your ability to charge or like Paypal freeze funds during charge back windows etc.

Re:Ask HN: Stripe or Braintree? by FunnyLookinHat on Monday July 11, 2016 @09:02AM (#12070722)
"If I were you, no matter who you choose to integrate, I'd encapsulate it behind your own payment "service" so that even if you have to switch or you need to add more then one (highly recommended), then you can."

This is the best advice in the comments. I've seen my own code and others become overly coupled to a specific provider's terminology, mechanisms, and expectations - leading it to be exceptionally painful when you inevitably have to migrate away to a new provider (or support more than one).

Re:Ask HN: Stripe or Braintree? by newton10471 on Monday July 11, 2016 @09:29AM (#12070868)
For those in the ruby/rails world, there's a gem which does this (make it easy to switch between payment vendors) for you: Active Merchant (http://activemerchant.org/).
Re:Ask HN: Stripe or Braintree? by maerF0x0 on Monday July 11, 2016 @12:22PM (#12072130)
Yeah, but is there a gem for allowing me to switch payment abstraction gems?
Re:Ask HN: Stripe or Braintree? by dopamean on Monday July 11, 2016 @02:16PM (#12073055)
ActiveActiveMerchant.
Re:Ask HN: Stripe or Braintree? by patrickgordon on Monday July 11, 2016 @06:49PM (#12075410)
Awesome gem, thanks for that!
Re:Ask HN: Stripe or Braintree? by asadlionpk on Monday July 11, 2016 @09:06AM (#12070741)
Dumb question, wouldn't rolling a wrapper over existing payment service also require me to store credit cards myself somewhere so I can easily switch integration later? If so, isn't that risky.
Re:Ask HN: Stripe or Braintree? by davismwfl on Monday July 11, 2016 @09:29AM (#12070871)
It is not unacceptable to ask for updated payment details every so often, so users don't generally have issues with this and it saves you from having to store the actual card details. You just have to store the token as others pointed out.

Also, if you do integrate multiple providers early on, you can break users up over them so that again your risk is minimized. This does come with some accounting pain, but it mitigates some risk so it is worth it. So essentially if you had to move away from one vendor it isn't your entire customer base all at once.

Re:Ask HN: Stripe or Braintree? by mgkimsal on Monday July 11, 2016 @10:06AM (#12071090)
gentle plug - spreedly is a service that handles this for you. one of the guys in our coworking space uses this for his service, and it allows his customers to be able to swap processors relatively easily, as spreedly acts as a middle-man secure vault to hold that info away from any one particular service.

there may be other services that do something similar, but if you're concerned about switching services, and don't want to have all your customers reinput billing info, spreedly (or similar) would probably be worth investigating.

Re:Ask HN: Stripe or Braintree? by brianwawok on Monday July 11, 2016 @10:51AM (#12071419)
So you are spending a few $100 to a few $1000 a month in case you need to switch payment gateways down the road? I am not getting the business model.
Re:Ask HN: Stripe or Braintree? by mgkimsal on Monday July 11, 2016 @11:14AM (#12071601)
Or... you need to support multiple, and they might change?

They support something like 90+ gateways around the world. Not everyone will necessarily need that flexibility.

But on the topic of switching....

How much is it worth to you to be able to switch without losing any recurring revenue? If you're OK with a potentially large portion of your recurring billing going away because you want or need to switch gateways, DIY is fine.

Again, not a direct user (though I've tested their API for a project), but I have colleagues using it, and for one in particular, the value it brings both in breadth of processors and potential for switching is extremely valuable to him (and his clients).

Re:Ask HN: Stripe or Braintree? by brianwawok on Monday July 11, 2016 @01:11PM (#12072532)
Ya this is tricky.

You can switch providers in a over time fashion by sending all new people to a new provider, and maybe sending out an "update your details" to existing people. If any existing users take action, move them over. If not keep billing on the old platform.

How often do you honestly need to switch gateways though? Most companies do it 0-1 times in the first 10 years of business I would expect.

Re:Ask HN: Stripe or Braintree? by larrik on Monday July 11, 2016 @09:16AM (#12070803)
No, not at all, as long as you aren't afraid to ask for someone's credit card again. You should also be able to transfer credit card information between services (which usually takes weeks and costs thousands, though).
Re:Ask HN: Stripe or Braintree? by ianhawes on Monday July 11, 2016 @09:44AM (#12070968)
In my experience, transferring between services didn't cost us a dime.
Re:Ask HN: Stripe or Braintree? by larrik on Monday July 11, 2016 @10:45AM (#12071372)
I know that transferring out of Zuora costs $5,000 per export.
Re:Ask HN: Stripe or Braintree? by hrktb on Monday July 11, 2016 @09:46AM (#12070982)
As other said it's usually not a problem to ask again for the credit card, and when you switch payment services the users might actually see different details in their bank transactions, get billed with different delays or otherwise have billing problems.

Having a transition step where the users know something is changing can be helpful to cover the edge cases.

Re:Ask HN: Stripe or Braintree? by adyus on Monday July 11, 2016 @09:16AM (#12070801)
Generally, payment processors give you a token once a client gives them a credit card. You just need to abstract away the processor-specific code that uses that token.
Re:Ask HN: Stripe or Braintree? by chrispadfield on Monday July 11, 2016 @10:49AM (#12071408)
You can use something like https://spreedly.com/
Re:Ask HN: Stripe or Braintree? by misframer on Monday July 11, 2016 @09:15AM (#12070799)
You could just ask your users to input their billing details again.
Re:Ask HN: Stripe or Braintree? by brianwawok on Monday July 11, 2016 @10:48AM (#12071391)
If you do a capture for say recurring monthly charges, not sure you can (legally and easily) capture card numbers to easily switch down the road? For one off charges it is easy to switch, but not for recurring, which is where I think these platforms "get you" by being sticky.