---
title: "Как AI-агенту читать карточку товара"
description: "Идентичность товара, цена, характеристики, schema.org, отзывы и доступные действия на карточке Vesremont."
canonical: "https://vesremont.com/for_ai/products_ai/"
last_modified: "2026-10-26T08:28:35+00:00"
---

# Как AI-агенту читать карточку товара

> Индекс документации: https://vesremont.com/llms.txt — используйте его для обнаружения остальных публичных страниц и машинных представлений Vesremont.

Каноническая HTML-страница: https://vesremont.com/for_ai/products_ai/

Идентичность товара, цена, характеристики, schema.org, отзывы и доступные действия на карточке Vesremont.

[Главная](https://vesremont.com/)

[AI-документация](https://vesremont.com/for_ai/)

Данные карточки товара

[Обзор](https://vesremont.com/for_ai/)

[Выбор задачи и интерфейса](https://vesremont.com/for_ai/capabilities_ai/)

[Точка входа агента](https://vesremont.com/agents/)

[Vesremont API: разработчикам](https://vesremont.com/developers/)

[English developer portal](https://vesremont.com/en/developers/)

[Vesremont Public API](https://vesremont.com/for_ai/api_ai/)

[OAuth и WebMCP: авторизация](https://vesremont.com/auth.md)

[OpenAPI: схемы и операции](https://vesremont.com/openapi.json)

[Remote MCP: описание](https://vesremont.com/.well-known/mcp.json)

[Начало работы](https://vesremont.com/for_ai/getting-started_ai/)

[Карта документации](https://vesremont.com/for_ai/llms_ai/)

[Agent manifest](https://vesremont.com/agent.json)

[API catalog](https://vesremont.com/.well-known/api-catalog)

[Agent Skills](https://vesremont.com/.well-known/agent-skills/index.json)

[Канонические Markdown](https://vesremont.com/llms/)

[Вся документация](https://vesremont.com/for_ai/full_ai/)

[AI-policy и robots.txt](https://vesremont.com/for_ai/robots_ai/)

[Главная в Markdown](https://vesremont.com/for_ai/home_ai/)

[Навигация по каталогу](https://vesremont.com/for_ai/catalog_ai/)

[URL и параметры](https://vesremont.com/for_ai/url-patterns_ai/)

[Фильтры и диапазоны](https://vesremont.com/for_ai/filters_ai/)

[Данные карточки товара](https://vesremont.com/for_ai/products_ai/)

[Цена и возможность заказа](https://vesremont.com/for_ai/availability_ai/)

[Поиск по сайту](https://vesremont.com/for_ai/search_ai/)

[Навигация по брендам](https://vesremont.com/for_ai/brands_ai/)

[Корзина и оформление](https://vesremont.com/for_ai/purchase_ai/)

[Доставка и оплата](https://vesremont.com/for_ai/delivery_ai/)

[Отзывы и вопросы](https://vesremont.com/for_ai/reviews_ai/)

[Версии и изменения](https://vesremont.com/for_ai/changelog_ai/)

[Sitemap и обнаружение URL](https://vesremont.com/for_ai/sitemaps_ai/)

[Инструменты взаимодействия](https://vesremont.com/for_ai/tools_ai/)

Идентичность товара, цена, характеристики, schema.org, отзывы и доступные действия на карточке Vesremont. Исходный файл для машинного чтения: [/llms/products.md](https://vesremont.com/llms/products.md) .

Версия AI-документации: `1.14.31` . Ревизия: `sha256:5645af5ca9e82c3127c691283c5eec16d7efab8039972ccbbae5ae4b8ec746ce` .

- [Связь этого раздела с задачей](https://vesremont.com/for_ai/products_ai/#doc-section-1)

- [ID и ссылка видны без HTML-атрибутов](https://vesremont.com/for_ai/products_ai/#doc-section-2)

- [Товар через Public API](https://vesremont.com/for_ai/products_ai/#doc-section-3)

- [URL и идентичность](https://vesremont.com/for_ai/products_ai/#doc-section-4)

- [Цена и скидка](https://vesremont.com/for_ai/products_ai/#doc-section-5)

- [Остаток и получение](https://vesremont.com/for_ai/products_ai/#doc-section-6)

- [Характеристики и бренд](https://vesremont.com/for_ai/products_ai/#doc-section-7)

- [Аналоги](https://vesremont.com/for_ai/products_ai/#doc-section-8)

- [Отзывы и вопросы](https://vesremont.com/for_ai/products_ai/#doc-section-9)

- [Действия](https://vesremont.com/for_ai/products_ai/#doc-section-10)

- [Правила AI-блока на страницах магазина](https://vesremont.com/for_ai/products_ai/#doc-section-11)

Индекс документации: [https://vesremont.com/llms.txt](https://vesremont.com/llms.txt)

#### Связь этого раздела с задачей

**Задача:** Установить точную идентичность товара и прочитать его текущие данные.

**Что нужно на входе:** Карточка или product_id, найденные через поиск/каталог. Артикул и ID строки корзины — не product_id.

**Результат:** Проверенные ID, canonical URL, модель, характеристики, цена и отдельные сигналы наличия.

Другая цель? [Карта всех задач и режимов](https://vesremont.com/for_ai/capabilities_ai/) . Права личного доступа — [auth.md](https://vesremont.com/auth.md) ; это не обязательный шаг для публичного чтения.

Следующий раздел по теме: [Цена и возможность заказа](https://vesremont.com/for_ai/availability_ai/) — правильно истолковать цену и остатки · [Отзывы и вопросы](https://vesremont.com/for_ai/reviews_ai/) — прочитать отзывы и вопросы · [Корзина и оформление](https://vesremont.com/for_ai/purchase_ai/) — передать ссылку или продолжить покупку.

#### ID и ссылка видны без HTML-атрибутов

Внизу страницы товара, после отзывов и аналогов перед подвалом, находится раскрываемый AI-блок. Он содержит **внутренний числовой ID** и конкретную ссылку `https://vesremont.com/buy/{id}:1` для доступного к заказу товара. Это серверный текст и `a\[href\]` внутри блока, а не JavaScript или скрытый метатег. Содержимое доступно в HTML и Markdown независимо от раскрытия. Агент с доступом только к тексту страницы может передать эту ссылку покупателю без API-запросов и без OAuth.

Если нужен другой объём — используйте тот же проверенный ID и целое количество 1–99. Если товар недоступен, блок сообщает это и не предлагает ссылку на добавление. [Полный путь передачи корзины](https://vesremont.com/for_ai/purchase_ai/) .

#### Товар через Public API

GET `/api/v1/products/{product_id}` возвращает товар по числовому ID Vesremont: имя, canonical URL, бренд, раздел, характеристики, текущую цену и остатки. HTML URL и ID строки корзины не подменяют product_id. Для выбора фасетов используйте section.id/brand.id ответа, для перехода — их опубликованные URL. `updated_at: null` означает отсутствие доказанного времени изменения; не назначайте вымышленную дату. REST использует рубли, UCP — целые копейки. [Контракт и схемы](https://vesremont.com/for_ai/api_ai/) .

Текстовые альтернативы JSON: `/api/v1/products.md?q={артикул}` и `/api/v1/products/{id}.md` . Поиск возвращает ID; подтвердите артикул и название, не принимайте первый частичный результат за точное совпадение. [Поиск и fallback](https://vesremont.com/for_ai/search_ai/) . Номер артикула, GTIN, ID товара и `item_id` строки корзины — разные значения.

#### URL и идентичность

Поиск возвращает краткий товарный DTO, а `GET /api/v1/products/{id}` и `{id}.md` — детальную карточку с брендом, разделом, описанием и характеристиками. В Markdown сохранены ссылки на HTML и JSON той же позиции. Отсутствие характеристик в кратком списке не означает, что они отсутствуют у товара.

Поле `gtin` берётся только из опубликованного поля штрихкода каталога (8, 12, 13 или 14 цифр); при отсутствии — `null` . Оно не вычисляется из названия, артикула или URL. `updated_at: null` — неизвестное время изменения именно товара, не дата чтения API и не версия документации.

| Значение | Откуда взять | Где использовать |

| SKU / артикул / GTIN | Текст карточки или ответ товара | Поиск и проверка совпадения; не подставлять как ID |

| product_id / items[].id | Публичный поиск, ответ товара, AI-блок карточки | Чтение товара, добавление, /buy/ и cart-drafts |

| item_id | Ответ личной корзины | Изменение/удаление конкретной строки именно этой корзины |

| brand.id / section.id | Ответ товара и каталожные справочники | Выбор бренда/раздела и получение их фильтров |

| order_id | Подтверждённый результат сохранения заказа | Чтение разрешённого заказа и его событий; не номер товара |

Не переносите идентификаторы между колонками даже при совпадении чисел. Точные имена полей зависят от интерфейса: [контракты](https://vesremont.com/for_ai/api_ai/) . Для задачи «сравнить» перечитайте характеристики каждого кандидата; совпадение бренда или части названия ещё не означает ту же модель.

Товар открывается по `/catalog/product/{section-code}/{product-code}/` . Используйте опубликованный `href` , canonical или URL из sitemap: не выводите `section-code` из названия товара самостоятельно. Страница размечена `schema.org/Product` и содержит canonical URL, название, SKU/артикул, GTIN при наличии, бренд, изображения, описание и характеристики.

Основные источники в HTML:

- `itemtype="https://schema.org/Product"` — корень товара;

- `itemprop="url"` , `name` , `sku` , `mpn` , `gtin*` , `brand` , `image` , `description` ;

- таблица характеристик и `additionalProperty` / `PropertyValue` ;

- `itemprop="offers"` / `Offer` для цены, валюты и schema availability;

- `itemprop="aggregateRating"` при наличии отзывов.

Корень товара и карточки листинга также публикуют `data-product-id` , `data-product-url` , `data-product-price` , `data-product-stock` и `data-product-orderable` . На детальной карточке `data-product-stock` — остаток первого склада; на листинге это суммарный остаток карточки. Детальная карточка дополнительно публикует `data-product-pickup-today` . Листинг добавляет old-price и discount-percent, когда скидка реально показана. Stateful-кнопки имеют `data-agent-action` и `data-product-id` ; эти атрибуты описывают действие, но не отменяют требования session + CSRF.

#### Цена и скидка

Число `price.amount` в JSON выражено в рублях, без разделителей тысяч; Markdown показывает две цифры копеек (например, `15 599,40 RUB` ). Это одна сумма, а не разные тарифы. Правила старой цены и скидки принадлежат [availability.md](https://vesremont.com/for_ai/availability_ai/) .

Актуальная цена находится в Offer: `itemprop="price"` , валюта — `RUB` . В листинге также могут отображаться старая цена и процент скидки. На детальной карточке текущая реализация не выводит отдельный old-price/discount контракт, поэтому не переносите старую цену из другой страницы без проверки.

Положительная актуальная цена определяет, можно ли оформить товар. Если цена отсутствует или равна нулю, страница показывает «Недоступно для заказа».

#### Остаток и получение

При положительном локальном остатке HTML показывает:

- «На складе N»;

- `inventoryLevel` с числом и единицей `шт` ;

- «Самовывоз Сегодня».

При нулевом остатке эти блоки отсутствуют в DOM, а `data-product-pickup-today="false"` . Покупка может оставаться доступной, если цена положительна. Подробности: [наличие](https://vesremont.com/for_ai/availability_ai/) .

#### Характеристики и бренд

Характеристики находятся в обычной таблице. Значения, имеющие страницу каталога, являются ссылками. Бренд имеет ссылку `/catalog/brand/{brand-code}/` и блок количества товаров бренда.

`Страна родина` и `Страна производитель` — разные импортируемые характеристики. Первая передаёт страну происхождения бренда/товара в терминологии источника, вторая — страну производства. Значения могут совпадать или различаться; не объединяйте их и не подменяйте одно другим.

#### Аналоги

Ниже карточки выводится товарный листинг аналогов/похожих товаров. Сначала система пытается подобрать товары по главным характеристикам; если результатов нет, использует товары раздела. Каждая карточка аналога имеет обычную ссылку на товар.

#### Отзывы и вопросы

Счётчики, вкладки, опубликованные материалы и формы находятся на карточке. Формы stateful и отправляются через JavaScript/AJAX; см. [reviews.md](https://vesremont.com/for_ai/reviews_ai/) .

#### Действия

- Избранное — кнопка, session + CSRF, JavaScript/AJAX.

- В корзину — кнопка, session + CSRF, JavaScript/AJAX.

- Быстрый заказ — добавляет одну позицию и переводит в корзину; JavaScript/AJAX.

- Изменение количества — кнопки появляются после чтения корзины из сессии.

Это ограничения **кнопок браузерной корзины** , не запрет на переносимую ссылку. `/buy/{id}:{quantity}` и публичный issuer cart-drafts передают подборку в браузер покупателя; agent GET не меняет его корзину. Личные REST/MCP/A2A/UCP операции требуют OAuth, но выдача ссылки его не требует.

Перед state-changing действием прочитайте [capabilities.md](https://vesremont.com/for_ai/capabilities_ai/) и не отправляйте заказ без подтверждения пользователя.

#### Правила AI-блока на страницах магазина

Эти правила и блок на сайте формируются из одного источника. Числа в фигурных скобках — обозначения, не реальные ID.

Внутренний ID этого товара для API — {product_id} ( `product_id` ). Это не артикул и не ID строки корзины.

Если кнопка покупки доступна: Готовая ссылка на корзину с 1 шт. этого товара: [https://vesremont.com/buy/{product_id}:1](https://vesremont.com/buy/{product_id}:1) . Агент может передать её покупателю: вход в аккаунт, API-ключ, cookies и OAuth для этого не нужны.

Если кнопка покупки доступна: Если нужна подписанная ссылка, выполните [GET-запрос cart-drafts для этого товара](https://vesremont.com/api/v1/cart-drafts/?product_id={product_id}&quantity=1) и передайте покупателю `share_url` из ответа. Этот запрос корзину не меняет.

Иначе: Товар сейчас недоступен для заказа. Ссылка на добавление не предлагается; перед выбором проверьте актуальную цену и возможность заказа.

Когда покупатель откроет ссылку, сайт защищённым POST-запросом перенесёт товар в его корзину и заново проверит текущую цену и наличие. Заказ при этом не оформляется, а доступа к чужой корзине ссылка не даёт.

[Данные этого товара для текстового клиента](https://vesremont.com/api/v1/products/{product_id}.md) · [Как передать корзину по ссылке](https://vesremont.com/for_ai/purchase_ai/) · [API для разработчиков](https://vesremont.com/developers/)

Для чтения или изменения личной корзины через REST, MCP, A2A или UCP нужно отдельное [разрешение покупателя](https://vesremont.com/auth.md) .
