New and returning customers could reach an empty wallet because account creation was not part of onboarding. Ensure RUB, USDT and USDC accounts after identity intake during signup and activation resend, and on authenticated wallet loads so existing customers receive missing defaults automatically. Preserve existing ledgers, extra currencies, funds and saved bindings. Replayed bound creates resume interrupted provider wallet/route setup without duplicate accounts.
Accounts and transfer screens now show clear preparation, failure and working retry states in English and Russian. Currency-account setup no longer directs customers to support. The backend owns creation and the existing frontend service/model/provider boundaries remain intact. Setup outcome counters and duration metrics use no customer or financial labels.
Dependency: Sendico PR #2970. Deploy its Ledger/index first, then Product Edge, then this SXCHNGE backend/frontend. The provider capability is required before any create request; unsupported providers fail safely. Existing users are repaired on their next wallet load, rather than by scanning dormant customers.
Validation passed: TESTCONTAINERS_RYUK_DISABLED=true GOFLAGS='-p=2' make test (all backend integration checks and 242 frontend tests); make lint-backend; flutter gen-l10n; frontend/app flutter analyze; changed-Dart format check; focused race-enabled creation/retry/ownership tests; and git diff --check. An independent make test-frontend run also passed all 242 tests. Plain full-suite attempts encountered dependency DNS and Docker cleanup-helper/startup timeouts; the final run disabled only the failing helper and retained each test's existing container cleanup, integration assertions, race detector and timeouts. The live local currency catalog contains RUB (2), USDT (6) and USDC (6). No security scan was requested.
UX review, measurement boundaries, rollout and limitations are documented in docs/payments.md and docs/ux/exchange-workspace.md. Native screen-reader/device QA and a deployed end-to-end signup remain release checks. Closes#72.
New and returning customers could reach an empty wallet because account creation was not part of onboarding. Ensure RUB, USDT and USDC accounts after identity intake during signup and activation resend, and on authenticated wallet loads so existing customers receive missing defaults automatically. Preserve existing ledgers, extra currencies, funds and saved bindings. Replayed bound creates resume interrupted provider wallet/route setup without duplicate accounts.
Accounts and transfer screens now show clear preparation, failure and working retry states in English and Russian. Currency-account setup no longer directs customers to support. The backend owns creation and the existing frontend service/model/provider boundaries remain intact. Setup outcome counters and duration metrics use no customer or financial labels.
Dependency: [Sendico PR #2970](https://git.sendico.io/tech/sendico/pulls/2970). Deploy its Ledger/index first, then Product Edge, then this SXCHNGE backend/frontend. The provider capability is required before any create request; unsupported providers fail safely. Existing users are repaired on their next wallet load, rather than by scanning dormant customers.
Validation passed: TESTCONTAINERS_RYUK_DISABLED=true GOFLAGS='-p=2' make test (all backend integration checks and 242 frontend tests); make lint-backend; flutter gen-l10n; frontend/app flutter analyze; changed-Dart format check; focused race-enabled creation/retry/ownership tests; and git diff --check. An independent make test-frontend run also passed all 242 tests. Plain full-suite attempts encountered dependency DNS and Docker cleanup-helper/startup timeouts; the final run disabled only the failing helper and retained each test's existing container cleanup, integration assertions, race detector and timeouts. The live local currency catalog contains RUB (2), USDT (6) and USDC (6). No security scan was requested.
UX review, measurement boundaries, rollout and limitations are documented in docs/payments.md and docs/ux/exchange-workspace.md. Native screen-reader/device QA and a deployed end-to-end signup remain release checks. Closes #72.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
New and returning customers could reach an empty wallet because account creation was not part of onboarding. Ensure RUB, USDT and USDC accounts after identity intake during signup and activation resend, and on authenticated wallet loads so existing customers receive missing defaults automatically. Preserve existing ledgers, extra currencies, funds and saved bindings. Replayed bound creates resume interrupted provider wallet/route setup without duplicate accounts.
Accounts and transfer screens now show clear preparation, failure and working retry states in English and Russian. Currency-account setup no longer directs customers to support. The backend owns creation and the existing frontend service/model/provider boundaries remain intact. Setup outcome counters and duration metrics use no customer or financial labels.
Dependency: Sendico PR #2970. Deploy its Ledger/index first, then Product Edge, then this SXCHNGE backend/frontend. The provider capability is required before any create request; unsupported providers fail safely. Existing users are repaired on their next wallet load, rather than by scanning dormant customers.
Validation passed: TESTCONTAINERS_RYUK_DISABLED=true GOFLAGS='-p=2' make test (all backend integration checks and 242 frontend tests); make lint-backend; flutter gen-l10n; frontend/app flutter analyze; changed-Dart format check; focused race-enabled creation/retry/ownership tests; and git diff --check. An independent make test-frontend run also passed all 242 tests. Plain full-suite attempts encountered dependency DNS and Docker cleanup-helper/startup timeouts; the final run disabled only the failing helper and retained each test's existing container cleanup, integration assertions, race detector and timeouts. The live local currency catalog contains RUB (2), USDT (6) and USDC (6). No security scan was requested.
UX review, measurement boundaries, rollout and limitations are documented in docs/payments.md and docs/ux/exchange-workspace.md. Native screen-reader/device QA and a deployed end-to-end signup remain release checks. Closes #72.