fix(payments): make checkout attempts idempotent and reconcilable
This commit is contained in:
@@ -2,6 +2,7 @@ from typing import Literal, Optional
|
||||
|
||||
from ninja import Schema
|
||||
from datetime import datetime
|
||||
from uuid import UUID
|
||||
|
||||
|
||||
class DiscountCodeSchema(Schema):
|
||||
@@ -47,16 +48,22 @@ class CreatePaymentIn(Schema):
|
||||
discount_code: str | None = None
|
||||
mobile: str | None = None
|
||||
email: str | None = None
|
||||
idempotency_key: UUID | None = None
|
||||
|
||||
|
||||
class CreatePaymentOut(Schema):
|
||||
start_pay_url: str | None = None
|
||||
authority: str | None = None
|
||||
payment_id: int | None = None
|
||||
idempotency_key: UUID | None = None
|
||||
status: Literal["initiated", "pending", "paid", "failed", "canceled"]
|
||||
base_amount: int
|
||||
discount_amount: int
|
||||
amount: int
|
||||
|
||||
class PaymentDetailOut(Schema):
|
||||
payment_id: int
|
||||
event_id: int
|
||||
ref_id: str | None = None
|
||||
authority: str | None = None
|
||||
base_amount: int
|
||||
|
||||
Reference in New Issue
Block a user