Эта доработка выросла из разговора с организатором. Претензия была простая: покупатели жалуются, что пропускают короткие сборы. Товар нужен, он лежит в избранном, но открывается и закрывается быстрее, чем клиент успевает зайти в приложение.
Разрыв был даже в самом интерфейсе. Раздел «Избранное» показывал у скрытого товара подпись — станет доступен после публикации. Обещание было, а уведомления о том, что это произошло, не было. Приходилось заходить и проверять вручную.
Как работает
Как только организатор публикует товар, который у кого-то лежит в избранном, этому покупателю уходит уведомление «Избранное снова доступно».
Приходит оно сразу по четырём каналам: пуш на устройство, колокольчик в приложении, лента новостей и Telegram. Тот же набор, что уже работает для статусов заказов, доставки и кошелька — отдельного канала под эту функцию не заводили.
В самом пуше — короткая строка с количеством, потому что уведомление на экране блокировки не должно быть простынёй. А в колокольчике, новостях и Telegram приходит полный список названий: там ограничения по длине нет, и понять, о каких именно товарах речь, важнее краткости.
Нажатие всегда ведёт в раздел «Избранное» — независимо от того, вернулся один товар или пять. Кажется мелочью, но за ней стоит решение: человек, у которого освободилось несколько позиций, скорее хочет пересобрать заказ целиком, чем открыть одну карточку.
Когда уведомление не придёт
Уведомление не отправляется, если товар опубликован, но заказать его всё равно нельзя — весь остаток уже разобран другими покупателями. Позвать человека в приложение к недоступной позиции хуже, чем промолчать: это разочарование вместо покупки.
Если организатор публикует сразу несколько товаров одним действием, покупателю уйдёт одно уведомление со списком, а не пять подряд. Разбиваются только события, которые действительно произошли в разное время.
Сколько людей этим пользуется
Перед тем как делать, мы посмотрели, живёт ли раздел «Избранное» вообще. Данные снимались с рабочих магазинов, пустые и тестовые из выборки исключены.
По пятнадцати работающим магазинам набралось 556 записей в избранном, из них 476 активных — это 86%. Отложенных товаров, которые давно потеряли смысл, почти нет: люди пользуются разделом как рабочим инструментом, а не складывают туда всё подряд.
Пятёрка магазинов с самым активным избранным выглядит так:
| Магазин | Записей | Активных | Покупателей | Товаров |
|---|---|---|---|---|
| Магазин 1 | 120 | 108 | 31 | 115 |
| Магазин 2 | 102 | 88 | 61 | 86 |
| Магазин 3 | 60 | 52 | 22 | 56 |
| Магазин 4 | 55 | 34 | 35 | 50 |
| Магазин 5 | 50 | 39 | 37 | 46 |
Две цифры в этой таблице стоит прочитать вместе. У второго магазина записей меньше, чем у первого, зато покупателей вдвое больше: 61 против 31. Это разные модели — где-то избранным пользуется небольшая группа, но глубоко, где-то много людей понемногу. Уведомление одинаково полезно в обоих случаях, просто в первом оно чаще будет содержать список, а во втором — одну позицию.
Ещё одно наблюдение: девять магазинов из пятнадцати получили новую запись в избранном за последнюю неделю. Раздел не разовая проба при запуске, им продолжают пользоваться.
И момент, который снял главное опасение перед запуском. Мы боялись, что публикация популярного товара разошлёт залп уведомлений сотням людей разом. Оказалось, концентрации нет: у большинства товаров одно-два избрания, максимум по всей платформе — пять. Массовой рассылки от одного нажатия не получится.
Зачем это организатору
Избранное — единственное место в приложении, где покупатель сам сообщает, что ему нужно. Не предположение по истории заказов, а прямое действие: человек нажал на сердечко, потому что хочет этот товар.
До сих пор этот сигнал никак не использовался. Теперь публикация товара автоматически поднимает тех, кто его ждал, — без рассылок по всей базе и без напоминаний вручную. Организатору не нужно помнить, кому и что обещал.
Отдельно это работает на коротких сборах, ради которых всё и затевалось. Сбор на пару часов раньше видели только те, кто случайно оказался в приложении. Теперь его увидят те, кому товар действительно нужен.