
Разбор · Материал от 08.10.2026
Историю заказов на сайте агенты добавляют с проверкой, что клиент видит только свои покупки
Клиенты просят менеджера найти прошлую покупку, хотя на сайте уже есть личный кабинет. Разберём, какую задачу поставить агентам и как принять историю заказов на двух разных покупателях.
Текст написан инженером, который ведёт vibecoding.ru, вместе с машиной агентов · факты проверены 8 октября 2026
Нужен список покупок, из которого клиент открывает состав своего заказа. Готовность подтверждает не красивая вкладка, а проверка, что чужую покупку нельзя получить даже по прямой ссылке.
У машины vibecoding.ru есть опыт кабинета ученика, но своего клиентского кейса истории торговых заказов нет. Ниже предложен протокол приёмки для вашего магазина, а не отчёт о таком внедрении.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
1. Первую версию ограничивают списком и составом заказа.
«Добавить историю» легко превратить в новый кабинет с бонусами, возвратами и рекомендациями. Для начала договоритесь о результате: покупатель входит, видит прошлые покупки и открывает заказ без обращения к менеджеру.
Но сначала проверьте, нет ли этой функции на вашей платформе. В документации WooCommerce, прочитанной 8 октября 2026, раздел заказов уже входит в личный кабинет. Может понадобиться настройка или ремонт существующей истории.
Агентам поручают недостающую часть. Повторная покупка меняет корзину, возврат меняет состояние заказа: это отдельные задачи с отдельной приёмкой. Список прошлых покупок не должен незаметно менять оплату или доставку.
Граница задачи сохраняет проверяемый результат.
Источник: предложенные границы задачи, редакция vibecoding.ru; наличие штатного раздела : документация WooCommerce, сверено 08.10.2026.
2. Историю собирают из сохранённых заказов и подтверждённых аккаунтов.
Экрану нужен источник. Попросите инженера показать, где уже хранятся заказы и как покупатель связан с аккаунтом. Если покупки приходят из учётной системы, надо согласовать, какие данные и статусы кабинет получает оттуда.
Заказ, оформленный после входа, и гостевая покупка требуют разных правил связи. Совпадения имени недостаточно. В WooCommerce прошлые гостевые заказы привязываются после подтверждения почты; порядок вашей платформы инженер проверяет отдельно.
История должна описывать покупку на момент заказа. Если товар исчез из каталога или подорожал, предложите сохранять прежнее название и цену в составе заказа. Старую покупку нельзя молча пересчитать по сегодняшнему каталогу.
Правило связи важнее внешнего вида списка.
Источник: протокол редакции; пример подтверждения гостевых заказов: документация WooCommerce, сверено 08.10.2026. Для конкретного магазина правила уточняются до разработки.
3. Чужой заказ должен оставаться недоступным по прямому запросу.
Список своих покупок ещё не доказывает, что чужие закрыты: фильтр на экране может скрыть строки, пока сервер продолжает их отдавать. Проверка должна стоять там, где читаются данные каждого заказа.
OWASP в API Security Top 10 за 2023 год описывает именно эту ошибку. Сервер проверяет право текущего пользователя на запрошенный объект. Сам факт входа и длинный случайный номер заказа такую проверку не заменяют.
Подготовьте два тестовых аккаунта с разными заказами. Это предложенный сценарий сдачи. Исполнитель показывает не только экран, но и ответы прямых запросов; результат проверки доступа сохраняется рядом с изменением кода.
Приёмка проверяет свои покупки и запрет чужих.
Источник: предложенная приёмка редакции по OWASP API1:2023 и REST Assessment, проверено 08.10.2026. Это не выполненный тест клиентского магазина и не полный аудит безопасности.
У нас уже был случай, когда пароль экрана не защищал чтение данных. В журнале машины зафиксировано обнаружение проблемы; оно не доказывает, что предложенную защиту внедрили в тот же день.
Обнаруженная ошибка меняет предмет следующей проверки.
07.07
Запросы данных позволяли читать агрегаты админки в обход пароля её экрана. Урок для этой задачи: проверять доступ прямым запросом, отдельно от вида кабинета.
Источник: журнал vibecoding.ru, запись 07.07.2026. Лента фиксирует обнаружение и урок для новой приёмки, не дату ремонта и не случай утечки заказов магазина.
Если чужой заказ возвращается, работу не принимают. Инженер устраняет причину и повторяет проверку; договорённости об ответственности за ошибки нужны до выпуска, а не после жалобы покупателя.
4. Наш кабинет подтверждает части работы, а история магазина требует своей приёмки.
На vibecoding.ru машина агентов собирала кабинет ученика: профиль и рамку курса добавили 8 сентября 2026, анкеты первого входа: 11 сентября.
Это соседний опыт, а не торговая история заказов. Из него нельзя вывести срок интеграции с вашей учётной системой или обещать снижение обращений в поддержку. Что из этого разбираем с учениками, описано на странице курса об агентной разработке.
Следы нашей машины доступны в открытом журнале работы. Для вашей задачи доказательством станет изменение в вашем репозитории и протокол доступа двух клиентов. Объём чужого сайта такую приёмку не заменяет.
Что и как мы проверяли
| Факт | Что известно | Проверено |
|---|---|---|
| Готовый кабинет | Прочитали документацию WooCommerce: история есть в My account. Версию и настройки магазина читателя не проверяли. | 2026-10-08 |
| Проверка доступа | Прочитали OWASP API1:2023 и REST Assessment. Таблица двух клиентов здесь предложена для сдачи, а не выполнена в магазине. | 2026-10-08 |
| Свой кабинет | Сверили историю репозитория: профиль и рама курса, PR #2001, 08.09.2026; анкеты первого входа, PR #2272, 11.09.2026. | 2026-10-08 |
| Ошибка экрана | Перечитали запись 07.07.2026. Подтверждено обнаружение проблемы, а не внедрение предложенной защиты в тот день. | 2026-10-08 |
| Подписка | На живой /services: «Один проект», 250 000 ₽ в месяц, одна задача в работе, код в вашем репозитории, пауза в любой месяц. | 2026-10-08 |
| Граница опыта | Своего клиентского кейса истории торговых заказов нет. Срок внедрения и снижение обращений менеджерам не измерены. | 2026-10-08 |
5. Агенту ставят задачу вместе с протоколом сдачи.
Для начала задачи покажите инженеру текущий кабинет, источник заказов и обращения, ради которых нужна история. На тестовых данных обозначьте, кто вправе увидеть каждую покупку.
В постановке задач агенту результат описывают вместе с проверкой. Здесь формулировка конкретная: «В существующем кабинете показать список и состав моих заказов; чужой заказ не возвращать ни через экран, ни прямым запросом».
Инженер ведёт машину агентов и закрепляет условия в правилах для агентов. Автор кода не сдаёт работу фразой «у меня открылось»: другой проверяющий повторяет согласованный сценарий на обоих аккаунтах.
В задаче есть источник, границы и доказательство сдачи.
Источник: предлагаемый порядок работы редакции, основан на правилах задач и приёмки машины vibecoding.ru; не календарный план внедрения.
После запуска считайте обращения с просьбой найти прошлый заказ и самостоятельные открытия истории за сопоставимые периоды. Сохраните те же определения обращений и открытий, что использовали до запуска.
Если менеджеры продолжают искать покупки, проверьте вход, видимость раздела и полноту данных. Экономия появится в замере, а не в обещании агента.
Для обсуждения следующего шага подготовьте эту короткую задачу и примеры. Ссылка ведёт к условиям работы с машиной агентов.
После запуска обращения менеджерам подсказывают следующую задачу.
Предлагаемый замер редакции: обращения и открытия истории до и после запуска за сопоставимые периоды. Эффект конкретного магазина ещё не измерен.
6. Подписка имеет смысл, когда кабинет нужно развивать дальше.
Если история уже входит в платформу, начните с её настройки и проверки. Если требуется одна изолированная доработка, согласуйте отдельный объём. Подписку стоит обсуждать, когда за историей стоит очередь задач магазина.
На /services тариф «Один проект» стоит 250 000 ₽ в месяц, проверено 8 октября 2026. Это цена месячной работы над продуктом, а не смета за одну вкладку истории заказов.
В рамках разработки по подписке инженер ведёт машину агентов: одна задача в работе, код в вашем репозитории, пауза в любой месяц. Историю можно поставить первой задачей; её источник, объём и приёмку доступа согласуют до начала.
Заказ истории отделён от условий месячной подписки.
Источник: задача предложена редакцией; цена и условия /services сверены 08.10.2026. Срок первой задачи определяется после знакомства с вашим кабинетом.
7. Частые вопросы
Где покупателю посмотреть историю заказов на сайте?+
Обычно в личном кабинете, в разделе «Заказы» или «Мои покупки». Войдите в тот аккаунт, с которого оформляли покупку. Для гостевого заказа действуют правила конкретного магазина: раздел не обязан появиться только от регистрации.
Нужно ли писать историю с нуля?+
Сначала проверьте платформу. Например, WooCommerce уже содержит раздел заказов в кабинете. Если функция не работает или данные приходят из другой системы, задача может быть настройкой, исправлением или интеграцией.
Можно ли показать покупки, сделанные без регистрации?+
Можно предусмотреть их привязку после подтверждения принадлежности. Порядок зависит от платформы; совпадения имени или просто введённой почты недостаточно для выдачи чужих данных.
Чем история отличается от статуса заказа?+
Статус описывает состояние конкретного заказа. История собирает покупки клиента в список и позволяет открыть их состав. Актуальность статуса зависит от того, как кабинет получает изменения из источника.
Двух клиентов достаточно для полной проверки безопасности?+
Нет. Это минимальный сценарий приёмки доступа к истории, а не полный аудит. Его дополняют случаями вашей системы: роли сотрудников, гостевые заказы, документы и другие способы получения данных, если они входят в задачу.
Источники
- WooCommerce, раздел заказов в My account — документация производителя
- WooCommerce, подтверждение почты и гостевые заказы — документация производителя
- OWASP, API1:2023 Broken Object Level Authorization — рекомендации безопасности
- OWASP, REST Assessment — руководство по проверке
- OWASP, Authorization Cheat Sheet — руководство по проверке
- vibecoding.ru, условия подписки — условия услуги
- vibecoding.ru, машина и журнал работы — наш опыт
- vibecoding.ru, курс «Агентная разработка» — наш опыт
Запомнить
- Проверьте готовую историю на своей платформе. Возможно, нужна настройка, а не новая разработка.
- Ограничьте первую задачу списком и составом заказа. Возврат и повтор покупки принимайте отдельно.
- Назовите источник заказов и правило связи с аккаунтом. Гостевые покупки требуют подтверждённой принадлежности.
- Принимайте доступ на двух клиентах и прямых запросах. Чужие данные сервер отдавать не должен.
- Оставьте проверки в репозитории и после запуска измерьте обращения менеджерам. Так следующий шаг опирается на результат.