Update routes/subscription.py
Browse files- routes/subscription.py +8 -5
routes/subscription.py
CHANGED
@@ -343,14 +343,17 @@ async def subscription_details(data: SubscriptionRequest):
|
|
343 |
current_price = subscription["items"]["data"][0]["price"]["unit_amount"] / 100
|
344 |
currency = subscription["items"]["data"][0]["price"]["currency"].upper()
|
345 |
|
346 |
-
# Data da próxima cobrança - CORREÇÃO
|
347 |
try:
|
348 |
-
#
|
349 |
upcoming_invoice = stripe.Invoice.upcoming(subscription=subscription_id)
|
350 |
-
next_invoice_amount = upcoming_invoice
|
351 |
-
logger.info(f"Upcoming invoice retrieved: {upcoming_invoice}")
|
352 |
except stripe.error.StripeError as e:
|
353 |
-
logger.error(f"
|
|
|
|
|
|
|
354 |
next_invoice_amount = None
|
355 |
|
356 |
if next_invoice_amount is None:
|
|
|
343 |
current_price = subscription["items"]["data"][0]["price"]["unit_amount"] / 100
|
344 |
currency = subscription["items"]["data"][0]["price"]["currency"].upper()
|
345 |
|
346 |
+
# Data da próxima cobrança - CORREÇÃO DEFINITIVA
|
347 |
try:
|
348 |
+
# A forma correta de chamar o método upcoming do Stripe
|
349 |
upcoming_invoice = stripe.Invoice.upcoming(subscription=subscription_id)
|
350 |
+
next_invoice_amount = upcoming_invoice.amount_due / 100 if upcoming_invoice else None
|
351 |
+
logger.info(f"Upcoming invoice retrieved: amount_due={upcoming_invoice.amount_due}")
|
352 |
except stripe.error.StripeError as e:
|
353 |
+
logger.error(f"Stripe error getting upcoming invoice: {str(e)}")
|
354 |
+
next_invoice_amount = None
|
355 |
+
except Exception as e:
|
356 |
+
logger.error(f"General error getting upcoming invoice: {str(e)}")
|
357 |
next_invoice_amount = None
|
358 |
|
359 |
if next_invoice_amount is None:
|