# Удаление промокода из корзины Удаляет промокод из корзины. После удаления промокода общая цена всех товаров в корзине будет пересчитана без учета бонусов и скидок, предоставляемых промокодом. Endpoint: PUT /v2/project/{project_id}/promocode/remove Version: 2.0.0 Security: AuthForCart ## Path parameters: - `project_id` (integer, required) ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта. Example: 44056 ## Request fields (application/json): - `cart` (object,null) - `cart.id` (string, required) ID корзины. ## Response 200 fields (application/json): - `cart_id` (string) ID корзины. Example: "cart_id" - `is_free` (boolean) Если true, товар бесплатный. - `items` (array) Example: [{"attributes":[],"can_be_bought":true,"description":"Take it, take it all! All of Xsolla's riches in one Mega Booster.","groups":[{"external_id":"powerups","name":"Power Ups"}],"image_url":"https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png","is_free":false,"limits":{"per_user":{"available":3,"recurrent_schedule":{"interval_type":"weekly","reset_next_date":1746057600},"total":5}},"name":"Xsolla Booster Mega","periods":[{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}],"price":{"amount":"50.0000000000000000","amount_without_discount":"100.0000000000000000","currency":"USD"},"promotions":[{"bonus":[{"image_url":"https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png","name":"Xsolla Minigun","quantity":1,"sku":"com.xsolla.minigun_1","type":"virtual_good"}],"date_end":"2026-04-15T16:16:00+03:00","date_start":"2020-04-15T16:16:00+03:00","discount":{"percent":"50.00"},"name":"Bonus promotion"}],"quantity":123,"sku":"com.xsolla.booster_mega_1","type":"virtual_good","virtual_item_type":"consumable","virtual_prices":[],"vp_rewards":[{"amount":130,"image_url":"https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg","item_id":175232,"name":"Value point","sku":"com.xsolla.value_point_1"},{"amount":50,"image_url":"https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg","is_clan":true,"item_id":186321,"name":"Clan Reward VP 1","sku":"com.xsolla.clan_value_point_1"}]}] - `items.attributes` (array) Список атрибутов и их значений, соответствующих товару. Может использоваться для фильтрации каталога. Example: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}} - `items.attributes.external_id` (string) Уникальный ID атрибута. external_id может содержать только строчные и заглавные латинские буквы, цифры, тире и подчеркивания. Example: "attribute_1" - `items.attributes.name` (string) Название атрибута. Example: "Genre" - `items.attributes.values` (array) - `items.attributes.values.external_id` (string) Уникальный ID значения атрибута. external_id может содержать только строчные латинские буквы, цифры, тире и подчеркивания. Example: "attribute_value" - `items.attributes.values.value` (string) Значение атрибута. Example: "Strategy" - `items.can_be_bought` (boolean) Если true, пользователь может купить товар. Example: true - `items.description` (string) - `items.groups` (array) - `items.groups.external_id` (string) - `items.groups.name` (string) - `items.image_url` (string) - `items.limits` (object,null) Ограничения на продажу товара. - `items.limits.per_item` (object,null) Ограничения на продажу для конкретного товара. - `items.limits.per_item.available` (integer) Оставшееся количество товара, которое могут приобрести все пользователи. Example: 3 - `items.limits.per_item.total` (integer) Максимальное количество товара, которое могут приобрести все пользователи. Example: 5 - `items.limits.per_user` (object,null) Ограничения на продажу товара для пользователя. - `items.limits.per_user.available` (integer) Оставшееся количество товара, которое может приобрести текущий пользователь. Example: 3 - `items.limits.per_user.limit_exceeded_visibility` (string) Определяет видимость товара в каталоге после достижения лимита покупок до момента следующего обновления лимитов. Применяется к товарам, для которых задано регулярное обновление лимитов в массиве recurrent_schedule. Если обновление лимитов не задано, товар не отображается в каталоге после достижения лимита независимо от значения limit_exceeded_visibility. Enum: "show", "hide" - `items.limits.per_user.recurrent_schedule` (object) Период обновления ограничений на продажу товара для пользователя. - `items.limits.per_user.recurrent_schedule.interval_type` (string) Период обновления ограничения на продажу товара. Enum: "daily", "weekly", "monthly", "hourly" - `items.limits.per_user.recurrent_schedule.reset_next_date` (integer) Дата и время обновления ограничений (Unix Timestamp). Example: 1677553200 - `items.limits.per_user.total` (integer) Максимальное количество товара, которое может приобрести один пользователь. Example: 5 - `items.periods` (array,null) Период продажи товара. - `items.periods.date_from` (string) Дата, когда указанный товар будет доступен для продажи. Example: "2020-08-11T10:00:00+03:00" - `items.periods.date_until` (string,null) Дата, когда указанный товар станет недоступен для продажи. Может быть null. Example: "2020-08-11T20:00:00+03:00" - `items.price` (object,null) Цены на товар. - `items.price.amount` (string) Цена товара со скидкой. Example: "2.9900" - `items.price.amount_without_discount` (string) Цена товара. Example: "2.9900" - `items.price.currency` (string) Валюта, в которой указана цена товара. Трехбуквенный код в соответствии со стандартом [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). Example: "USD" - `items.promotions` (array) Примененные акции для отдельных товаров в корзине. Массив возвращается, если: * Скидочная акция настроена для отдельного товара. * Используется промокод с настройкой Скидка на выбранные товары. Если акции на уровне отдельных товаров не применялись, возвращается пустой массив. - `items.promotions.bonus` (array) - `items.promotions.bonus.bundle_type` (string) Тип товара бонусного бандла. Доступно только для бонусного товара типа bundle. Enum: "standard", "virtual_currency_package" - `items.promotions.bonus.image_url` (string) URL-адрес изображения бонусного бандла. Недоступно для типа бонусного товара physical_good. - `items.promotions.bonus.name` (string) Название бонусного товара. Недоступно для типа бонусного товара physical_good. - `items.promotions.bonus.quantity` (integer) - `items.promotions.bonus.sku` (string) - `items.promotions.bonus.type` (string) Тип бонусного товара. Enum: "virtual_good", "virtual_currency", "bundle", "physical_good", "game_key", "nft" - `items.promotions.date_end` (string,null) - `items.promotions.date_start` (string,null) - `items.promotions.discount` (object,null) - `items.promotions.discount.percent` (string,null) - `items.promotions.discount.value` (string,null) - `items.promotions.limits` (object) - `items.promotions.limits.per_user` (object) - `items.promotions.limits.per_user.available` (integer) - `items.promotions.limits.per_user.total` (integer) - `items.type` (string) - `items.virtual_item_type` (string) Тип виртуального предмета. Enum: "consumable", "non_consumable", "non_renewing_subscription" - `items.virtual_prices` (array) - `items.vp_rewards` (array) Стоимость призовых баллов товара. - `items.vp_rewards.amount` (integer) Количество призовых баллов. - `items.vp_rewards.image_url` (string) URL-адрес изображения. Example: "https://image.example.com" - `items.vp_rewards.is_clan` (boolean) Может ли призовой балл использоваться в цепочках наград для клана. Example: true - `items.vp_rewards.item_id` (integer) Внутренний уникальный ID виртуального предмета или валюты. Example: 1 - `items.vp_rewards.name` (string) Название призовых баллов. - `items.vp_rewards.sku` (string) Уникальный ID призовых баллов. - `price` (object,null) Цена корзины. Example: {"amount":"6150.0000000000000000","amount_without_discount":"6150.0000000000000000","currency":"USD"} - `price.amount` (string) Example: "6150.0000000000000000" - `price.amount_without_discount` (string) Example: "6150.0000000000000000" - `price.currency` (string) Example: "USD" ## Response 401 fields (application/json): - `errorCode` (integer) Example: 1501 - `errorMessage` (string) Example: "[0401-1501]: Authorization failed: Provide authorization" - `statusCode` (integer) Example: 401 ## Response 403 fields (application/json): - `errorCode` (integer) - `errorMessage` (string) Example: "Authorization header not sent." - `statusCode` (integer) Example: 403 - `transactionId` (string) Example: "x-x-x-x-transactionId-mock-x-x-x" ## Response 422 fields (application/json): - `errorCode` (integer) Example: 1102 - `errorMessage` (string) Example: "[0401-1102]: Unprocessable Entity. The property `id` is required" - `statusCode` (integer) Example: 422 - `transactionId` (string) Example: "x-x-x-x-transactionId-mock-x-x-x"