Add saved payout destination UX and service contracts (#54)

This commit is contained in:
Stephan D committed 2026-10-16 12:01:33 +02:00
1 parent a5689876ff
commit 24af794112
49 files changed
+4687 -62

No files matched your search

+28
View File
@@ -968,3 +968,31 @@ remain separate capabilities. Unrelated notifications runtime changes are exclud
Delivered in [PR #51](https://git.sendico.io/tech/sxchnge/pulls/51), targeting
`identity-verification-48`. Merge order is #47 → #49 → #51; deploy Sendico #2897
before SXCHNGE #51. Both implementation branches are pushed and remain unmerged.
## Saved payout destinations UX — #54
Branch `payout-destinations-54`, based on `local-stand-52`. Implements Settings
creation, details, rename, replacement and removal; explicit payout selection;
optional saving and one-time preparation for crypto, cards and Russian personal
accounts. Shared typed service/model/provider layers separate destination identity,
metadata/execution revisions, ownership, provider bindings, contextual eligibility,
save outcomes and financial outcomes. The customer-scoped demo replays stable
created/duplicate results, preserves immutable quote/history snapshots, rechecks at
acceptance, and demonstrates card-binding restoration without creating a second
card. Bank directory/paste handling follows the reviewed Sendico interface.
EN/RU and 320 px/1.6× layouts are tested. Formatting (44 changed Dart files),
analysis of app/wallet/analytics, `make test-frontend` (including 89 app tests), and
`flutter build web` with Wasm dry run passed. Browser smoke inspection confirmed
bank form rendering, labeled controls and keyboard focus. Full assistive-technology
and real-provider audits were not performed. No security scans were requested/run.
Persistence and bindings in this delivery are simulated and reset on reload.
Authenticated live mode retains explicit use of its provisioned payout destination;
new types fail closed until the backend supplies the documented capabilities and
registry/atomic-acceptance contracts. No routing, ownership-verification system,
provider integration or financial engine was added. See
[the specification and integration boundary](ux/payout-destinations.md).
Stacked merge order: #47 → #49 → #51 → #53 → this contribution. The unrelated
notifications runtime edit is preserved outside task commits. Delivery links follow.