Models
domain.fetch_request.models
Summary
Models for fetch requests: source variety, direction and pipeline enums, raw/enriched expenses, and the fetch request aggregate.
Classes
Bank
CsvSource
Bases: FileSource
CSV file source.
Attributes:
| Name | Type | Description |
|---|---|---|
type |
Literal[CSV]
|
Constant source type marker. |
Direction
EmailSource
Bases: Source
Email statement source.
Attributes:
| Name | Type | Description |
|---|---|---|
from_email |
str
|
Sender address filter. |
subject |
str
|
Subject line filter. |
raw_terms |
List[str]
|
Free-text search terms. |
EnrichedExpense
Bases: BaseModel
Raw expense with enrichment results attached.
Attributes:
| Name | Type | Description |
|---|---|---|
raw_expense |
RawExpense
|
The source raw expense. |
payee |
str
|
Resolved payee/entity name. |
entity_type |
str
|
Entity type, defaulting to merchant. |
entity_logo |
str | None
|
Logo path/url, if any. |
tags |
List[str]
|
Resolved tags. |
FetchRequest
Bases: BaseModel
A request to fetch and process a statement.
Attributes:
| Name | Type | Description |
|---|---|---|
source |
Union[EmailSource, PdfSource, XlsxSource, CsvSource, FileSource]
|
Statement source describing how to fetch the data. |
account |
Account
|
Account the statement belongs to. |
start_date |
datetime
|
Statement window start. |
end_date |
datetime
|
Statement window end. |
status |
str
|
Processing status, defaulting to pending. |
pipeline |
Pipeline
|
Extraction pipeline to use. |
trust_fallback |
Optional[TrustFallback]
|
Optional balance-chain trust policy. |
fingerprint |
str
|
Deduplication fingerprint for the request. |
completed_at |
Optional[datetime]
|
Completion timestamp, if finished. |
error_message |
Optional[str]
|
Failure message, if failed. |
retry_count |
int
|
Number of retries attempted. |
FileSource
Bases: Source
File-based statement source.
Attributes:
| Name | Type | Description |
|---|---|---|
path |
str
|
Path to the uploaded file. |
PdfSource
Bases: FileSource
PDF file source.
Attributes:
| Name | Type | Description |
|---|---|---|
type |
Literal[PDF]
|
Constant source type marker. |
Pipeline
RawExpense
Bases: BaseModel
A single transaction parsed from a statement.
Attributes:
| Name | Type | Description |
|---|---|---|
date |
str
|
Expense date as DD-MM-YYYY. |
amount |
float
|
Transaction amount. |
balance |
float
|
Account balance after transaction. |
description |
str
|
Complete reconstructed transaction description. |
raw_lines |
List[str]
|
Raw OCR/text lines that form this transaction. |
direction |
Direction
|
Either |
Source
Bases: BaseModel
Base statement source carrying extraction progress state.
Attributes:
| Name | Type | Description |
|---|---|---|
bank |
Bank
|
Statement bank, defaulting to |
type |
SourceType
|
Source kind discriminator. |
raw_lines |
List[str]
|
Raw OCR/text lines extracted so far. |
txn_blocks |
Dict[str, Any]
|
Transaction blocks keyed by order id. |
txn_dicts |
List[RawExpense]
|
Parsed raw expenses. |
enrichment_dicts |
List[EnrichedExpense]
|
Enriched expenses. |
txn_dicts_count |
int
|
Number of parsed raw expenses. |
SourceType
Bases: str, Enum
Statement source kinds.
Attributes:
| Name | Type | Description |
|---|---|---|
FILE |
SourceType
|
Generic file source. |
EMAIL |
SourceType
|
Email source. |
PDF |
SourceType
|
PDF file source. |
XLSX |
SourceType
|
Spreadsheet source. |
CSV |
SourceType
|
CSV source. |
TrustFallback
Bases: str, Enum
Per-FetchRequest policy for broken balance chains.
When set, resolution skips OCR-style candidate guesswork entirely and always trusts the configured column: - AMOUNT: keep the transaction amount, derive balance as prev ± amount. - BALANCE: keep the stated balance, derive amount from the balance delta.
Attributes:
| Name | Type | Description |
|---|---|---|
AMOUNT |
TrustFallback
|
Trust the transaction amount; balance is derived as prev ± amount. |
BALANCE |
TrustFallback
|
Trust the stated balance; amount is derived from the balance delta. |
XlsxSource
Bases: FileSource
XLSX file source.
Attributes:
| Name | Type | Description |
|---|---|---|
type |
Literal[XLSX]
|
Constant source type marker. |