I have a business, selling online. Now I'm updating my software portal. My developer suggests using stripe instead of a bank account. He knows it is better but he cannot explain why.

Some more details on my situation

My situation is - as always, when I sell stuff on internet I need to make clipping and pay my agents. So every payment from my customer need to be split in some proportions between me and my agents, sometimes there are few agents involved. As I need my own way to manage clipping, than I'd rather have my own reporting so I can put together what is paid and why it was paid. So reporting is not a benefit for me.

Subscription management is one of my use cases... If a platform will do the charges for me? Then If someone would like to cancel a subscription - I would need to send an api request to do so. It does also make my developer to implement all thins stuff around active and not active subscriptions. It is not much of a help here, but rather potential sync problems.

My main concern is - as my new platform is not selling the life time access, but rather providing a subscriptions, I would need to tokenise credit card of my customers. If I would tokenise them in a wrong system - it will be like a life time contract for me. I cannot retokenise them with another payment provider then. I would not store full card numbers. That is why I needed to make my own research. I need a good candidate for it. Popular and with a good history. Not a new startup.

But the big banks would be more stable on that ground.This is the only difference I see. Apart from development time with friendly/not friendly api.

PS, some people claim they receive emails like this:

Hi, Thanks for signing up with Stripe! Unfortunately at this time we will need to stop offering service for Kinsta Managed WordPress Hosting - Powered By Google Cloud. Currently Stripe can only support users with a low risk of customer disputes–after reviewing your submitted information and website, it does seem like your site presents a higher level of risk than we can currently support. Unfortunately we will be unable to accept any additional payments on your behalf.

closed as off-topic by gnat, amon, HorusKol, Robert Harvey, Eric King Aug 9 '18 at 14:39

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to find or recommend tools, libraries, programming languages, resources (including books, blogs, tutorials, and examples), or projects to undertake are off-topic here as they attract opinionated answers that won't have lasting value to others. You may be able to get help in The Whiteboard, our chat room." – amon, HorusKol, Robert Harvey, Eric King
If this question can be reworded to fit the rules in the help center, please edit the question.

  • Possible duplicate with this – Yevgeniy Afanasyev Aug 8 '18 at 3:31
  • 4
    That's a business decision, not a software engineering decision. And it depends on what kinds of transactions you'd like to make. If you sell B2B software and operate by sending out invoices then Stripe is fairly pointless. A payment provider might be more attractive if you are in B2C and want to process payments by credit cards or perform transactions in multiple currencies. You need a bank account anyway, but a bank account by itself doesn't provide payment methods other than direct deposit. – amon Aug 8 '18 at 5:13
  • NAB API is an alternative way to make payment automated. – Yevgeniy Afanasyev Aug 8 '18 at 7:46
  • 2
    Good job as a manager to listen to the experts you hire, a lot of managers get that wrong. You can only make an informed decision when you're informed. However, in this case you are informed, but you don't see a reason for the business to do that. "He knows it is better but he cannot explain why." - You're a business. If he can not give you a reason to use this service, then the business has no reason to use this service. The normal flow is that there is a problem, you research the options and chose one. Don't choose a solution and then search for a problem it could solve. – R. Schmitz Aug 8 '18 at 17:29
  • 1
    I legitimately don’t know why you’re getting downvotes @YevgeniyAfanasyev. Looks like a good question to me. – RubberDuck Aug 10 '18 at 10:10

You do not need something like Stripe to handle your payments. However, if you look at what is involved in handling (creditcard) payments, you more then likely will want someone else to handle as much of that as possible.

As you mention, you will need to tokenize the creditcard numbers. The alternative would be storing them yourselves. However, you're only allowed to do that if you get PCI DSS certified. This will not be easy and it will not be something you can do quickly (read: several months at least). To put it blunt: don't even attempt this if you need to come here for advice (by which I don't mean anything negative, its just that just about nobody should want to go down this road).

Once you have that certification, you will need to get the proper contracts with MasterCard, VISA, AMEX and whatever other type of card you want to support. For each of them, after you've gotten the contracts in place, you will need to write code to connect to their API's (thats a few months extra).

Great, now you can process creditcard payments. But the thing about creditcard payments is, there is a lot of fraud involved. Your first step will be to implement 3-D Secure - which again means contracts and API's to connect to for every card you want to support (and again, count on a few months to get this done properly).

Now, compare that to implementing something like Stripe their services. You can probably get all the paperwork plus the implementation done in a week or two.

So no, you do not need a payment service provider. However, you probably want one, because you do not want to invest 6 months or more into something as simple as "receiving payments".

  • Do NOT try to be PCIDSS compliant by yourself. I repeat, DO NOT even try. There are hundreds of rules and some companies are dedicating their whole business to be PCIDSS compliant for you. Use a company to store cards and payments. They act as a middleman between you and banks so you can’t really go wrong. – Steve Chamaillard Aug 9 '18 at 14:52
  • Yes, I know, I hired a PCI compliance consultant and I have most of the relevant papers on my hands. It really takes too much to deal with credit cards. Tokens is a way to go for me. My question was - choose either payment integration system, or banks' API. I'm trying to see a point of the payment integrators to even exist if there are banks around that are providing the same services. And these are BIG banks I'm talking about. – Yevgeniy Afanasyev Aug 10 '18 at 0:23
  • Well that’s simple, banks are harder to work with. They expect you to make lots of transactions, they expect you to have a very low chargeback rate otherwise they’ll make you pay a very big fine. Also you still have the same problem, if your bank breaks your contract you’re in a world of troubles as no credit card will be tokenised all of the sudden. – Steve Chamaillard Aug 10 '18 at 6:11
  • 2
    @YevgeniyAfanasyev So you're not asking about connecting directly do the card providers, but about connecting to something like Stripe vs some bank that basically offers the same services as Stripe does? – Jory Geerts Aug 10 '18 at 7:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.