Skip to content

Подтверждение заказа

Когда заказ завершен, его необходимо подтвердить. Подтверждать имеет смысл тогда, когда заказ перешел в финальный статус. В оффлайне это чаще всего факт оплаты. В онлайне это может быть уместно после получения заказа, т.к. клиенту довольно просто отменить заказ, пока он не доставлен.

Подтверждение выполняет следующие операции:

  1. Выдает вознаграждение бонусами (не путать с активацией бонусов).
  2. Окончательно списывает стикеры, блокирует примененные промокоды.
  3. Выдает бонусное вознаграждение рефереру.
  4. Выдает промокоды или купоны.
POST https://api.rees46.ru/loyalty/checkout/confirm

Параметры

ПараметрОбязателен?Описание
shop_idДаAPI-ключ
shop_secretДаСекретный ключ API
order_idДаНомер заказа

Запрос

Пример запроса:

shell
curl --header "Content-Type: application/json" \
  --request POST \
  --data-binary "@payload.json" \
  https://api.rees46.ru/loyalty/checkout/confirm

Пример JSON-тела:

json
{
  "shop_id":        "...",
  "shop_secret":    "...",
  "order_id":       "..."
}

Ответ

Пример ответа сервера:

json
{
  "status": "success",
  "payload": {
    "order_id": "...",
    "identifier": "..."
  }
}

Расшифровка ответа:

ПараметрОписание
successЗапрос выполнен успешно или нет
payload.messageСообщение с результатом обработки запроса
payload.order_idИдентификатор заказа
payload.identifierИдентификатор участника программы лояльности в формате 7XXXXXXXXXX

Из каких статусов происходит подтверждение

Подтверждение происходит только для заказов в статусе "Создан" (после checkout/apply). Если попробовать подтвердить отмененный заказ, метод вернет ошибку. Если подтвердить подтвержденный заказ, ответ будет идентичным обычному подтверждению, с той разницей, что начисления вознаграждений повторно выполнены не будут.

В случае ошибки данных вернет подобную структуру:

json
{
  "status": "error",
  "payload": {
    "message": "Could not confirm order in its current status"
  }
}