transaction_idtransaction_date, value_dateamount, currencycounterparty_name, IBANremittance_textbank_feespayment_expectation_idinvoice_id, vendor_idexpected_amount, currencydue_date, earliest_pay_date, latest_pay_dateexpected_reference_texts[]iban(s)status: [OPEN, PARTIALLY_PAID, PAID, EXPIRED]BankTransaction ↔ PaymentExpectation.match_confidence (0-100)match_type: [EXACT, PARTIAL, AGGREGATED, AMBIGUOUS]AMBIGUOUS results. Useful for:
suggested_match_ids[], reasoning_text, confidence_score.pru_idinvoice_idbank_tx_ids[]expected_amount vs paid_amountopen_amountstateevidence_snapshotMATCHED_PAIDPARTIALLY_PAIDOVERPAID / SHORT_PAIDUNMATCHED_INVOICE / UNMATCHED_PAYMENTFX_DIFFERENCE / FEE_DIFFERENCEBLOCKED_NEEDS_REVIEW| State | Recommended Action |
|---|---|
| MATCHED_PAID | None (Auto-Close) |
| PARTIALLY_PAID | Investigate short payment |
| OVERPAID | Trigger credit / refund |
| FX_DIFFERENCE | Post FX difference |
| FEE_DIFFERENCE | Post bank fee |
| UNMATCHED_INVOICE | Chase payment / Check payment run |
| UNMATCHED_PAYMENT | Identify invoice or classify as advance |
| BLOCKED | Manual Review |