IPTV Deck Privacy Policy

Last updated: October 20, 2026

1. Who we are

IPTV Deck (“the App”) is made by Zbigniew Szepczyński Software (“ZS Software”, “we”, “us”), a business run by Zbigniew Szepczyński at ul. Kobierzyńska 8/120, 30-363 Kraków, Poland. We are the controller of the personal data described in this policy. For anything related to your privacy, write to mistyksu@gmail.com.

This policy covers the App on phones, tablets, TVs and computers, and the online services behind it: your account, sync, Premium, pairing your devices and the web panel (section 3.6).

2. In short

3. What we store and why

3.1 On every installation, signed in or not

3.2 When you sign in

3.3 Purchases

3.4 Diagnostics

The App sends crash reports and diagnostic logs to Sentry, stored in the European Union (Germany), so we can find and fix problems. They contain your account ID and email address when you are signed in, the device model, the system and App version, and a technical description of what went wrong and of how videos played (for example the player used, waiting and buffering times, the video format and resolution and the number of frames shown), which can include the names of channels or categories and the name of your provider's server. Usernames, passwords, tokens and MAC addresses are removed from addresses before a report is sent. Sentry also sees the IP address of the connection and may use it to estimate your country. Reports are kept for up to 90 days.

3.5 Services your device contacts directly

3.6 The web panel and IPTV Deck Connector

3.7 Questions you ask in Help

When you ask a question under Help in the App, in the web panel or in our online manual, the text of the question goes to our Cloud Function. It asks TypeSafe (api.typesafe.ai), an AI service, which pages of the manual fit the question, and then sends the question with the text of those pages to Anthropic (api.anthropic.com), whose AI model Claude writes a short answer from them. TypeSafe and Anthropic receive the question and parts of the manual, and nothing about your account or device; under Anthropic's commercial terms the question is not used to train its models. When you are signed in, your account ID is used only to count how many questions you ask and is not kept with the question. When the manual has no clear answer, we keep the text of the question, without your account, device or IP address, for 90 days, to see what the manual is missing. A follow-up question is sent together with the earlier questions and answers of the same conversation, at most the last six, only to answer it. The conversation is kept on your device (in the online manual, in the browser tab) and is not stored by us. Under an answer you can mark it helpful or not helpful with a thumb. We keep that rating anonymously, only the topic of the answer and the thumb you chose, without your account, device or IP address, for 180 days, to improve the manual. Talk to a person sends us the email address you give for our reply, your note, the last messages of the conversation (at most six questions with their answers), the platform and app version, the language of your browser or device and, when you are signed in to the App, your account ID. It goes to our support inbox in our Firebase project (Cloud Firestore), is kept for 180 days and is used only to answer you. When you are not signed in, your device (in the online manual, your browser) first solves a small computing puzzle that shows our server the question comes from a person using the App or the manual and not from an automated script. It is computed on your device, and nothing about it is stored. If a daily limit of questions per account is switched on, we keep a count of the questions each account asks per day, which is deleted after two days. Please do not type passwords, card numbers or other personal details into a question.

3.8 When the end credits begin

So that the next-episode card and the Finish card appear when the end credits really begin, for everyone who watches the same film or episode, the App tells us where viewers actually stop watching. When, in the last minutes of a film or an episode, you press Finish the film or Play now on the Up next card, skip to the end or leave the player, the App sends our Cloud Function three things and nothing else: the TMDB ID of the film, or of the series together with the season and episode numbers; the length of the video file, rounded to 10 seconds; and how many seconds before the end of the file that moment came. The report contains no account, email address or device identifier, nothing about your playlist, your provider or the stream address, and nothing about anything else you watch. It is sent without your sign-in token even when you are signed in, and we do not store your IP address with it; like every request to our servers, it appears in the server logs we keep for 30 days (section 3.1).

The reports are stored in Cloud Firestore like our other data, grouped by title and by video length, and we keep only the last 25 positions for each title and length: every new one replaces the oldest. From them we work out where the end credits begin and offer that point to every copy of the App, which fetches it without signing in, through Firebase Hosting. This data is not passed to TheIntroDB or anyone else.

The reports are on by default. You can turn them off with Help improve Up next timing in Settings → Playback on phones and tablets, in Settings → Player on TVs and in the desktop App, or in the settings of the web panel (iptvdeck.zssoftware.eu).

4. Legal bases

If you are in the European Union, the European Economic Area or the United Kingdom, we rely on these legal bases under the GDPR:

5. Who processes your data

These service providers process data for us under their data processing terms:

Apple, Google Play, Google and Apple sign-in, TMDB, OpenSubtitles, Trakt, TheIntroDB, Google Gemini and your IPTV provider are independent services with their own privacy policies. We do not sell or rent your personal data to anyone.

6. International transfers

Some of these providers process data in the United States. These transfers rely on the EU-US Data Privacy Framework or on the European Commission's Standard Contractual Clauses included in the providers' data processing terms.

7. How long we keep data

8. Your rights and choices

9. Security

Every connection to our servers is encrypted (HTTPS/TLS), and security rules let a signed-in user reach only their own data. Passwords kept in your account are encrypted with AES-256-GCM using a key held in Google Secret Manager, and only our server code can decrypt them. No method of storage or transmission is 100% secure.

End-to-end encryption (optional) encrypts your synced data on your device with XChaCha20-Poly1305 before it is uploaded. The key never leaves your devices: it is shown to you once as a recovery code and kept in the system's secure storage, marked so that it is not copied to iCloud or other backups. The key is never kept outside that storage: on a device that cannot keep it safely, such as an Android device whose Keystore refuses to store it, end-to-end encryption cannot be turned on or used, and the App says so.

This has a consequence we want to state plainly: we cannot read that data, reset the key or recover the data for you. If you lose the recovery code and no longer have a device holding the key, the data in the cloud stays unreadable for you and for us. In the App you can start over from a device that still has its local copy. End-to-end encryption does not cover passwords kept in your account, which use our key as described above.

10. Children

The App is not directed to children. Kids profiles let a parent limit what a child sees; the account itself belongs to the adult. We do not knowingly collect data from children. If you believe a child has created an account, write to us and we will delete it.

11. Changes to this policy

We update this policy when the App changes what it collects. The date at the top shows the current version, and we describe significant changes in the App's release notes.

12. Contact

Privacy questions and requests:

Email: mistyksu@gmail.com

Controller: Zbigniew Szepczyński Software, ul. Kobierzyńska 8/120, 30-363 Kraków, Poland