How are you handling payments?

Stripe was celebrated by developers when it launched, due to ease of integration.

Evolving regulations and features now means the Stripe API is yet another forest for developers to pick their way through.

Use the Portal

The Stripe Customer Portal offers easier integration but requires customers to have a Stripe account.


Of course we also have PayPal plus others although neither Stripe nor PayPal handle tax but Paddle does.

Name Your Poison

Many options. Many flavours. What are you using?

  1. 5

    My opinion might be biased on this topic, but Stripe has proved to be the leader in the payments space. Stripe Billing is fairly new compared to the older subscription billing tools such as Paddle/Chargebee/Recurly and literally thousand other subscription billing tools and therefore has not gotten the majority adaption yet. My bet is that it will.

    Stripe API and doc is very easy and straightforward as you mentioned and makes it very appealing for devs. If you don't want to consume any developer resources on your billing, you can use billflow.io (I am a co-founder) and set up your Stripe Billing flow with no code in less than a day.

    The only appealing argument to use Paddle is that they handle taxes, but that is also no longer an issue because Billflow is also handling automated taxes/VATs on top of Stripe. If you need help brainstorming options, I am always available to hop on a call. My opinion is very biased towards Stripe Billing :)

    1. 1

      Hi. Paddle also removes problem of tax remittance but that's irrelevant until operating above thresholds. Stripe API is confusing imo. If billflow can provide a simple solution where we manage everything through a single interface then that could be a good option. I feel that these services and APIs become cluttered as they try to solve every edge case and bring out new options, whereas a more limited service that solves my exact case would of course easier. It could of course be a do-it-all service underneath but presented as multiple limited viewpoints. Thanks for reply. I'll take a look at billflow.io.

      1. 1

        Interesting. I find their API incredibly simple, it's just exhaustive and large. Using checkouts (as mentioned in another comment) is super simple. No need to query Stripe or make batch requests. They offer very simple webhooks if you need to keep track of billing within your application as well as a nice CLI to test the webhooks (that said, not every webhook is available as a trigger, which I learned the hard way). But overall, a much nicer experience than I had building on Paypal.

        1. 1

          The easier cases are pretty simple to integrate. But I found their Connect product to be much harder to integrate. Connect lets you do payments for 2 and 3 sided marketplaces (like Uber and Doordash). It took about a week reading through the different docs, and piecing together my particular use-case.

          I implemented a payment flow for employees do ACH transfers from their bank directly to their company through my company (an intermediary service provider). That was not exactly straightforward.

          Does this resonate for anyone else? I am working on a low-code payment workflow builder, but wanted to get some more validation before going any further. I made a "landing page" for it here: https://paymentworkflowbeta.substack.com/p/coming-soon

          Lemme know if this is something you'd like to use.

  2. 3

    I use Stripe Checkout for Cloakist, and I email payment links to my customers - there is no billings portal. That's worked fine for $700 MRR so far. Stripe Checkout is a bit fiddly - to make payment links, I had to customise their code that's meant to be behind a 'Pay' button and make it redirect to their payment page instead.

    I like this stack though - especially for early stages. It's super cheap development-wise. I also have the same in Nudge.

    1. 1

      Thanks. Sounds straightforward. I assume customers sign-up to recurring charges. How do you know their payments are up to date? Do you query Stripe every HTTP request or maybe batch download each day.

      1. 1

        Yup, customers sign up to subscriptions. Nearly all repeat payments succeed - I just go into the Stripe dashboard occasionally to make sure there aren't people who aren't paying any more.

        One interesting thing about this is that no one minds that much about a lack of a dashboard to e.g. be able to cancel payments themselves.

  3. 1

    I’m using Stripe through Checkout Page for ThriftyName. Pretty straight forward and no custom coding required.

  4. 1

    I am using Braintree. I pretty much wrote all the subscription logic myself on the top of it

    1. 1

      I see Braintree claims some huge names as clients & offers GraphQL so am going to take a deeper look. Thanks!

  5. 1

    I'm using Paddle now so I don't have to deal with taxes.

    1. 1

      Yeah, makes Paddle very attractive. Not expensive either for standard cases.

      1. 1

        Yeah, the taxes alone make are worth the % difference IMO.

  6. 1

    I use Braintree + Chargebee. Braintree (PayPal) handles the actual payments and Chargebee handles all invoicing, subscriptions, plans, discounts etc. It's not simple to set up but it works well.

    1. 1

      It's not simple to set up

      This must hurt them.

      It's true that many services / APIs grow into a Swiss army knife of options (maybe that's the case here).

      1. 1

        With Chargebee, the initial setup takes some time to get right but it's not a difficult process at all. The problem is, you can really get lost in the hundreds or options available. Braintree on the other hand is really simple to use but getting your production account approved takes more than 2 weeks and they ask for a ton of documents about you and your company. I heard Stripe's application process is quicker but at the time of starting my SaaS they were not available in my country.

  7. 1

    My company is a payment processor, so I am a bit biased. But it is a micropayment processor, so it is built to deal with payments < $1, though it are cheaper than the typical $0.30 + 3% for transactions under $2.50. Our service can be integrated with less than 10 lines of code (more like 3-7) in a very simplistic API.

    But mine is essentially a digital wallet, so I have a payment processor also. I use PayPal for our external transactions.

    If you are using JS/node, once you have the Paypal SDK, it's not bad to use for basic transactions. The documentation on their website makes AWS's docs seem friendly (they are horrendous if you are unfamiliar). The documentation on github for the SDK is the better place to look for the backend. You may need to look at the actual code files in the SDK, but it is easy to figure out.

    For the frontend, search specifically for your framework, like "React Paypal". That will get you the specific frontend code you need to get the buttons on the page. Once you kind of understand those, the docs on the website begin to make a bit more sense.

    1. 1

      Thanks. Am increasingly seeing simplicity as a way to compete. Cut through the mountain of crap a provider calls API docs to pick out a niche and offer that. Keep your service super simple, like "include this CDN, create this button, done". Best of luck with CentiPenny!

  8. 1

    Use a Service like Paddle if you are thinking Long Term

    1. 1

      Solid advice. Not a perfect service I hear but outsources a major headache.

Trending on Indie Hackers
Case Study: How We Grew Pixelied from 0 to 24,000 Monthly Organic Traffic in 8 Months [Step-by-Step Blueprint] 14 comments I make $200,000/year through WordPress' 'add order notes' field 11 comments I wrote a MASSIVE guide on how to test your startup idea with a market research survey. Graphs, diagrams, videos — it's all here for free. 6 comments Calendly alternative, pay what you use 6 comments How do interruptions/context switching affect developers? 4 comments How I’ve read +1 book per month for +4 years. 1 comment