clase PayoutService:
def __init__(self):
# ...
pass
def create_payout(self, idempotency_key: str, terminal_id: int, amount: float) -> dict:
"""
Debe devolver un diccionario con el siguiente formato:
{"payout_id": <int>, "terminal_id": <int>, "amount": <float>, "status": "success"}
Garantías:
- en la primera llamada con un nuevo idempotency_key — se crea un nuevo pago
- en llamadas posteriores con un idempotency_key ya utilizado — se devuelve
el resultado de la primera llamada, NO se crea un nuevo pago
- el amount debe ser > 0, de lo contrario — lanzar ValueError
"""
raise NotImplementedError