SchoolSchedule for Android: Privacy Policy
Updated 25 October 2026. This notice covers SchoolSchedule for Android (com.schedule.schoolschedule), its optional personal-account and cloud services, and support requests. The website privacy notice applies separately to this product website.
The operator and data controller is Никита Кашлань, an individual in Spain. Postal contact: Avenida Hermanos Maristas, 28, 46013 Valencia, Spain. Email: nikitakoshlan09@gmail.com.
Availability of online services
SchoolSchedule is being prepared for Google Play. The initial internal configuration build has accounts, purchases and cloud synchronization switched off. The online-service sections below apply when those services are enabled in the app and in your country. Publishing this notice does not make an unavailable service available. Child accounts, parental enrollment and child cloud are not offered in this release.
Your local timetable
You can use the free local timetable without an account or internet connection. Lessons, breaks, extra classes, subjects, rooms, teacher entries, selected teacher photos, lesson homework, exams, notes and settings are stored on your device. Widgets read that local data. The local timetable is not uploaded by account creation or cloud synchronization.
Selecting a teacher photo gives the app access to the image you choose, rather than your entire photo library. The app does not request access to device contacts, the device calendar, microphone or location. The Android app does not include advertising, Firebase Analytics or Crashlytics. The Android manifest disables Android automatic app-data backup; copies or exports that you make yourself remain under your control.
Local data remains on each device until you remove it. To remove all local copies on a device, use Android Settings → Apps → SchoolSchedule → Storage → Clear storage. This also removes other local workspaces and settings on that device. Deleting an online account does not itself erase local copies on every device.
Children and the separate adult area
Schoolchildren, including children under 13, can use the free local timetable. Their timetable entries in local mode stay on the device and are not sent to us through schedule sync. They do not create online accounts, make purchases or connect cloud in this release.
The optional account, purchase and personal-cloud route is for adults aged 18 or over in enabled countries. Before sign-in, age and country are entered locally. An incomplete or under-18 result does not open that route. Age is declared by the user; it is not independently verified with identity documents and does not create parental consent.
The adult area has a separate personal workspace, initially empty for that account. The app does not import or automatically copy the local timetable into it. It is for the adult's own planning. Do not enter children's information or unnecessary sensitive information into the adult cloud workspace. Add another person's name or photo only when you have a lawful right to use it.
Free accounts and adult-access checks
Google and email/password accounts are free and do not require Premium. Creating an identity does not authorize timetable upload. Firebase Authentication processes your email address, account identifier, authentication credentials and, for Google sign-in, provider-returned sign-in information. Verification and password-reset emails are sent when you use those functions. Google also processes information for its own account and security services under its policies.
An adult who signs in and verifies their email can submit their declared birth date and country to the app's backend for an access check. The full birth date is used for that check and is not saved to the application cloud database or written to application logs. The backend keeps the account identifier, declared-adult result, country, notice version, check/expiry times and limited attempt/security records. An underage declaration submitted by an authenticated account blocks that online route for review; changing the date repeatedly does not reset the hold.
Each app launch starts in the local area. Opening the adult workspace requires a fresh permitted sign-in. Leaving or locking that area stops its cloud listeners and signs out; an in-progress external Google sign-in or Play payment is handled when that flow returns. A previous identity or purchase does not connect the local timetable to cloud.
Optional three-day Premium trial
When the trial service is enabled, an eligible adult with a verified account, permitted country and current server-confirmed adult access can explicitly request a free Premium trial. Creating or checking an account does not start it. The trial lasts exactly 72 hours from the server-recorded start and then ends. It does not request a payment card, charge money, renew automatically or create a Google Play subscription. A separate paid purchase requires your choice in Google Play. An active paid entitlement takes priority over the trial.
To grant the trial once per verified sign-in identity and prevent a new account with the same verified email or linked provider identity from restarting it, the backend keeps an account trial record with its start and expiry. A separate anti-repeat ledger contains one-way hashes derived from the Firebase account identifier, normalized verified email and linked provider identifier/identity, with the original start and expiry. It stores those pseudonymous hashes and timing records rather than the raw email or provider identity; it contains no birth date, timetable or purchase token. Verified sign-in information is not proof of a person's real-world identity. A hash is not anonymous data. These limited anti-repeat records survive deletion of the app account and currently have no automatic expiry. They support operating the requested trial and the legitimate interest in preventing repeated trial abuse, subject to your rights described below.
Repeating a start request for the same account returns its original trial window instead of extending it. A paid entitlement does not move the trial's end: if paid access ends first, only the unexpired remainder of the original trial can apply. A new account using an already-claimed verified identity is not granted a new trial.
At expiry, trial-only Premium access and cloud synchronization stop unless an active paid entitlement applies. The free local timetable continues to work, and expiry does not itself delete a saved cloud copy. The trial does not upload the local timetable or permit child cloud. Ending this free trial does not cancel a separately purchased Google Play subscription.
Optional Premium synchronization
Cloud sync requires an unlocked adult account, current server-confirmed adult access and active Premium. You enable it in Settings → Account and sync and choose the adult workspace's device or cloud copy. The snapshot can include the adult workspace's timetable, subjects, rooms, teacher names and chosen photos, homework and completion states, exams, notes, school/class details and settings. There is no per-field exclusion: do not add information you do not want included in that workspace's sync.
The purpose is to synchronize supported Android devices using the same personal account. Widgets continue to use the separate local timetable. Conflicting copies require your choice. Pausing sync, signing out, leaving the adult area or losing Premium stops synchronization but does not automatically delete an existing cloud copy.
Cloud Firestore is configured in the europe-west1 region. Data uses encrypted transport and provider storage protections. Sync is not end-to-end encrypted: authorized backend services and administrators can process stored snapshots to operate and secure the service. Other app users are restricted from your private snapshot by access rules.
Purchases, providers and legal bases
Google Play displays and processes subscription payments. SchoolSchedule does not receive your card number or payment password. The backend processes purchase tokens, product, subscription status and expiry, verification records and a hashed account association to grant Premium, restore purchases and prevent receipt replay. Raw purchase tokens are restricted to server-side records. Google retains its own payment records under its policies.
Google/Firebase provide authentication, database storage and backend infrastructure. Those services also process connection and security information such as IP addresses, SDK/platform information and installation or transport identifiers. Support messages are processed in the operator's email mailbox. Providers' own account, billing and security processing may be subject to their separate privacy notices.
Where the GDPR applies, processing needed to create and operate your requested adult account, subscription and cloud service is based on performance of a contract or steps you request before a contract. Necessary security, abuse prevention and support administration rely on legitimate interests in protecting accounts, purchases and the service, balanced against your rights. Processing required by applicable law relies on that legal obligation. Accepting this notice is not blanket consent to unrelated processing; we do not sell your timetable or use it for advertising.
For covered customer data, Google processes data under the applicable Google/Firebase service terms and Google Cloud Data Processing Addendum. Google's service providers may process information outside the EEA. An EU database region does not mean all authentication, support or infrastructure processing stays in that region. Applicable international transfers use the safeguards in those terms, such as an adequacy decision or standard contractual clauses, as appropriate. Contact us for information about the safeguards applicable to your data. Google Privacy Policy.
Retention and account deletion
Local copies remain until removed on the device. Account and cloud records have no general inactivity expiry; Premium expiry does not erase them. You can delete your own account for free in Settings → Account and sync → Delete account, or request deletion through the external deletion page without reinstalling the app. Recent sign-in is required for an in-app deletion; Premium and verified email are not prerequisites for deleting your own account. A failed request is reported as a failure, rather than claiming the account or data has been erased.
Successful account deletion removes the Firebase login, private cloud snapshot and related application account/purchase records, including the account's trial record, raw server purchase tokens and adult-access/attempt records. A minimal former-account deletion marker and one-way account/purchase hashes remain to block old credentials and purchase replay. If you requested a trial, the separate limited anti-repeat ledger described above also remains so deleting and recreating an account does not reset eligibility. These records are pseudonymous, not anonymous, and currently have no automatic expiry. Their purposes are security and preventing repeated trial abuse; they do not retain your timetable content. We consider a request concerning retained records against those purposes and any applicable legal obligations.
Operational and security logs may remain under the hosting provider's configured retention and legal requirements after application records are deleted. We do not intentionally put full birth dates, timetable snapshots, passwords or raw purchase tokens into application logs. Provider backups, transaction records or independent account records can have their own retention. Deletion of application records does not immediately erase every provider backup or independent record.
Support correspondence remains in the operator's mailbox until it is deleted; there is currently no automatic mailbox deletion schedule. We use it to handle the request, establish what action was taken, and resolve related security, legal or service disputes. You can request erasure of correspondence that is no longer needed. Please include only information needed for your request.
If an account has records from a separately enabled earlier family service, dependent cleanup may be reported as pending instead of being described as complete. This release does not enroll new child profiles. Contact support about any such previous data without sending unnecessary information about a child.
Deleting an account or uninstalling the app does not cancel a Google Play subscription. Cancel renewal separately in Google Play subscriptions. A deleted account's purchase is not automatically transferred to a new app account.
Your rights and changes to this notice
Subject to applicable law, you can request access, correction, deletion, restriction or portability of your personal data, and object to processing based on legitimate interests. Where processing relies on consent, you can withdraw it without affecting earlier lawful processing. Contact nikitakoshlan09@gmail.com or use the postal address above. We may ask for proportionate information to confirm ownership; do not send passwords, verification codes or full purchase tokens.
For GDPR rights requests, we respond without undue delay and normally within one month of receipt. If complexity or the number of requests requires an extension of up to two further months, we explain it within the first month. This is a response rule, not a promise that every provider retention period ends within one month. If we cannot act on a request, we explain why and the available complaint or judicial remedies. You may complain to the Spanish Data Protection Agency (AEPD) or another competent supervisory authority.
We update the date and publish the current version here when this notice changes. Where required, a material change is also brought to your attention in the app or by an account email before it applies, with a new choice or consent where the law requires it. Any future child-cloud service requires a separate notice and appropriate access/consent process; this notice does not authorize it.