Privacy Policy

This is a template, not legal advice. It was generated from an automated audit of the app's codebase and is provided as a starting point only. Data-collection practices, third-party SDKs, and the laws that apply to you change over time and vary by jurisdiction. Have a qualified privacy attorney review and adapt this document before you publish it or submit it to the App Store or Google Play. Bracketed items marked [CONFIRM] must be completed or verified by you.

App: PHIPTV

Publisher: PHIPTV

Contact: eyasaboud@gmail.com [CONFIRM — use a dedicated privacy address, e.g. privacy@phiptv.com]

Policy/Help website: https://phiptv.com [CONFIRM]

Effective date: [EFFECTIVE DATE]


Table of Contents

  1. Who We Are and What This App Is
  2. The Most Important Thing to Understand: Your IPTV Provider
  3. What Data We Collect and Why
  4. Legal Bases for Processing (GDPR)
  5. Where Your Data Is Stored: On-Device vs. Cloud
  6. Third-Party Service Providers (Processors)
  7. Device Registration and the Device Limit
  8. Subscriptions and Purchases
  9. Profiles, Kids Mode, and Parental Controls
  10. Children's Privacy (COPPA / GDPR-K)
  11. Data Retention
  12. Security
  13. International Data Transfers
  14. Your Rights and How to Exercise Them
  15. GDPR / UK GDPR (EEA, UK, Switzerland)
  16. California Privacy Rights (CCPA / CPRA)
  17. Account Deletion
  18. Changes to This Policy
  19. How to Contact Us

1. Who We Are and What This App Is

PHIPTV ("we", "us", "our") publishes PHIPTV (the "App"), a neutral IPTV player available on Android, Android TV, iOS, and other platforms.

The App does not provide, host, bundle, sell, curate, or stream any media content. It is an empty player. You — the user — supply your own playlists and streaming credentials, typically in M3U format or via Xtream Portal API credentials (host, username, password). When you enter a playlist or portal, the App reads the channel, movie, and series listings from your source and plays the streams that your source points to.

We have no control over, and no knowledge of, what content your sources contain or whether you are authorized to access it. The App is a general-purpose tool, comparable to a media player or web browser. This policy explains the limited categories of data the App itself handles to provide its features (accounts, cross-device sync, subscriptions, parental controls).


2. The Most Important Thing to Understand: Your IPTV Provider

Your IPTV provider is a separate, independent data controller that we neither operate nor control.

When you add a playlist or Xtream portal and play a stream, the App connects directly from your device to the server you specified. That server — your IPTV provider, playlist host, or EPG (electronic program guide) provider — receives requests directly from your device and may collect, on its own and independently of us:

We do not receive, store, or process the data your IPTV provider collects. We are not responsible for that provider's privacy practices, data handling, security, or legality. You should review the privacy policy and terms of the IPTV provider(s) you choose to use. Because some IPTV servers only support legacy unencrypted connections, the App permits cleartext (HTTP) connections (see Section 12); when a source uses HTTP rather than HTTPS, the data sent to it — potentially including credentials and stream URLs — travels unencrypted.


3. What Data We Collect and Why

We collect only the data needed to run the App's account, sync, subscription, and parental-control features. The table below mirrors what the App actually does.

3.1 Account and Authentication Data

DataWhy we collect itWhere it goes
Email addressCreate and identify your account; sign-inFirebase Authentication + Cloud Firestore
Password (as a hash, managed by Firebase)Email/password sign-inFirebase Authentication (we never see or store your raw password)
Display namePersonalize your accountFirebase / Firestore
Firebase User ID (UID)Unique account identifier that links your synced dataFirebase / Firestore
Authentication provider and tokensKeep you signed in; federated sign-inFirebase
Google account profile (email, display name, profile picture URL, Google ID token) — only if you choose Google Sign-InFederated sign-in via your Google accountGoogle Sign-In → Firebase

You can also use a Google Device Authorization flow (scan a QR code, approve on your phone) to sign in on TVs and other limited-input devices.

3.2 Device Identifiers (for device registration and the device limit)

To enforce the per-account device limit and to recognize your devices, we collect and sync:

DataNotes
Device ID (a UUID we generate)Stored on-device and in the cloud
Hardware identifiers — Android ID, iOS identifierForVendor, MAC address, and a hardware GUID (Windows/Mac/Linux system identifier)Used to deduplicate devices and detect when the same hardware re-registers
Device name, brand, modelShown to you in your device list
Operating system / platform and versionCompatibility and your device list
App versionSupport and troubleshooting
Emulator-detection / hardware-capability flagsAnti-abuse and playback compatibility
Last-active timestampManage active devices and the device limit

These identifiers are linked to your account and synced to Cloud Firestore.

