Learn All About How Stripe Payment Works?

A technical guide to Stripe

The Stripe payment gateway allows individuals and businesses to accept payments over the internet. Stripe believes that payment is a problem rooted in code, not in finance (Developers First). It provides APIs that developers can use to integrate payment processing in their web applications and mobile applications. Stripe eliminates needless complexity so that developers can start with Stripe in just a couple of minutes.

Let’s get into the why, how and what of Stripe!

You can also check out the video of stripe in action here

Why should you use Stripe?

Stripe is a payment gateway that provides convenience and safety for both buyers and sellers. In the instance of PayPal, the buyer sends money to PayPal, and then PayPal sends money to the seller. This added layer of protection is a good thing for the seller, but it often causes PayPal transactions to be delayed. With Stripe, the money is sent directly from the buyer to the seller. This means that there is no middle man and no delay. Transactions occur instantly, allowing the seller to get his/her money sooner. This doesn’t mean that Stripe transactions can’t be covered by chargeback, but chargeback occurrences are not as likely with Stripe as they are with PayPal.

 

Check Out What It Takes To Build A Successful App Here

Stripe is a simple way to accept payments online. Its features include

  • Payment gateway
  • Customized payment forms
  • API docs for developers

Let’s see the steps of adding card to Stripe

  • Setup or install Stripe in your application
  • Get secret API key and publishable key
  • Create customer on the Stripe using user details
  • Configure payment method using setup intent
  • This payment method is now set as default payment method

How Stripe Payment Works?

how stripe payment works? | Mindbowser

Fig: How Stripe works

Steps-

  1. Send card details(card number, exp date, cvc, etc) to Stripe.
  2. Stripe will send a token in case of valid card details.
  3. Send token, amount, and currency details to your server.
  4. Server will send a token to Stripe.
  5. Stripe will send transaction responses to the server.
  6. Server will send a transaction response from Stripe to the app.

How Stripe does a one-time payment works in Stripe?

Once you set up Stripe, you never have to worry about charging customers again. Stripe will charge your customers’ credit cards. With Stripe, charging customers is as easy as setting up an email account. Stripe is used by Twitter, Kickstarter, Shopify, Lyft, and many other companies. Stripe is easy-to-use, secure and provides web tools for collecting payments. You can get started with Stripe today by signing up for a free account.

  • Builtin integration that can handle payment flow
  • Create payment intent for one time payment using “PaymentIntent.create()” method
  • Capture the actual payment using “PaymentIntent.capture()” method where “payment_intent_id”  is required

How does Stripe place a hold on the card and does payment after service is completed?

Place a hold on a card to reserve funds now but only capture them after your business completes the service. For example, a hotel may authorize a payment in full prior to a guest’s arrival, then move the money when the guest checks out.

  • Create PaymentIntent with payment method as manual(For authorize only):

To indicate that you want separate authorization and capture, set the value of capture_method option to manual when creating the PaymentIntent. This parameter instructs Stripe to only authorize the amount on the customer’s card.

Stripe.PaymentIntent.create(

  amount=1000,

  currency='usd',

  payment_method_types=['card'],

  capture_method='manual',

  customer=customerId,

  payment_method=payment_method_id,

  description="Demo",

)
  • Capture the holded funds:

After the card is authorized, the PaymentIntent status will transition to requires_capture. The total authorized amount is captured by default—you can’t capture more than this. To capture less than the initial amount, pass the amount_to_capture option. Partially capturing automatically releases the remaining amount.

Stripe.PaymentIntent.capture(

  'pi_ANipwO3zNfjeWODtRPIg',

  amount_to_capture=750

)

When a payment is authorized, the bank guarantees the amount and holds it on the customer’s card for up to seven days, or two days for in-person payments using Terminal

If the payment is not captured at this time, the authorization is canceled and the funds are released. When this happens, the PaymentIntent status transitions to cancel.

Subscription Process with Stripe

Subscription is the process where the user is charged automatically to use or access the service or product

  • The time period can be between 1 day and 1 year
  • Stripe provides a trial period before going directly for a subscription
  • User subscription can be created while creating customer and needs a default card to be attached for recurring payments
  • Subscriptions can be removed or stopped if users don’t want to use the service

How subscriptions are created on Stripe?

1. After the user clicks on ‘Subscribe’, the user is redirected to the Stripe website. 

2. The user fills in his/her credit card details and clicks on ‘Pay’. 

3. Stripe is called to charge the card. 

4. Stripe is called to store the customer’s card details (card type, expiration and CVC number). 

5. The user is redirected back to the application. 

6. The user is redirected to a success page of the application with a unique token. 

7. The user is redirected to the application which tries to retrieve the unique token of the customer and calls Stripe again. 

8. The user is redirected to the application which informs if the subscription is successful. 

