Chính sách quyền riêng tư
Cập nhật: 11/10/2026 · Bên kiểm soát dữ liệu: FightTech · Liên hệ: [EMAIL HỖ TRỢ]
Chính sách này áp dụng cho: ứng dụng ProofCam trên Android và iOS/iPadOS, ứng dụng đồng hành trên Wear OS và Apple Watch, trang web proofcam.web.app (công cụ xác thực ảnh, trang chia sẻ, trang bằng chứng giao hàng) và cổng web Teamspace (/app). Chúng tôi chỉ xử lý dữ liệu cần cho tính năng bạn dùng; phần lớn xử lý diễn ra ngay trên thiết bị.
1. Tóm tắt
- Ảnh/video cá nhân ở trên máy của bạn. Chúng chỉ rời máy khi bạn chủ động: tham gia Teamspace, tạo link chia sẻ, bật sao lưu Google Drive/OneDrive, hoặc gửi qua ứng dụng khác.
- Mỗi ảnh mang dữ liệu chứng cứ (thời gian, vị trí, thông số chụp…) nằm ngay trong tệp. Ai nhận được tệp gốc đều đọc được dữ liệu này.
- Cảm biến (micro, chuyển động, phong vũ biểu, Bluetooth, NFC, Wi‑Fi) chỉ dùng khi bạn mở đúng tính năng, và chỉ giá trị tóm tắt hoặc mã băm được lưu — không bao giờ ghi âm nền, không lưu tên Wi‑Fi, không lưu sinh trắc học.
- Chúng tôi không bán dữ liệu cá nhân và không dùng ảnh của bạn để huấn luyện AI.
2. Tài khoản
- Không cần tài khoản cho camera, watermark, thư viện, chấm công và checklist cá nhân.
- Khi đăng nhập (email + mật khẩu, Google, hoặc Đăng nhập bằng Apple trên iOS), chúng tôi lưu: email, tên hiển thị, mã người dùng, danh sách team bạn tham gia, mẫu watermark đã đồng bộ. Với Đăng nhập bằng Apple, bạn có thể dùng email chuyển tiếp ẩn danh của Apple. Xác thực do Firebase Authentication (Google) cung cấp; chúng tôi không nhận mật khẩu Google/Apple của bạn.
3. Camera, ảnh và video
- Camera: chụp ảnh, quay video, quét mã QR/mã vạch, quét tài liệu. Ảnh/video lưu trong thư mục ảnh của máy (Android: Pictures/Movies; iOS: album ProofCam) và bộ nhớ riêng của app.
- Watermark & siêu dữ liệu: thời gian, múi giờ, toạ độ, địa chỉ, thời tiết, ghi chú, thẻ, tên dự án, Mã ảnh (Photo Code) được in lên ảnh và ghi vào EXIF.
- Khối chứng cứ XMP (
pcev:*): ghi trong tệp JPEG trước khi tính mã băm, có thể gồm: chi tiết GNSS (độ chính xác, tuổi bản định vị, số vệ tinh/chòm sao, cường độ tín hiệu C/N0, AGC, điểm tin cậy, cờ vị trí giả), thông số camera (hãng/mẫu máy, ống kính, phơi sáng, ISO, zoom, chế độ Đêm/HDR), chất lượng ảnh (độ nét, sáng/tối, độ nghiêng), hướng máy (pitch/roll, hướng bắc), pin/nhiệt độ máy, điểm chụp lại màn hình, các khối tuỳ chọn ở mục 5 (chuyển động, tầng, BLE, NFC, Wi‑Fi, QR), đo hiện trường (lux, dBA, rung), thiết bị ngoài (máy thu GNSS/RTK, máy đo laser), trang tài liệu (≤ 500 ký tự chữ OCR, mã vạch đọc được). Mọi trường đều tuỳ chọn; trường không có tín hiệu thì bỏ trống.
- Live proof: khi bật, một đoạn video ngắn quanh lúc bấm chụp được nhúng vào ảnh (Motion Photo / Live Photo). Đoạn clip đi cùng tệp ảnh nếu ảnh được tải lên hoặc chia sẻ.
- Content Credentials (C2PA): khi bật, app ký một bản kê C2PA trong tệp bằng khoá tạo trên máy (Android Keystore / Keychain). Bản kê chứa thông tin chụp và mã băm tệp; khoá riêng không rời thiết bị.
- Quyền thư viện ảnh (iOS): để lưu ảnh vào album ProofCam và đọc lại ảnh do app đã lưu.
4. Vị trí
- Vị trí chính xác được đọc khi màn hình camera đang mở (và khi chấm công / tuần tra) để in toạ độ, địa chỉ, bản đồ mini, thời tiết.
- Toạ độ được gửi tới các dịch vụ hiển thị: Open-Meteo (thời tiết), OpenStreetMap (ô bản đồ mini trên Android; địa chỉ dự phòng qua Nominatim), dịch vụ Geocoder của Google (Android) hoặc Apple (iOS, kèm ảnh bản đồ Apple Maps). Các dịch vụ này nhận toạ độ và địa chỉ IP, không nhận danh tính của bạn.
- Vị trí nền (tuỳ chọn): chỉ khi bạn bật nhắc "đến/rời công trường" (geofence). Việc so vị trí chạy trên máy; vị trí nền không được gửi lên máy chủ.
- Thiết bị ngoài: nếu bạn kết nối máy thu GNSS/RTK hoặc máy đo laser qua Bluetooth, vị trí/khoảng cách từ thiết bị đó được ghi lên ảnh.
5. Tín hiệu chống gian lận và cảm biến
Các tín hiệu dưới đây phục vụ việc chứng minh ảnh/chấm công là thật. Chúng được ghi vào ảnh và — khi ảnh thuộc Teamspace — vào bản ghi ảnh của team.
- Tín hiệu toàn vẹn: cờ vị trí giả (mock location), dấu hiệu máy đã root/jailbreak, nguồn giờ (máy chủ giờ NTP, GNSS hay giờ máy), trong/ngoài hàng rào địa lý của dự án. Khi đăng ký Mã ảnh, app Android gửi kèm mã thông báo Google Play Integrity; app iOS dùng Apple App Attest. Các mã này xác nhận app/thiết bị chính hãng, không chứa dữ liệu cá nhân.
- Wi‑Fi công ty: khi chấm công, app đọc BSSID (địa chỉ điểm phát) của Wi‑Fi đang kết nối và so sánh trên máy với danh sách team cấu hình. Chỉ mã băm có muối theo team (SHA‑256, 12 ký tự) và kết quả khớp được lưu. Tên Wi‑Fi (SSID) không bao giờ được lưu. Android/iOS yêu cầu quyền vị trí để đọc BSSID.
- Chuyển động: số bước, quãng đường, thời gian kể từ điểm trước và loại hoạt động (đi bộ/đứng yên/xe) khi chụp ở điểm tuần tra hoặc chấm công (Android: Nhận dạng hoạt động; iOS: Chuyển động & Thể chất). Không theo dõi liên tục, không ghi lộ trình.
- Phong vũ biểu: áp suất, độ cao tương đối và tầng ước tính.
- Bluetooth (BLE): tại điểm tuần tra, app ghi các beacon nhìn thấy dưới dạng mã băm có muối theo team kèm cường độ tín hiệu. Bluetooth cũng dùng để kết nối thiết bị đo bạn chọn.
- NFC: đọc thẻ NFC tại điểm tuần tra — lưu mã thẻ (UID) và, với thẻ có SUN, URL SUN của thẻ để đối chiếu.
- Mã QR luân phiên tại điểm chấm công: kiểm tra offline bằng khoá của team; lưu kết quả và mã điểm.
- Selfie chấm công / selfie kèm cảnh: phát hiện khuôn mặt và kiểm tra "người thật" (chớp mắt / quay đầu) chạy trên máy (ML Kit / Apple Vision). Chỉ lưu mã băm SHA‑256 của ảnh selfie và cờ "có khuôn mặt"; ảnh selfie là một phần của ảnh chấm công. Không tạo hay lưu dữ liệu sinh trắc học (không nhận dạng, không vector khuôn mặt).
6. Micro và giọng nói
- Video: micro ghi âm thanh cùng video bạn quay.
- Máy đo độ ồn (dBA): âm thanh được phân tích trên máy để ra một con số; không ghi âm, không lưu, không gửi đi.
- Đọc ghi chú (chuyển giọng nói thành chữ): chạy trên máy (Android: bộ nhận dạng giọng nói trên thiết bị; iOS: nhận dạng chỉ trên máy). Âm thanh không được gửi đi; chỉ phần chữ trở thành ghi chú.
- Ghi chú thoại cho team (tuỳ chọn): bản ghi ≤ 60 giây (.m4a) được tải lên kho của team cùng ảnh. Việc chuyển thành chữ phía máy chủ chỉ chạy khi team bật AI và có nhà cung cấp nhận dạng giọng nói (hiện chưa bật).
7. Teamspace và dữ liệu công việc
Khi bạn tham gia một team, dữ liệu sau được tải lên và thuộc về team (chủ team/quản trị xem theo vai trò):
- Ảnh/video chụp cho team và ảnh thu nhỏ, kèm thời gian, vị trí, độ chính xác, địa chỉ, ghi chú, thẻ, Mã ảnh, mã băm tệp, cờ toàn vẹn và khối
evidence (bản rút gọn ≤ 2 KB của khối XMP ở mục 3; trường ít quan trọng được cắt trước). Ảnh có đánh dấu/làm mờ chỉ được chia sẻ dưới dạng bản đã vẽ.
- Chấm công (giờ vào/ra, nghỉ, vị trí, selfie, tín hiệu ở mục 5), lượt quét tuần tra, checklist và chữ ký, nhiệm vụ, bình luận, nhật ký/báo cáo ngày, tài liệu, bản vẽ và ghim ảnh.
- Giao hàng (POD): tên người nhận, mã băm SHA‑256 số điện thoại người nhận (không lưu số gốc), ảnh và chữ ký người nhận. Trang bằng chứng
/p/… xem được bởi người có link.
- Thông báo đẩy: mã thiết bị FCM (Android) hoặc APNs (iOS), mã cài đặt ngẫu nhiên, ngôn ngữ và phiên bản app — chỉ để gửi thông báo bình luận, nhiệm vụ, báo cáo.
- Lưu trữ: Google Cloud Firestore và Cloud Storage for Firebase tại Singapore (asia-southeast1). Đây là chuyển dữ liệu ra ngoài Việt Nam; chúng tôi thực hiện các nghĩa vụ hồ sơ theo quy định hiện hành.
- Tích hợp do team bật: webhook (gửi dữ liệu sự kiện tới địa chỉ team chọn), API/Zapier (khoá API do team tạo), xuất ảnh lên SharePoint/OneDrive for Business hoặc Google Drive của team (mã truy cập OAuth chỉ lưu phía máy chủ), xuất bảng công/kế toán (tệp tải về). Khi đó dữ liệu được chuyển cho dịch vụ team đã chọn, theo chính sách của dịch vụ đó.
- AI phía máy chủ (chỉ khi team bật gói AI): ảnh thu nhỏ 480 px của ảnh mới được gửi tới Claude API (Anthropic) để gắn thẻ và đánh giá chất lượng; câu tìm kiếm cùng tên dự án/thành viên được gửi để hiểu câu hỏi; nội dung báo cáo được gửi khi yêu cầu tóm tắt. Không bao giờ gửi selfie chấm công và video. Anthropic xử lý theo điều khoản API thương mại và không dùng dữ liệu này để huấn luyện mô hình.
- Thanh toán của team do Stripe xử lý; chúng tôi không thấy số thẻ đầy đủ.
8. Mã ảnh, xác thực và chia sẻ
- Mã ảnh (Photo Code): mã ngẫu nhiên 14 ký tự. Khi đã đăng nhập, app đăng ký mã cùng thời điểm chụp, múi giờ, toạ độ, địa chỉ, mã băm SHA‑256 của tệp và tóm tắt toàn vẹn. Bản ghi này công khai có chủ đích: ai có mã đều xem được thời gian/địa điểm trên trang xác thực. Bản ghi không chứa tên, email hay chính tấm ảnh. Bạn có thể tắt Mã ảnh trong Cài đặt.
- Công cụ xác thực trên web: tệp được tính dấu vân tay ngay trong trình duyệt, không tải lên; chỉ mã và dấu vân tay được gửi.
- Link chia sẻ: ảnh bạn chọn được tải lên và xem được bởi người có link tới khi hết hạn hoặc bị thu hồi.
- Chia sẻ qua ứng dụng khác (Zalo, email…): do bạn chủ động; tệp gốc mang theo EXIF/XMP ở mục 3.
9. Sao lưu cá nhân (gói Plus, tuỳ chọn)
- Google Drive với quyền
drive.file: app chỉ thấy và ghi các tệp do chính nó tạo trong thư mục "ProofCam".
- OneDrive (tài khoản Microsoft): app tải ảnh đã đóng dấu vào thư mục của app.
- Mã truy cập được lưu trên máy; bạn có thể tắt sao lưu hoặc thu hồi quyền trong tài khoản Google/Microsoft bất cứ lúc nào.
10. Đồng hồ (Wear OS, Apple Watch)
Ứng dụng đồng hồ chỉ hiển thị ca làm hôm nay, nút nghỉ và lệnh mở camera trên điện thoại. Dữ liệu ca được đồng bộ trực tiếp giữa điện thoại và đồng hồ (Wear Data Layer / WatchConnectivity). Ứng dụng đồng hồ không đọc vị trí, cảm biến sức khoẻ hay micro.
11. Quảng cáo, mua hàng, thống kê
- Quảng cáo (chỉ gói Miễn phí): Google AdMob có thể dùng mã nhận dạng quảng cáo (Android) và dữ liệu thiết bị để hiển thị và đo quảng cáo. Ở khu vực yêu cầu (EEA, Anh, Thuỵ Sĩ…), app hiện form đồng ý của Google (UMP); bạn đổi lựa chọn ở Cài đặt → Tuỳ chọn quyền riêng tư quảng cáo. Trên iOS, app không xin quyền theo dõi (ATT) nên không truy cập IDFA. Người dùng Plus không thấy quảng cáo.
- Mua hàng: do Google Play / Apple App Store xử lý; app chỉ nhận trạng thái gói. Để xác thực giao dịch và quản lý gói Plus, chúng tôi dùng RevenueCat, Inc. (Hoa Kỳ) làm bên xử lý: RevenueCat nhận mã giao dịch của cửa hàng, gói đã mua, ngày mua/hết hạn, trạng thái gia hạn và một mã người dùng (UID tài khoản ProofCam hoặc mã ngẫu nhiên nếu bạn chưa đăng nhập), cùng ngôn ngữ app, ngành nghề chọn khi bắt đầu, loại gói team và phiên bản app. Chúng tôi không gửi email, tên, số điện thoại hay mã quảng cáo cho RevenueCat; RevenueCat không thấy thông tin thẻ. Chính sách của RevenueCat: https://www.revenuecat.com/privacy
- Thống kê: app không dùng SDK phân tích hay báo lỗi của bên thứ ba. Một vài bộ đếm ẩn danh (ví dụ số ảnh, số lần mở paywall, quyền đã cấp) chỉ nằm trên máy và không được tải lên; chúng chỉ được đính kèm khi bạn tự gửi email góp ý.
- Giờ mạng: app kết nối máy chủ giờ (NTP), không gửi dữ liệu cá nhân.
12. Xử lý trên thiết bị
OCR, đọc mã vạch, phát hiện khuôn mặt, gắn thẻ/tìm ảnh, tóm tắt (iOS 26), kiểm tra chụp lại màn hình và chấm điểm GNSS đều chạy trên máy (ML Kit, Apple Vision/Foundation Models) và không gửi dữ liệu đi.
13. Bảo mật
Mọi kết nối tới máy chủ của chúng tôi dùng TLS. Dữ liệu trên Google Cloud được mã hoá khi lưu trữ. Quy tắc truy cập giới hạn dữ liệu team cho thành viên theo vai trò; mã OAuth tích hợp chỉ máy chủ đọc được. Trên iOS, tệp được bảo vệ bằng Data Protection của hệ thống.
14. Thời gian lưu giữ
- Dữ liệu trên máy: tới khi bạn xoá ảnh hoặc gỡ app.
- Tài khoản và mẫu đồng bộ: tới khi bạn xoá tài khoản.
- Dữ liệu team: tới khi team xoá mục đó hoặc xoá team.
- Link chia sẻ: tới khi hết hạn hoặc bị thu hồi.
- Bản ghi Mã ảnh: giữ lâu dài để ảnh đã chia sẻ vẫn xác thực được, nhưng bỏ liên kết với bạn khi bạn xoá tài khoản.
- Nhật ký kỹ thuật máy chủ: tối đa 30 ngày.
15. Xoá dữ liệu
- Xoá ảnh trong app sẽ xoá ảnh, bản gốc và bản ghi trên máy. Gỡ app sẽ xoá dữ liệu riêng của app.
- Xoá tài khoản ngay trong app (Cài đặt → Tài khoản → Xoá tài khoản) hoặc trên cổng web (
/app → Tài khoản). Thao tác xoá hồ sơ, mẫu đồng bộ, thiết bị nhận thông báo, link chia sẻ, tệp cá nhân và tư cách thành viên mọi team. Chủ team cần chuyển giao hoặc xoá team trước. Ảnh đã tải lên team thuộc về team và bị xoá khi team xoá chúng hoặc xoá team.
- Không vào được app? Gửi yêu cầu tới [EMAIL HỖ TRỢ] từ email của tài khoản.
16. Quyền của bạn
Theo Nghị định 13/2023/NĐ-CP về bảo vệ dữ liệu cá nhân (và Luật Bảo vệ dữ liệu cá nhân cùng các văn bản hướng dẫn), và các quyền tương tự GDPR nếu bạn ở EEA/Anh, bạn có quyền: được biết; đồng ý và rút lại đồng ý; truy cập và nhận bản sao dữ liệu; chỉnh sửa; xoá; hạn chế xử lý; phản đối xử lý (kể cả quảng cáo); khiếu nại, tố cáo, khởi kiện và yêu cầu bồi thường. Nhiều quyền bạn tự thực hiện được trong app (sửa hồ sơ, tắt Mã ảnh, tắt sao lưu, đổi lựa chọn quảng cáo, xoá tài khoản). Với yêu cầu khác, liên hệ [EMAIL HỖ TRỢ]; chúng tôi trả lời trong thời hạn luật định (thường không quá 72 giờ với yêu cầu xoá/rút đồng ý theo Nghị định 13). Bạn cũng có thể khiếu nại tới cơ quan bảo vệ dữ liệu có thẩm quyền.
Với dữ liệu trong Teamspace, team (doanh nghiệp của bạn) là bên quyết định mục đích xử lý; chúng tôi xử lý theo chỉ dẫn của team. Hãy liên hệ quản trị team trước; chúng tôi sẽ hỗ trợ team đáp ứng yêu cầu.
17. Trẻ em
ProofCam là công cụ làm việc, không hướng tới trẻ em dưới 16 tuổi. Nếu biết đã thu thập dữ liệu của trẻ em mà không có đồng ý hợp lệ, chúng tôi sẽ xoá.
18. Thay đổi chính sách
Khi thay đổi đáng kể, chúng tôi cập nhật ngày ở đầu trang và thông báo trong app hoặc qua email trước khi áp dụng.
19. Liên hệ
FightTech — [EMAIL HỖ TRỢ]
Privacy Policy
Updated: 11 October 2026 · Data controller: FightTech · Contact: [EMAIL HỖ TRỢ]
This policy covers the ProofCam apps for Android and iOS/iPadOS, the Wear OS and Apple Watch companion apps, the website proofcam.web.app (photo verifier, share pages, proof-of-delivery pages) and the Teamspace web portal (/app). We only process what the feature you use needs, and most processing happens on your device.
1. Summary
- Personal photos and videos stay on your device. They leave it only when you choose to: join a Teamspace, create a share link, turn on Google Drive/OneDrive backup, or send them through another app.
- Every photo carries evidence metadata (time, location, capture details…) inside the file. Anyone who receives the original file can read it.
- Sensors (microphone, motion, barometer, Bluetooth, NFC, Wi‑Fi) are used only when you open the related feature, and only summary values or hashes are kept — no background audio recording, no Wi‑Fi network names, no biometrics.
- We do not sell personal data and do not use your photos to train AI.
2. Account
- No account is needed for the camera, watermarks, gallery, personal time clock and checklists.
- When you sign in (email + password, Google, or Sign in with Apple on iOS) we store your email, display name, user ID, the teams you belong to and your synced watermark templates. With Sign in with Apple you can use Apple's private relay email. Authentication is provided by Firebase Authentication (Google); we never receive your Google/Apple password.
3. Camera, photos and videos
- Camera: to take photos and videos, scan QR codes/barcodes and scan documents. Media is saved to the device photo folders (Android: Pictures/Movies; iOS: the ProofCam album) and the app's private storage.
- Watermark & metadata: time, time zone, coordinates, address, weather, notes, tags, project name and Photo Code are drawn on the photo and written to EXIF.
- XMP evidence block (
pcev:*): written into the JPEG before it is hashed. It may contain: GNSS details (accuracy, fix age, satellite/constellation counts, C/N0 signal strength, AGC, a trust score, mock-location flag), camera parameters (device make/model, lens, exposure, ISO, zoom, Night/HDR mode), image quality (sharpness, exposure, tilt), device orientation (pitch/roll, heading), battery/thermal state, a screen-recapture score, the optional blocks in section 5 (motion, floor, BLE, NFC, Wi‑Fi, QR), field meters (lux, dBA, vibration), external devices (GNSS/RTK receiver, laser meter) and document pages (≤ 500 characters of OCR text, decoded barcodes). Every field is optional and left empty when there is no signal.
- Live proof: when on, a short video around the shutter press is embedded in the photo (Motion Photo / Live Photo). The clip travels with the photo file if it is uploaded or shared.
- Content Credentials (C2PA): when on, the app signs a C2PA manifest inside the file with a key created on the device (Android Keystore / Keychain). The manifest holds capture details and the file hash; the private key never leaves the device.
- Photo library access (iOS): to save photos to the ProofCam album and read back the photos the app saved.
4. Location
- Precise location is read while the camera screen is open (and during clock-in / patrol) to stamp coordinates, address, mini map and weather.
- Coordinates are sent to display services: Open-Meteo (weather), OpenStreetMap (mini-map tiles on Android; fallback address via Nominatim), Google's Geocoder (Android) or Apple's geocoder and Apple Maps snapshots (iOS). These services receive the coordinates and your IP address, not your identity.
- Background location (optional): only if you turn on "arrive/leave site" reminders (geofences). Matching runs on the device; background location is not sent to our servers.
- External devices: if you connect a Bluetooth GNSS/RTK receiver or laser meter, its position/distance is stamped on the photo.
5. Anti-fraud signals and sensors
These signals help prove that a photo or clock-in is genuine. They are written into the photo and — for Teamspace photos — into the team's photo record.
- Integrity signals: mock-location flag, rooted/jailbroken heuristics, time source (NTP time server, GNSS or device clock), inside/outside the project geofence. When a Photo Code is registered, the Android app attaches a Google Play Integrity token; the iOS app uses Apple App Attest. These attest a genuine app/device and contain no personal data.
- Company Wi‑Fi: at clock-in the app reads the BSSID (access-point address) of the connected Wi‑Fi and compares it on the device with the team's list. Only a team-salted hash (SHA‑256, 12 characters) and the match result are stored. The Wi‑Fi name (SSID) is never stored. Android/iOS require location permission to read the BSSID.
- Motion: steps, distance, time since the previous checkpoint and activity type (walking/still/vehicle) when you take a patrol or clock photo (Android: Activity recognition; iOS: Motion & Fitness). No continuous tracking, no route recording.
- Barometer: pressure, relative altitude and estimated floor.
- Bluetooth (BLE): at patrol checkpoints the app records nearby beacons as team-salted hashes with signal strength. Bluetooth is also used to connect the measuring devices you pick.
- NFC: reads checkpoint NFC tags — stores the tag ID (UID) and, for SUN-capable tags, the tag's SUN URL for verification.
- Rotating QR codes at clock-in points: checked offline with the team key; the result and site code are stored.
- Clock-in selfie / dual selfie: face detection and the liveness check (blink / head turn) run on the device (ML Kit / Apple Vision). Only the SHA‑256 hash of the selfie and a "face present" flag are recorded; the selfie is part of the clock photo. No biometric data is created or stored (no recognition, no face templates).
6. Microphone and speech
- Video: the microphone records audio with the videos you shoot.
- Sound meter (dBA): audio is analysed on the device into a single number; it is never recorded, stored or sent.
- Dictated notes (speech to text): runs on the device (Android on-device recognizer; iOS on-device-only recognition). No audio is sent; only the text becomes a note.
- Team voice notes (optional): a recording of up to 60 seconds (.m4a) is uploaded to the team's storage with the photo. Server-side transcription only runs when the team enables AI and a speech provider is configured (none is enabled today).
7. Teamspace and work data
When you join a team, the following is uploaded and belongs to the team (owners/admins see it according to roles):
- Photos/videos taken for the team and their thumbnails, with time, location, accuracy, address, notes, tags, Photo Code, file hash, integrity flags and the
evidence field (a ≤ 2 KB reduced copy of the XMP block in section 3; least important details are trimmed first). Marked-up/blurred photos are shared only as the rendered copy.
- Clock records (in/out, breaks, location, selfie, section 5 signals), patrol scans, checklists and signatures, tasks, comments, daily logs/reports, documents, floor plans and pins.
- Proof of delivery (POD): recipient name, a SHA‑256 hash of the recipient's phone number (the number itself is not stored), photos and the recipient's signature. The
/p/… proof page is viewable by anyone with the link.
- Push notifications: the FCM (Android) or APNs (iOS) device token, a random install ID, language and app version — only to deliver comment, task and report notifications.
- Storage: Google Cloud Firestore and Cloud Storage for Firebase in Singapore (asia-southeast1). This is a transfer outside Vietnam, for which we carry out the required filings.
- Integrations a team turns on: webhooks (event data sent to the URL the team chose), API/Zapier (API keys created by the team), photo export to the team's SharePoint/OneDrive for Business or Google Drive (OAuth tokens kept server-side only), timesheet/accounting exports (downloaded files). Data then goes to the service the team chose, under that service's policy.
- Server AI (only when a team enables the AI pack): 480 px thumbnails of new photos are sent to the Claude API (Anthropic) for tagging and quality checks; search queries with project/member names are sent to interpret the question; report content is sent when a summary is requested. Clock-in selfies and videos are never sent. Anthropic processes this under its commercial API terms and does not use it to train models.
- Team billing is handled by Stripe; we never see full card numbers.
8. Photo Code, verification and sharing
- Photo Code: a random 14-character code. When you are signed in, the app registers it with the capture time, time zone, coordinates, address, the file's SHA‑256 hash and an integrity summary. This record is public by design: anyone with the code can see the time and place on the verifier page. It never includes your name, email or the photo itself. You can turn Photo Code off in Settings.
- Web verifier: the file is fingerprinted in your browser and not uploaded; only the code and fingerprint are sent.
- Share links: the photos you select are uploaded and viewable by anyone with the link until it expires or is revoked.
- Sharing through other apps (Zalo, email…): initiated by you; the original file carries the EXIF/XMP in section 3.
9. Personal backup (Plus, optional)
- Google Drive with the
drive.file scope: the app can only see and write files it created in its "ProofCam" folder.
- OneDrive (Microsoft account): the app uploads stamped photos to its app folder.
- Access tokens stay on the device; turn backup off or revoke access in your Google/Microsoft account at any time.
10. Watches (Wear OS, Apple Watch)
The watch apps only show today's shift, a break button and a command that opens the phone camera. Shift data syncs directly between phone and watch (Wear Data Layer / WatchConnectivity). The watch apps do not read location, health sensors or the microphone.
11. Ads, purchases, analytics
- Ads (Free plan only): Google AdMob may use the advertising ID (Android) and device data to serve and measure ads. In regions that require it (EEA, UK, Switzerland…) the app shows Google's consent form (UMP); change your choice in Settings → Ad privacy options. On iOS the app does not request tracking permission (ATT), so the IDFA is not accessed. Plus users see no ads.
- Purchases: handled by Google Play / Apple App Store; the app only receives your plan status. To validate transactions and manage Plus we use RevenueCat, Inc. (USA) as a processor: it receives the store transaction identifiers, purchased plan, purchase/expiry dates, renewal status and a user ID (your ProofCam account UID, or a random ID if you are not signed in), plus app language, the trade picked at onboarding, team plan type and app version. We do not send your email, name, phone number or advertising ID to RevenueCat, and it never sees card details. RevenueCat's policy: https://www.revenuecat.com/privacy
- Analytics: the app uses no third-party analytics or crash-reporting SDK. A few anonymous counters (e.g. photos taken, paywall views, permissions granted) stay on the device and are never uploaded; they are only included if you send us a feedback email yourself.
- Network time: the app contacts time servers (NTP); no personal data is sent.
12. On-device processing
OCR, barcode reading, face detection, photo tagging/search, summaries (iOS 26), screen-recapture checks and GNSS scoring run on the device (ML Kit, Apple Vision/Foundation Models) and send nothing.
13. Security
All connections to our servers use TLS. Data on Google Cloud is encrypted at rest. Access rules restrict team data to members by role; integration OAuth tokens are readable only by the server. On iOS, files are protected by system Data Protection.
14. Retention
- On-device data: until you delete the photo or uninstall the app.
- Account and synced templates: until you delete your account.
- Team data: until the team deletes the item or the team.
- Share links: until they expire or are revoked.
- Photo Code records: kept so shared photos stay verifiable, but unlinked from you when you delete your account.
- Server technical logs: up to 30 days.
15. Deleting your data
- Deleting a photo in the app deletes the photo, its original and its local record. Uninstalling deletes the app's private data.
- Delete your account in the app (Settings → Account → Delete account) or in the web portal (
/app → Account). This removes your profile, synced templates, notification devices, share links, personal files and your membership of every team. Team owners must hand over or delete their teams first. Photos uploaded to a team belong to the team and are deleted when the team deletes them or the team is deleted.
- Can't access the app? Email [EMAIL HỖ TRỢ] from your account's address.
16. Your rights
Under Vietnam's Decree 13/2023/ND-CP on personal data protection (and the Personal Data Protection Law and its implementing rules), and equivalent GDPR rights if you are in the EEA/UK, you have the right to: be informed; consent and withdraw consent; access and obtain a copy of your data; rectification; erasure; restriction of processing; objection (including to ads); and to complain, sue and claim compensation. Many rights can be exercised directly in the app (edit profile, turn off Photo Code, turn off backup, change ad choices, delete account). For anything else contact [EMAIL HỖ TRỢ]; we respond within the statutory time limits (generally within 72 hours for erasure/consent-withdrawal requests under Decree 13). You may also complain to the competent data protection authority.
For Teamspace data, the team (your organisation) decides the purposes of processing and we process on its instructions. Please contact your team admin first; we will help the team respond.
17. Children
ProofCam is a work tool and is not directed at children under 16. If we learn we collected a child's data without valid consent, we will delete it.
18. Changes
For material changes we update the date at the top and notify you in the app or by email before they take effect.
19. Contact
FightTech — [EMAIL HỖ TRỢ]