This guide walks you through the four API calls that set up a working savings group: registering an admin, logging in to get a token, adding a member, and viewing the group dashboard. All examples useDocumentation Index
Fetch the complete documentation index at: https://docs.digiflecttech.dev/llms.txt
Use this file to discover all available pages before exploring further.
curl and real request bodies drawn from the Save App schemas.
The base URL for all requests defaults to
http://localhost:8000 in development. Replace this with your deployed API URL in production.Register as a group admin
Admin registration uses Firebase Phone Authentication on the mobile client. After Firebase verifies the phone number, your app calls A successful response returns a JWT token and confirms the admin’s role:Save the
POST /api/auth/admin/verify-otp with otp set to the special value "FIREBASE_VERIFIED" to complete registration on the backend.The first admin to register under a group name automatically becomes its creator (is_creator: true). Subsequent admins in the same group are not creators.token — you will use it to authenticate subsequent requests. Tokens expire after 24 hours.Log in and get a token
After initial registration, admins and members log in using their phone number and 4-digit PIN. Pass Use the returned
loginType to enforce role-based portal access — the API returns 403 Forbidden if a member attempts to log in to the admin portal.token as a Bearer token on all subsequent authenticated requests:Add a member
Admins add members to the group with
POST /api/members. New members are created in "pending" status with a temporary password. They complete onboarding by calling the check-phone and set-password endpoints to set their own PIN.Next steps
Authentication
Understand token expiry, Firebase login, and the member onboarding flow.
Managing members
Add, update, suspend, and onboard members in your group.
Loans
Submit loan requests, check eligibility, and record repayments.
Analytics
Fetch dashboard data and financial reports for your group.