958 B
958 B
ADR 0003: Authentica As Primary OTP Provider
Status
Accepted
Context
The platform requires phone-first authentication with OTP delivery for KSA. The codebase includes provider adapters (console, authentica) and Authentica is implemented for provider-managed OTP delivery (send/verify) and direct SMS messaging. A console provider exists for local development.
Decision
Use Authentica as the primary OTP provider for the MVP, with OTP_PROVIDER=authentica in production environments. Keep console for local development and tests.
Consequences
- OTP verification relies on Authentica APIs and credentials in production.
- Local development remains simple with the console provider.
- Adding a second production provider will require completing adapters and updating operational runbooks.
Alternatives Considered
Related
backend/apps/accounts/services/otp.pybackend/salon_api/settings.pydocs/architecture.md