payments-dashboard/src
Adam Moussa a6a8132a69
feat(apphome): surface returned payments as a needs-action queue (#74)
* feat(apphome): surface returned payments as a needs-action queue

Bank-returned payments carry status "Cleared" (the CSV ladder has no
Returned rung), so the status skip-list hid them from every App Home
bucket; five Feb-Apr returns ($5,256.62) surfaced only via a manual
statement reconciliation. Route on clear_status ahead of the status
skip-list: non-canceled Returned records render in an always-visible
action queue (oldest return first) plus a summary tile, and are
excluded from Outstanding totals. Terminal voided-and-bounced records
stay out of both (audit trail only). Membership keys off clear_status,
not returned_date, so redeposited checks drop back out of the queue.

Refs: #70

* docs(apphome): restore returned-queue README bullet dropped in rebase
2026-07-22 16:38:56 -04:00
..
boaRecon.js feat(fetchboa): intraday current-day runs, raw S3 archive, balance records (#76) 2026-07-22 16:02:48 -04:00
dates.js feat(apphome): surface returned payments as a needs-action queue (#74) 2026-07-22 16:38:56 -04:00
expenseProcessor.js Merge expense-approval-bot into payments-dashboard (#28) 2026-05-12 13:08:42 -04:00
expenseReceiver.js Merge expense-approval-bot into payments-dashboard (#28) 2026-05-12 13:08:42 -04:00
fetchBoaTransactions.js feat(fetchboa): intraday current-day runs, raw S3 archive, balance records (#76) 2026-07-22 16:02:48 -04:00
processPaymentCsv.js feat(fetchboa): bank-truth reconciliation v2 — returns, redeposits, ACH confirmation (#73) 2026-07-21 22:07:37 -04:00
processPayrollEmail.js Migrate secrets from SSM to Secrets Manager 2026-06-02 20:29:18 -04:00
slackAppHome.js feat(apphome): surface returned payments as a needs-action queue (#74) 2026-07-22 16:38:56 -04:00