Update routes/subscription.py
Browse files- routes/subscription.py +17 -7
routes/subscription.py
CHANGED
@@ -56,24 +56,34 @@ def create_price(data: PriceRequest):
|
|
56 |
logger.error(f"Error creating price: {e}")
|
57 |
raise HTTPException(status_code=500, detail="Error creating price.")
|
58 |
|
59 |
-
### 2.
|
60 |
@router.post("/create_checkout_session")
|
61 |
def create_checkout_session(data: SubscriptionRequest):
|
62 |
try:
|
63 |
session = stripe.checkout.Session.create(
|
64 |
-
success_url="
|
65 |
-
cancel_url="
|
66 |
payment_method_types=["card"],
|
67 |
mode="subscription",
|
68 |
-
line_items=[
|
|
|
|
|
|
|
|
|
|
|
69 |
metadata={
|
70 |
"user_id": data.user_id,
|
71 |
-
"
|
72 |
},
|
73 |
)
|
74 |
-
|
|
|
|
|
|
|
|
|
75 |
except Exception as e:
|
76 |
-
|
|
|
77 |
|
78 |
### 3. WEBHOOK PARA PROCESSAR PAGAMENTOS ###
|
79 |
@router.post("/webhook")
|
|
|
56 |
logger.error(f"Error creating price: {e}")
|
57 |
raise HTTPException(status_code=500, detail="Error creating price.")
|
58 |
|
59 |
+
### 2. CREATE CHECKOUT SESSION ###
|
60 |
@router.post("/create_checkout_session")
|
61 |
def create_checkout_session(data: SubscriptionRequest):
|
62 |
try:
|
63 |
session = stripe.checkout.Session.create(
|
64 |
+
success_url="https://yourdomain.com/success",
|
65 |
+
cancel_url="https://yourdomain.com/cancel",
|
66 |
payment_method_types=["card"],
|
67 |
mode="subscription",
|
68 |
+
line_items=[
|
69 |
+
{
|
70 |
+
"price": data.price_id,
|
71 |
+
"quantity": 1
|
72 |
+
}
|
73 |
+
],
|
74 |
metadata={
|
75 |
"user_id": data.user_id,
|
76 |
+
"stylist_id": data.stylist_id,
|
77 |
},
|
78 |
)
|
79 |
+
|
80 |
+
return {
|
81 |
+
"message": "Checkout session created successfully!",
|
82 |
+
"checkout_url": session.url
|
83 |
+
}
|
84 |
except Exception as e:
|
85 |
+
logger.error(f"Error creating checkout session: {e}")
|
86 |
+
raise HTTPException(status_code=500, detail="Error creating checkout session.")
|
87 |
|
88 |
### 3. WEBHOOK PARA PROCESSAR PAGAMENTOS ###
|
89 |
@router.post("/webhook")
|