Connect customer quotations and payment execution to Sendico (#50)

This commit is contained in:
Stephan D committed 2026-10-16 09:57:28 +02:00
1 parent 5d67c25c8e
commit 7a6510d1a8
45 files changed
+2696 -45

No files matched your search

+37
View File
@@ -927,3 +927,40 @@ routes proof cases to Identity proof review while blocking generic login linking
and assignment. Apply #2886 before #2887 and deploy the combined Sendico result
before this SXCHNGE flow. The public proof/limits contract is unchanged; this
SXCHNGE follow-up changes documentation only and requires consistency/diff checks.
## Sendico quotations and payment execution — task #50
[Task #50](https://git.sendico.io/tech/sxchnge/issues/50), branch `payments-50`,
connects backend wallet mode through the authenticated customer BFF to Sendico's
public account, quotation, by-quote execution and payment-status APIs. It is
stacked on `identity-verification-48` / PR #49; merge #47 → #49 first.
The separate public-provider prerequisite is
[Sendico PR #2897](https://git.sendico.io/tech/sendico/pulls/2897), task #2896.
It validates independent customer context and selects the reviewed ACCOUNT limits
resource rather than the integration login or an unassigned CUSTOMER policy.
Deploy its Product Edge and Quotation/Orchestrator consumers together before
SXCHNGE. The BFF requires an exact customer-context acknowledgement from quotes.
The contribution adds durable customer/namespace/subject-bound quotation ownership,
transactional payment-factor authorization, unique quote/execution keys, stable
provider replay, payment-reference reconciliation and authoritative status polling.
Live UI uses provisioned destinations, accurate quote expiry, explicit missing
method/loading/error/pending states and long labels at narrow widths. It clears
account state on customer changes. DTO/mapper/service/model/provider boundaries,
shared database wrappers, existing credentials and explicit demo mode are retained.
Validation passed: `make test`, `make lint-backend`, `make test-frontend` after the
final UI review, changed-Dart format verification, and app/wallet `flutter analyze`.
The final frontend run passed 21 wallet and 81 app tests, plus the unchanged shared
package suites. Tests include synthetic public HTTP, Mongo transaction rollback,
unique-key/customer isolation, lost-response reconciliation, factor retry and
session replacement. Sendico's full backend test/lint targets also passed.
[Payment contracts, provisioning, UX measurement and limitations](payments.md)
document rollout. Dedicated customer ledger/method bindings and platform access
must be provisioned through existing operator APIs; this work does not run live
payments or deploy either repository. Generic ambiguous rejections remain pending
for operational reconciliation. Cross-session analytics retention, additional
funding/recipient onboarding, backend locale saving and external history ingestion
remain separate capabilities. Unrelated notifications runtime changes are excluded.