Trust & Security

Every claim on this page maps to a control that ships in the product — not to a policy PDF. We handle children's data, so the bar is: provable, on by default, and visible to the school.

Encryption

Each school's data is isolated

Every record belongs to exactly one school, and every server request re-checks that the signed-in user's school matches the record — on reads, writes, exports, and live-map subscriptions alike. Exports are scoped deny-by-default: a role only receives the columns and rows its job needs.

We attack this ourselves: an adversarial test suite that tries cross-school reads, stale permissions, and role escalation runs on every change, and the build fails if any of it gets through.

Account security

Data has a defined lifespan

Trip and location history is deleted automatically after its retention window (default: two school years, 730 days). Audit logs are kept longer (default: three years) because they answer "who did what". The sweep is a scheduled job, not a promise.

Under Egypt's Personal Data Protection Law (PDPL), a guardian can request a full export of their data, or erasure — we anonymize personal data within the 90-day legal window, and the erasure survives backups and restores.

Who saw my child's data?

Every time a staff member opens a child's full record or exports personal data, the access is recorded server-side in a sensitive-access register the school can review and show to a parent or regulator. Unusual patterns — one account opening many children's records in a day — are flagged for review.

Our standing commitments

Sub-processors

We keep the list short, and services stay disabled until a school turns them on:

ServicePurposeWhen active
CloudflareDNS, HTTPS termination and content delivery for this site and the APIAlways
RailwayRuns the application serversAlways
NeonHosts the database where records are storedAlways
ExpoPush-notification delivery to phonesAlways
ResendSending email — password resets, invitations, receiptsOnly if the school enables email
Paymob / FawryCard and kiosk fee paymentsOnly if the school enables online payments
SMS / WhatsApp providerText-message delivery of alerts and codesOnly if the school enables that channel
Grafana Cloud (Loki)Stores operational warning and error logs so faults can be investigatedOnly if log shipping is configured
Google SheetsReads a school-owned sheet to import the student rosterOnly if the school enables roster import
GitHubStores the nightly encrypted database backup for 7 daysAlways
CARTOSupplies the map background; receives the device’s IP address and the map area shownAlways, unless the school sets its own map tile server
Google MapsOpens driving directions for the driver; receives the next pickup point’s coordinatesOnly when a driver taps “navigate to next stop”

Talk to us

Data-protection questions, guardian export/erasure requests, or a security report: reach us through the contact page — security reports get a reply within 72 hours.