Who uses DOSS
DOSS is built for end users who receive and spend support payments digitally. Once registered and verified, users can make QR-based payments at approved merchants, view their transaction history, and manage their account from a single app.Key features
QR scanning & payments
Scan merchant QR codes and confirm payments with your PIN at approved merchants nationwide.
Digital wallet
View your balance, recent activity, and merchant listings from the home dashboard.
Transaction history
Browse a complete record of past payments and incoming support deposits.
Identity verification
Submit an ID card, driver’s license, or passport to unlock full app functionality.
Notifications
Receive DOSS alerts and payment request notifications via Firebase Cloud Messaging.
Group payments
Join or leave payment groups and authorise group transactions with a dedicated PIN.
How the app is structured
The app follows a linear launch sequence and then branches based on authentication state:- Splash screen — displays the DOSS logo and a “Get Started” button. On first launch it routes to Onboarding; on subsequent launches it routes directly to the home dashboard.
- Onboarding — a four-slide walkthrough covering identity verification, support payments, scan-and-pay, and document requirements.
- Authentication flow — unverified users register via email OTP → phone OTP → PIN creation. Returning users log in with their email and PIN.
- Home dashboard — the authenticated root, giving access to all core features through a bottom tab navigator.
Tech stack
| Layer | Technology |
|---|---|
| Framework | React Native 0.73.6 |
| Navigation | React Navigation 6 (native stack + bottom tabs) |
| Server state | TanStack Query (React Query) v5 |
| Client state | Zustand v4 |
| Push notifications | Firebase Cloud Messaging (@react-native-firebase) |
| Forms | React Hook Form + Zod |
| HTTP client | Axios |