Update routes/subscription.py
Browse files- routes/subscription.py +13 -2
routes/subscription.py
CHANGED
@@ -344,16 +344,27 @@ async def subscription_details(data: SubscriptionRequest):
|
|
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 |
-
|
351 |
-
logger.info(f"Upcoming invoice retrieved
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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:
|
|
|
344 |
currency = subscription["items"]["data"][0]["price"]["currency"].upper()
|
345 |
|
346 |
# Data da próxima cobrança - CORREÇÃO DEFINITIVA
|
347 |
+
logger.info(f"Tentando buscar upcoming invoice para subscription: {subscription_id}")
|
348 |
try:
|
349 |
# A forma correta de chamar o método upcoming do Stripe
|
350 |
+
logger.info("Chamando stripe.Invoice.upcoming...")
|
351 |
upcoming_invoice = stripe.Invoice.upcoming(subscription=subscription_id)
|
352 |
+
logger.info(f"Upcoming invoice object type: {type(upcoming_invoice)}")
|
353 |
+
logger.info(f"Upcoming invoice retrieved successfully")
|
354 |
+
logger.info(f"Amount due: {upcoming_invoice.amount_due}")
|
355 |
+
logger.info(f"Currency: {upcoming_invoice.currency}")
|
356 |
+
logger.info(f"Status: {upcoming_invoice.status if hasattr(upcoming_invoice, 'status') else 'No status'}")
|
357 |
+
|
358 |
+
next_invoice_amount = upcoming_invoice.amount_due / 100 if upcoming_invoice and upcoming_invoice.amount_due else None
|
359 |
+
logger.info(f"Calculated next_invoice_amount: {next_invoice_amount}")
|
360 |
+
|
361 |
except stripe.error.StripeError as e:
|
362 |
logger.error(f"Stripe error getting upcoming invoice: {str(e)}")
|
363 |
+
logger.error(f"Stripe error type: {type(e)}")
|
364 |
next_invoice_amount = None
|
365 |
except Exception as e:
|
366 |
logger.error(f"General error getting upcoming invoice: {str(e)}")
|
367 |
+
logger.error(f"Error type: {type(e)}")
|
368 |
next_invoice_amount = None
|
369 |
|
370 |
if next_invoice_amount is None:
|