Spaces:
Sleeping
Sleeping
| import time | |
| import stripe | |
| from fastapi import FastAPI, Request, Header | |
| import sulkuPypi | |
| import globales | |
| import herramientas | |
| app = FastAPI() | |
| string_key = globales.llave | |
| # This is a terrible idea, only used for demo purposes! | |
| app.state.stripe_customer_id = None | |
| def start(): | |
| return {f"Status":"Deployed"} | |
| async def webhook_received(request: Request, stripe_signature: str = Header(None)): | |
| webhook_secret = globales.webhook | |
| data = await request.body() | |
| print("Construyendo el evento:") | |
| try: | |
| event = stripe.Webhook.construct_event( | |
| payload=data, | |
| sig_header=stripe_signature, | |
| secret=webhook_secret | |
| ) | |
| # print("Evento construido...") | |
| # print(event) | |
| # print("Evento impreso") | |
| except Exception as e: | |
| print("Excepción es: ", e) | |
| try: | |
| event_data = event['data']['object'] | |
| except Exception as e: | |
| print("Excepción183 es: ", e) | |
| event_type = event['type'] | |
| print("Voy a imprimir el event type:") | |
| print(event_type) | |
| # if event_type == 'payment_intent.succeeded': | |
| # print('PAYMENT182') | |
| # print(event_data) | |
| # print("Ready") | |
| # print("Created:") | |
| # print(event_data['created']) | |
| # print("Id") | |
| # print(event_data['id']) | |
| # print("Payment_method:") | |
| # print(event_data['payment_method']) | |
| # print("Customer:") | |
| # cus = event_data['customer'] | |
| # print(cus) | |
| if event_type == 'checkout.session.completed': | |
| print('CHECKOUT182') | |
| #print(event_data) | |
| print("Payment Status:") | |
| print(event_data['payment_status']) | |
| print("Nombre Cliente:") | |
| print(event_data['customer_details']['name']) | |
| print("Metadata:") | |
| print(event_data['metadata']) | |
| cus_id = event_data['metadata']['stripe_customer_id'] | |
| print("Metadata Cusid:") | |
| print(cus_id) | |
| imagenes = event_data['metadata']['imagenes'] | |
| print("Imágenes:") | |
| print(imagenes) | |
| cus = event_data['customer'] | |
| print("Customer directo:") | |
| print(cus) | |
| herramientas.registrar_evento(cus_id, int(imagenes)) | |
| else: | |
| print(f'unhandled event: {event_type}') | |
| return {"status": "success"} |