Політика конфіденційностіPrivacy Policy
Оновлено: Last updated:
This policy explains what personal data KPI Pixel (https://pixel.dobrocode.com, the Slack app “KPI Pixel” and related services) collects, why, where it is stored and how you can control it. KPI Pixel is operated by DOBROCODE (“we”, “us”).
1. Who is responsible
DOBROCODE is the data controller for account data (people who sign up or sign in), billing data and our website. For data about a customer’s team that the customer brings into KPI Pixel (for example, Slack members, tasks, KPI and payroll), the customer (the employer) decides what is processed and DOBROCODE processes it on the customer’s behalf. [to confirm: controller/processor split and a data processing agreement]
Contact for any privacy question: v.ivaschenko@dobrocode.com.
2. What we collect
2.1 Account data you give us
- Name, email address and password (stored only as a salted hash), company name and time zone.
- If you use “Sign in with Slack”: your name, email, avatar, Slack user ID and Slack workspace (team) ID, received from Slack via OpenID Connect (scopes
openid,email,profile). - Invitations you send: the invitee’s email and role.
2.2 Data from Slack after a workspace admin installs the app
- Workspace (team) ID and the bot access token (encrypted, see section 6).
- Workspace members: Slack user ID, full name, email, avatar URL, profile title, phone, time zone, status text and emoji, admin flag, custom profile fields, and whether the account is deactivated.
- Items of the Slack Lists your workspace shares with the app (task title, assignee, status, dates and other list columns) and a history of their changes. When a task is closed with
/doneor on the canvas, we update its status in the List. - What people send to the app: check-in times, check-out form answers and photos attached to the check-out form; text of the
/done,/proposal(partner name, amount or stage),/partnerand/kpicommands. - Online status (“active” or “away”), sampled every 30 minutes by default (configurable: 15–60), only for employees who have given recorded consent under the workspace’s consent text. Consent can be withdrawn at any time; sampling then stops. Raw samples are deleted after 90 days. Online status is informational and does not affect pay.
- Names and IDs of channels (to let an admin choose where reports are posted), and references (IDs, timestamps) of messages the bot posts so it can update them.
We do not read channel message history, direct messages between people, or files other than Slack Lists shared with the app and photos submitted in the check-out form. The app does not request history scopes.
2.3 Data from other services a customer chooses to connect
- Shopify: orders are read and turned into daily aggregates (revenue, order counts, cost of goods, fulfilment timing, receivables), in some cases attributed to an employee. We do not store individual orders or the store’s customers’ personal data.
- Finmap: expense totals by category, balances of debts the customer links, planned cash operations for the next 13 weeks and salary payouts matched to employees (amount and date).
- Meta Ads, Google Ads: daily advertising aggregates (spend, conversions, revenue). No ad audience data.
- DobroChat: aggregate per-manager KPI statistics. No chat transcripts.
- writeoff: aggregate warehouse metrics sent by the writeoff Slack app.
Access keys for these services are stored encrypted and are deleted when the service is disconnected.
2.4 Data your team enters in KPI Pixel
KPI definitions, values and manual ratings; departments, positions, employment type, hire and termination dates; pay models, payroll periods and payments; debts and cash plans; board (canvas) content, comments and attached files; consent records (consent text version, time and method).
2.5 Billing data
Subscription status, number of paid seats and invoices. Card payments are processed by monobank (Plata by mono). We never receive the full card number; for monthly charges we keep an encrypted card token and a masked card number provided by monobank.
2.6 Technical data
Session records (IP address, browser user agent), an audit log of changes inside a workspace (who changed what, when, IP and user agent), rate-limit counters and standard server logs of our hosting provider.
3. Why we use it
- To provide the service the customer signs up for: task canvas, team directory, KPI, check-in bot, payroll and finance views (contract).
- To process employee data on the customer’s instructions (the customer’s legal basis as employer).
- To sample online status — only on the employee’s consent.
- To bill the subscription and meet accounting obligations (contract, legal obligation).
- To keep the service secure, prevent abuse and debug failures (legitimate interest).
- To send service emails: email confirmation, password reset, invitations and billing notices. We do not send marketing emails.
4. What we never do
- We do not sell or rent personal data and do not use it for advertising.
- We do not use Slack data or any customer data to train artificial intelligence or machine learning models.
- We do not share one workspace’s data with another; every query is isolated per workspace at the database level.
5. Where data is stored and who processes it
The main database is in the European Union (Frankfurt, Germany). We use these subprocessors:
| Provider | Purpose | Location |
|---|---|---|
| Vercel Inc. | Application hosting, serverless functions, scheduled jobs | Functions in Frankfurt (fra1); global CDN for static assets |
| Neon, Inc. | PostgreSQL database | AWS eu-central-1, Frankfurt, Germany |
| Vercel Blob | Private file storage (check-out photos, board files) | Frankfurt (fra1) |
| Resend | Service emails (confirmation, password reset, invitations, billing) | USA [уточнити] |
| Universal Bank (monobank, Plata by mono) | Card payments and recurring charges | Ukraine |
| Slack Technologies, LLC | Messaging platform the app runs in | USA / per Slack data residency |
Where data is transferred outside the EU/EEA or Ukraine, we rely on the providers’ standard contractual clauses or equivalent safeguards. [уточнити]
6. Security
- All traffic is encrypted with TLS (HTTPS only, HSTS).
- Slack and other integration tokens and the card token are encrypted with AES-256-GCM, bound to the workspace, with key rotation.
- Passwords are stored only as hashes. Files and photos are kept in private storage and served only to authorised members.
- Access inside a workspace follows roles (owner, CEO/admin, manager, employee) enforced by database row-level security.
7. How long we keep data
- Online status samples: 90 days, then deleted automatically.
- Slack and other integration tokens: deleted immediately when the integration is disconnected in settings or when the Slack app is uninstalled or its tokens are revoked.
- Workspace data (team, tasks, KPI, payroll, aggregates, files): kept while the workspace exists, including a read-only period if the subscription is unpaid, so that nothing is lost. After the workspace is closed, data is deleted within 30 days. [уточнити]
- On a verified deletion request, we delete the workspace or account within 30 days. [уточнити]
- Billing records: as long as required by Ukrainian accounting law. [уточнити]
8. Your rights
Under the EU General Data Protection Regulation (GDPR) and the Law of Ukraine “On Personal Data Protection” you can ask to access, correct, delete, restrict or export your personal data, object to processing and withdraw consent at any time. You may also complain to a supervisory authority — in Ukraine, the Ukrainian Parliament Commissioner for Human Rights; in the EU, your local data protection authority.
If you are an employee of one of our customers, your employer manages your data in KPI Pixel; contact them first. We will help them respond.
9. How to request export or deletion
Email v.ivaschenko@dobrocode.com from the address of your KPI Pixel account (for a whole workspace — from the owner’s address). Tell us whether you want an export or deletion. We confirm your identity and respond within 30 days.
10. How to uninstall the Slack app
- In KPI Pixel (owner or CEO): Settings (Налаштування) → Integrations (Підключення) → Slack → Disconnect (Відключити). This revokes our token in Slack. Or in Slack: Tools & settings → Manage apps → KPI Pixel → Remove app.
- When the app is removed, Slack notifies us; we stop all requests to Slack and erase the stored token and workspace link right away. Data already imported (team, tasks, history) stays in your KPI Pixel workspace until you delete it — email v.ivaschenko@dobrocode.com to have it removed.
11. Cookies
We use only strictly necessary cookies to keep you signed in (session cookies). Your language choice on public pages is saved in your browser’s local storage. We do not use analytics or advertising cookies.
12. Children
KPI Pixel is a business tool and is not intended for people under 16.
13. Changes to this policy
We will post any change on this page and update the date at the top. For significant changes we will notify workspace owners by email in advance.
14. Contact
DOBROCODE, v.ivaschenko@dobrocode.com.
Ця політика пояснює, які персональні дані збирає KPI Pixel (https://pixel.dobrocode.com, Slack-апка «KPI Pixel» і пов’язані сервіси), навіщо, де вони зберігаються і як ними керувати. Оператор KPI Pixel — DOBROCODE («ми»). У разі розбіжностей між мовними версіями переважає англійська.
1. Хто відповідає
DOBROCODE — володілець даних акаунтів (тих, хто реєструється чи входить), білінгу та сайту. Дані про команду клієнта, які він додає в KPI Pixel (люди зі Slack, задачі, KPI, зарплата), визначає клієнт-роботодавець, а DOBROCODE обробляє їх за його дорученням. [уточнити]
Контакт з питань даних: v.ivaschenko@dobrocode.com.
2. Що ми збираємо
2.1 Дані акаунта, які ви надаєте
- Ім’я, email і пароль (лише як солений хеш), назва компанії та часовий пояс.
- Під час «Увійти через Slack»: ім’я, email, аватар, Slack user ID і ID workspace (team) — від Slack через OpenID Connect (скоупи
openid,email,profile). - Запрошення: email запрошеного і роль.
2.2 Дані зі Slack після встановлення апки адміністратором
- ID workspace (team) і токен бота (зашифрований, див. розділ 6).
- Учасники workspace: Slack user ID, повне ім’я, email, аватар, посада, телефон, часовий пояс, статус (текст і емодзі), ознака адміністратора, власні поля профілю, ознака деактивації.
- Записи Slack Lists, якими workspace поділився з апкою (назва задачі, виконавець, статус, дати, інші колонки), та історія їх змін. Коли задачу закрито командою
/doneабо на канвасі, ми оновлюємо її статус у списку. - Те, що люди надсилають апці: час чекіну, відповіді форми чекауту і фото, додані до неї; текст команд
/done,/proposal(партнер, сума або стадія),/partner,/kpi. - Онлайн-статус («активний» / «відсутній»), за замовчуванням раз на 30 хвилин (налаштовується: 15–60), лише для працівників із зафіксованою згодою на текст згоди workspace. Згоду можна відкликати будь-коли — тоді опитування припиняється. Сирі зразки видаляються через 90 днів. Онлайн-статус інформаційний і не впливає на оплату.
- Назви та ID каналів (щоб адмін обрав, куди надсилати звіти) і посилання (ID, час) на повідомлення бота, щоб їх оновлювати.
Ми не читаємо історію повідомлень каналів, особисте листування людей і файли, крім Slack Lists, якими поділились з апкою, та фото з форми чекауту. Скоупів на історію апка не запитує.
2.3 Дані з інших сервісів, які підключає клієнт
- Shopify: замовлення читаються і перетворюються на денні агрегати (виручка, кількість замовлень, собівартість, терміни комплектації, дебіторка), інколи з прив’язкою до працівника. Окремі замовлення та персональні дані покупців магазину ми не зберігаємо.
- Finmap: суми витрат за категоріями, залишки боргів, які пов’язав клієнт, планові операції на 13 тижнів і виплати зарплати, зіставлені з працівниками (сума і дата).
- Meta Ads, Google Ads: денні агрегати реклами (витрати, конверсії, дохід). Без даних аудиторій.
- DobroChat: агрегована KPI-статистика менеджерів. Без текстів чатів.
- writeoff: агреговані складські метрики від Slack-апки writeoff.
Ключі доступу до цих сервісів зберігаються зашифрованими й видаляються при відключенні.
2.4 Дані, які вносить ваша команда
Визначення KPI, значення й ручні оцінки; відділи, посади, тип зайнятості, дати прийняття і звільнення; моделі оплати, періоди й виплати; борги та план руху грошей; вміст борду (канвасу), коментарі й файли; записи згод (версія тексту, час, спосіб).
2.5 Дані білінгу
Статус підписки, кількість оплачених місць і рахунки. Оплату карткою обробляє monobank (Plata by mono). Повного номера картки ми не отримуємо; для щомісячних списань зберігаємо зашифрований токен картки і маскований номер від monobank.
2.6 Технічні дані
Записи сесій (IP-адреса, user agent браузера), журнал змін у workspace (хто, що, коли, IP і user agent), лічильники обмеження запитів і стандартні журнали хостинг-провайдера.
3. Навіщо ми їх використовуємо
- Щоб надавати сервіс: канвас задач, довідник команди, KPI, бот чекіну, зарплата і фінанси (договір).
- Щоб обробляти дані працівників за дорученням клієнта (правова підстава клієнта як роботодавця).
- Щоб перевіряти онлайн-статус — лише за згодою працівника.
- Щоб виставляти рахунки й вести облік (договір, вимоги закону).
- Щоб захищати сервіс, запобігати зловживанням і виправляти збої (законний інтерес).
- Щоб надсилати службові листи: підтвердження email, скидання пароля, запрошення, повідомлення про оплату. Маркетингових розсилок немає.
4. Чого ми ніколи не робимо
- Не продаємо і не передаємо в оренду персональні дані, не використовуємо їх для реклами.
- Не використовуємо дані Slack чи будь-які дані клієнтів для навчання моделей штучного інтелекту чи машинного навчання.
- Не змішуємо дані різних workspace: кожен запит ізольовано на рівні бази даних.
5. Де зберігаються дані і хто їх обробляє
Основна база даних — у Європейському Союзі (Франкфурт, Німеччина). Субпроцесори:
| Постачальник | Призначення | Розташування |
|---|---|---|
| Vercel Inc. | Хостинг застосунку, серверні функції, планові задачі | Функції у Франкфурті (fra1); глобальна CDN для статичних файлів |
| Neon, Inc. | База даних PostgreSQL | AWS eu-central-1, Франкфурт, Німеччина |
| Vercel Blob | Приватне сховище файлів (фото чекауту, файли борду) | Франкфурт (fra1) |
| Resend | Службові листи (підтвердження, скидання пароля, запрошення, білінг) | США [уточнити] |
| Universal Bank (monobank, Plata by mono) | Оплата карткою та регулярні списання | Україна |
| Slack Technologies, LLC | Платформа, у якій працює апка | США / за налаштуваннями data residency Slack |
Передавання даних за межі ЄС/ЄЕЗ чи України відбувається на підставі стандартних договірних положень постачальників або рівноцінних гарантій. [уточнити]
6. Безпека
- Увесь трафік шифрується TLS (лише HTTPS, HSTS).
- Токени Slack та інших інтеграцій і токен картки шифруються AES-256-GCM з прив’язкою до workspace і ротацією ключів.
- Паролі зберігаються лише як хеші. Файли й фото — у приватному сховищі, доступні лише уповноваженим учасникам.
- Доступ у workspace — за ролями (власник, CEO/адмін, менеджер, працівник), що забезпечує row-level security бази даних.
7. Скільки ми зберігаємо дані
- Зразки онлайн-статусу: 90 днів, далі автоматично видаляються.
- Токени Slack та інших інтеграцій: видаляються одразу при відключенні в налаштуваннях, видаленні апки зі Slack або відкликанні токенів.
- Дані workspace (команда, задачі, KPI, зарплата, агрегати, файли): поки workspace існує, зокрема в режимі «лише читання» при неоплаченій підписці, щоб нічого не втратити. Після закриття workspace дані видаляються протягом 30 днів. [уточнити]
- За підтвердженим запитом видаляємо workspace чи акаунт протягом 30 днів. [уточнити]
- Дані білінгу: стільки, скільки вимагає українське законодавство про бухгалтерський облік. [уточнити]
8. Ваші права
Відповідно до GDPR та Закону України «Про захист персональних даних» ви можете запросити доступ, виправлення, видалення, обмеження обробки чи експорт своїх даних, заперечити проти обробки і будь-коли відкликати згоду. Також можна поскаржитися до наглядового органу — в Україні це Уповноважений Верховної Ради України з прав людини, у ЄС — місцевий орган із захисту даних.
Якщо ви працівник нашого клієнта, вашими даними в KPI Pixel керує роботодавець — спершу зверніться до нього. Ми допоможемо йому відповісти.
9. Як запросити експорт або видалення
Напишіть на v.ivaschenko@dobrocode.com з адреси вашого акаунта KPI Pixel (для всього workspace — з адреси власника) і вкажіть, що потрібно: експорт чи видалення. Ми підтвердимо особу і відповімо протягом 30 днів.
10. Як видалити Slack-апку
- У KPI Pixel (власник або CEO): Налаштування → Підключення → Slack → Відключити — токен відкликається в Slack. Або в Slack: Інструменти й налаштування → Керування апками → KPI Pixel → Видалити апку.
- Після видалення Slack повідомляє нас; ми одразу припиняємо запити до Slack і стираємо токен та прив’язку workspace. Уже імпортовані дані (команда, задачі, історія) лишаються у вашому workspace KPI Pixel, доки ви їх не видалите — напишіть на v.ivaschenko@dobrocode.com.
11. Cookies
Ми використовуємо лише необхідні cookies, щоб ви лишались у системі (cookies сесії). Вибір мови на публічних сторінках зберігається в локальному сховищі браузера. Аналітичних і рекламних cookies немає.
12. Діти
KPI Pixel — бізнес-інструмент і не призначений для осіб, молодших 16 років.
13. Зміни політики
Зміни публікуємо на цій сторінці й оновлюємо дату вгорі. Про суттєві зміни заздалегідь повідомляємо власників workspace листом.
14. Контакти
DOBROCODE, v.ivaschenko@dobrocode.com.