Как подхождам към доверието. С прости думи.
Даваш ми списъка си с клиенти. Това е сериозно нещо. Ето какво правя с него, честно.
Сигурност
- 🔐 TLS 1.3 навсякъде (wildcard сертификат, подновява се сам). HTTP пренасочва към HTTPS с включен HSTS.
- 🔑 Вход без парола, чрез магически линк по имейл. Няма парола за губене, няма и за крадене.
- 🧾 CSRF токени на всяка форма, която променя нещо. Строга проверка на Referer при HTTPS.
- 🛡️ Content Security Policy през Talisman (строги източници за скриптове). Входът и регистрацията са с ограничение на честотата чрез Redis.
- 🗄️ Базата данни е вързана само на 127.0.0.1, няма отворен публичен порт. Всяка нощ прави се криптиран бекъп на диск.
- 🕵️ Всяко важно действие попада в одит лог (добавено посещение, използвана награда, променени настройки, ghost login).
Надеждност
- ⏱️ Хостнато на Hetzner, Франкфурт, в ЕС. Публична проверка на състоянието на /healthz.
- 💾 Нощен бекъп с pg_dump, пази се 14 дни. Веднъж месечно сам тествам възстановяването.
- 📉 Ако нещо се счупи, поправката излиза същия ден. Аз поддържам един продукт, не петдесет.
- 📊 Цел за време без прекъсване 99,5 на сто (в най-лошия случай, около 3,5 часа престой на месец). Още нямам SLA с компенсации - ще подпиша такова с първия салон, който го поиска.
Поверителност и GDPR
- 🇪🇺 Всички данни стоят в ЕС (Hetzner, Франкфурт). Нищо не напуска ЕС/ЕИП, освен доставката на имейли през Brevo, което също е хостнато в ЕС.
- 🚫 Никаква аналитика от трети страни с бисквитки. Няма Google Analytics, няма Facebook Pixel, няма запис на сесии.
- 📤 Можеш да експортираш всеки клиент, посещение и награда като CSV от Настройки, когато поискаш.
- 🗑️ Клиент поиска да бъде забравен: един клик в Клиенти изтрива реда му и цялата му история с него.
- ⏳ Затваряш акаунта си и получаваш 30 дни за пълен CSV експорт. След това всичко се изтрива завинаги.
- 📄 Пълните детайли са в моята Политика за поверителност.
Sub-processors
These are the third parties that help me run fidel. Nothing else touches your data.
| Who | Why | Where |
|---|---|---|
| Hetzner | Application server, database, backups | Frankfurt (EU) |
| Cloudflare | DNS + TLS certificate (DNS-only, no traffic proxy) | EU edge |
| Brevo | Transactional + lifecycle emails to your clients | Paris (EU) |
| Stripe | Your subscription billing (never your clients) | Dublin (EU) + US |
| Anthropic (Claude) | Auto-translation of UI strings + weekly-digest rewrite. Never sees your client list. | USA (SCCs) |
Full details, transfer basis, change notification policy in SUBPROCESSORS.md.
Cookies I set
| Cookie | What for | Lasts |
|---|---|---|
| session | Signed session (login, language, flash messages) | 30 дни |
| csrf_token | CSRF protection on forms | per session |
| fidel_theme | Your dark / light theme choice | permanent (localStorage) |
| _asid | Anonymous session id for our own funnel analytics | per session |
First-party only. No third-party cookies, no cross-site trackers, no advertising IDs.
How long I keep things
- 👥 Client records - until you cancel your account (or click 🗑 on a specific client). Then 30-day grace window, then hard-deleted.
- 📊 Analytics events - 90 дни (funnel windows are 7 and 30 days; the extra buffer allows year-over-year sanity checks and is auto-purged nightly.)
- 📱 Kiosk QR tokens - 5 minutes (rotating anti-fraud); 1 day audit trace after expiry.
- 💾 Encrypted backups - 14 дни on disk, then rotated out.
- 📜 Web + app logs - 14-30 дни.
Full retention grid in RETENTION.md.
If something goes wrong
I have a written breach response plan with a 72-hour notification deadline to the Romanian supervisory authority (ANSPDCP) per GDPR Art 33, plus direct notification to every affected tenant. RTO 4 hours, RPO 24 hours, tested quarterly.
Full playbook in INCIDENT-RESPONSE.md.
Кой притежава данните
Ти. Списъкът с клиентите ти е твой бизнес, не мой. Никога не го продавам, не го споделям с никого, не тренирам ML модели върху него, не гледам индивидуални записи на клиенти, освен ако не ме помолиш да помогна с някой бъг. Експортирай по всяко време, вземи го където искаш.
Човекът зад сървърите
Здрасти, аз съм Нарцис. Направих fidel.club, след като една близка приятелка тихо губеше редовните си клиентки, а всяка опция навън беше или приложение, което клиентките ѝ никога не биха инсталирали, или корпоративно нещо за 200 евро на месец. Работя по това сам от домашния си офис в Букурещ. Когато пишеш на поддръжката, аз чета. Когато намериш бъг, аз го оправям. Когато имаш идея, която ми харесва, я пускам същата седмица. Това е цялата фирма.
Пиши ми: nark@nark.ro