Chính sách quyền riêng tư
Ngày hiệu lực / Effective date: 2026-10-21 — Liên hệ / Contact: contact@thetwentylabs.com
Foxy Junior là ứng dụng học tiếng Anh qua trò chơi phiêu lưu cho trẻ 6–8 tuổi. Ứng dụng được thiết kế cho trẻ em, vì vậy quyền riêng tư của trẻ là ràng buộc thiết kế cao nhất, không phải một tuỳ chọn.
Chúng tôi KHÔNG làm gì
- Không bao giờ giữ lại giọng nói của trẻ. Khi trẻ luyện nói, âm thanh được gửi tới dịch vụ chấm phát âm (Microsoft Azure Speech) để chấm điểm theo thời gian thực, và không được giữ lại ở bất kỳ đâu. Trên máy chủ của chúng tôi, âm thanh không bao giờ được ghi xuống đĩa. Trên thiết bị, nó chỉ tồn tại trong chốc lát dưới dạng một file tạm duy nhất — xoá ngay khi có điểm, và xoá cả khi lượt nói bị gián đoạn giữa chừng.
- Không lưu nội dung trẻ nói. Văn bản mà máy nhận dạng được từ giọng trẻ chỉ tồn tại trên thiết bị để hiển thị phản hồi, và không bao giờ được gửi lên máy chủ. Máy chủ chỉ nhận điểm số (con số) và trạng thái từng từ bé đã luyện (đang tập / đã nói được, kèm ngày).
- Không thu thập thông tin cá nhân của trẻ: không tên thật (tên bé gõ lúc bắt đầu chỉ nằm trên thiết bị), không ảnh, không email, không vị trí, không danh bạ. Email chỉ có khi một phụ huynh tự đăng nhập (xem mục Tài khoản phụ huynh).
- Không quảng cáo, không theo dõi (tracking) quảng cáo, không bán dữ liệu.
- Không có liên kết ra ngoài trong khu vực của trẻ; mọi liên kết ngoài và cài đặt nằm sau cổng phụ huynh (parental gate).
Dữ liệu chúng tôi xử lý
| Dữ liệu | Mục đích | Lưu ở đâu |
|---|---|---|
| Tiến trình chơi: nhiệm vụ đã xong, coin kiếm và tiêu, XP, sao, vật phẩm đã mua, bộ đếm nhiệm vụ; avatar bé chọn (số 1–4, kèm thời điểm chọn); cấp cao nhất đã đạt; các từ bé đã luyện hoặc đã nói được — mỗi từ chỉ gồm mã từ, trạng thái (đang tập / đã nói được), ngày, và cờ cho biết lượt nói đó đã được Azure chấm hay chưa. Không kèm audio, không kèm văn bản máy nhận dạng, không kèm điểm | Lưu tiến trình và hiện lại trên máy khác | Trên thiết bị; đồng bộ lên máy chủ theo mã thiết bị ngẫu nhiên (hoặc theo tài khoản nếu phụ huynh đăng nhập) |
| Tài khoản phụ huynh (chỉ khi người lớn tự đăng nhập bằng Apple hoặc Google): mã định danh tài khoản (user id), email nếu bạn chọn chia sẻ, và nhà cung cấp đăng nhập (Apple hoặc Google) | Đăng nhập và đồng bộ tiến trình giữa các máy | Supabase (Auth) và máy chủ của chúng tôi; không có thông tin nào về trẻ |
| Điểm phát âm: các số điểm, thời lượng lượt nói, cờ qua/chưa qua và mã bước bài học cùng câu mẫu (nội dung của chúng tôi) — không bao giờ kèm audio hay lời bé nói | Theo dõi chất lượng chấm điểm | Máy chủ; giữ cho tới khi có yêu cầu xoá (hiện chưa có thời hạn tự xoá riêng cho dòng điểm) |
| Sự kiện học tập ẩn danh (vd. "hoàn thành nhiệm vụ") | Cải thiện ứng dụng | Máy chủ, gắn với mã thiết bị ngẫu nhiên; giữ cho tới khi có yêu cầu xoá (email kèm mã thiết bị, hoặc xoá tài khoản đối với tiến trình gắn với tài khoản) |
| Mã thiết bị ngẫu nhiên | Phân biệt thiết bị; tự nó không cho biết bé là ai, nhưng được gắn với tài khoản khi phụ huynh đăng nhập | Thiết bị + máy chủ |
| Phiên bản ứng dụng và ngôn ngữ giao diện | Chọn đúng thông báo trong ứng dụng (vd. "có đảo mới") để hiển thị | Gửi kèm yêu cầu tới máy chủ, không lưu lại |
| Sự kiện sử dụng ẩn danh (cùng loại với dòng sự kiện học tập ở trên) | Thống kê tổng hợp để cải thiện ứng dụng | PostHog (máy chủ tại EU), gắn với mã thiết bị ngẫu nhiên; mỗi sự kiện kèm phiên bản ứng dụng, hệ điều hành (iOS hoặc Android) và một mã phiên ngẫu nhiên, đổi sau 30 phút không hoạt động và không gắn với thông tin nào khác; không lưu IP, không định vị, không tạo hồ sơ người dùng |
| Báo cáo lỗi kỹ thuật từ mã của ứng dụng (diễn biến lỗi, mã bài và bước đang học, phiên bản ứng dụng, mẫu máy, phiên bản hệ điều hành) và số liệu hiệu năng lấy mẫu | Tìm và sửa lỗi, theo dõi độ mượt | Sentry; không IP, không ảnh màn hình, không ghi lại màn hình, không định danh người dùng, không gửi phiên sử dụng, không có tên hay lời bé nói |
Mã thiết bị do ứng dụng tự sinh ngẫu nhiên và không chứa thông tin về bé hay gia đình. Khi một phụ huynh đăng nhập, tiến trình, điểm phát âm và sự kiện sử dụng của thiết bị đó được gắn với tài khoản của phụ huynh (xem mục Tài khoản phụ huynh).
Quyền truy cập hệ thống
- Micro: chỉ dùng khi trẻ bấm giữ nút nói để luyện phát âm. Âm thanh được chấm điểm theo thời gian thực và không được giữ lại sau khi chấm xong.
- Thông báo: chỉ xin quyền khi phụ huynh bật "nhắc học mỗi ngày" trong khu vực phụ huynh (mặc định tắt). Lời nhắc được hẹn giờ ngay trên thiết bị; không có dịch vụ gửi thông báo từ máy chủ, và giờ nhắc cùng nội dung lời nhắc không rời khỏi thiết bị. Ứng dụng chỉ ghi nhận việc lời nhắc được bật hay được mở, như một sự kiện học tập ẩn danh trong bảng trên.
Bên xử lý thay mặt chúng tôi
- Microsoft Azure Speech — nhận âm thanh của lượt nói để chấm điểm phát âm theo thời gian thực (audio không được lưu).
- Supabase (cơ sở dữ liệu) và Railway (máy chủ của chúng tôi) — lưu trữ chỉ các dữ liệu trong bảng trên. Máy chủ thấy địa chỉ IP của kết nối để giới hạn tần suất yêu cầu (chỉ trong bộ nhớ, không lưu cùng tiến trình, điểm hay sự kiện); nhật ký kết nối của nền tảng lưu trữ có thể ghi IP.
- Supabase Auth — chỉ khi phụ huynh đăng nhập: lưu email và mã tài khoản.
- Sentry — báo lỗi kỹ thuật của ứng dụng và máy chủ. Báo cáo không kèm IP, ảnh màn hình hay định danh người dùng; báo cáo từ máy chủ được lọc bỏ toàn bộ nội dung request trước khi gửi.
- PostHog (máy chủ tại EU) — thống kê sử dụng tổng hợp. Chỉ nhận các sự kiện ẩn danh nêu trong bảng trên, gắn với mã thiết bị ngẫu nhiên; không nhận tên, giọng nói hay câu trẻ nói, không lưu IP, không định vị, không tạo hồ sơ người dùng, không dùng cho quảng cáo.
- Cloudflare Turnstile — CHỈ trên website, cho bước xác nhận "không phải máy" ở ô đăng ký sớm. Không có mặt trong ứng dụng và không xử lý dữ liệu nào của trẻ.
Tài khoản phụ huynh (tuỳ chọn)
Trẻ chơi không cần tài khoản, và không bao giờ bị hỏi đăng nhập. Trong khu vực phụ huynh (sau mã PIN), người lớn có thể tạo tài khoản bằng Sign in with Apple hoặc Google để giữ tiến trình khi đổi máy.
- Chúng tôi nhận từ Apple/Google một mã định danh tài khoản (user id) và email (nếu bạn chọn chia sẻ; Apple cho phép ẩn email). Supabase Auth lưu các thông tin này thay mặt chúng tôi, cùng với nhà cung cấp bạn đã dùng để đăng nhập. Không có thông tin nào về trẻ.
- Khi bạn đăng nhập, tiến trình chơi của thiết bị (gồm avatar, cấp và các từ đã nói như trong bảng trên), điểm phát âm và sự kiện sử dụng đã có của thiết bị đó được gắn với tài khoản để đồng bộ giữa các máy.
- Thông tin tài khoản chỉ dùng để đăng nhập và đồng bộ; không dùng cho quảng cáo, không bán, không chia sẻ.
- Xoá tài khoản ngay trong ứng dụng: khu vực phụ huynh → Tài khoản phụ huynh → Xoá tài khoản. Việc này xoá vĩnh viễn tài khoản, email (người dùng Supabase) và tiến trình đã gắn với tài khoản trên máy chủ. Bản ghi thiết bị, các dòng điểm phát âm và sự kiện sử dụng được giữ lại nhưng không còn gắn với tài khoản. Ứng dụng vẫn chơi tiếp như khách, và tiến trình của chính thiết bị tiếp tục đồng bộ theo mã thiết bị. Bạn cũng có thể yêu cầu xoá qua email ở đầu trang.
- Muốn xoá hết: trong khu vực phụ huynh, chép Mã thiết bị và gửi email cho chúng tôi để xoá dữ liệu của thiết bị đó trên máy chủ; sau khi đã gửi yêu cầu, bấm "Xoá dữ liệu & chơi lại" trên máy để xoá dữ liệu trên máy và đăng xuất.
Đăng ký sớm trên website (không thuộc ứng dụng)
Trên trang web giới thiệu của chúng tôi có một ô để người trưởng thành — phụ huynh/người giám hộ, hoặc người phụ trách một trung tâm tiếng Anh — để lại thông tin liên hệ và được báo khi ứng dụng ra mắt. Ô này không có trong ứng dụng; ứng dụng không hỏi, không đọc và không gửi email hay số điện thoại đi đâu.
- Chúng tôi lưu địa chỉ email và/hoặc số điện thoại — tuỳ bạn để lại thứ nào — cùng với việc bạn chọn "phụ huynh" hay "trung tâm", ngôn ngữ trang lúc bạn đăng ký, và thời điểm đăng ký. Không có trường tên, và không có trường nào hỏi về trẻ.
- Là phụ huynh, bạn chỉ cần để lại MỘT trong hai (email hoặc số điện thoại) — không bắt buộc cho cả hai. Là trung tâm, chúng tôi cần email để trao đổi hợp tác; số điện thoại vẫn không bắt buộc.
- Ô này dành cho người trưởng thành. Chúng tôi không cố ý thu thập email hay số điện thoại của trẻ em; nếu bạn cho rằng con mình đã để lại thông tin, hãy báo cho chúng tôi theo địa chỉ liên hệ ở đầu trang và chúng tôi sẽ xoá.
- Thông tin chỉ dùng để liên hệ về ứng dụng — thông báo ra mắt với phụ huynh, và trao đổi hợp tác với trung tâm. Chúng tôi không bán, không chia sẻ cho bên thứ ba, và không dùng để quảng cáo nhắm đối tượng.
- Thông tin được lưu trên máy chủ của chính chúng tôi (Supabase / Railway), giữ cho tới khi bạn yêu cầu xoá.
- Ô này có một bước xác nhận "không phải máy" do Cloudflare Turnstile thực hiện, để chặn đăng ký tự động. Bước đó xử lý địa chỉ IP và tín hiệu kỹ thuật của trình duyệt bạn đang dùng; chúng tôi chọn Turnstile vì nó không dùng cookie theo dõi và không thuộc hệ thống quảng cáo nào.
- Rút lại bất cứ lúc nào: gửi một dòng tới địa chỉ liên hệ ở đầu trang, chúng tôi xoá thông tin của bạn khỏi danh sách.
Quyền của phụ huynh
Phụ huynh có thể yêu cầu xem hoặc xoá toàn bộ dữ liệu gắn với thiết bị của con mình bằng cách email tới địa chỉ liên hệ ở đầu trang, kèm Mã thiết bị (xem trong Cài đặt → khu vực phụ huynh → Mã thiết bị, có nút sao chép), hoặc email từ chính tài khoản phụ huynh. "Xoá dữ liệu & chơi lại" tạo một mã thiết bị mới, nên hãy gửi yêu cầu TRƯỚC khi bấm nút đó. Xoá ứng dụng cũng xoá toàn bộ dữ liệu trên thiết bị.
Email đăng ký nhận tin ở trên không gắn với dữ liệu chơi của trẻ: chúng tôi cố ý không lưu bất kỳ mối liên hệ nào giữa hai thứ đó.