If you use web management (Section 3.9), your device's MAC address and a device key shown on your TV are combined on the device into a one-way code that identifies an anonymous device record; the MAC address and the key themselves are stored in the cloud only if you choose to save that TV to your account.

3.3 Content You Add and Your Usage

DataWhyWhere it lives
Playlist URLs and Xtream credentials (host, username, password) you enterSo the App can load your sources and play your streamsStored locally in the on-device database; synced to Firestore if you are signed in with an account so your playlists follow you across devices
Channel/VOD/series metadata pulled from your sources, favorites, EPG dataOrganize and display your contentLocal database; synced metadata (favorites, series snapshots) to Firestore for signed-in users
Watch history and search historyResume playback, show history, sync across devicesLocal database; synced to Firestore for signed-in users
Profiles and per-profile settingsMultiple profiles per accountLocal; synced to Firestore
App settings and onboarding flagsRemember your preferences and setup stateLocal device storage (shared preferences) and, where applicable, Firestore

Note: Trial/guest users who have not created an account (no Firebase UID) do not sync to the cloud — their data stays on the device only.

3.4 Subscription / Purchase Data

DataWhyWhere
Subscription status, entitlement (premium flag), purchase history, customer identifier, app versionDetermine whether your account has access to premium features and to restore purchasesRevenueCat + the platform app store (Apple / Google), and a server-maintained entitlement record in Cloud Firestore (status, product, store, expiry — written only from RevenueCat's notifications, readable only by you and us)

Purchases are processed by Apple In-App Purchase or Google Play Billing — we never see your card or payment-instrument details. See Section 8.

3.5 Parental-Control Data

Per-profile PIN (4–6 digits), restriction mode, daily watch-time limits, bedtime windows, content allow/block rules, and a per-profile watch-time usage log. See Section 9.

3.6 Network State and Local Notifications

3.7 Data We Do Not Collect

3.8 Diagnostics, Crash Reports and Usage Statistics

DataWhyWhere
Crash reports (release builds only): stack trace; the error text with every web address shortened to its server name and any credentials removed; device model, OS version, app version; an installation identifier; your Firebase UID if you are signed inFind and fix crashesFirebase Crashlytics (Google)
Problem reports you choose to send (Settings → Help & Diagnostics → Report a Problem, or "Report" on an error screen): the error code and message, your note, the title of what was playing, playlist type and server name only, network type, recent app log lines — all scrubbed of credentials and full web addresses; your UID and email if signed inDiagnose the problem you reportedCloud Firestore
Usage statistics: app opens and sessions; which screens are used (the screen type only, e.g. "Series"); whether features are used (a playlist was added and its type, a profile was created, voice search, casting, the upgrade screen was shown); error codes shown; device type (TV, phone, tablet), OS and app version; premium yes/no; approximate country derived by Google from the connection; an app-instance identifierUnderstand how the App is used so we can improve itFirebase Analytics (Google)

Usage statistics never include what you watch or search for. They carry no channel, film, series, category or playlist names, no web addresses and no search text. They are not collected while a Kids profile is active, while Incognito is on, or if you turn off Settings → Help & Diagnostics → Share Anonymous Usage Statistics. We do not collect the advertising ID or the Android ID, do not link usage statistics to your account, and do not use them for advertising. Development and test builds send neither crash reports nor usage statistics.

3.9 Web Management (MAC + Device Key)

Web management (MAC + device key). Your TV creates an anonymous device record identified by a one-way code derived from your device's MAC address and a device key shown on your TV; neither the MAC address nor the key is stored in that record. The record holds the names, types and server addresses of the playlists on that TV and, only while a request is waiting for the TV, the playlist details the person using our website entered, encrypted with a key we do not hold and removed once the TV has processed them. The person entering a playlist supplies it; PHIPTV only relays it to that device. If the TV is signed in to your account, playlists added this way also sync to your other devices. Records expire 180 days after the TV was last seen, or immediately when you regenerate the key, turn web management off, or switch accounts on the TV. If you save a TV to your account, we store its MAC address and an encrypted copy of the device key under your account; both are deleted with the account.


Where the EU/UK GDPR applies, we rely on the following legal bases:

Processing activityLegal basis
Creating/maintaining your account; authenticationPerformance of a contract (Art. 6(1)(b)) — our Terms with you
Cloud sync of your playlists, profiles, favorites, historyPerformance of a contract and, where optional, your consent (Art. 6(1)(a))
Device registration, the device limit, and anti-abuse (hardware IDs, MAC, emulator detection)Legitimate interests (Art. 6(1)(f)) — preventing account sharing/abuse and enforcing subscription terms
Subscription and entitlement management (RevenueCat, store billing)Performance of a contract
Parental controls / kids modePerformance of a contract and consent of the account holder
Crash reports and problem reports you sendLegitimate interests (Art. 6(1)(f)) — keeping the App working and secure
Usage statistics (Firebase Analytics)Legitimate interests (Art. 6(1)(f)) — improving the App; you can switch them off at any time in Settings [CONFIRM — some EU regulators expect consent for app analytics; if so, ship with the toggle OFF by default]
Responding to your rights requests; legal complianceLegal obligation (Art. 6(1)(c))

You may object to processing based on legitimate interests at any time (see Section 15).


5. Where Your Data Is Stored: On-Device vs. Cloud

The App keeps a local database (SQLite) on your device as the primary source of truth. It stores your playlists, channel/VOD/series metadata, EPG data, favorites, watch and search history, profiles, and parental-control configuration.

If you are signed in with an account, a defined subset of this data is synced to Google Cloud Firestore so it follows you across your devices. Sync is bidirectional with last-write-wins conflict resolution. Guest/trial users without an account do not sync — their data remains only on the device.

The local database is stored in the App's private storage area and is not encrypted at rest by default. On a rooted or jailbroken device, locally stored data (including any playlist credentials) could be extracted. See Section 12.


6. Third-Party Service Providers (Processors)

We share data with the following providers strictly to operate the App. They act as our processors (or, for billing, as independent controllers of payment data):

ProviderWhat they receive / processPurpose
Google Firebase — Authentication & Cloud FirestoreAccount email, display name, UID, auth tokens; device documents (device ID, hardware ID, MAC, device name, platform, app version, last-active); synced playlists, profiles, favorites, watch/search history; subscription statusAccount management, cloud database, cross-device sync
Google Sign-In (if you use it)Google account email, display name, profile picture URL, ID/access tokensFederated authentication
Google Firebase CrashlyticsCrash reports as described in Section 3.8Finding and fixing crashes
Google Firebase AnalyticsUsage statistics as described in Section 3.8Improving the App (not advertising)
RevenueCatSubscription status, entitlements, purchase history, customer/device identifiers, app versionSubscription and entitlement management
Apple In-App Purchase / Google Play BillingYour purchase transactions and platform account (handled by the store)Payment processing; we do not receive payment-card data
Your chosen IPTV / EPG / playlist provider(s)Connect directly from your device; may receive your IP, the source credentials you entered, and what you request/watchIndependent data controller — not operated or controlled by us. See Section 2
Google Fonts / image-loading providersFont requests and image (logo/artwork) URLs from your playlists are fetched and cachedTypography and artwork display

We do not sell your personal information, and we do not share it for cross-context behavioral advertising. See Section 16.

RevenueCat status note: In the current build, subscription billing (RevenueCat) may not be fully activated in production. When it is active, the data described above will flow to RevenueCat for entitlement validation [CONFIRM].


7. Device Registration and the Device Limit

To enforce fair use and your subscription terms, each account has a device limit: 1 device for free/trial users and up to 5 simultaneous devices for premium subscribers. To make this work, when you sign in we register your device and store the identifiers listed in Section 3.2 — including a hardware identifier and MAC address — in your cloud device list. This lets us recognize your devices, prevent duplicate registrations of the same hardware, and let you see and manage your active devices. You can remove a device from your account to free a slot. We treat these hardware identifiers as personal data and protect them accordingly.


8. Subscriptions and Purchases

Premium tiers unlock App features — such as more playlists, more simultaneous devices, full EPG, multi-view, and unlimited VOD — not access to any content (all users connect to the same kinds of sources they supply themselves). Plans may include monthly, yearly, and lifetime options with a free-trial period [CONFIRM exact prices and trial length, as the in-app messaging and internal trial timer should be reconciled before publishing].

Purchases are made through Apple In-App Purchase or Google Play Billing and managed via RevenueCat. Your payment-card details are handled by Apple/Google and are never sent to or stored by us. RevenueCat receives your subscription/entitlement and device/app identifiers to validate and restore purchases. To manage or cancel a subscription, use your Apple ID or Google Play account settings.


9. Profiles, Kids Mode, and Parental Controls

The App supports multiple profiles per account, including kids profiles protected by a PIN (4–6 digits). The account holder can configure, per profile:

This configuration is stored locally and, for signed-in accounts, synced to Firestore so controls apply across devices. Please choose a strong PIN. Parental-control settings are intended to be configured by the responsible adult account holder.


10. Children's Privacy (COPPA / GDPR-K)

The App is a general-purpose media player intended for adults and is not directed to children. We do not knowingly create accounts for, or knowingly collect personal information directly from, children under 13 (or under the minimum age of digital consent in your jurisdiction, which is 16 in parts of the EEA).

If you believe a child has provided us personal information without the consent of a parent/guardian, contact us at the address in Section 19 and we will delete it. Parents and guardians may exercise the rights in Sections 14–17 on behalf of a child.


11. Data Retention

DataRetention
Account data (email, UID, display name)Until you delete your account, then removed within [CONFIRM, e.g. 30] days (subject to backups and legal holds)
Cloud-synced data (playlists, profiles, favorites, watch/search history)While your account is active; deleted with your account
Device registration records (including hardware ID/MAC)While the device is registered to your account; removed when you delete the device or your account
Subscription/entitlement recordsAs required for billing, tax, and audit, per Apple/Google/RevenueCat retention [CONFIRM]
Locally stored data (on-device database, settings, notifications)Until you clear it, uninstall the App, or delete it in-app
Parental watch-time usage logsRolling window (the App keeps a recent log; older entries are pruned) [CONFIRM exact window]
Crash reports (Crashlytics)90 days [CONFIRM against the Firebase console setting]
Usage statistics (Firebase Analytics)Event-level data 2 months (the Analytics default); aggregated reports longer [CONFIRM against the Analytics data-retention setting]
Problem reports you sentWhile your account exists (deleted with it); guest reports [CONFIRM — e.g. 12 months]
Web-management device records and pending requests (Section 3.9)Expire 180 days after the TV was last seen, or immediately when you regenerate the device key, turn web management off, or switch accounts on the TV

When you uninstall the App, locally stored data on that device is removed by the operating system; cloud data persists until you delete your account. Web-management device records are the exception: they are not tied to an account and are deleted automatically 180 days after the TV was last seen.


12. Security

We use industry-standard measures to protect data, including Google Firebase's transport encryption (HTTPS/TLS) for data synced between the App and our cloud, and access controls on our Firestore project.

Important limitations you should know:

If we become aware of a data breach affecting your personal data, we will notify you and the relevant authorities as required by applicable law.


13. International Data Transfers

Our cloud providers (Google Firebase/Firestore, Google Sign-In, RevenueCat) may process and store data on servers located in the United States and other countries that may not provide the same level of data protection as your home country. Where we transfer personal data out of the EEA, UK, or Switzerland, we rely on appropriate safeguards such as the European Commission's Standard Contractual Clauses (and the UK Addendum) and our providers' compliance frameworks. You may request more information about these safeguards using the contact details in Section 19.

Separately, when you connect to an IPTV/EPG provider, your data goes directly to that provider, which may be located anywhere in the world and outside our control (see Section 2).


14. Your Rights and How to Exercise Them

Subject to your jurisdiction, you may have the right to:

How to exercise them:


15. GDPR / UK GDPR (EEA, UK, Switzerland)

If you are in the EEA, UK, or Switzerland, the controller of your personal data is PHIPTV [CONFIRM legal entity and address]. You have all the rights listed in Section 14, plus:

Our legal bases are set out in Section 4. Where we rely on consent, you may withdraw it at any time without affecting prior processing.

[CONFIRM whether an EU/UK representative under Art. 27 GDPR is required for your entity, and add their details here if so.]


16. California Privacy Rights (CCPA / CPRA)

If you are a California resident, you have the right to:

Categories of personal information collected (per the CCPA), in the past 12 months:

We do not "sell" your personal information and we do not "share" it for cross-context behavioral advertising, as those terms are defined under the CPRA. We use sensitive personal information only to provide the service you requested (e.g., authentication and loading your sources) and not for inferring characteristics, so a separate "Limit the Use of My Sensitive Personal Information" link is not required — but you may still contact us to ask about it.

To exercise your rights, use the in-app controls or email eyasaboud@gmail.com [CONFIRM]. We will not discriminate against you for exercising these rights. Authorized agents may submit requests with proof of authorization.


17. Account Deletion

You can delete your account and associated cloud data at any time:

  1. In the App: open Settings/Account and choose Delete Account [CONFIRM exact menu path]; or
  2. By email: send a deletion request to eyasaboud@gmail.com [CONFIRM] from your account email address.

Deleting your account removes your account record, cloud-synced data (playlists, profiles, favorites, watch/search history), and registered-device records from Firestore, typically within [CONFIRM, e.g. 30] days, subject to routine backup cycles and any data we must retain for legal, tax, or fraud-prevention purposes. Locally stored data on each device is removed when you uninstall the App or clear it in-app. Cancelling a subscription does not delete your account, and deleting your account does not automatically cancel a store subscription — manage subscriptions in your Apple ID or Google Play settings.


18. Changes to This Policy

We may update this Privacy Policy from time to time. When we make material changes, we will update the Effective date above and, where appropriate, notify you in the App or by email. Your continued use of the App after an update means you accept the revised policy.


19. How to Contact Us

PHIPTV [CONFIRM legal entity name]

Privacy contact: eyasaboud@gmail.com [CONFIRM — recommend a dedicated address such as privacy@phiptv.com]

Website: https://phiptv.com [CONFIRM]

Postal address: [CONFIRM]

For data-protection inquiries in the EEA/UK, you may also contact your local supervisory authority. We will do our best to resolve any concern you raise directly with us first.