← назад в блог
daily14 августа 2026 г./3 мин чтения

Показали сотрудникам медицинскую страховку, которую за них купил работодатель

Корпоративная медицинская страховка принадлежит работодателю, а не сотруднику, поэтому раньше она вообще не отображалась в личном кабинете. Я построил недостающую связь: теперь в аккаунте есть страховая карта, оставшийся лимит и история всех обращений по страховке — рядом с остальными полисами.

Снимок экрана — 2026-08-17 в 18.43.10.png

Большинство людей, застрахованных по корпоративной медицинской программе, носят с собой страховую карту и почти ничего о ней не знают: что именно покрывает страховка, сколько денег осталось и чем они уже воспользовались. Чтобы это узнать, обычно приходится звонить в HR или страховую компанию и ждать ответа.

Я хотел, чтобы эта информация была доступна в одно нажатие — прямо в личном кабинете, которым человек уже пользуется.

Проблема: полис, который вам не принадлежит

Обычную страховку показать просто. Вы её купили, в договоре указано ваше имя, а национальный страховой реестр возвращает этот полис, когда мы запрашиваем информацию о вас.

С корпоративной медицинской страховкой всё иначе. Работодатель заключает один договор, а сотрудники становятся его участниками — поэтому когда сайт спрашивал: «Какие полисы принадлежат этому человеку?», честный ответ был: «Никакие». Информация существовала, но находилась в совершенно другой системе — той, которой медицинский отдел пользуется каждый день для работы с обращениями и страховыми случаями.

Как это работает

Каждый раз, когда пользователь открывает список своих полисов, происходит четыре шага:

  1. Кто вы? Личность берётся из собственного подтверждённого профиля авторизованного пользователя — сначала используется его национальный ID, а паспортные данные являются только резервным вариантом. Паспорт можно заменить, а ID-номер остаётся неизменным.
  2. Участвуете ли вы в корпоративной программе? Мы спрашиваем медицинскую систему, является ли этот человек участником программы.
  3. Что включает ваша программа? Второй запрос возвращает общий лимит покрытия, уже использованную сумму, сумму по обращениям в обработке, список покрываемых услуг и всю историю обращений.
  4. Показываем это как обычный полис. В списке появляется стандартная карточка, а внутри неё — отдельная страница с индикатором остатка, списком покрытий и историей обращений.

Что оказалось сложнее, чем выглядит

  • Чьи это данные? Система, к которой я обращаюсь, может по одному ID-номеру вернуть имя, работодателя и медицинскую историю любого человека. Поэтому этот номер никогда не приходит из браузера — он берётся только из собственного подтверждённого профиля авторизованного пользователя. Это правило появилось в первой же строке кода, а не после обнаружения проблемы.
  • Лимиты, которые нельзя складывать. У каждого вида лечения может быть собственный лимит, и эти лимиты находятся внутри общего лимита программы. Если просто сложить их, результат будет выглядеть логично, но окажется совершенно неверным — пользователь увидит в два раза больше покрытия, чем у него действительно есть. Поэтому используются только итоговые значения самой программы.
  • Ноль не всегда означает отсутствие покрытия. Некоторые виды лечения покрываются без ограничения по сумме и приходят из системы с лимитом 0. Если показать это буквально, «0 сум» выглядит как «не покрывается». Поэтому такие услуги вынесены в отдельный список включённых услуг.
  • Когда человек увольняется. Страховое покрытие заканчивается вместе с трудовыми отношениями. Поэтому карточка становится неактивной и показывает дату окончания, но история остаётся доступной — она всё ещё может понадобиться человеку.

Почему я этим горжусь

Система корректно переживает проблемы. Если сервис, который хранит лимиты, недоступен, карточка всё равно отображается со всей остальной известной информацией, и один медленный сервис не может повесить всю страницу.

А лучший комплимент для этой функции — когда её вообще никто не замечает: она выглядит и работает так же, как любой другой полис в личном кабинете. Пользователю не нужно знать, что эта информация на самом деле пришла из совершенно другой системы, — именно этого я и хотел добиться.