Обработка заказов с помощью push-компонента

Маркет может сам отправлять вам запросы, когда приходят новые заказы, изменяются их статусы или, например, покупатель отменяет заказ. Чтобы это работало, вам нужно настроить push-компонент API Маркета.

Если push-компонент включен, отвечать на запросы обязательно

Нельзя включить уведомления и не отвечать на них. Пользуйтесь push-компонентом, только если уверены в стабильности своего сервера и системы на нем.

Запросы от Маркета нужно включить в кабинете

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

Если вкладки Получение запросов от Маркета нет, напишите службе поддержки — в кабинете выберите ОбщениеПоддержкаСоздать обращениеРабота через API.

⚠️ Делайте это после того как настроите интеграцию и проверите ее на тестовых заказах. Как выполнять отладку на тестовых заказах

Подтверждение получения заказа

Получив оформленный клиентом заказ, Маркет будет отправлять вам запрос на подтверждение заказа POST order/accept. Получив такой запрос, сразу подтвердите получение заказа — для этого нужно в течение 10 секунд передать ответ, содержащий "accepted": "true".

𝓠 Можно ли не принимать заказ?

𝓐 Да — магазин может отправить "accepted": "false" вместо "accepted": "true". Это точно так же скажется на индексе качества, как отмена заказа. Не принимать заказ может быть удобно, если вам не надо идти на склад, чтобы увидеть, что товара нет. Такое возможно, например, если в учетной системе магазина нулевые остатки по товару уже видны, а Маркету еще не переданы.

Если вы не готовы принять решение за 10 секунд, отвечайте "accepted": "true". Если товара потом не окажется, заказ можно будет отменить.

В order, который приходит в теле запроса, очень много разной информации, предназначенной для решения разных задач и работы по разным моделям. Чтобы обработать заказ, необходима лишь часть из них:

  • Индентификатор заказа id, который вам понадобится в ваших последующих запросах к Маркету.
  • Список товаров items, в котором передается список заказанных товаров. В нем для каждого товара вам важны:
    • id — идентификатор конкретного товара в корзине. Понадобится, например, чтобы передать для него коды «Честного знака».
    • shopSKU — идентификатор товара в вашем каталоге, который показывает, что заказали.
    • count — сколько заказано.
  • Дата отгрузки shipmentDate — в эту дату Маркет будет ждать от вас заказ.

Если вы работаете с тестовыми заказами, понадобится еще признак такого заказа — fake.

Совет

Просмотрите описания всех полей запроса — возможно, вы захотите использовать еще какие-то из них немедленно или в будущем, развивая интеграцию.

Дальнейшие шаги

Дальше вам понадобится только pull-компонент API. Просто следуйте основной инструкции по обработке заказов, начиная со второго шага.