The old flow required a "confirm" reply after showing a parsed-receipt table, but that follow-up dispatch call carries no receipts (they only exist in the /upload context). The confirmation gate was architecturally broken: the second turn would always create nothing. Fix: create the expense sheet immediately when receipts are present. Byte-exact and semantic duplicates are auto-skipped; the count of skipped items is reported in the success message. The report is always created in Odoo as a draft so users can review amounts and submit manually via Odoo > Expenses. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
22 KiB
22 KiB