Skip to main content

kharcha_core/
lib.rs

1//! kharcha-core — deterministic core of the Kharcha UPI expense tracker.
2//!
3//! Rule-based, no AI. Pure functions: SMS/notification text in, structured
4//! payment out. Ports of `lib/core/*` (Dart) + `GenericUpiParser.kt` +
5//! the `insertCaptured` dedupe rules.
6
7pub mod categorize;
8pub mod dedupe;
9pub mod engine;
10pub mod ffi;
11pub mod filter;
12pub mod money;
13pub mod non_transaction;
14pub mod parser;
15pub mod split;
16
17pub use categorize::{categorize, normalize_merchant, Rule};
18pub use dedupe::{decide_capture, CaptureDecision, ExistingRow, DRIFT_SECS, WINDOW_MS};
19pub use engine::{parse, parse_batch, ParsedTransaction};
20pub use filter::{TransactionFilter, TxRow};
21pub use money::parse_amount_paise;
22pub use non_transaction::is_non_transaction;
23pub use parser::{encode_inbox_line, parse_upi_notification, ParsedPayment};
24pub use split::split_bill_paisa;
25
26uniffi::setup_scaffolding!();