Understanding Stripe Connected?

Stripe Connected is the only platform that enables you to run your entire business on one dashboard. It provides payment processing, online invoicing and bookkeeping tools in one place. With just a few clicks, you can pay for web hosting, office supplies or even employee salaries. All these services work seamlessly together to help you run your business at scale without worrying about the complexities of managing multiple accounts and subscriptions.

  • When using Stripe Connect, you need to create an account (known as a connected account) for each user that receives money on your platform
  • The best way to create an account is when a user signs up for your website

Type of connected accounts

In Stripe connect, You need to create an account for each seller who received payments on your platform. There are three account types you can use with Connect, each of which is designed for different business scenarios.

a) Standard: A Standard Stripe account is a conventional Stripe account where the account holder (i.e., your platform’s user) has a relationship with Stripe, is able to log in to the Dashboard, and can process charges on their own and also be able to do refunds of their own.

b) Express: The platform is responsible for handling disputes and refunds, and connected account users will have some interactions with Stripe; they have primarily interacted with your platform, particularly for the core payment processing functionality. For Express account holders, Stripe provides an Express Dashboard (a lighter version of the Dashboard) that allows them to manage their personal information and see payouts to their bank.

c) Custom: A Custom Stripe account is almost completely invisible to the account holder. The platform is responsible for all interactions with your user, including collecting any information Stripe needs. Also, all the payouts and refunds are handled by platform accounts.

Type Of Connected Accounts | Mindbowser

Get a team of Full Stack Developers started within 24 hours

coma

Conclusion

There are a lot of payment gateways out there, but most of them are pretty complex. If you’re a small business owner, it can be really hard to get started on a payment platform when you have to spend thousands of dollars to get it set up. That’s why a lot of people choose to use Stripe payment because it has a flat fee and it only takes a few minutes to set up.

Hope you like our in-depth article on how stripe payment works? If you have any other questions about Stripe, please feel free to reach out to us anytime.

Content Team

This blog is from Mindbowser‘s content team – a group of individuals coming together to create pieces that you may like. If you have feedback, please drop us a message on contact@mindbowser.com

Get in touch for a detailed discussion.

Hear From Our 100+ Customers
coma

Mindbowser helped us build an awesome iOS app to bring balance to people’s lives.

author
ADDIE WOOTTEN
CEO, SMILINGMIND
coma

We had very close go live timeline and MindBowser team got us live a month before.

author
Shaz Khan
CEO, BuyNow WorldWide
coma

They were a very responsive team! Extremely easy to communicate and work with!

author
Kristen M.
Founder & CEO, TotTech
coma

We’ve had very little-to-no hiccups at all—it’s been a really pleasurable experience.

author
Chacko Thomas
Co-Founder, TEAM8s
coma

Mindbowser is one of the reasons that our app is successful. These guys have been a great team.

author
Dave Dubier
Founder & CEO, MangoMirror
coma

Mindbowser was very helpful with explaining the development process and started quickly on the project.

author
Hieu Le
Executive Director of Product Development, Innovation Lab
coma

The greatest benefit we got from Mindbowser is the expertise. Their team has developed apps in all different industries with all types of social proofs.

author
Alex Gobel
Co-Founder, Vesica
coma

Mindbowser is professional, efficient and thorough. 

author
MacKenzie R
Consultant at XPRIZE
coma

Very committed, they create beautiful apps and are very benevolent. They have brilliant Ideas.

author
Laurie Mastrogiani
Founder, S.T.A.R.S of Wellness
coma

MindBowser was great; they listened to us a lot and helped us hone in on the actual idea of the app.” “They had put together fantastic wireframes for us.

author
Bennet Gillogly
Co-Founder, Flat Earth
coma

They're very tech-savvy, yet humble.

author
Uma Nidmarty
CEO, GS Advisorate, Inc.
coma

Ayush was responsive and paired me with the best team member possible, to complete my complex vision and project. Could not be happier.

author
Katie Taylor
Founder, Child Life On Call
coma

As a founder of a budding start-up, it has been a great experience working with Mindbower Inc under Ayush's leadership for our online digital platform design and development activity.

author
Radhika Kotwal
Founder of Courtyardly
coma

The team from Mindbowser stayed on task, asked the right questions, and completed the required tasks in a timely fashion! Strong work team!

author
Michael Wright
Chief Executive Officer, SDOH2Health LLC
coma

They are focused, patient and; they are innovative. Please give them a shot if you are looking for someone to partner with, you can go along with Mindbowser.

author
David Cain
CEO, thirty2give
coma

We are a small non-profit on a budget and they were able to deliver their work at our prescribed budgets. Their team always met their objectives and I'm very happy with the end result. Thank you, Mindbowser team!!

author
Bart Mendel
Founder, Mindworks