ISSANCE Laboratory
3 поста
Пятый пост из серии, где я, совладелец бренда косметики для волос, разбираю свою же категорию. Ссылок на магазин не будет.
Сегодня — про флакон за 60 рублей, который лежал в ванной у половины страны. Я сам его покупал, когда у меня после ковида полезли волосы. И только потом прочитал, что там внутри.
Начнём с названия
Репейник — это лопух большой, Arctium lappa. Из его корня делают экстракт и растворяют в базовом масле.
Ключевое: самостоятельного «масла из репейника» практически не бывает. Корень содержит мало жиров, отжать из него масло нельзя — не из чего.
Значит, во флаконе почти всегда: подсолнечное или минеральное масло плюс экстракт корня лопуха. Иногда с добавками — витамин E, красный перец, эфирные масла.
Это важнее, чем звучит. Свойства продукта на волосах определяет прежде всего основа, потому что её там больше 90 %.
Что известно про сам лопух
Применительно к волосам — почти ничего. Ни одного клинического исследования репейного масла на людях с оценкой роста или выпадения не опубликовано. Ни РКИ, ни открытых серий с фототрихограммой.
Есть лабораторная работа по арктиину — соединению из лопуха. В ней арктиин защищал клетки дермального сосочка человека от повреждения перекисью водорода. Клетки дермального сосочка действительно ключевые для работы фолликула, так что результат не пустой.
Но между «защитил клетки в чашке» и «отросли волосы на голове» лежит дистанция, которую проходят далеко не все вещества. Нужно, чтобы соединение сохранилось в продукте, проникло через кожу в рабочей концентрации и дало измеримый эффект. Ни один из этих шагов для репейного масла не проверен.
Честная формулировка: предпосылки на уровне клеток есть, подтверждения на людях нет.
А вот про основу данные есть
И они интереснее.
В сравнительном исследовании трёх масел кокосовое оказалось единственным, кто заметно снижал потерю белка волосом. На здоровых волосах и на повреждённых, при нанесении до мытья и после. Подсолнечное и минеральное не снижали потерю белка вообще.
Причина в химии. Кокосовое — это в основном триглицериды лауриновой кислоты: маленькая молекула со сродством к белкам волоса, она проникает внутрь волокна. Подсолнечное состоит из линолевой кислоты с крупной разветвлённой молекулой и остаётся на поверхности. Минеральное не проникает по определению.
Вывод, который меня в своё время развеселил: если задача — уменьшить ломкость, у копеечного кокосового масла оснований больше, чем у репейного.
Что репейное масло всё-таки делает
Отказывать ему во всём нечестно, три эффекта реальны.
Смазка — плёнка снижает трение между волосами, пряди легче расчёсываются, отсюда ощущение «стали мягче».
Временное склеивание чешуек — кончики выглядят аккуратнее, волосы глаже.
Массаж — втирание в кожу головы это несколько минут массажа, и приятные ощущения от процедуры люди нередко записывают в счёт самого масла.
Чего оно не делает: не удлиняет фазу роста, не влияет на гормональные причины выпадения и не «питает луковицу». Фолликул получает питание из крови, а не с поверхности кожи. «Питание луковицы снаружи» — это, простите, физиологически невозможно.
Домашние рецепты — то же самое, только хуже
Настоять корень лопуха на подсолнечном масле пару недель, процедить, пользоваться.
С точки зрения химии получается ровно то, что в аптечном флаконе, только концентрация экстракта непредсказуема — зависит от сырья, времени и температуры.
С точки зрения безопасности есть нюанс, о котором в рецептах не пишут: масляный настой на растительном сырье при комнатной температуре — среда, где могут размножаться бактерии, особенно если в сырьё попала влага. Хранить в холодильнике и недолго, а мутность, осадок или изменившийся запах — повод вылить.
Риски, о которых обычно молчат
Перхоть. Масло на коже головы — питательная среда для грибка Malassezia, а перхоть связана с реакцией кожи на продукты его жизнедеятельности. При склонности к перхоти на корни масло лучше не наносить вообще.
Составы с красным перцем. Капсаицин даёт жжение и покраснение. Жжёт — значит работает? Нет. Жжение это ощущение, а не доказательство эффекта, и на раздражённой коже такие составы способны усилить воспаление.
Контактная аллергия. Растительные экстракты и отдушки — распространённые аллергены в средствах для кожи головы.
Утяжеление. Масло на корнях требует двойного мытья, а недомытая основа делает волосы тяжёлыми и «грязными» у основания.
Как пользоваться, если всё равно хочется
На длину и кончики, а не на корни. Держать 30–60 минут — ночь под плёнкой ничего не добавляет, а риск раздражения растёт. Смывать в два нанесения шампуня: первое почти не пенится, второе очищает. Не чаще раза в неделю при жирной коже. Составы с перцем — только на здоровую кожу и не дольше 15 минут. При перхоти, зуде и шелушении — не наносить.
Когда идти к врачу
Если волосы выпадают заметно больше обычного дольше месяца, появились очаги без волос, кожа головы краснеет и шелушится — это решается анализами и осмотром, а не выбором масла. Минимум: ОАК, ферритин, ТТГ, витамин D.
Пруфы: J Cosmet Sci 2003 (сравнение кокосового, подсолнечного и минерального масел), Biol Res 2014 (арктиин и клетки дермального сосочка), Indian J Plast Surg 2021 (питание фолликула из крови), Acta Derm Venereol 2013 (Malassezia и перхоть). Ищутся в PubMed.
А у вас в ванной стоял тот самый флакон? И был ли эффект — честно, а не как в отзывах на маркетплейсе?
Дисклеймер сразу, чтобы потом не было вопросов: я совладелец бренда трихологической косметики. Лицо заинтересованное. Поэтому дальше не будет ни одной ссылки на магазин — будет то, что я узнал за три года, пока разбирался с собственной головой и с чужими исследованиями.
Началось всё некрасиво. Я третий раз переболел ковидом, отлежался, вернулся к работе — а через пару месяцев заметил, что волос на подушке стало больше. Потом больше в раковине. Потом стало видно на висках.
К врачу я, как нормальный мужик, не пошёл. Пошёл на маркетплейс. Скупил всё с пометкой «от выпадения»: шампуни, лосьоны, ампулы, какие-то корейские чудо-средства. Ноль. Ни одно не сработало.
Дальше я полез читать, потому что деньги было жалко. Вот что выяснилось.
Волос растёт 1–1,5 см в месяц, и это потолок
Это физиологическая норма для большинства взрослых. Около 15 см в год. У кого-то стабильные 0,8 см в месяц — и это тоже норма, если так было всегда.
Ускорить рост сверх генетической нормы у здорового человека нельзя. Ни шампунем, ни маслом, ни массажем, ни стрижкой в растущую луну. Всё, что продаётся с обещанием «+3 см за месяц», продаёт вам вашу же норму.
Зато замедлить рост — легко. Этим мы сейчас и займёмся.
Как вообще устроен цикл
У каждого волоса три фазы, и они идут независимо от соседних — поэтому голова не лысеет волнами.
Анаген — активный рост, от 2 до 7 лет. Именно длина анагена определяет вашу максимальную длину волос. Простая арифметика: анаген 3 года × 1,2 см в месяц = около 45 см, и хоть убейся — длиннее не вырастет. Анаген 7 лет — около 105 см. Вот почему у одной подруги коса до пояса, а у другой волосы «не растут ниже лопаток». Это не уход. Это генетика.
Катаген — переход, 2–3 недели. В нём около 1 % волос.
Телоген — покой, 3 месяца. В нём 10–15 % волос. Волос сидит в фолликуле, но уже не растёт, а потом выпадает.
И вот главная вещь, которую я жалею, что не знал раньше.
Когда организм получает сильный удар — тяжёлая болезнь, операция, резкое похудение, серьёзный стресс — большая часть фолликулов одновременно уходит в телоген. А телоген длится 3 месяца. Поэтому волосы у меня посыпались не во время ковида, а через 2–3 месяца после, когда я уже про него забыл и связи не видел.
Это называется телогеновая эффлювия, она обратима, и чаще всего проходит сама за 3–6 месяцев. Но искать причину надо в том, что было три месяца назад, а не в шампуне, который вы купили вчера.
Что реально тормозит рост
Фолликул — одна из самых прожорливых структур в организме. Он реагирует на нехватку раньше многих других тканей и первым уходит в «режим экономии».
Ферритин (запасы железа). Уровень ниже 40–70 нг/мл связывают с телогеновым выпадением. У женщин это причина номер один.
Щитовидка (ТТГ, Т4). И гипо-, и гипертиреоз ломают цикл волоса.
Витамин D. Ниже 30 нг/мл — повод скорректировать.
Белок в рационе. Кератин строится из него, нехватка видна через 2–3 месяца.
Цинк. Реже, но встречается.
Гормоны. Андрогены укорачивают анаген у генетически чувствительных фолликулов — это и есть облысение по мужскому типу.
Плюс механика, которую все недооценивают: тугие хвосты и пучки (тракционная алопеция подкрадывается годами и незаметно), фен вплотную, утюжок на максимуме. Волос не перестаёт расти — он обламывается раньше, чем успевает отрасти. Со стороны это выглядит одинаково: «волосы не растут».
Что не работает — говорю как производитель
Мне за эти абзацы прилетит от коллег по цеху, но ладно.
Шампунь для роста волос. Шампунь контактирует с кожей головы 2–3 минуты и смывается. Системно повлиять на фолликул за это время он не может физически. Хороший шампунь нужен — чтобы снять воспаление, себорею, перхоть, то есть убрать помеху. Но «активатор роста» на этикетке — это про маркетинг, а не про фармакокинетику.
Масла — репейное, касторовое. Работают со стержнем: снижают ломкость, делают волос глаже. До фолликула не доходят и на его цикл не влияют. Как средство от ломкости — да. Как средство для роста — нет.
Маски. Ухаживают за уже выросшим волосом. К росту отношения не имеют.
Биотин. Дефицит биотина при разнообразном питании — редкость. Если у вас его нормальный уровень, приём никак не изменит скорость роста. Отдельная подстава: биотин в высоких дозах искажает лабораторные анализы, в том числе гормоны щитовидки, — потом сидите с непонятными результатами.
Частая стрижка кончиков. Волос растёт из фолликула, а не из кончика. Стрижка убирает сечение, но на скорость роста не влияет никак.
Витамины «для красоты волос» на всякий случай. При нормальных анализах это дорогая моча. При жирорастворимых формах — ещё и риск передозировки.
Что работает
Найти и убрать причину. Скучно, но это единственное, что даёт результат. Минимум по анализам: ОАК, ферритин, сывороточное железо, ТТГ, Т4 свободный, витамин D, цинк. Остальное добавит врач по ситуации.
Миноксидил. Единственный местный компонент с доказанной эффективностью в рандомизированных исследованиях, одобрен регуляторами при андрогенетической алопеции. Назначает врач, у него есть побочки и правило «бросил — откатилось». Не самолечение.
Здоровая кожа головы. Хроническое воспаление, себорейный дерматит, псориаз реально тормозят анаген. Лечить, а не маскировать.
Убрать механику. Фен с 15 см вместо 5, температура пониже, хвост послабее. Это не даёт «плюс сантиметр», это не даёт потерять то, что уже отросло.
Когда идти к врачу, а не в аптеку
выпадение резко усилилось и держится больше месяца;
появились круглые очаги без волос;
кожа головы краснеет, шелушится, зудит или болит;
линия роста поехала назад, лоб визуально стал выше;
волосы сыплются на фоне усталости, изменения веса, зябкости — это уже разговор про щитовидку.
Что в итоге делаем мы
Раз уж я в начале признался, кто я. Мы делаем сыворотку, которая не смывается и остаётся на коже головы — по той же логике, из-за которой шампунь бессмыслен: нужен длительный контакт. Внутри пептидный комплекс с исследованиями.
И тут я обязан быть честным до конца: большая часть исследований по косметическим пептидам — небольшие и спонсированные производителями сырья. Это не миноксидил и не замена врачу. Если причина в ферритине или гормонах, никакая сыворотка её не перекроет. Мы это пишем прямо на сайте, и это, кстати, худший маркетинг на свете — но врать в теме, где люди и так в панике, я не хочу.
Пруфы, если кому интересно копнуть: обзор по витаминам и минералам при выпадении (Almohanna et al., Dermatol Ther, 2019), S1-гайдлайн по андрогенетической алопеции (Blume-Peytavi et al., 2011), обзор по механизму миноксидила (Messenger & Rundegren, Br J Dermatol, 2004), работа Trüeb по биотину (Int J Trichology, 2016). Всё гуглится по фамилиям в PubMed.
Если тема зайдёт — разберу в следующих постах, что показывают анализы при выпадении и почему трихологи не любят слово «сыворотка». А ещё расскажу, как мы делали продукт и сколько на этом потеряли — это отдельная комедия.
А у вас после болезни волосы сыпались? Через сколько месяцев заметили?
Если вы селлер Wildberries и продаёте маркированный товар — вы знаете эту боль.
После каждой FBW-поставки нужно подать УПД на ООО «РВБ» с приложением всех КИЗов. Срок — 3 рабочих дня. Опоздал — штраф до 300 000 ₽ по статье 15.12 КоАП и риск, что коды заблокируют. И товар на складе превратится в тыкву.
Я задолбался делать это руками каждую неделю. Сел и сделал инструмент за пару вечеров. Раздаю бесплатно.
Кто я
Меня зовут Иван. Делаю штуки на стыке 1С, веба и автоматизации. Сам селлер WB — продаю на маркетплейсе пилинг для кожи головы. Маркированный товар, акты приёмки, КИЗы — это всё моя ежедневная боль, а не теоретический кейс.
Как это работает руками
Беру одну поставку и засекаю время.
1. ЛК Wildberries → Документы → нахожу нужную поставку → скачиваю акт приёмки.
2. Тут же скачиваю CSV-шаблон для Честного знака. КИЗы там уже есть, но название товара и колонка НДС пустые.
3. Открываю CSV в Excel и руками в каждой строке вписываю название и «0» (без НДС).
4. Иду в ЭДО Лайт. Создаю черновик УПД.
5. Вбиваю реквизиты ООО «РВБ»: ИНН 9714053621, КПП склада, полный адрес, ФИО подписанта, должность.
6. Загружаю CSV. Проверяю что коды подтянулись.
7. Подписываю УКЭП. Отправляю.
Чистого времени — 20–30 минут на одну поставку. Это полдня в месяц только на бумажки.
Самое больное — пункты 3 и 5. Excel и адрес склада, который никто наизусть не помнит.
Что я сделал
Веб-страница. Два поля.
Первое — WB API-токен. Создаётся в личном кабинете за 30 секунд. Права только Поставки и Документы, режим — только чтение. Никаких прав на запись.
Второе — ID абонента ЭДО Лайт вида `2LT-XXXXXXXXXX`. Берётся из профиля Честного знака, в разделе «Подключённые операторы ЭДО».
Один раз вставили — система запомнила. Дальше выбираете поставку из списка и жмёте «Сгенерировать XML». Через 3 секунды скачивается файл.
Идёте в ЭДО Лайт, жмёте «Загрузить УПД», выбираете файл — открывается готовый черновик. Со всеми полями. Контрагент, склад, товар, 100+ кодов маркировки, основание, подписант. Подписали УКЭП — отправили.
С секундомером от «Сгенерировать XML» до подписи — 30–40 секунд.
Что под капотом
Никакого ИИ и никакого облака. Обычный PHP на shared-хостинге.
Дёргаются три API:
— WB Supplies API — подтягивает список ваших FBW-поставок за 60 дней.
— WB Documents API — по выбранной поставке скачивает акт. WB присылает ZIP с xlsx-актом, подписью и МЧД. Распаковываю, беру только xlsx. Парсер — самодельный на ZipArchive + SimpleXML, без тяжёлых библиотек. Из xlsx достаю ИНН продавца, наименование товара и список КИЗов.
— DaData — самая вкусная часть. ИНН у меня уже есть из акта. Отправляю в `findById/party` и получаю всё: название юрлица, КПП, адрес по полям (индекс/город/улица/дом/корпус), ФИО директора, его должность. Прямо из ЕГРЮЛ.
Раньше селлер вписывал 16 полей руками. Теперь — ноль.
Дальше собираю XML формата ФНС 5.03 (приказ ЕД-7-26/970@). Кодировка windows-1251, теги на русском — `<СвПрод>`, `<ТаблСчФакт>`, `<НомСредИдентТов>`. Имя файла собирается по регламенту ФНС и должно совпадать с внутренним атрибутом `ИдФайл`, иначе ЭДО Лайт отклонит импорт. Это была отдельная боль при отладке.
Промежуточные данные кешируются на сутки по seller-ID. Повторная генерация по той же поставке — мгновенно.
Сколько реально экономит
10 поставок в неделю — экономия 4+ часа. За год — около 200 часов. Это полноценный месяц работы только на одной операции.
Безопасно ли вводить токен
Понимаю что вопрос будет.
Токен проходит через сервер только в момент запроса к WB API. Нигде не сохраняется — ни в логах, ни в файлах, ни в базе. Но я бы всё равно после генерации сходил в ЛК WB и удалил токен одной кнопкой — на всякий случай.
Реквизиты от DaData — публичные данные ЕГРЮЛ. Доступны по любому ИНН любому желающему. Никакой магии и никаких скрытых данных.
Что пока не работает
Не буду делать вид что инструмент идеален.
— Работает только склад Коледино. Это самый популярный, у меня вся отгрузка туда. Электросталь, Подольск, Казань, Тула — добавляю по мере появления эталонных XML от селлеров.
— Ozon — соседний инструмент в работе. У них схема похожая, но ещё надо файлик переименовывать в нужный формат. Скоро будет.
Видео-инструкция
Записал короткое видео где прохожу весь путь от создания токена до подписанной УПД. 6 минут, без монтажа: https://youtu.be/O5GdfYJNOiU
Где взять
Инструмент тут: https://onemanproduction.ru/tools/wb-chestny-znak/
Бесплатно. Без регистрации. Без рекламы.
Если что-то не работает или нужен ваш склад РВБ — пишите в комментариях, доправлю. Это рабочий инструмент, я его сам каждую неделю использую.
Селлеров WB на Пикабу много — может кому-то сэкономит пару часов в неделю. А может найдутся те кто покажет где я промахнулся в реализации. И то и другое — полезно.
Часть 1 цикла про ISSANCE. Как всё начиналось и почему мы только сейчас выходим в операционный плюс
Пересказываю как было.
Я переболел ковидом третий раз. Вроде отлежался, всё вернулось в норму — работа, тренировки, сон. А через пару месяцев начал замечать что волос на подушке стало больше. Потом больше в раковине. Потом стало видно на макушке.
К врачу, как нормальный человек, я не пошёл) Пошёл на маркетплейс. Набрал всё что продавалось с пометкой «от выпадения» — шампуни, лосьоны, ампулы, какие-то корейские чудо-средства. Перепробовал. Ни одно не сработало.
Сижу, смотрю в зеркало, и понимаю — это ниша. Реальная, больная, огромная. Выпадение волос после ковида — это миллионы людей, которые сейчас делают ровно то же самое что и я: покупают хлам на маркетплейсе и надеются.
И я подумал: а что если сделать нормальный продукт. Не очередной репейник, а реально с работающими активами. Так начался бренд ISSANCE Laboratory.
Кто я
Я генеральный директор и совладелец ISSANCE. Моя жена — второй совладелец и партнёр. Она занимается разработкой продуктов и строит команду маркетинга для вывода новых позиций на рынок. Я — на финансовой и технической части: юрлицо, деньги, сервера, сайт, интеграции, маркетплейсы, любой софт которым пользуется компания.
Эта статья — первая в цикле про наш бренд. Расскажу честно — с чего начинали, во что вляпались, какие решения оказались дорогими ошибками, и почему только сейчас, на третий год, мы наконец выходим в плюс по операционке.
Первые вложения
Когда я решил что делаю свою косметику — первое что сделал, продал майнинг-оборудование.
На тот момент у меня была собранная ферма. Доходная, работающая, со своим графиком окупаемости. Для меня это был источник пассива. Но для запуска бренда нужны были деньги здесь и сейчас — на формулу, на тесты, на производство первой партии, на упаковку, на регистрацию. Я распродал всё и вложил в косметику.
Сейчас я понимаю что это было единственно правильное решение из всех что я потом принял.
Продукт
Мы с женой сели за формулу(удачно совпало, что она химик-технолог по образованию) и сделали сыворотку от выпадения волос. 100 мл. Внутри CAPIXYL и ActiTide — активы с клиническими исследованиями, а не «экстракт ромашки и любви».
Продукт получился реально работающий. Это подтвердили и люди которые его попробовали, и позже — трихологи, которые начали рекомендовать её пациентам.
И вот тут я сделал первую большую ошибку.
Ошибка №1 — один продукт вместо линейки
Моя логика была простая. Сделаю один идеальный продукт, вложу в него душу, бюджет и маркетинг. Он выстрелит, и дальше уже буду расширяться.
На практике так не работает.
Один продукт — это один запрос. Люди ищут «шампунь от выпадения», «пилинг для кожи головы», «сыворотка для роста» — и это разные поисковые запросы, разные категории на маркетплейсах, разные целевые аудитории. С одной сывороткой ты отвечаешь только на один из них.
На маркетплейсах с одним SKU ты невидим. WB и Ozon любят бренды с линейкой. Когда в карточке магазина 10 позиций — человек бродит по ассортименту, добавляет пару товаров в корзину. Когда одна позиция — он её либо сразу купил, либо ушёл навсегда.
Одним продуктом не охватить сегменты. Есть те кому нужен уход для кожи головы, есть те кому нужен шампунь без SLS, есть те кто хочет «набор для восстановления». Каждому нужно своё.
Правильное решение было — делать сразу 5, а лучше 10 продуктов. Пусть проще, пусть дешевле, пусть без уникальных активов в каждом. Линейка бьёт «одинокий флагман» в первый год любого бренда.
Сейчас у нас 4 продукта — сыворотка, пилинг, шампунь, спрей. И мы продолжаем расширяться. Но это уже на третьем году. А первый я весь просидел с одной баночкой, недоумевая почему оно не едет.
Ошибка №2 — сразу нанял сотрудников
Вторая ошибка была ещё дороже.
Как только появился продукт, я сделал «по-взрослому»: нанял двух менеджеров по продажам и отдельного менеджера по маркетплейсам. Трое человек на старте. Каждому зарплата, налоги, задачи. Логика: у меня есть продукт, нужны люди которые его будут продавать.
Проблема в том что новый бренд никому не нужен.
Менеджеры по продажам звонили в салоны и клиники — им отвечали «а кто вы? Отзывы есть? Опыт применения? Кто из врачей уже работает?». У нас не было ничего из этого. Мы были новыми, никому не известными — и это просто нельзя было закрыть холодными звонками.
Менеджер по маркетплейсам был опаснее. С виду он делал «продвижение», а на деле сводил всё к двум рычагам — реклама и акции.
По рекламе он разгонял бюджеты до космоса. Расходы на рекламу на WB у меня доходили до 50% от выручки. Для понимания — нормальный показатель для косметики 10% и меньше. То есть половину того что мы зарабатывали, мы тут же отдавали обратно маркетплейсу за показы. Плюс зарплата сверху.
По акциям — постоянно загонял товар в новые и новые распродажи. Каждая акция — это минус к цене. Цена падала, маржа падала, зарабатывали всё меньше. А менеджер отчитывался «смотрите, продажи растут» — да, растут штуками, но не деньгами.
За всё это я платил зарплаты каждый месяц. И сжигал те самые деньги от майнинга — на людей, которые либо не могли продавать, либо продавали так, что компания теряла.
Уволил всех троих. И первое решение, которое я принял сразу после увольнения менеджера по маркетплейсам — выйти из всех акций. Вообще. Перестали участвовать, перестали давать скидки, вернули нормальную цену.
Выручка в штуках просела. Но деньги в кассе наконец-то появились. Потому что каждая проданная баночка стала приносить то, что должна приносить, а не половину этого.
Самое болезненное в этой ошибке — я потерял не только деньги. Я потерял время. Полтора года на то, чтобы понять что команду надо собирать под процесс, а не процесс под команду.
Сейчас всё устроено иначе. Разработка продуктов и построение маркетинга — на жене. Финансы и техника — на мне. Упаковка, логистика, часть работы с маркетплейсами — аутсорс и подрядчики под задачу. Команду собираем точечно, под конкретный процесс, а не «по рынку». Фонд оплаты труда не жжёт бюджет, и бизнес наконец-то стал управляемым.
Где мы продаём сейчас
Три канала, и у каждого своя специфика.
Wildberries. Основной объём. Сейчас на карточках есть отзывы, рейтинги, поисковое продвижение. Работает, но требует постоянного внимания — цены, остатки, контент, рекламные кампании, рейтинг.
Ozon. Запустили параллельно. Механика похожая, но аудитория и правила свои — мы всё ещё учимся.
Свой сайт issance.ru. Сюда приходят пациенты от трихологов — с промокодами которые мы даём врачам. Этот канал маленький по объёму, но даёт нам самого преданного клиента. Человек которого направил врач, возвращается за повторной покупкой почти всегда.
Это разные каналы, с разной экономикой, и каждый требует своего подхода. Работают они только вместе — один в одиночку не даст достаточно оборота чтобы выйти в плюс.
3 года спустя
Мы в бизнесе уже 3 года. И только сейчас, в 2026, мы выходим в операционный плюс.
Это честная цифра. Не «запустились и взлетели», не «за полгода окупились». 3 года на то чтобы разобраться в продукте, каналах, команде, цифрах.
Что я понял: - Линейка важнее флагмана. Начинай с 5-10 продуктов, даже если они проще. - Команда — в последнюю очередь. Сначала процесс, потом люди. Не наоборот. - Каналы не заменяют друг друга. WB, Ozon и сайт — не конкуренты, а разные двигатели одной машины. - Деньги от майнинга заканчиваются. В какой-то момент ты остаёшься один на один с операционкой — и она должна кормить сама себя.
Что дальше в цикле
В следующей статье расскажу как мы работаем с врачами и почему именно этот канал оказался самым доверительным. А дальше — отдельно про маркетплейсы, отдельно про сайт, отдельно про инструменты которые пришлось писать самому.
А у вас был опыт захода в нишу где вам лично было больно? Делали продукт под собственную проблему — и как оно пошло? Интересно послушать истории людей которые запускали что-то «для себя», а не «для рынка».
Часть 2 — LCD-дисплей, камера и первый взгляд робота на хозяина
В первой части я рассказал как решил собрать настольного робота после фильма «Финч» с Томом Хэнксом. Raspberry Pi, мозг на Claude, голос — всё это уже было. Но робот без лица — это сервер с колонкой. А мне нужен был именно робот.
Сегодня приехали запчасти. И Флаппи наконец-то получил глаза.
Что приехало
3,5-дюймовый LCD-дисплей. Втыкается прямо в GPIO Raspberry Pi — никаких HDMI-кабелей, никаких переходников. Маленький, но для мордашки робота — идеально.
В комплекте с монитором шел кулер, который питается от него же. Китайские братmя даже термопрокладки положили.
И камера. Обычная, на 5 мегапикселей. Ничего навороченного — но достаточно чтобы робот мог «видеть».
Подключение дисплея
С дисплеем оказалось просто. В комплекте шла инструкция на одну страницу:
git clone https://github.com/goodtft/LCD-show.git
cd LCD-show/
sudo ./LCD35-show
Три команды, перезагрузка — и на экране появился рабочий стол Raspberry Pi. Всё. Без танцев с бубном, без драйверов из непонятных источников. Приятно когда железо просто работает.
Рисуем лицо
Дисплей работает — но на нём рабочий стол Linux. А мне нужна мордашка.
У меня уже был написан рендерер лица на pygame — 7 эмоций, моргание, движение зрачков, дыхание. Но изначально он был под большой монитор (800×480). Пришлось адаптировать под маленький экран (480×320) и запустить в полноэкранном режиме чтобы убрать системную панель.
Первая версия лица выглядела... криповато.
Анимированные брови на маленьком экране — это не мило, это жутко. Перерисовал в робо-стиле: большие скруглённые глаза с голубым свечением, аниме-блики на зрачках, пульсирующая антенна сверху. Без бровей вообще — эмоции передаются через форму глаз.
Получилось 7 состояний:
• Sleeping — щёлочки вместо глаз, тёмный фон
• Listening — широко открытые глаза, «я весь внимание»
• Thinking — прищур, зрачки вверх
• Speaking — рот анимируется в такт речи
• Happy — глаза-дуги как в аниме, розовые щёчки
• Surprised — огромные глаза, маленькие зрачки
• Sad — опущенные глаза, рот дугой вниз
И они плавно переключаются между собой. Не просто «хоп — другая картинка», а smoothstep-интерполяция всех параметров. Глаза плавно сужаются, зрачки плавно перемещаются, фон плавно меняет цвет. Выглядит живо.
Камера — Флаппи учится видеть
Камера воткнулась шлейфом и сразу определилась. Никаких драйверов — Pi увидел OV5647 и готово.
Написал скрипт: камера делает фото → фото сохраняется на диск → Claude (который уже живёт на этом же Pi) получает команду «прочитай этот файл и расскажи что видишь».
Первый тест — направил камеру в упор на монитор. Claude ответил:
Перенаправил камеру на себя. Второй ответ:
Он меня узнал. Точнее — описал. И сделал это за 10 секунд.
Ну и конечно, как же не сфотографировать любовь всей жизни
Это не заранее записанные фразы. Не распознавание по шаблону. Claude реально смотрит на фотографию и описывает что видит. Своими словами, с юмором, по-русски.
Кнопка «Фото» в админке
У Флаппи есть веб-админка — панель управления где видно температуру процессора, загрузку памяти, статус сервисов. Я добавил туда кнопку «Фото».
Нажимаешь → камера снимает → Claude смотрит → ответ появляется прямо в браузере рядом с фотографией. 10-15 секунд от нажатия до ответа.
Теперь можно сидеть на диване с телефоном, нажимать кнопку и смотреть как робот описывает что происходит в комнате. Это странно увлекательно.
Что дальше
Сейчас камера — это «сделай фото по запросу». Но хочется чтобы Флаппи реагировал сам. Увидел человека — поменял эмоцию на happy. Никого нет — заснул. Увидел что-то необычное — удивился.
Ещё хочу подключить TTS чтобы он не просто писал текст а озвучивал. Фото → Claude → голос из колонки. Полный цикл.
И да — 2 гигабайта оперативки на Pi 4 это боль. Faster-whisper (локальное распознавание речи) + pygame + камера — всё еле помещается. Но пока живём.
Жду до конца недели приход камеры и микрофона, чтобы дать голос Флаппи и начать делать с ним первые проекты.
Как вам идея с камерой? Что бы вы заставили робота делать — охранять квартиру, комментировать что происходит, или может узнавать гостей?
Несколько человек просили написать как создавался MCP сервер, исполняю их желание.
Если вы работаете с 1С и пробовали просить ChatGPT или Claude помочь с кодом — вы знаете боль. ИИ пишет красиво, уверенно и абсолютно неправильно. Потому что он понятия не имеет что у вас в базе.
Какие справочники. Какие реквизиты. Какие типы данных. Он угадывает — и промахивается.
Я решил это починить.
Представьте: вы просите ИИ написать обработку для 1С Бухгалтерия или ЗУП . Он спрашивает — а какие у вас документы? Какие реквизиты у Расходной Накладной? А контрагент — это справочник или перечисление? А НДС — это ставка из справочника или значение перечисления?
И вы начинаете копировать метаданные. Скриншотить конфигуратор. Объяснять словами то, что лежит прямо в базе.
На это уходит больше времени, чем на саму задачу.
Идея
А что если ИИ сам увидит базу? Не через скриншоты. Не через мои объяснения. А напрямую — залезет в метаданные, выполнит запрос, посмотрит документ.
Оказалось, для этого существует протокол. Называется MCP — Model Context Protocol. Его придумали в Anthropic (создатели Claude). Суть — стандартный способ подключить к ИИ любой источник данных. Базу данных, API, файловую систему — что угодно.
Нужен только сервер, который говорит на этом протоколе. Для 1С такого не было.
Я сделал.
Это внешняя обработка. Обычный .epf файл. Открываете в 1С, нажимаете «Запустить» — и на вашем компьютере поднимается HTTP-сервер.
Да, прямо внутри 1С.
Главный трюк — нативная внешняя компонента. Маленькая DLL на C++, которая умеет слушать порт и принимать HTTP-запросы. Она живёт внутри обработки как макет. Подключается автоматически при запуске.
Когда Claude Code отправляет запрос — компонента его принимает и стреляет событие в 1С. Дальше 1С-код разбирает JSON, находит нужный инструмент, выполняет, возвращает результат. Протокол — JSON-RPC 2.0 поверх SSE (Server-Sent Events).
Звучит сложно. На практике — один файл конфига в папке проекта:
{"mcpServers": {"onec": {"type": "sse", "url": "http://192.168.31.254:1414/mcp"}}}
Всё. Claude Code видит базу.
Восемь инструментов. Каждый — отдельная команда, которую Claude может вызвать сам, без моего участия.
execute_query — выполнить любой запрос на языке 1С. «Покажи все документы за март» — и через секунду таблица с данными.
execute_code — выполнить произвольный код. Claude пишет код, OneBridge его запускает на сервере, возвращает результат.
get_metadata — прочитать структуру базы. Справочники, документы, реквизиты, табличные части, типы данных. Три режима: общая сводка, фильтрованный список и детальная структура конкретного объекта.
get_event_log — журнал регистрации с фильтрами. Полезно для диагностики.
get_object_by_link — получить конкретный документ или элемент справочника по ссылке. Claude видит все поля, все строки табличных частей.
get_link_of_object — обратная операция: по описанию объекта получить навигационную ссылку.
find_references_to_object — найти все места в базе, где используется конкретный объект. Аналог «Найти ссылки на объект» из конфигуратора.
get_access_rights — права доступа к объектам метаданных. Кто что может делать.
Первый вопрос, который задают: «А он не удалит мне всю базу?»
Нет. В OneBridge есть детектор опасных операций. Когда Claude просит выполнить код с Записать(), Удалить() или УстановитьПривилегированныйРежим() — сервер не выполняет молча. Он останавливается и показывает диалог: вот код, вот что в нём опасного. Разрешить?
Три режима: автоматическое разрешение (для записи — если вы доверяете), подтверждение через диалог, или полная блокировка. Настраивается галочками прямо в форме обработки.
Одним (почти) промптом через Claude Code.
Я написал спецификацию: какие инструменты нужны, какой протокол, какие форматы данных, как работает нативная компонента. Дал Claude Code — и он сгенерировал 12 000 строк кода на языке 1С.
Конечно, не с первого раза. Были итерации — парсер JSON не обрабатывал ссылки на объекты, метаданные расширений кэшировались неправильно, legacy-транспорт SSE не работал параллельно с новым. Но каждый раз я объяснял проблему — и Claude исправлял.
Итого: два вечера. Один — на спецификацию и первую рабочую версию. Второй — на допиливание и тестирование.
Если вы работаете с 1С и используете (или хотите начать использовать) ИИ для разработки — OneBridge меняет всё. Вместо слепого ИИ, который угадывает структуру вашей базы, вы получаете ИИ, который её видит.
В прошлой статье я показывал как за 55 минут создал обработку загрузки данных с Wildberries. Так вот — она была создана именно через OneBridge. Claude сам залезал в базу, смотрел эталонные документы, проверял метаданные. Без этого — было бы не 55 минут, а 55 сообщений с копипастом метаданных.
OneBridge бесплатный. Полностью. Телеграм-бот @onebridge1c_bot — написали, нажали /start, получили файл. Всё.
Скачать промт, чтобы попробовать создать самому.
Не забываем при первичной постановке ТЗ включать режим Plan.
12 000 строк кода. Восемь инструментов. JSON-RPC поверх SSE. Детектор опасных операций. И всё это — внешняя обработка, которая открывается в любой базе 1С одним файлом.
Сколько раз вы уже слышали что традиционная разработка 1С скоро канет в лету, что скоро всё будет делать искусственный интеллект, и вообще ни строчки кода мы писать не будем — только наговаривать? Я думаю, огромное количество раз.
Сегодня я попробовал это проверить на реальной задаче. Засёк время, записал процесс на видео — и вот что вышло.
Кто я и почему это важно
Меня зовут Иван. Я работаю с 1С уже больше десяти лет. Начинал как проджект-менеджер, потом системный аналитик. Был кем угодно — только не программистом. Ни одной строчки кода за свою жизнь не написал и не напишу.
Но при этом я достаточно неплохо умею автоматизировать процессы и разобрался в новых инструментах. Об одном из них — сегодня.
Задача
У меня есть 1С:УНФ (Управление нашей фирмой — конфигурация для малого бизнеса). И в ней почему-то до сих пор не завезли загрузку из Wildberries по API. Загрузка есть — но только из файла и только для Ozon.
Если попробовать создать отчёт комиссионера и загрузить данные из файла — ничего не получится. Там обычная табличная часть, каждый документ нужно создавать руками. Это долго и муторно.
Я так делать не хочу. Я хочу чтобы всё загружалось само.
Что у меня есть из инструментов
Первый — Claude Code. Это AI который умеет писать код, анализировать ошибки и исправлять их. Работает в терминале, я просто надиктовываю ему что нужно.
Второй — OneBridge. Это мой собственный MCP-сервер для 1С, по сути мост между Claude и базой 1С. Через него Claude видит всю структуру документов, справочники, регистры — и может сам разбираться в метаданных, тестировать, находить ошибки.
Без OneBridge Claude не понимает что происходит внутри базы. С ним — видит всё.
Как это выглядит
Открываю Claude Code. Надиктовываю задачу голосом:
«Создай внешнюю обработку для 1С УНФ. Назови её "Загрузка реализации Wildberries". Я беру ключ API из Wildberries, вставляю его в обработку, выбираю свою компанию, выбираю контрагента — и она загружает через HTTP-запрос все необходимые данные. Нужно чтобы я мог выбирать период. Если номенклатуры нет — создавать автоматически.»
Да, вот прямо так — обычным языком. С опечатками, повторами, эканьем. Claude всё понял.
17 минут — план готов
Claude запустил три агента параллельно. Один полез в базу через OneBridge изучать структуру документов. Другой смотрел метаданные — справочники, регистры. Третий разбирался с API Wildberries.
Через 17 минут у меня готовый план: какие документы создавать, какие поля заполнять, откуда брать данные. Я даже не читал — просто нажал «yes».
25 минут — код написан, EPF собран
К 25-й минуте код готов. Claude сам собрал EPF через v8unpack и отправил на сервер.
Открываю. Работает. Вставляю API-ключ, выбираю период, нажимаю «Загрузить».
Создались три документа — расходная накладная, отчёт комиссионера, реализация.
Первый баг — неправильная цена
Суммы не сходятся. Claude взял цену из личного кабинета WB, а нужно было брать столбец «цена продажи» — то что реально заплатил покупатель.
Говорю ему: посмотри Excel-файл на сервере, найди правильное поле в API, переделай.
К 30-й минуте цены правильные.
Второй баг — даты
Документы создались сегодняшней датой. А нужно датами из отчёта Wildberries. Это важно для отчётности: мы сдаём её поквартально, и если документ за январь создан апрелем — бухгалтер не обрадуется.
Объясняю проблему. Claude сам нашёл нужное поле в API, переписал код. Проверяю — даты правильные.
Третий баг — НДС и строки
В отчёте комиссионера должно быть две строки, а создалась одна. Плюс колонка НДС пустая — документ не проводится.
Тут я сделал полезную штуку: просто сделал скриншот ошибки в 1С и отправил его Claude. Он посмотрел на картинку, понял в чём дело — нашёл что ставка НДС в УНФ это справочник, а не перечисление как в других конфигурациях. Поэтому его код и не работал.
Исправил, пересобрал, задеплоил.
50 минут — готово
К 50-й минуте у меня работающая обработка. Документы загружаются, суммы сходятся, даты правильные, НДС заполнен, документы проводятся.
Остался один отчёт комиссионера который не провёлся — но и его уже решил. Оказалось, что документы не проводились из-за отсутствия остатков. Поэтому во второй версии документ создаётся раньше фактической продажи и кладёт на остатки ровно то количество товара которое нужно.
Сухие цифры
Общее время: 55 минут от «надиктовал задачу» до «рабочая обработка». Моё личное время: меньше 15 минут. Остальное я сидел и ждал, переключаясь между другими задачами. Итераций правок: 5 (цена, даты, НДС, строки, автозаполнение). Потрачено токенов: 37% от пятичасового лимита, 10% от недельного. Строк кода написано мной: 0.
Ноль. Я не написал ни одной строчки. Только говорил что не так и отправлял скриншоты.
Что это значит на практике
Раньше такую задачу я бы отдал программисту. Он бы оценил её в 3-5 рабочих часов. Стоило бы тысяч 10-20. А результат на самом деле пришёл бы через пару дней.
Я сделал это за час. Бесплатно — не считая подписки на Claude. Не написав ни строчки кода.
Да, обработка не идеальна — нужно ещё разобраться с парой мелочей. Но 95% работы сделано. А допилить оставшееся — ещё 15 минут диалога с Claude.
Важный момент
Всё что я делаю в рамках этих материалов — все обработки, расширения, инструменты — я выкладываю бесплатно. Пользуйтесь на здоровье.
Обработки - https://disk.yandex.ru/d/uph7Kz9OaWPTOQ
OneBridge (мост между Claude и 1С) — тоже бесплатный.
Это не будущее. Это уже настоящее. Я не программист. Но я автоматизирую процессы быстрее чем большинство программистов.
Вопрос к вам: с какой задачей по 1С Claude и OneBridge не справятся? Пишите в комментариях — возьмём самую интересную и снимем видео.
Предыстория, или как Том Хэнкс виноват в том, что я теперь не сплю
Посмотрел на днях фильм «Финч» (2021) — тот, где Том Хэнкс в постапокалипсисе собирает робота, чтобы тот позаботился о его собаке. Робот там учится ходить, водить машину, понимать мир. Снято невероятно душевно и при этом грустно до комка в горле.
Проснулся на следующий день и понял: хочу такого же. Ну, не в смысле постапокалипсис — а именно робота-компаньона, который рядом, который учится, с которым можно разговаривать.
Понятное дело, ходить мой робот не будет — это совсем другой уровень сложности и бюджета. Но вот сделать настольного помощника, с которым можно общаться голосом, который видит меня через камеру и реально помогает в работе — это мне вполне по силам.
Кто я такой и почему думаю, что потяну
Я работаю сисадмином и разработчиком. Разворачиваю сервера, пишу обработки, делаю телеграм-ботов, собираю сайты. У меня дома свой сервер (даже несколько), и целый зоопарк из виртуальных машин и контейнеров. Так что с железом и софтом я на «ты».
Знакомьтесь — Flappy
Назвал его Flappy — от английского «flappy», болтливый. Потому что главное, что он будет делать — это разговаривать со мной и помогать голосом.
Что он из себя представляет на сегодня — это коробочка на базе Raspberry Pi, которая будет стоять у меня на рабочем столе. Вот что я для него заказал:
Всё уже заказано на Алиэкспрессе, ждём.
Что он будет уметь
Вот тут самое интересное. Я хочу, чтобы Flappy был не просто говорящей колонкой, а реальным помощником.
Голосовое общение. Микрофон + динамик — чтобы я мог просто сказать: «Flappy, поставь задачу на завтра: в 9 утра сформировать ОПД и отправить клиенту» — и он поставит. У меня уже есть свой телеграм-бот, куда я наговариваю задачи — осталось прикрутить это к Flappy.
Управление серверами. Мечта — сказать: «Flappy, подключись к Proxmox, создай виртуальную машину, разверни там SSH и пришли мне доступы». Креды у него будут в памяти, API у Proxmox есть — технически это реально.
Камера и узнавание. Хочу, чтобы когда я захожу в комнату, он видел меня и говорил что-нибудь вроде: «Привет, Иван, давно не виделись!» Или мог распознать, что я ему показываю.
Экранчик с эмоциями. На 3,5-дюймовом дисплее будут отображаться эмоции, статусы, может быть какие-то подсказки. Чтобы он был не просто коробкой, а чем-то живым.
Что дальше
Пока жду посылки с Али. Когда всё приедет — начну собирать и буду выкладывать процесс. Если тема зайдёт, сделаю серию постов: от сборки железа до первого «Привет, Иван».
Как вам идея? Стоит делать серию постов, или я один тут сумасшедший, который вдохновился фильмом и решил собрать себе робота-помощника на малинке?