🐾 Personal Data Processing Policy ✨
Effective from 2 November 2026
This is an English translation provided for convenience. The Czech version is authoritative.
1. Who processes your data
The data controller is Marek Polcar, Company ID 03840131, registered at Keřová 716/5, 641 00 Brno, Czech Republic. The contact e-mail is ahoj@kyna.cz. I have not appointed a data protection officer; please contact me directly in all matters.
2. What data I process
- Account data: name, e-mail address and password stored as an irreversible hash.
- How you heard about us: the answer to a single question asked at registration, namely whether you found Kyna through a recommendation, through Ťapka, on Facebook, in a search engine, from another kennel's flyer, at a show, or elsewhere. Plus an optional note you may leave blank. I ask so that I know what is worth doing next, and so that I can thank whoever recommended Kyna. If you put a person's name in that note, I process that name too, solely for that thank you. You do not have to name anyone, the note is optional. Only the option you picked goes into the statistics, that is "recommendation", "Facebook" and so on; the note never goes into the statistics, precisely because it may carry a name.
- Kennel data: the name, the contact details you fill in yourself, and the logo if you upload one.
- Dog data: name, breed, sex, date of birth, titles, health clearances and any other details you enter into the app.
- Photographs: the dog photos you upload and the images the app creates from them.
- Support messages: the content of messages you send me through the in-app support, including any attachments.
- Order data: what you ordered, when and for how much.
- Payment data: processed exclusively by the Stripe payment gateway. Your card number never reaches me and I do not store it.
- Technical data: information about how you use the app, IP address and browser type; with your consent also the recording of your visit to the app described in section 8.
3. Why I process the data
- Performance of a contract: running your account, creating flyers, delivering them and making them available for download. Without this data the service cannot be provided.
- Samples of my work: I publish a flyer with the Kyna mark, and the photographs it was made from, as a sample of my work on kyna.cz, on social media and in promotional materials, together with the kennel name and the breed. I do so under the licence you grant me when you order a flyer with the mark (terms, section 6). For the version without the mark I do not do so without your express consent. You can revoke the licence at any time at ahoj@kyna.cz.
- Legal obligation: keeping tax and accounting records.
- Legitimate interest: securing the service, preventing abuse and measuring which parts of the app are used.
- Consent: sending the newsletter; you can withdraw the consent at any time via the link in every e-mail. And the measurement cookie and the recording of your visit to the app, both described in section 8, which also says how to withdraw that consent.
4. Who I share the data with
I do not sell your data to anyone. I rely on the following processors to run the service:
| Processor | What it is for | What data is shared | Where, and on what basis |
|---|---|---|---|
| Supabase | database and sign-in | account, kennel, dog and order data, and support messages | European Union, data stays in the EU |
| Cloudflare | image storage (R2), website hosting and bot protection on forms (Turnstile) | photographs, generated flyers and technical data | European Union, storage is bound to the European region |
| Hetzner | the servers that run the app (api.kyna.cz) and the flyer agent | the data the app and the agent process while they work | European Union (Germany) |
| Google Gemini | flyer creation | dog photographs, the cynological details you enter and the contact details to be shown on the flyer | United States, European Commission standard contractual clauses |
| Anthropic (Claude) | changing a flyer at your request, fixing a draft that failed a check, and checking the text before the first draft | the flyer to be changed and its earlier drafts, the text of your request, dog photographs, the kennel logo, dog and kennel details including the breeder's name and contact details | United States, model processing may also take place in other countries; European Commission standard contractual clauses |
| Stripe | payments | e-mail and payment data | United States, European Commission standard contractual clauses |
| Resend | order confirmations, support message notifications, and an e-mail when a change to a flyer is done, when I have a question about it, or when it stopped (without the text of your change, only the flyer's title) | e-mail, order data and support message content | United States, European Commission standard contractual clauses |
| PostHog | measuring how the website and the app are used; with your consent, recording your visit to the app | technical data and an anonymous identifier; for a visit recording, what the app showed on screen | European Union, the eu.posthog.com instance |
| EmailOctopus | newsletter delivery | e-mail, optionally your name and kennel name | European Union (Ireland), with access from the United Kingdom under the European Commission adequacy decision |
5. Photographs and artificial intelligence
This is the most important part of this policy, which is why I state it separately. The flyer comes about by my sending photographs of your dogs, the details you enter about them, and the contact details to be shown on the flyer, to Google for processing, specifically to the Gemini service. Without this transfer the flyer cannot be created; it is the essence of the service.
According to its terms for the paid Gemini API, Google does not use data sent through this interface to train its models. The current wording is available in the Google terms. If you do not want your photographs to reach this processor, please do not use the service.
Flyers are also worked on by an agent built on the Claude model from Anthropic. When you ask for a change to a flyer, the agent receives the flyer to be changed, its earlier drafts, the text of your request and of the requests you wrote for that flyer before, the photographs of your dogs, the kennel logo and the details you entered for the flyer: the dogs' names, breeds and sex, their titles, health clearance results and other notes, the flyer's headline and mood, the kennel name, the breeder's name and the contact details. It receives the same material when it fixes a draft that failed a check. Before the first draft of a flyer I send it the text that is to appear on the flyer for checking, this time without photographs: the kennel name, the breeder's name, the contact details, the subtitle and the dog details. During this check the agent may search the internet, for example for the exact name of a title or a health test, and a search query may contain part of the text being checked. I do not send the agent any sign-in or payment details.
Under its commercial terms, Anthropic may not use data sent through its interface to train its models. It automatically deletes the interface's inputs and outputs within 30 days. It keeps them longer only when its automated systems flag them as violating its usage policy, and then for up to 2 years, or when the law requires it. My contracting party is Anthropic Ireland, Limited. The data is stored in the United States, and the model processing itself may also take place in other countries. The transfer is governed by the European Commission standard contractual clauses that form part of the Anthropic Data Processing Addendum. The current wording is available in the Anthropic commercial terms and in its data retention rules.
I keep the record of the agent's work, that is what it received, what it did and what it returned, including the files it worked with, in Cloudflare R2 storage. It lets me show what the agent did with your flyer and improve its work. I keep it for as long as your account exists and delete it together with the account.
By uploading a photograph you confirm that you hold the rights to it. With images taken by professional photographers this may not be a given, so please verify it before uploading.
6. How long I keep the data
I keep account, kennel and dog data and the created flyers for as long as your account exists. Purchased flyers are kept even after that, so you can download them again at any time. Tax records are kept for as long as the law requires. After your account is deleted I remove the data, except what I am legally required to retain. After your account is deleted I also remove the error reports and measurement records held in PostHog under your account identifier. The visit recording described in section 8 is kept for 30 days.
7. Your rights
You have the right to access your data, to have it corrected or erased, to restrict processing, to data portability and to object to processing based on legitimate interest. You can withdraw the newsletter consent at any time. Just write to ahoj@kyna.cz and I will get back to you within one month at the latest.
If you believe I process your data unlawfully, you can lodge a complaint with the Czech Office for Personal Data Protection (Úřad pro ochranu osobních údajů), Pplk. Sochora 27, 170 00 Praha 7, uoou.cz.
8. Cookies and usage measurement
The service needs only a minimum to run: the sign-in session stored in your browser and a cookie holding your answer from the consent bar. None of it tracks what you do elsewhere on the internet.
I measure the use of the kyna.cz website and the app.kyna.cz application with PostHog, which runs on servers in the European Union. In-browser measurement is the only part of the service that stores something on your device which is not needed to run it, which is why the bar at the bottom of the page asks you about it. Your answer is stored in a cookie whose name starts with __ph_opt_in_out_ and it covers both kyna.cz and app.kyna.cz at once, so answering once is enough.
- If you accept, PostHog stores an identifier in your browser that recognises your next visit, and in the app at app.kyna.cz your visit is recorded as described in the next paragraph.
- If you decline, nothing else is stored in your browser, your visit is not recorded and I measure the use of the service in the browser anonymously, without cookies and without a persistent identifier. This does not apply on the server side, see below.
A visit recording is made only in the app at app.kyna.cz, only with your consent and only until you withdraw it. Until you answer the bar nothing is recorded, and on the kyna.cz website nothing is recorded at all. For a recording PostHog stores what the app showed on the page and how it changed, where you click or tap and how you scroll, so I can play the visit back much like a video. I do it to find the places where the app leaves a person standing without saying why: with a small number of visits, numbers cannot show that. What you type into fields is stored in the recording too, for example dog names, text about a litter, your e-mail when signing in or a message to support. Passwords are not stored, only asterisks remain in their place. Text the app itself displays is stored as well, which includes the kennel name, dog names, contact details and text you entered earlier wherever the page shows them. Photographs and flyers are not copied into the recording, only the address an image is loaded from. The content of requests sent to the server, their headers and the browser console output are not recorded. A recording is stored in PostHog in the European Union for 30 days and then deleted; if you write to me, I will delete it sooner. The legal basis is your consent.
Regardless of your answer, three things are recorded on the server side for measurement; besides the measurement there are two further records, described in the two paragraphs that follow. Error reports, so that service failures can be found and fixed: they contain your account identifier, the address where the error occurred, and up to fifteen lines of Kyna's own source code around each frame of the stack trace. A record of a completed purchase, at the moment of payment. And the progress of a signed-in user through flyer creation: the flyer being started and which control in the app started it, and the start, completion or failure of each generation, along with the generation mode, the round number, the number of variants and how long it took. No photograph, dog name or flyer text is sent to the measurement. The legal basis is performance of the contract for the purchase, and legitimate interest in the secure, functional and usable operation of the service for the error reports and the creation progress. These records are not produced in your browser and store nothing on your device, which is why the consent bar does not govern them.
Besides the measurement, I keep a record of the service performed on each flyer: when it was created, which wizard fields you saved and with what value, when generation ran and how many variants it produced, what you put in the basket and took out again, when you went to payment and when an order was created. It includes the text you type into the flyer yourself: the litter name, the mood description and the kennel details, and also the changes you type into a design's change field, because without them there is no way to establish afterwards what you were actually trying. Dog names are not stored, only their identifiers, and no photograph or finished flyer goes into this record. The legal basis is performance of the contract: it is the record of the service I provided to you, not measurement. The "Measure how I use the app" switch therefore does not cover this record, and that is deliberate: when you write to me that something did not work, it is the only thing that can establish what. I keep it for the life of the account and delete it together with the account. Deleting a flyer does not remove it: the flyer disappears from the app, but the record of the service I provided to you remains until the account is closed.
Besides the measurement, the server also keeps an operational request log. It is used to run and secure the service and to find faults: without it there is no way to establish afterwards what happened to you in the app. For each request the app sends to the server (api.kyna.cz) it records the time, the request method and address, the response code, how long it took, your account identifier if you are signed in, and the IP address the request came from. Request bodies and headers are not recorded, so flyer text, dog names, photographs and credentials never reach it. The log is kept for 30 days and then deleted automatically. The legal basis is legitimate interest in the secure and functional operation of the service. The "Measure how I use the app" switch does not cover this log, just as it does not cover error reports: without the operational log I could neither find a fault nor evidence it.
You can change your cookie decision at any time: click "Privacy settings" in the website footer or in the account menu in the app and the bar will appear again. Declining there also withdraws your consent to the visit recording, and no new recordings are made. You can object to the measurement of flyer creation in PostHog, which rests on legitimate interest: turn off the "Measure how I use the app" switch in the Profile section of the app, or write to me at ahoj@kyna.cz. Error reports do not stop with it, without them I would not find service failures, and neither the record of the service performed nor the operational request log described above stops with it either: both rest on a different basis and are described separately. IP addresses are anonymised in the PostHog measurement; the operational request log described above does store an IP address, for 30 days.
9. Changes to this policy
I may update this policy. The current version is always available on this page and is marked with the effective date shown at the top.