Cart

Для работы с корзиной, необходимо предоставлять uid корзины.
Для этого сначала нужно проинициализировать корзину.

get cart

Получение корзины по ее uuid
request
GET /api/v2/carts/af18b801-73d2-4eb2-aad3-ac1a83b343f7 HTTP/1.1
Table 60. /api/v2/carts/{cartUuid}
Parameter Description

cartUuid

UUID корзины

response
HTTP/1.1 200 OK

{
  "cartUuid" : "af18b801-73d2-4eb2-aad3-ac1a83b343f7",
  "cartGroups" : [ {
    "cartItems" : [ {
      "id" : "1000001046",
      "sellableId" : 1000001046
    }, {
      "id" : "1000001045",
      "sellableId" : 1000001045
    } ],
    "sellable" : {
      "className" : "AccessoryResponse",
      "id" : null,
      "retailPrice" : 600.0,
      "purchasingPrice" : 100.0,
      "soldPrice" : null,
      "baseSalePrice" : 100.0,
      "sellableCategory" : "ACCESSORY",
      "expected" : false,
      "barcode" : null,
      "factory" : false,
      "departmentName" : null,
      "goodsStatus" : "IN_DEPARTMENT",
      "accessoryCategory" : "Футляр",
      "model" : "FM-807-L18",
      "orderId" : null
    },
    "createdAt" : "2025-08-27T07:21:58.213439548",
    "localCreatedAt" : null,
    "groupSize" : 2,
    "maxSize" : null,
    "countUpdatable" : false,
    "activeDiscount" : null,
    "extraDiscount" : null,
    "bonusDiscount" : null,
    "spendBonusRule" : null,
    "accumulationBonusRule" : null,
    "price" : 600.0,
    "discountPrice" : 600.0,
    "totalPrice" : 1200.0,
    "totalDiscountPrice" : 1200.0
  }, {
    "cartItems" : [ {
      "id" : "1000001038",
      "sellableId" : 1000001038
    }, {
      "id" : "1000001037",
      "sellableId" : 1000001037
    } ],
    "sellable" : {
      "className" : "AccessoryResponse",
      "id" : null,
      "retailPrice" : 130.0,
      "purchasingPrice" : 25.0,
      "soldPrice" : null,
      "baseSalePrice" : 25.0,
      "sellableCategory" : "ACCESSORY",
      "expected" : false,
      "barcode" : null,
      "factory" : false,
      "departmentName" : null,
      "goodsStatus" : "IN_DEPARTMENT",
      "accessoryCategory" : "Салфетка микрофибра",
      "model" : "с рисунком",
      "orderId" : null
    },
    "createdAt" : "2025-08-27T07:21:58.26247339",
    "localCreatedAt" : null,
    "groupSize" : 2,
    "maxSize" : null,
    "countUpdatable" : false,
    "activeDiscount" : null,
    "extraDiscount" : null,
    "bonusDiscount" : null,
    "spendBonusRule" : null,
    "accumulationBonusRule" : null,
    "price" : 130.0,
    "discountPrice" : 130.0,
    "totalPrice" : 260.0,
    "totalDiscountPrice" : 260.0
  } ],
  "cartInfo" : {
    "cartUuid" : "af18b801-73d2-4eb2-aad3-ac1a83b343f7",
    "orderType" : "SALE",
    "orderComment" : null,
    "department" : {
      "id" : 1000000003,
      "name" : "Первый магазин",
      "otherDepartmentSearchId" : null,
      "otherDepartmentSearchName" : null
    },
    "client" : {
      "id" : 1000000002,
      "fullName" : "Аноним",
      "vipDiscount" : null,
      "contactLensReplacementBefore" : null,
      "mobileClient" : false
    },
    "clientCard" : null,
    "giftCertificateAddingMode" : "BARCODE_SCAN",
    "contactLensPrescription" : null,
    "selectedDiscount" : null,
    "extraDiscount" : null,
    "contactLensReplacementBefore" : null,
    "banDiscounts" : true,
    "discountsInCheckVision" : null,
    "cartPrice" : 1460.0,
    "cartDiscountPrice" : 1460.0,
    "cartDiscount" : 0.0,
    "minimumPaymentPrice" : 1460.0,
    "mainOnly" : false,
    "insuranceAvailable" : true,
    "creditAvailable" : true
  }
}
Table 61. response description
Path Type Description

cartUuid

String

Uuid корзины

orderType

String

Тип заказа

cartGroups

Array

Сгрупированные группы корзины

cartGroups.cartItems

Array

Элементы корзины

cartGroups.cartItems.id

String

Id позиции в корзине

cartGroups.cartItems.sellableId

Object

Id товара/услуги

cartGroups.sellable

Object

Товар/услуга

cartGroups.sellable.barcode

Object

Заводской штрихкод

cartGroups.sellable.factory

Object

Был ли товар отсканирован по заводскому штрихкоду

cartGroups.createdAt

Object

Время добавления первого товара в группе

cartGroups.groupSize

Object

Количество позиций в группе

cartGroups.maxSize

Object

Максимально допустимое кол-во в группе

cartGroups.countUpdatable

Object

Можно ли изменить кол-во позиций

cartGroups.activeDiscount

Object

Основная скидка

cartGroups.extraDiscount

Object

Доп.скидка

cartGroups.bonusDiscount

Object

Бонусная скидка

cartGroups.accumulationBonusRule

Object

Накопительное бонусное правило

cartGroups.spendBonusRule

Object

Бонусное правило на списание

cartGroups.price

Object

Стоимость одного товара в группе

cartGroups.discountPrice

Object

Стоимость одного товара в группе со скидкой

