Политика конфиденциальности
Настоящая Политика конфиденциальности описывает, какие персональные данные собирает приложение 12levels (далее — «Сервис») и как они обрабатываются.
1. Оператор персональных данных
Оператором персональных данных является Iuvenalii Khlopkov (PE), индивидуальный предприниматель, зарегистрированный в Республике Армения, налоговый номер 20279853, юридический адрес: 26A Movses Khorenatsi str., apt. 201, Yerevan 0010, Armenia.
Контакты для запросов по обработке персональных данных:
Email: [email protected]
Сайт: https://12levels.app
2. Категории обрабатываемых данных
Сервис обрабатывает следующие категории данных:
2.1 Идентификационные данные
- Email-адрес — при регистрации и для восстановления доступа (только если вы выбрали вход по email)
- Имя — для персонализации интерфейса (только если вы вошли через Apple/Google или указали имя при email-регистрации)
- Внутренний идентификатор пользователя (User ID) — для связи прогресса с аккаунтом
- Анонимный идентификатор устройства (UUID) — случайный UUID, который генерируется при первом запуске приложения и хранится в Keychain устройства. Используется как стабильный идентификатор для покупок и восстановления прогресса до входа через Apple/Google/Email. Подробнее см. Раздел 2.5.
2.2 Данные обучения
- Прогресс изучения слов — какие слова добавлены в обучение и их текущая стадия
- Результаты ответов — правильные / неправильные ответы, используемые для планирования интервалов повторения по алгоритму интервального повторения
- Сессии чтения — какие учебные тексты были открыты, ваша позиция в них и общий прогресс
- Текстовые ответы — фразы, которые вы вводите во время упражнений на проверку знаний
- Результаты калибровки — определённый уровень владения языком (шкала CEFR) и выявленные пробелы
2.3 Технические данные
- Crash-репорты — данные о падениях приложения через Apple MetricKit (анонимные, агрегированные) и через Sentry. Crash-репорты Sentry привязаны к внутреннему User ID (UUID) для отладки; они никогда не содержат ваш email или имя.
- Performance metrics — метрики производительности (запуск, память, медленные операции) через Apple MetricKit и Sentry; данные Sentry привязаны к внутреннему User ID (UUID).
- Диагностические breadcrumbs — короткий след последних действий в приложении перед падением (тапы, переходы между экранами, сетевые запросы без их содержимого), собираются Sentry для воспроизведения багов.
- Версия приложения и iOS — для совместимости
2.4 Платёжная информация и данные о подписке
Сервис не получает номера банковских карт, реквизиты счетов или любые другие платёжные данные. Все платежи за подписку «12levels Pro» и покупку «Навсегда» обрабатываются Apple через систему App Store In-App Purchase.
В связи с покупками внутри приложения Сервис обрабатывает следующие данные:
- Подписанный чек Apple (JWS) — криптографически подписан Apple, содержит идентификатор транзакции, идентификатор продукта (Месяц / Год / Навсегда), дату покупки, дату окончания (для подписок) и среду Apple (sandbox или production). Проверяется на сервере с помощью цепочки публичных сертификатов Apple для подтверждения подлинности и целостности.
- App Account Token (
appAccountToken) — UUID, который совпадает с внутренним User ID (см. Раздел 2.1). Этот идентификатор передаётся Apple в момент покупки, чтобы последующие уведомления Apple-→-сервер (продления, возвраты, отмены) могли быть сопоставлены с аккаунтом пользователя. До входа через Apple/Google/Email этот UUID — анонимный идентификатор устройства, описанный в Разделе 2.5, и не содержит связи с вашей реальной личностью сверх того, что Apple уже обрабатывает как платёжный посредник (ваш Apple ID). После входа тот же UUID связывается с авторизованным аккаунтом, чтобы покупки, сделанные до и после входа, оставались на одной записи. - Статус прав доступа (entitlement) — производное состояние на серверах Сервиса: какой тариф «Pro» активен для аккаунта, когда он истекает, включено ли автопродление, был ли возврат / отзыв транзакции. Используется для разграничения доступа к платным функциям и отображения корректного статуса подписки в приложении.
- События жизненного цикла подписки от Apple — получаются через Apple App Store Server Notifications V2 (серверный webhook от Apple в Сервис). Включают события
SUBSCRIBED,DID_RENEW,EXPIRED,REFUND,REVOKE,DID_CHANGE_RENEWAL_PREF. Используются исключительно для поддержания актуального статуса прав доступа; логируются в аудит-таблицу для целей соответствия требованиям и отладки.
Сервис не собирает, не видит и не имеет доступа к паролю от Apple ID, email
вашего Apple ID (Сервис видит только анонимный appAccountToken),
платёжному адресу или стране проживания пользователя сверх того, что Apple
может раскрыть косвенно через региональный ценовой уровень купленного
продукта.
2.5 Создание анонимной учётной записи после покупки
Когда вы совершаете покупку в 12levels (подписка или разовая), Сервис автоматически создаёт анонимную серверную запись, чтобы:
- Связать вашу подписку со стабильным идентификатором при переустановке приложения
- Сохранять ваш учебный прогресс для восстановления при переустановке или смене устройства
- Направить вас в правильный аккаунт, когда вы позже войдёте через Apple, Google или Email
Эта анонимная запись содержит:
- Уникальный идентификатор устройства (тот же UUID из Раздела 2.1, сгенерированный при первом запуске и хранящийся в iOS Keychain)
- Состояние вашей подписки (связано через Apple
appAccountToken) - Ваш учебный прогресс (слова, серии дней, библиотека, сессии чтения) — только данные, которые вы активно создали после покупки
Эта анонимная запись не содержит:
- Ваш email, имя, Apple ID или любую прямо идентифицирующую информацию
- Любые данные, которые Сервис не собирал через ваше активное использование приложения
До входа через Apple, Google или Email анонимная запись идентифицируется только случайно сгенерированным UUID и не может быть связана с вашей личностью Сервисом или третьими сторонами. Когда вы позже входите, та же запись обновляется на месте (UUID сохраняется как первичный ключ), и к ней прикрепляется выбранная вами учётная запись для входа (Apple ID, аккаунт Google или email). Вы можете в любой момент полностью удалить эту запись через Профиль → Удалить аккаунт.
Если вы никогда не совершаете покупку, серверная запись о вас не создаётся. Бесплатное использование остаётся полностью на вашем устройстве.
Сервис хранит анонимные записи, пока активна связанная с ними подписка. После окончания подписки (и при отсутствии дальнейшей активности) анонимная запись автоматически удаляется в течение 365 дней.
3. Цели обработки
Персональные данные обрабатываются для:
- Предоставления функциональности обучения — адаптивные алгоритмы обучения и персонализированный подбор контента на основе вашего уровня и прогресса
- Сохранения прогресса между устройствами — синхронизация через сервер
- Управления подпиской — проверка статуса оплаты через Apple, разграничение доступа к платным функциям, обработка событий продления / возврата / отмены
- Восстановления доступа — по email при потере устройства
- Улучшения сервиса — анонимная аналитика для исправления багов и улучшения UX
- Соблюдения требований законодательства — налоговая отчётность, хранение записей о транзакциях, ответы на запросы уполномоченных органов
4. Правовые основания
Обработка осуществляется на следующих основаниях:
- Согласие пользователя — для обработки данных обучения и персонализации
- Исполнение договора — для предоставления услуги по подписке, включая проверку покупок и предоставление прав доступа Pro
- Законные интересы оператора — для безопасности (предотвращение мошенничества, abuse), а также для поддержания согласованного состояния подписки через обработку webhook'ов Apple
- Требования закона — для налоговой и иной отчётности
5. Передача данных третьим лицам
Для предоставления функциональности Сервиса данные могут передаваться следующим обработчикам:
5.1 Инфраструктура и хранение
- Cloudflare — DNS, CDN, WAF, хостинг бэкенда (Containers + Workers), объектное хранилище (R2)
- Supabase — управляемая PostgreSQL база данных
- Apple Inc. (США) — App Store, In-App Purchase (обработчик платежей), push-уведомления, App Store Server Notifications V2 (источник webhook'ов о событиях жизненного цикла подписки), а также «Вход с Apple» (если вы его выбираете)
- Google LLC (США) — провайдер аутентификации «Вход через Google», только если вы выбираете вход через Google; обрабатывает email и имя вашего аккаунта Google исключительно для вашей аутентификации
- Resend — отправка транзакционных email (восстановление доступа, важные уведомления)
5.2 ИИ-генерация контента (международная передача)
Для функций, использующих внешние ИИ-сервисы, обезличенный учебный контекст может передаваться следующим провайдерам:
- OpenAI, L.L.C. (США) — для генерации текстов
- Anthropic, PBC (США) — для генерации текстов
Перед передачей данные обезличиваются: из payload удаляются email, имя, User ID. Передаётся только обезличенный учебный контекст, необходимый для генерации.
Мы предпринимаем меры по минимизации передаваемых в ИИ-сервисы персональных данных и опираемся на договоры об обработке данных (DPA) этих провайдеров и применимые договорные гарантии (в том числе на их обязательство не использовать переданные через API данные для обучения моделей).
5.3 Диагностика и crash-репортинг
- Apple MetricKit — анонимные, агрегированные диагностические данные, обрабатываются Apple
- Sentry (Functional Software, Inc., США) — crash-репортинг, мониторинг производительности и диагностические breadcrumbs. Привязаны к внутреннему User ID (UUID) для отладки; email, имя и платёжные данные в Sentry не передаются. Performance-трейсы семплируются (около 10% в production).
6. Сроки хранения
- Данные аккаунта — пока аккаунт существует. Удаляются в течение 30 дней после удаления аккаунта пользователем
- Бэкапы — хранятся 90 дней после удаления, затем уничтожаются
- Записи о транзакциях подписки и события webhook Apple — 5 лет по требованиям налогового законодательства и для обработки возвратов / споров
- Анонимные метрики — без срока (не привязаны к личности)
7. Права пользователя
В соответствии с применимым законодательством пользователь имеет право:
- Получить подтверждение факта обработки данных и копию обрабатываемых данных
- Требовать уточнения, изменения или удаления данных
- Отозвать согласие на обработку (при этом часть функциональности может стать недоступна)
- Требовать прекращения обработки, ограничения обработки
- Подать жалобу в компетентный надзорный орган страны проживания
- Удалить аккаунт прямо в приложении: Профиль → Удалить аккаунт
Удаление аккаунта приводит к удалению прогресса обучения и персональных данных в течение 30 дней. Удаление аккаунта не отменяет автоматически вашу активную подписку Apple — её нужно отменять отдельно через управление подписками Apple (Настройки → [ваше имя] → Подписки). Записи о прошлых транзакциях подписки хранятся для целей налогового учёта, как описано в разделе 6.
Для реализации прав направьте запрос на [email protected]. Срок ответа — не более 30 дней.
8. Безопасность
Сервис применяет следующие меры защиты:
- Шифрование данных при передаче (TLS 1.3)
- Хранение токенов в Keychain устройства
- Парольная защита аккаунта (хеширование bcrypt)
- Криптографическая проверка JWS-чеков Apple на сервере против Apple Root CA до выдачи любых прав доступа
- Идемпотентная обработка webhook'ов Apple через дедупликацию по уникальному
notificationUUID - Регулярные обновления зависимостей и контроль уязвимостей
- Минимизация собираемых данных (собираем только то, что необходимо)
- Обезличивание данных при передаче в ИИ-сервисы
9. Дети и несовершеннолетние
Сервис не предназначен для детей младше 13 лет. Возрастной рейтинг в App Store — 4+ (нет нежелательного контента), но требуется учётная запись Apple ID (которая по правилам Apple для детей до 13 лет управляется родителями через Family Sharing). Если станет известно, что пользователь младше 13 лет создал аккаунт без согласия родителей, аккаунт будет удалён. Сервис заведомо не продаёт платные подписки несовершеннолетним младше 13 лет.
10. Изменения политики
Сервис может обновлять данную Политику. Существенные изменения (расширение категорий собираемых данных, изменение целей или получателей) сопровождаются уведомлением в приложении и требуют повторного согласия. Версия и дата последнего обновления указаны в начале документа.
11. Применимое право
К отношениям с пользователями из Европейского Союза или ЕЭЗ применяется Регламент (ЕС) 2016/679 (GDPR).
К отношениям с иными пользователями применяется законодательство Республики Армения как страны регистрации Оператора, без ущерба для императивных норм защиты прав потребителя страны проживания.
12. Контакты
По всем вопросам обработки персональных данных:
Email: [email protected]
Сайт: https://12levels.app