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

Keep Reading

Keep Reading

Struggling with EHR integration? Learn about next-gen solutions in our upcoming webinar on Mar 6, at 11 AM EST.

Register Now

Let's create something together!