Privacy Policy for Dorossi Teacher
Effective Date: November 9, 2025
Last Updated: November 9, 2025
Privacy Policy URL: https://dorossi.app/privacy
Overview
Dorossi Teacher is a mobile application designed to help teachers manage their groups, students, sessions, and payments. We are committed to protecting your privacy and ensuring the security of your data through secure cloud storage and local device storage.
Developer Information
- App Name: Dorossi Teacher
- Developer: Mazen Bougandoura
- Contact: support@dorossi.app
Data Collection and Storage
Authentication Data We Collect
When you create an account with Dorossi Teacher, we collect:
1. Google Account Information (via Firebase Authentication):
- Email address
- Name (from your Google profile)
- Unique Google user ID
- Profile picture (if provided by Google)
2. Account Creation Data:
- Display name (if different from Google name)
- Phone number (optional)
- Account creation timestamp
- Language preference
Teaching Data We Collect
Once you're signed in, Dorossi Teacher collects and stores the following information:
1. Teacher Information:
- Teacher name
- Language preference
- Tutorial completion status
2. Student Information:
- Student names
- Enrollment dates
- Enrollment status (active/inactive)
3. Group Information:
- Group names
- Subject
- Academic level (educational establishment and year)
- Monthly price
- Class schedule (days and times)
- Creation date
4. Session Records:
- Session dates and times
- Attendance records (present/absent)
- Session type (paid/free)
- Session status
5. Payment Information:
- Payment amounts
- Payment dates
- Sessions covered by payments
- Payment status
6. Historical Data:
- Imported sessions (from pre-app usage)
- Progression tracking
How Data is Stored
Dual Storage System:
1. Local Storage (On Your Device):
- All data is stored locally using SQLite database
- Stored in the app's private directory (not accessible by other apps)
- Protected by Android's File-Based Encryption (FBE)
- Works offline - you can use the app without internet
2. Cloud Storage (Firebase Firestore):
- All teaching data is synchronized to Google Cloud Firestore
- Database location: europe-southwest1 (Europe)
- Provides backup and allows data recovery if you lose your device
- Encrypted in transit (HTTPS/TLS) and at rest
- Real-time synchronization when you're online
- Automatic retry mechanism if synchronization fails
Important Notes:
- Your data exists in both locations (device and cloud)
- You can work offline - changes sync when you reconnect
- If you lose your phone, your data is safely backed up in Firestore
- Only you can access your cloud data (tied to your Google account)
How We Use Your Data
We use your information to:
1. Provide Core Functionality:
- Authenticate you securely via Google Sign-In
- Store and sync your teaching data across sessions
- Enable offline usage of the app
- Backup your data to prevent loss
2. Improve Your Experience:
- Remember your language preference
- Track tutorial completion to avoid repetition
- Maintain session history and payment records
3. Data Recovery:
- Restore your data when you sign in on a new device
- Recover data if you uninstall and reinstall the app
We do NOT use your data for:
- Advertising
- Analytics or tracking
- Selling or sharing with third parties
- Marketing purposes
Account Management
Account Creation
- Required: You must create an account using Google Sign-In to use Dorossi Teacher
- Single Device Lock: Your account is locked to one device at a time for data safety
- Device Registration: When you sign in on a new device, the previous device loses access (FCM token is revoked)
Multi-Device Access
- Sequential Access Only: You can sign in on multiple devices, but only one device can be active at a time
- Device Switching: When you sign in on a new device:
- Your data syncs to the new device
- The old device is automatically signed out
- The old device loses its Firebase Cloud Messaging (FCM) token
Account Deletion
- Currently Not Available: Account deletion is not currently supported
- Data Removal Workaround:
- Uninstall the app to remove local data
- Contact support@dorossi.app to request manual cloud data deletion
- Future Update: We plan to add self-service account deletion in a future version
Third-Party Services and SDKs
Authentication & Cloud Services
Other Services
5. Google Gemini AI (Optional Feature)
- Purpose: AI assistant (Dorossi Agent) for answering questions about the app
- When Used: Only when you interact with the AI assistant
- Data Flow: Your questions → Dorossi backend server → Google Gemini AI
- What's Sent: Your questions and app context (screen name, available features)
- What's NOT Sent: Student names, payment amounts, or any personal/sensitive data
- Backend Server: https://dorossi-backend-teacher.azurewebsites.net (hosted on Microsoft Azure)
- Privacy Policy: https://policies.google.com/privacy
- Completely Optional: You can choose not to use this feature
Core Dependencies (Local Only)
These libraries operate locally and do NOT transmit data:
- Flutter SDK (Google) - Mobile app framework
- Drift (SQLite) - Local database
- SharedPreferences - Local app settings
- Path Provider - File system access (local only)
- Intl - Date/time formatting and localization
- Timezone - Time zone handling
- Logger - Development logging (disabled in production builds)
- Flutter Markdown - Markdown rendering
- Flutter SVG - SVG image rendering
- Image - Image processing (local only)
- Connectivity Plus - Checks internet connection status (no data transmitted)
Permissions
Android Permissions
- INTERNET - Required for:
- Google Sign-In authentication
- Firestore data synchronization
- AI assistant feature
- Font downloads
- Firebase Cloud Messaging
iOS Permissions
(To be added when iOS version is available)
Data Security
Security Measures
- Authentication Security:
- Industry-standard OAuth 2.0 via Google Sign-In
- No passwords stored in the app
- Secure token-based authentication
- Local Storage Security:
- SQLite database in app-private directory
- Protected by Android File-Based Encryption (FBE)
- Minimum Android 7.0 (API 24) ensures automatic encryption at rest
- Cloud Storage Security:
- Firebase Firestore security rules enforce strict access control
- Only authenticated users can access their own data
- Data encrypted in transit (TLS/HTTPS)
- Data encrypted at rest (Google Cloud Platform encryption)
- Network Security:
- All network requests use HTTPS/TLS encryption
- Certificate pinning for critical connections
- Secure API endpoints
- Single Device Lock:
- Prevents simultaneous access from multiple devices
- Reduces risk of unauthorized access
- Automatic FCM token revocation on device change
- Privacy by Design:
- No analytics or tracking
- No advertisements
- No data sharing with third parties
- Minimal data collection (only what's necessary)
Technical Security Details
- Minimum Android Version: 7.0 (API 24) - ensures File-Based Encryption
- Local Database: SQLite stored in
/data/data/com.dorossi.teacher/ - Cloud Database: Firestore in
europe-southwest1 region - Platform Encryption: Automatic encryption at rest via Android FBE and GCP encryption
- Network Security: HTTPS/TLS 1.2+ for all network requests
Data Synchronization
How Synchronization Works
1. Real-Time Sync:
- When you're online, changes sync automatically to Firestore
- Updates happen in real-time when the app is in foreground or background
- Bi-directional sync: local ↔ cloud
2. Offline Mode:
- Full app functionality works offline
- Changes are queued locally
- Automatic sync when connection is restored
3. Sync Retry Mechanism:
- If synchronization fails, the app automatically retries
- Queued changes persist until successfully synced
- No data loss during temporary connection issues
4. Data Export (Automatic):
- All data automatically syncs to Firestore when online
- Works in foreground and background
- No manual export needed
5. Data Recovery:
- Sign in on a new device to download your data
- All groups, students, sessions, and payments are restored
- Seamless data migration between devices
Network Communication
The app makes network requests in these specific cases:
1. Authentication (Required)
- Service: Firebase Authentication (Google Sign-In)
- Purpose: User login and account management
- Data Transmitted: Email, name, Google user ID
- Frequency: On sign-in and token refresh
2. Data Synchronization (Required)
- Service: Firebase Firestore
- Purpose: Backup and sync teaching data
- Data Transmitted: All teaching data (students, groups, sessions, payments)
- Frequency: Real-time when online, retry on failure
- Location: europe-southwest1 (Europe)
3. Device Management (Required)
- Service: Firebase Cloud Messaging (FCM)
- Purpose: Single-device lock and device registration
- Data Transmitted: FCM device tokens
- Frequency: On app start and device change
4. AI Assistant (Optional)
- Service: Dorossi backend → Google Gemini API
- Purpose: Answer questions about the app
- Data Transmitted: Your questions and app context only
- Data NOT Transmitted: Student names, payment amounts, personal information
- Server: https://dorossi-backend-teacher.azurewebsites.net
- Frequency: Only when you use the AI assistant
- Completely Optional: Can be avoided entirely
5. Font Downloads (Occasional)
- Service: Google Fonts CDN
- Purpose: Download fonts for app display
- Data Transmitted: Font file requests only
- Frequency: Once, then cached locally
- No Personal Data: No personal information transmitted
Important: Your teaching data (students, groups, sessions, payments) is synchronized to Firestore for backup and recovery purposes.
Data Sharing
What We Share
We do NOT share your personal data with any third parties for marketing, advertising, or analytics purposes.
External Services That Process Your Data
Your data is processed by the following services solely for app functionality:
1. Google Cloud Platform (Firebase)
- Purpose: Authentication, cloud storage, device management
- Data Processed: Email, name, all teaching data, FCM tokens
- Location: europe-southwest1 (Europe)
- Privacy Policy: https://firebase.google.com/support/privacy
- Role: Data Processor (on behalf of you, the user)
2. Dorossi Backend Server (Our Server)
- Purpose: Routes AI assistant queries to Google Gemini API
- Hosted On: Microsoft Azure
- URL: https://dorossi-backend-teacher.azurewebsites.net
- Data Processed: Only your AI questions and app context
- Data NOT Processed: Student names, payment records, personal information
- Used Only When: You actively use the AI assistant feature
3. Google Gemini AI (Optional)
- Purpose: Powers the AI assistant (Dorossi Agent)
- Data Processed: Only your questions sent through our backend
- No Personal Data: Student/payment data is never transmitted
- Privacy Policy: https://policies.google.com/privacy
- Completely Optional: You can avoid this by not using the AI feature
4. Google Fonts CDN
- Purpose: Download fonts for app display
- Data Processed: Font file requests only
- No Personal Data: No personal information transmitted
- Privacy Policy: https://policies.google.com/privacy
Legal Disclosure
We may disclose your information if required by law, such as:
- To comply with legal obligations
- To protect our rights or safety
- In response to valid legal requests from authorities
Children's Privacy
Dorossi Teacher stores student names for educational management purposes. However:
- We do not knowingly collect personal information from children
- Teachers are responsible for obtaining appropriate consent before entering student information
- Student data is stored locally on the teacher's device and in Firestore (linked to teacher's account)
- Only the teacher can access their students' data
- Student data is not shared with anyone except the teacher who created it
Important for Teachers:
If you teach students under 13 (or relevant age in your jurisdiction), please ensure you have proper consent from parents/guardians before entering student names into the app.
Data Retention and Deletion
How Long We Keep Data
- Active Account:
- Your data is stored indefinitely while your account is active
- Data exists both locally (on device) and in Firestore
- Inactive Account:
- We do not automatically delete data from inactive accounts
- Data remains in Firestore until you request deletion
- Uninstalled App:
- Local data is removed from your device
- Cloud data remains in Firestore (accessible if you reinstall)
How to Delete Your Data
You can delete your data in several ways:
- Delete Individual Items:
- Delete groups, sessions, students, or payments within the app
- Changes sync to Firestore automatically
- Clear Local Data:
- Android: Settings → Apps → Dorossi Teacher → Storage → Clear Data
- iOS: Delete and reinstall the app
- Note: Cloud data in Firestore remains intact
- Delete Cloud Data:
- Currently: Contact support@dorossi.app to request manual deletion
- Future Update: Self-service account deletion will be added
- Complete Account Deletion:
- Contact support@dorossi.app with your registered email
- We will delete:
- Your account from Firebase Authentication
- All your data from Firestore
- All FCM tokens
- Processing Time: Within 30 days of request
Data Deletion Scope
When you delete your account, we permanently remove:
- ✅ Your authentication data (email, name, Google user ID)
- ✅ All teaching data (students, groups, sessions, payments)
- ✅ All settings and preferences
- ✅ All FCM device tokens
- ✅ All backups in Firestore
Your Rights
You have the right to:
- Access Your Data:
- All your data is accessible within the app
- View groups, students, sessions, payments, and settings
- Request a data export by contacting support@dorossi.app
- Rectify Your Data:
- Edit any information within the app
- Changes sync automatically to Firestore
- Delete Your Data:
- Delete individual items or entire groups
- Request complete account deletion (see "Data Retention and Deletion")
- Data Portability:
- Request an export of your data in a machine-readable format
- Contact support@dorossi.app for data export
- Withdraw Consent:
- Stop using optional features (like AI assistant)
- Delete your account to withdraw consent entirely
- Object to Processing:
- Contact support@dorossi.app with concerns
- We will review and respond within 30 days
- Lodge a Complaint:
- You may file a complaint with your local data protection authority
- EU users: Contact your national Data Protection Authority
International Data Transfers
- Primary Storage Location: europe-southwest1 (Europe)
- Google Cloud Platform: May process data in other regions for redundancy
- Adequate Protection: Google Cloud complies with GDPR and provides adequate safeguards
- Data Processing Addendum: https://cloud.google.com/terms/data-processing-addendum
If you're outside Europe, your data may be transferred to and stored in Europe.
Changes to Privacy Policy
We may update this Privacy Policy from time to time. Changes will be communicated through:
- App Update Notes: Changes listed in the update description
- In-App Notifications: For significant changes
- Email Notification: If we have your email on file
- Effective Date Update: The "Last Updated" date at the top
Your Continued Use: By continuing to use Dorossi Teacher after changes take effect, you accept the updated Privacy Policy.
Contact Us
If you have questions, concerns, or requests regarding this Privacy Policy or your data:
Email: support@dorossi.app
Response Time: We aim to respond within 7 business days.
Compliance
This app complies with:
- ✅ GDPR (General Data Protection Regulation) - EU
- ✅ CCPA (California Consumer Privacy Act) - California, USA
- ✅ Google Play Store data safety requirements
- ✅ Apple App Store privacy requirements (when iOS version launches)
- ✅ Firebase terms of service and data processing addendum
Consent
By using Dorossi Teacher, you agree to:
- This Privacy Policy
- Collection and processing of your data as described
- Use of Firebase services for authentication and cloud storage
- Optional use of AI assistant (if you choose to use it)
If you do not agree, please do not create an account or use the app.
Technical Details (for transparency)
Database Schema (Local & Cloud)
The app stores the following data structures locally (SQLite) and in Firestore:
users: Teacher information, language preference, tutorial statusstudents: Student names and creation datesgroups: Group details, schedules, academic informationenrollments: Student-group relationships with join datessessions: Session records with dates, times, attendanceattendance_records: Individual attendance tracking (present/absent)payments: Payment history with amounts, dates, and session coverageimported_sessions: Historical session data (pre-app usage)
Network Communication Summary
| Service | Purpose | Data Transmitted | Frequency |
|---|
| Firebase Auth | Sign-in | Email, name, Google ID | On login, token refresh |
| Firestore | Data sync | All teaching data | Real-time when online |
| FCM | Device lock | Device tokens | On app start, device change |
| Dorossi Backend | AI queries | Questions only | Optional, when using AI |
| Google Fonts | Fonts | Font requests | Once, then cached |
No personal student or payment data is ever transmitted except to Firestore for your own backup.
Last Words
We built Dorossi Teacher with privacy and security as top priorities. Your trust matters to us.
- 🔒 Your data is encrypted in transit and at rest
- 🌍 Stored in Europe (europe-southwest1)
- 🚫 No analytics, no tracking, no ads
- 💚 Minimal data collection - only what's necessary
- 🔐 Single-device lock for extra security
If you notice any discrepancies, have concerns, or need clarification, please contact us at support@dorossi.app. We're here to help!
Thank you for trusting Dorossi Teacher with your educational management needs.
This privacy policy is provided in good faith, and we strive to be transparent about our data practices.