28 lines
572 B
Python
28 lines
572 B
Python
from datetime import date
|
|
from typing import Literal
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class Transaction(BaseModel):
|
|
transaction_id: str
|
|
date: date
|
|
account: str
|
|
amount: float
|
|
status: Literal["Matched", "Unmatched", "Pending"]
|
|
flag: Literal["None", "Duplicate", "Threshold Breach", "Manual Review"]
|
|
reference_id: str
|
|
counterparty: str
|
|
currency: str
|
|
booking_date: date
|
|
settlement_date: date
|
|
description: str
|
|
|
|
|
|
class ReconSummary(BaseModel):
|
|
total: int
|
|
matched: int
|
|
unmatched: int
|
|
pending: int
|
|
flagged: int
|