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
- Who We Are and What This App Is
- The Most Important Thing to Understand: Your IPTV Provider
- What Data We Collect and Why
- Legal Bases for Processing (GDPR)
- Where Your Data Is Stored: On-Device vs. Cloud
- Third-Party Service Providers (Processors)
- Device Registration and the Device Limit
- Subscriptions and Purchases
- Profiles, Kids Mode, and Parental Controls
- Children's Privacy (COPPA / GDPR-K)
- Data Retention
- Security
- International Data Transfers
- Your Rights and How to Exercise Them
- GDPR / UK GDPR (EEA, UK, Switzerland)
- California Privacy Rights (CCPA / CPRA)
- Account Deletion
- Changes to This Policy
- 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:
- Your IP address and approximate location derived from it;
- Any username and password you entered for that source;
- The streams, channels, and on-demand titles you request and watch;
- Device and network metadata that any web request normally reveals (user-agent, time of request, etc.).
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
| Data | Why we collect it | Where it goes |
|---|---|---|
| Email address | Create and identify your account; sign-in | Firebase Authentication + Cloud Firestore |
| Password (as a hash, managed by Firebase) | Email/password sign-in | Firebase Authentication (we never see or store your raw password) |
| Display name | Personalize your account | Firebase / Firestore |
| Firebase User ID (UID) | Unique account identifier that links your synced data | Firebase / Firestore |
| Authentication provider and tokens | Keep you signed in; federated sign-in | Firebase |
| Google account profile (email, display name, profile picture URL, Google ID token) — only if you choose Google Sign-In | Federated sign-in via your Google account | Google 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:
| Data | Notes |
|---|---|
| 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, model | Shown to you in your device list |
| Operating system / platform and version | Compatibility and your device list |
| App version | Support and troubleshooting |
| Emulator-detection / hardware-capability flags | Anti-abuse and playback compatibility |
| Last-active timestamp | Manage 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
| Data | Why | Where it lives |
|---|---|---|
| Playlist URLs and Xtream credentials (host, username, password) you enter | So the App can load your sources and play your streams | Stored 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 data | Organize and display your content | Local database; synced metadata (favorites, series snapshots) to Firestore for signed-in users |
| Watch history and search history | Resume playback, show history, sync across devices | Local database; synced to Firestore for signed-in users |
| Profiles and per-profile settings | Multiple profiles per account | Local; synced to Firestore |
| App settings and onboarding flags | Remember your preferences and setup state | Local 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
| Data | Why | Where |
|---|---|---|
| Subscription status, entitlement (premium flag), purchase history, customer identifier, app version | Determine whether your account has access to premium features and to restore purchases | RevenueCat + 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
- Network connectivity type (Wi-Fi / mobile / ethernet / none / VPN status) is observed on-device to adapt playback. This is not transmitted to us.
- Local notifications (e.g., new-episode reminders) are scheduled and stored entirely on your device.
3.7 Data We Do Not Collect
- We do not request or use your precise GPS location, camera, photo library, contacts, or Bluetooth.
- Microphone: used only for voice search, only after you press the microphone key, and only while it is listening. Your speech is turned into text by your device's speech-recognition service (on many devices this is provided by Google under its own terms); the App receives only the resulting text, which it uses for the search and keeps in your search history like a typed search. We do not receive or store audio.
- The App does not request App Tracking Transparency (IDFA) and does not serve cross-app advertising tracking. (The free/trial tier may show in-app messaging about upgrading.)
- We do not receive the content of the streams you watch from your IPTV provider.
3.8 Diagnostics, Crash Reports and Usage Statistics
| Data | Why | Where |
|---|---|---|
| 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 in | Find and fix crashes | Firebase 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 in | Diagnose the problem you reported | Cloud 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 identifier | Understand how the App is used so we can improve it | Firebase 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.
4. Legal Bases for Processing (GDPR)
Where the EU/UK GDPR applies, we rely on the following legal bases:
| Processing activity | Legal basis |
|---|---|
| Creating/maintaining your account; authentication | Performance of a contract (Art. 6(1)(b)) — our Terms with you |
| Cloud sync of your playlists, profiles, favorites, history | Performance 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 mode | Performance of a contract and consent of the account holder |
| Crash reports and problem reports you send | Legitimate 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 compliance | Legal 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):
| Provider | What they receive / process | Purpose |
|---|---|---|
| Google Firebase — Authentication & Cloud Firestore | Account 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 status | Account management, cloud database, cross-device sync |
| Google Sign-In (if you use it) | Google account email, display name, profile picture URL, ID/access tokens | Federated authentication |
| Google Firebase Crashlytics | Crash reports as described in Section 3.8 | Finding and fixing crashes |
| Google Firebase Analytics | Usage statistics as described in Section 3.8 | Improving the App (not advertising) |
| RevenueCat | Subscription status, entitlements, purchase history, customer/device identifiers, app version | Subscription and entitlement management |
| Apple In-App Purchase / Google Play Billing | Your 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/watch | Independent data controller — not operated or controlled by us. See Section 2 |
| Google Fonts / image-loading providers | Font requests and image (logo/artwork) URLs from your playlists are fetched and cached | Typography 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:
- A restriction mode (block-all or allow-all) and per-channel/VOD/series content allow/block rules;
- A daily watch-time limit and a bedtime window;
- A detailed per-profile watch-time usage log (e.g., minutes watched per day, retained for a rolling period).
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).
- Kids profiles are a parental-control feature operated under an adult's account; the personal data tied to the account (email, device identifiers, subscription) belongs to the adult account holder, not the child.
- Usage statistics are switched off while a Kids profile is active (see Section 3.8).
- The watch-time usage log for a kids profile is used solely to enforce the limits the adult set; it is not used to build advertising profiles or sold.
- Because the App provides no content of its own, the appropriateness of what a child can view depends entirely on the sources the adult adds. Use the kids-mode PIN and content rules to restrict access.
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
| Data | Retention |
|---|---|
| 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 records | As 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 logs | Rolling 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 sent | While 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:
- Cleartext (HTTP) streaming is allowed. Many IPTV servers only support unencrypted HTTP. To remain compatible, the App permits cleartext connections. When you use an HTTP (not HTTPS) source, data sent to that source — which can include the credentials and stream URLs you entered — travels unencrypted and could be intercepted on untrusted networks. Prefer HTTPS sources where available.
- Local data is not encrypted at rest by default. On a rooted/jailbroken device, the on-device database could be extracted.
- No method of transmission or storage is 100% secure. We cannot guarantee absolute security.
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:
- Access the personal data we hold about you;
- Correct inaccurate or incomplete data;
- Delete your data ("right to be forgotten");
- Export / port your data in a portable format;
- Restrict or object to certain processing;
- Withdraw consent where processing is based on consent;
- Not be discriminated against for exercising your rights.
How to exercise them:
- Many actions are available in-app: edit your profiles and settings, remove registered devices, clear watch/search history, and delete your account.
- For other requests, email eyasaboud@gmail.com
[CONFIRM — dedicated privacy address]with the subject "Privacy Request." We will verify your identity (typically by confirming control of your account email) and respond within the timeframe required by law (generally 30 days under GDPR; 45 days under CCPA/CPRA, extendable). You may use an authorized agent where permitted.
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:
- The right to lodge a complaint with a supervisory authority (for example, your national Data Protection Authority, or the UK ICO). We ask that you contact us first so we can try to resolve your concern.
- The right to object to processing based on legitimate interests (such as our device-limit and anti-abuse processing) and to processing for direct marketing.
- The right not to be subject to decisions based solely on automated processing that produce legal or similarly significant effects. The App's device-limit and sync conflict-resolution logic are automated but do not make legally significant decisions about you; contact us if you have questions.
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:
- Know / Access the categories and specific pieces of personal information we have collected, the sources, the business purpose, and the categories of third parties with whom we share it;
- Delete personal information we have collected from you;
- Correct inaccurate personal information;
- Opt out of the "sale" or "sharing" of personal information and limit the use of sensitive personal information;
- Non-discrimination for exercising your rights.
Categories of personal information collected (per the CCPA), in the past 12 months:
- Identifiers — email, display name, account UID, device identifiers (device ID, Android ID/IDFV, MAC address, hardware GUID), IP address (received by your IPTV provider, not by us);
- Internet/network activity — watch history, search history, app interaction within the App;
- Commercial information — subscription status and purchase history;
- Sensitive personal information — your account log-in credentials (email and Firebase-managed password hash) and any source credentials you enter.
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:
- In the App: open Settings/Account and choose Delete Account
[CONFIRM exact menu path]; or - 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.