27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# GovOPlaN Payments
|
|
|
|
<!-- govoplan-repository-type:start -->
|
|
**Repository type:** module (domain).
|
|
<!-- govoplan-repository-type:end -->
|
|
|
|
`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.
|
|
|
|
Online payment providers, applicant checkout, partial payments, refunds,
|
|
reversals, Ledger posting, and XRechnung are intentionally separate next
|
|
slices. See [docs/PAYMENTS_DOMAIN.md](docs/PAYMENTS_DOMAIN.md).
|
|
|
|
Focused verification:
|
|
|
|
```sh
|
|
PYTHONPATH=src:/mnt/DATA/git/govoplan-core/src \
|
|
/mnt/DATA/git/govoplan/.venv/bin/python -m unittest discover -s tests
|
|
```
|