Moibe's picture
Print Nombre Cliente for Reference
8a29f7a
raw
history blame
2.61 kB
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
@app.get("/")
def start():
return {f"Status":"Deployed"}
@app.post("/webhook")
async def webhook_received(request: Request, stripe_signature: str = Header(None)):
webhook_secret = globales.webhook
data = await request.body()
print("data ready")
#print(data)
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")
# time.sleep(30)
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("Ready")
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("Imagenes")
print(imagenes)
print("El tipo de dato de imagenes es: ", type(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"}