cartGroups.totalPrice

Object

Стоимость товаров группы

cartGroups.totalDiscountPrice

Object

Стоимость товаров группы со скидкой

cartInfo

Object

Информация о корзине

cartInfo.userId

Object

Id продавца заказа

cartInfo.department

Object

Департамент, где совершается заказ

cartInfo.client

Object

Клиент, на которого оформлена корзина

cartInfo.clientCard

Object

Карта клиента со скидками

cartInfo.giftCertificateAddingMode

String

[NUMBER_NOT_REQUIRED, NUMBER_REQUIRED, BARCODE_SCAN]

cartInfo.selectedDiscount

Object

Выбранная скидка

cartInfo.extraDiscount

Object

Дополнительная скидка

cartInfo.contactLensReplacementBefore

Object

Дата окончания скидки по замене КЛ

cartInfo.banDiscounts

Boolean

Заблочены ли скидки (для анонимных клиентов)

cartInfo.cartPrice

Number

Стоимость корзины без скидок

cartInfo.cartDiscountPrice

Number

Стоимость корзины со скидками

cartInfo.cartDiscount

Number

Сумма всех скидок

cartInfo.minimumPaymentPrice

Number

Минимальная сумма для оплаты заказа

cartInfo.mainOnly

Boolean

false - есть возможность оплаты*

cartInfo.insuranceAvailable

Boolean

true - можно платить страховкой

cartInfo.creditAvailable

Boolean

true - можно платить кредитным договором

get cart info

Получение информации о корзине (без элементов) по ее uuid
request
GET /api/v2/carts/5d107e94-6184-4393-9f50-5c25a5605b80/info HTTP/1.1
Table 62. /api/v2/carts/{cartUuid}/info
Parameter Description

cartUuid

UUID корзины

response
HTTP/1.1 200 OK

{
  "cartUuid" : "5d107e94-6184-4393-9f50-5c25a5605b80",
  "orderType" : "SALE",
  "orderComment" : null,
  "department" : {
    "id" : 1000000003,
    "name" : "Первый магазин",
    "otherDepartmentSearchId" : null,
    "otherDepartmentSearchName" : null
  },
  "client" : {
    "id" : 1000000002,
    "fullName" : "Аноним",
    "vipDiscount" : null,
    "contactLensReplacementBefore" : null,
    "mobileClient" : false
  },
  "clientCard" : null,
  "giftCertificateAddingMode" : "BARCODE_SCAN",
  "contactLensPrescription" : null,
  "selectedDiscount" : null,
  "extraDiscount" : null,
  "contactLensReplacementBefore" : null,
  "banDiscounts" : true,
  "discountsInCheckVision" : null,
  "cartPrice" : 0.0,
  "cartDiscountPrice" : 0.0,
  "cartDiscount" : 0.0,
  "minimumPaymentPrice" : null,
  "mainOnly" : false,
  "insuranceAvailable" : true,
  "creditAvailable" : true
}
Table 63. response description
Path Type Description

department

Object

Департамент, где совершается заказ

client

Object

Клиент, на которого оформлена корзина

clientCard

Object

Карта клиента со скидками

giftCertificateAddingMode

String

[NUMBER_NOT_REQUIRED, NUMBER_REQUIRED, BARCODE_SCAN]

selectedDiscount

Object

Выбранная скидка

extraDiscount

Object

Дополнительная скидка

contactLensReplacementBefore

Object

Дата окончания скидки по замене КЛ

banDiscounts

Boolean

Заблочены ли скидки (для анонимных клиентов)

cartPrice

Number

Стоимость корзины без скидок

cartDiscountPrice

Number

Стоимость корзины со скидками

cartDiscount

Number

Сумма всех скидок

cartInfo.minimumPaymentPrice

Number

Минимальная сумма для оплаты заказа

initialize cart

Создает корзину и возвращает ее uid.
Если не предоставить clientId, то создаст корзину на анонимного клиента
request
POST /api/v2/carts HTTP/1.1

{
  "userId" : 9000000008,
  "orderType" : "SALE",
  "clientId" : 1000000220,
  "contactLensPrescriptionId" : null
}
response
HTTP/1.1 200 OK

e05e0822-dce6-4109-9a41-29c20cd0c5a0

initialize cart with expected contact lenses based on order

Создает корзину с заявками на контактные линзы из существующего заказа и возвращает ее uuid
request
POST /api/v2/carts/expected-contact-lenses/1100001131 HTTP/1.1
Content-Type: application/x-www-form-urlencoded
response
HTTP/1.1 200 OK

9da08446-1f35-410f-b629-e2a2a22b1cdb
Возможные ошибки:
  • 404 - Если заказ не найден

  • 400 - Если в заказе нет завершенных заявок на контактные линзы

update count

Изменение кол-ва позиций корзины (доступно только для КЛ, услуг и немарк.товаров)
request
PUT /api/v2/carts/e0f4b5c5-ae5d-498a-9d72-d4d49aee031c/items/7a6a9a3f-0c67-48a8-8f27-ac51a4dfbc9b/count HTTP/1.1

{
  "count" : 7
}
response
HTTP/1.1 200 OK

delete item

Удаление позиции в корзине

request
DELETE /api/v2/carts/b4d36553-9854-453b-8b16-44c3154f0ca4/items HTTP/1.1

{
  "cartItemIds" : [ "1000012195" ]
}
Table 64. /api/v2/carts/{cartUuid}/items
Parameter Description

cartUuid

UUID корзины

Path Type Description Constraints

cartItemIds

Array

Ids удаляемых позиций

response
HTTP/1.1 200 OK