diff --git a/WORK-RECORDS.md b/WORK-RECORDS.md index eda5899..bab36ca 100644 --- a/WORK-RECORDS.md +++ b/WORK-RECORDS.md @@ -14,6 +14,7 @@ | workplan | FIN-WP-0003 | proposed | — | workplans/FIN-WP-0003-fabric-authority-boundary.md | | workplan | FIN-WP-0004 | active | — | workplans/FIN-WP-0004-resource-cost-evidence-contract.md | | workplan | FIN-WP-0005 | active | — | workplans/FIN-WP-0005-datev-accounting-adapter-operations.md | +| workplan | FIN-WP-0006 | proposed | — | workplans/FIN-WP-0006-internal-transfer-settlement.md | | task | FIN-WP-0000-T01 | done | — | workplans/FIN-WP-0000-repo-integration.md | | task | FIN-WP-0000-T02 | done | — | workplans/FIN-WP-0000-repo-integration.md | | task | FIN-WP-0000-T03 | done | — | workplans/FIN-WP-0000-repo-integration.md | @@ -46,3 +47,4 @@ | task | FIN-WP-0005-T02 | wait | — | workplans/FIN-WP-0005-datev-accounting-adapter-operations.md | | task | FIN-WP-0005-T03 | wait | — | workplans/FIN-WP-0005-datev-accounting-adapter-operations.md | | task | FIN-WP-0005-T04 | wait | — | workplans/FIN-WP-0005-datev-accounting-adapter-operations.md | +| task | FIN-WP-0006-T01 | todo | — | workplans/FIN-WP-0006-internal-transfer-settlement.md | diff --git a/workplans/FIN-WP-0006-internal-transfer-settlement.md b/workplans/FIN-WP-0006-internal-transfer-settlement.md new file mode 100644 index 0000000..4f1889b --- /dev/null +++ b/workplans/FIN-WP-0006-internal-transfer-settlement.md @@ -0,0 +1,57 @@ +--- +id: FIN-WP-0006 +type: workplan +title: "Consume resource-control internal transfer settlement" +domain: financials +repo: fin-hub +status: proposed +owner: codex +topic_slug: financials +created: "2026-08-14" +updated: "2026-08-14" +related: + - FIN-WP-0004 + - RESOURCE-WP-0005 +origin: residual +origin_ref: RESOURCE-WP-0005 +state_hub_workstream_id: "681c39ef-b902-4ccd-8018-0fa25bccf455" +--- + +# FIN-WP-0006 — consume internal transfer settlement + +## Goal + +Accept proposed internal transfer charges and credit-state records from +`resource-control` without taking resource authority or creating a second +ledger. Recognize internal payments as booked facts joined by +`financial_fact_id`, `financial_entity_id`, and period. + +Origin: `RESOURCE-WP-0005-T07`. Terms live in +`resource-control/docs/TermsOfResourceProcurement.md`. Outbound shape: +`resource-control/schemas/settlement-statement.schema.json`. + +## Boundaries + +- `resource-control` owns transfer-price arithmetic, statements, and + consumption mode. +- `fin-hub` owns booked provider cost, tax, recognized payments, and any + later DATEV-facing internal settlement posting. +- A settlement statement is not booked spend. + +## T01 — Join proposed transfer charges + +```task +id: FIN-WP-0006-T01 +status: todo +priority: high +state_hub_task_id: "d9618171-b1cb-4df2-bcaf-92eb937e316e" +``` + +Document and implement the inbound join for resource-control settlement +statements. Preserve `financial_entity_id`, `period`, `terms_version`, +and statement identity. Reject any path that would post the statement as +a provider invoice. + +Done when an inbound fixture can be stored as a referenced projection +and `exchange_health` shows statements lacking a payment join as a +visible residual, not as booked cost.