Chính sách quyền riêng tư
Chính sách này áp dụng cho ứng dụng Chitipay và website Chitipay (bao gồm công cụ chia tiền trên web). Chúng tôi cố gắng thu thập càng ít dữ liệu càng tốt và nói rõ dữ liệu được dùng vào việc gì.
Cập nhật lần cuối: 23/09/2026
1. Chitipay là gì
Chitipay là ứng dụng chia tiền nhóm hoạt động offline-first. Dữ liệu cốt lõi (nhóm, thành viên, khoản chi, số dư, kế hoạch thanh toán) được lưu trong cơ sở dữ liệu SQLite ngay trên thiết bị của bạn. App dùng được hoàn toàn khi không có mạng.
2. Dữ liệu chúng tôi thu thập (app)
- Tên hiển thị (tùy chọn, do bạn nhập) — hiển thị trong nhóm chi tiêu của bạn.
- Địa chỉ email hoặc tài khoản Google (chỉ khi bạn bật sao lưu / liên kết tài khoản) — đăng nhập (mã gửi qua email hoặc Google) để sao lưu và khôi phục dữ liệu trên thiết bị khác.
- Dữ liệu nhóm/khoản chi/thanh toán do bạn tạo — là tính năng cốt lõi của app; được đồng bộ lên cloud khi bạn bật sao lưu.
- Thông tin tài khoản nhận tiền (mã/tên ngân hàng, số tài khoản, tên chủ tài khoản, nội dung QR) do bạn nhập — dùng để hiển thị QR/số tài khoản cho thành viên chuyển tiền cho bạn; được đồng bộ lên cloud khi bạn bật sao lưu. Khi luồng thanh toán trực tiếp hoặc gom tiền đang hoạt động, các thành viên đang hoạt động trong cùng nhóm có thể đọc tài khoản nhận tiền được dùng bởi thành viên khác trong nhóm; người ngoài nhóm không đọc được. Khi kích hoạt kế hoạch thanh toán, bản chụp thông tin nhận tiền của từng giao dịch chỉ hai bên của giao dịch đó (người trả và người nhận) đọc được.
- Gợi ý danh mục khoản chi. Khi bạn đã đăng nhập và nhập tiêu đề cho một khoản chi, tiêu đề đó có thể được gửi đi để gợi ý sẵn một danh mục (ăn uống, đi lại, mua sắm...). Việc gửi chỉ xảy ra khi bạn rời khỏi ô tiêu đề, khi tiêu đề dài từ 3 ký tự trở lên, và khi bạn chưa tự chọn danh mục. Chỉ tiêu đề rời khỏi thiết bị: không có số tiền, tên nhóm, tên thành viên, ảnh hay ghi âm. Bạn luôn có thể đổi lại danh mục bằng một chạm. Nếu bạn chưa đăng nhập thì không có gì được gửi đi.
- Ảnh bạn chủ động đính kèm — ảnh hoá đơn gắn vào khoản chi, ảnh đại diện và ảnh bìa nhóm. Khi bạn bật sao lưu, ảnh được thu nhỏ trên máy rồi tải lên Supabase Storage vào kho riêng tư (không public); mỗi lần xem đều đi qua một liên kết có chữ ký, hết hạn theo thời gian, và chỉ cấp cho người có quyền đọc dữ liệu tương ứng.
Chitipay v1 không thu thập: vị trí, danh bạ, ảnh trong thư viện của bạn (ngoài đúng những ảnh bạn tự chọn đính kèm ở trên), ghi âm giọng nói, dữ liệu quảng cáo hay dữ liệu phân tích hành vi trong app (đo lường duy nhất trong app là dữ liệu chẩn đoán sự cố và hiệu năng cùng bản ghi ẩn danh về chất lượng gợi ý danh mục, cả hai mô tả ở mục 4), và không có quảng cáo.
3. Lưu trữ và đồng bộ
- Nguồn dữ liệu chính là SQLite trên thiết bị. App dùng được hoàn toàn offline ngay từ lần mở đầu tiên, không cần tài khoản; cài đặt mới không tạo bất kỳ tài khoản nào (kể cả tài khoản ẩn danh) cho tới khi bạn chủ động bật sao lưu.
- Tài khoản (email hoặc Google) chỉ được tạo khi bạn chọn “Bảo vệ dữ liệu” để bật sao lưu/khôi phục. Khi đó dữ liệu nhóm được sao lưu/đồng bộ qua Supabase (Postgres, lưu tại hạ tầng của Supabase). Truy cập dữ liệu được giới hạn bằng Row Level Security: chỉ thành viên nhóm mới đọc được dữ liệu nhóm.
- Đăng nhập được quản lý bởi Supabase Auth. Nếu bạn chọn đăng nhập bằng Google, Google cung cấp ID token cho luồng xác thực đó. Chúng tôi không bán email hoặc danh tính đăng nhập của bạn.
4. Chia sẻ dữ liệu
Dữ liệu nhóm hiển thị cho các thành viên khác trong cùng nhóm (tên hiển thị, khoản chi, số dư, trạng thái thanh toán). Khi luồng thanh toán trực tiếp hoặc gom tiền đang hoạt động, thông tin tài khoản nhận tiền có thể được các thành viên đang hoạt động trong cùng nhóm đọc. Khi kích hoạt kế hoạch thanh toán, bản chụp thông tin nhận tiền của từng giao dịch chỉ người trả và người nhận của giao dịch đó đọc được.
Gợi ý danh mục tự động. Tiêu đề khoản chi được gửi qua một Edge Function của Supabase tới Vercel AI Gateway, và từ đó tới nhà cung cấp phân loại TypeSafe. Để đo chất lượng gợi ý, máy chủ của chúng tôi chỉ lưu lại độ dài tiêu đề và việc tiêu đề có dấu hay không, cùng danh mục được gợi ý, mức độ chắc chắn và việc bạn có giữ danh mục đó không: nội dung tiêu đề không được lưu và bản ghi đo lường đó không gắn với danh tính của bạn. Yêu cầu đi kèm phiên đăng nhập của bạn để máy chủ áp giới hạn số lần mỗi giờ cho từng tài khoản; bộ đếm này giữ mã tài khoản của bạn tối đa hai ngày. Các tính năng AI khác — nhập khoản chi bằng AI, quét hoá đơn, đọc bằng giọng nói và nhắc nợ AI — không được bật trong bản v1 dành cho store; ảnh hoá đơn không được gửi tới nhà cung cấp AI nào và app không ghi âm.
Báo cáo sự cố. App gửi báo cáo lỗi và một phần nhỏ dữ liệu hiệu năng tới Sentry để chúng tôi sửa lỗi làm app văng hoặc chậm. Báo cáo gồm loại lỗi và thông điệp lỗi, ngăn xếp lỗi, phiên bản app, loại thiết bị và phiên bản hệ điều hành, cùng chuỗi sự kiện gần nhất trong app như thao tác chạm, yêu cầu mạng và dòng log. Chúng tôi tắt tuỳ chọn tự đính kèm thông tin định danh cá nhân của Sentry, và không chủ động đưa nội dung nhóm, khoản chi hay thông tin tài khoản nhận tiền của bạn vào báo cáo; thông điệp lỗi hoặc dòng log gần nhất đôi khi có thể chứa chữ bạn đã nhập.
Chúng tôi không bán dữ liệu của bạn. Chúng tôi chia sẻ dữ liệu với các nhà cung cấp dịch vụ được nêu dưới đây khi dịch vụ tương ứng được bật, và với thành viên khác trong nhóm khi app hiển thị dữ liệu nhóm. Thông báo đẩy là tùy chọn và có thể tắt trên thiết bị của bạn.
Nhà cung cấp dịch vụ. Để minh bạch, đây là các đơn vị xử lý dữ liệu theo vai trò mô tả trong chính sách này: lưu trữ, xác thực và đồng bộ cloud — Supabase; xác thực bằng ID token Google — Google, chỉ khi bạn chọn đăng nhập Google; gửi email chứa mã đăng nhập — Resend, nhận địa chỉ email của bạn và mã; báo cáo sự cố — Sentry; cổng trung gian và phân loại danh mục khoản chi — Vercel AI Gateway và TypeSafe; gửi thông báo đẩy — Expo Push Service, chuyển thông báo qua Apple Push Notification service hoặc Firebase Cloud Messaging, nhận push token của thiết bị và tiêu đề/nội dung thông báo, có thể gồm tên nhóm, tên thành viên, tiêu đề khoản chi hoặc số tiền khi bật thông báo chi tiết; đo hiệu năng và phân tích website (không cookie) — Vercel và PostHog. Danh sách này được cập nhật khi có thay đổi.
5. Analytics trên website
Website Chitipay dùng PostHog ở chế độ không cookie (cookieless): không tạo hồ sơ cá nhân, không dùng cookie quảng cáo và không ghi lại phiên (session replay). Chúng tôi cũng dùng Vercel Speed Insights để đo hiệu năng trang. Vì không đặt cookie phục vụ theo dõi hay quảng cáo, website không cần banner xin chấp thuận cookie.
6. Email đăng ký beta
Nếu bạn đăng ký nhận tin về bản beta, email của bạn được lưu trong một dự án Supabase riêng và chỉ dùng để thông báo về chương trình beta. Bạn có thể yêu cầu xóa email này bất cứ lúc nào.
7. Dữ liệu công cụ tính trên web
Khi bạn dùng công cụ chia tiền trên web, danh sách thành viên và các khoản chi chỉ nằm trong trình duyệt của bạn (localStorage) và không bao giờ được gửi tới máy chủ nào. Xóa dữ liệu trình duyệt hoặc bấm “Tính lại” sẽ xóa toàn bộ dữ liệu này.
8. Xóa tài khoản và dữ liệu
Trong app, bạn có thể tự xóa tài khoản tại Hồ sơ cá nhân → Xóa tài khoản:
- Nhóm chỉ có mình bạn: bị xóa vĩnh viễn khỏi cloud.
- Nhóm chung: quyền sở hữu chuyển cho thành viên khác; lịch sử chi tiêu được giữ cho các thành viên còn lại, tên hiển thị của bạn được giữ nhưng không còn gắn với tài khoản nào.
- Tài khoản đăng nhập (email) bị xóa khỏi hệ thống xác thực.
- Toàn bộ dữ liệu trên thiết bị bị xóa.
Nếu bạn chưa liên kết tài khoản (chỉ dùng offline trên máy), tùy chọn “Xóa dữ liệu trên thiết bị” xóa toàn bộ dữ liệu local với hiệu lực tương tự. Để yêu cầu xóa email beta hoặc bất kỳ dữ liệu nào khác, hãy gửi email tới realdoan.dev@gmail.com.
9. Liên hệ
Mọi câu hỏi về quyền riêng tư, xin liên hệ realdoan.dev@gmail.com.
Phần chính sách app được đồng bộ từ tài liệu của app — giữ cho khớp.