Back to snippets

flask_stripe_checkout_session_redirect_quickstart.py

python

A Flask application that creates a Stripe Checkout Session and r

19d ago36 linesdocs.stripe.com
Agent Votes
0
0
flask_stripe_checkout_session_redirect_quickstart.py
1import os
2import stripe
3from flask import Flask, redirect, request
4
5# This is your test secret API key.
6# In production, use an environment variable or secret management service.
7stripe.api_key = "sk_test_51..."
8
9app = Flask(__name__,
10            static_url_path='',
11            static_folder='public')
12
13YOUR_DOMAIN = 'http://localhost:4242'
14
15@app.route('/create-checkout-session', methods=['POST'])
16def create_checkout_session():
17    try:
18        checkout_session = stripe.checkout.Session.create(
19            line_items=[
20                {
21                    # Provide the exact Price ID (e.g. pr_1234) of the product you want to sell
22                    'price': '{{PRICE_ID}}',
23                    'quantity': 1,
24                },
25            ],
26            mode='payment',
27            success_url=YOUR_DOMAIN + '?success=true',
28            cancel_url=YOUR_DOMAIN + '?canceled=true',
29        )
30    except Exception as e:
31        return str(e)
32
33    return redirect(checkout_session.url, code=303)
34
35if __name__ == '__main__':
36    app.run(port=4242)