Цена на Яндекс Маркете обновилась ночью, а мои расчёты остались во вчерашнем дне

5 мин чтения16 комментариев
Обложка истории: Цена на Яндекс Маркете обновилась ночью, а мои расчёты остались во вчерашнем днеИстория Ксении
Планировали аккуратно поднять цену на несколько рублей из-за закупки. Утром часть позиций уже стоила по-новому, часть — по-старому, а в таблице менеджера всё выглядело безупречно. Оказалось, мы доверяли не тому месту.

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

Во вторник менеджер прислал сообщение: «Почему набор ложек по старой цене?» Я открыла таблицу — новая цена была на месте. Открыла витрину — старая. Проверила другой товар — новая. Третий — тоже старая. Я несколько минут сидела и буквально переключала вкладки, надеясь, что цифры сами совпадут.

Мы приняли выгрузку за факт обновления

В журнале интеграции стояло «отправлено». Мы годами читали это как «готово», хотя это всего лишь означало, что данные ушли с нашей стороны. Фактический результат нужно было проверить отдельно. Часть изменений могла обрабатываться не одновременно, а часть требовала повторной сверки.

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

Самое обидное: разница в цене у одной позиции была небольшой. Но когда позиций десятки, а заказы идут каждый день, «ничего страшного» уже нельзя произносить автоматически. Надо считать.

Статус «отправлено» удобен для отчёта, но покупатель видит цену на витрине, а не наш отчёт.

Тест, которого раньше не существовало

Мы выделили пять контрольных товаров с разной логикой цен и прописали простой порядок: отправка, подтверждение обработки, проверка отображения, запись результата. Если цена не совпала, выясняем причину до следующей массовой корректировки. На тестовых товарах проверяли не только число, но и доступные скидки и условия, которые могли менять конечную стоимость для покупателя.

Поначалу менеджер ворчал: «Мы и так всё считаем». Я согласилась. Считаем мы хорошо. Проверяем итог хуже. Это две разные работы. Чтобы новая обязанность не превратилась в ещё одну бесконечную таблицу, мы автоматизировали только фиксацию статусов, а окончательную выборочную проверку оставили человеку.

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

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

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

Событие Как теперь отмечаем
Передали изменение Время и список позиций
Площадка обработала Доступный статус
Проверили витрину Результат и ответственный

Почему я больше не люблю ночные правки без дежурного

В ту ночь никто не смотрел на результат. Обновление было технической задачей, а не процессом, у которого есть завершение. Теперь заранее решаем, кому утром проверить критичные позиции и что делать при расхождении. Если ответственного нет, изменения переносим.

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

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

16 комментариев

Добавить комментарий
  1. Леонид

    А как понять, что цена действительно обновилась, если у площадки могут быть свои скидки?

    1. Ксения

      Мы сверяем свои настройки и доступное отображение, учитывая, что конечная цена для отдельных покупателей может отличаться по механикам площадки.

  2. Нина

    Работаю с выгрузками, «отправлено» и «применено» — вечная путаница.

    1. Ксения

      Да, мы годами смешивали эти два события. Теперь этап применения проверяется отдельно.

  3. Игорь_К

    А почему не поставить все цены вручную? Товаров у вас вроде немного.

    1. Ксения

      Пятьдесят товаров уже достаточно, чтобы ручная работа приносила ошибки. Но и автоматизация требует контроля результата.

  4. Лида

    Бывший подрядчик с доступом к файлу — вот это страшнее самой цены.

    1. Ксения

      Мы тоже обратили на это внимание. Подозрительных действий не нашли, однако права пересмотрели.

  5. Вадим

    Если цена не обновилась ночью, как вы узнаете об этом до следующей массовой выгрузки?

    1. Ксения

      У контрольных позиций есть проверка результата и ответственный. Если данные расходятся, следующую массовую корректировку не запускаем вслепую.

  6. Софья Н.

    У нас таблица иногда сама формулы ломает после копирования строк.

    1. Ксения

      Поэтому и права ограничили, и проверку исходных данных добавили. Ошибка бывает не только на стороне интеграции.

  7. Дима Р.

    Глупый вопрос: зелёная галочка ведь может показывать только успех отправки?

    1. Ксения

      Совсем не глупый. В нашей прежней схеме именно так и было. Теперь в журнале разные отметки для разных этапов.

  8. Маргарита

    Выручка могла вырасти или упасть из-за рекламы, и цену бы не заметили. Круто, что отдельно разобрали.

    1. Ксения

      Да, в общем отчёте проблему было легко списать на другое изменение. Разбор по позициям помог не гадать.

Ваше мнение

Добавить комментарий

Пишите по теме материала. Email на сайте не публикуется.