What Flowxi is (and is not)
What Flowxi is
Flowxi is:- A stateful backend platform for fintech products
- A security-first API system
- A single source of truth for users, sessions, and financial state
- A localization-aware system by default
- A backend designed for deterministic behavior and auditability
What Flowxi is not
Flowxi is not:- A generic SaaS API
- A public developer platform
- A loosely consistent microservice mesh
- A frontend-driven backend (BFF-only logic is avoided)
Platform responsibilities
Flowxi is responsible for all critical backend concerns, including:Identity & access
- User lifecycle management
- Authentication and authorization
- Session and device management
- Two-factor authentication (TOTP)
- Anti-enumeration and rate limiting
Financial core
- Wallet ownership and balances
- Transaction recording
- Internal ledger consistency
- Idempotent financial operations
Compliance & state management
- KYC and verification workflows
- Regulatory state transitions
- Blocking, suspension, and account closure logic
- Explicit, traceable user states
Communication & localization
- Transactional emails
- Security notifications
- Fully localized API responses
- Deterministic fallback behavior
Core design principles
Flowxi follows a small number of non-negotiable principles.1. Security first (always)
Security is not an afterthought:- All sensitive endpoints are authenticated
- Public endpoints are rate-limited
- Authentication flows are anti-enumeration by design
- 2FA secrets are never exposed after enrollment
- Tokens are scoped per device
- Critical actions are auditable
2. API-first, not UI-first
Every capability exists as an API:- Frontends consume the same APIs as internal tools
- No hidden server-side flows
- No session magic or implicit state
- All behavior is explicit and documented
3. State-driven logic
Flowxi avoids implicit behavior. Users, wallets, and processes rely on explicit states, such as:pendingactiveblockedclosed
- Controlled
- Validated
- Logged
- Predictable
4. Deterministic behavior
Given the same input:- The API returns the same structure
- The same error code
- The same HTTP status
codefields (machine-readable)- not
messagestrings (human-readable)
5. Localization by default
Localization is not optional in Flowxi. Every request resolves a locale using a strict order:X-App-LocaleAccept-Languageuser.locale(authenticated)- fallback (
fr)
- API response messages
- Validation errors
- Authentication errors
- Emails sent during the request
High-level architecture
At a high level, Flowxi is structured around clear responsibility layers:-
Authentication & security
- Login, registration
- Sessions and devices
- 2FA and step-up verification
-
User & identity
- User records
- Status and lifecycle
- Preferences and locale
-
Financial core
- Wallets
- Balances
- Transactions and movements
-
Compliance
- KYC workflows
- Regulatory constraints
- Blocking and escalation
-
Communication & localization
- Emails
- Notifications
- Translations and fallback
How to read this documentation
This documentation is not linear. Recommended reading order:- Authentication overview
Understand access rules, tokens, and sessions. - Login & 2FA
Learn how secure authentication actually works. - Errors
Learn how to handle failures correctly. - Localization
Understand how messages and emails are localized. - API reference
Use for exact request/response formats.
- Familiarity with REST APIs
- Experience with frontend-backend integration
- Basic security awareness (tokens, headers, rate limits)

