1.4 KiB
GovOPlaN Payments
Repository type: module (domain).
govoplan-payments owns replay-safe payment obligations, human payment
references, append-only lifecycle evidence, and settlement reconciliation.
The first vertical slice implements full manual/offline payment receipt. A
Case, Workflow, or other procedure calls the Core payments.requests
capability, retains the returned payment ID, and later supplies the exact
amount/currency, external transaction reference, and a same-tenant versioned or
checksum-bound evidence reference. Payments rejects changed replays, partial or
cross-currency matches, cross-tenant evidence, and a second settlement.
Version 0.1.20 adds the permission-aware Payments operator workspace at
/payments. It uses the shared Core page, action, form, dialog, and table
grammar, keeps Reload and Create in stable collection slots, and guides request
creation and exact evidence-bound manual reconciliation without exposing raw
JSON.
Online payment providers, applicant checkout, partial payments, refunds, reversals, Ledger posting, and XRechnung are intentionally separate next slices. See docs/PAYMENTS_DOMAIN.md.
Focused verification:
PYTHONPATH=src:/mnt/DATA/git/govoplan-core/src \
/mnt/DATA/git/govoplan/.venv/bin/python -m unittest discover -s tests
cd webui && npm run test:interface-pattern