- Request
- Body
- Coupon
- Discount
- CartItemFeatures
- Measurements
- ItemQuantity
- PaymentsOperator
- TransferOperator
- Agent
- MarkQuantity
- Supplier
- ItemReceipt
- CartItemWithoutFinalPrice
- CartTotal
- CartWithoutFinalPrice
- PaymentMethod
- Location
- Address
- TimeInterval
- FlexibleCustomerChoice
- FlexibleTimeIntervalsGridDescriptor
- FlexibleTimeIntervals
- CourierOption
- PickupSchedule
- PickupOption
- YandexDeliveryOption
- ShippingMethod
- Responses
- 200 OK
- 400 Bad Request
/v1/order/render ⦸
Важно
Этот метод устарел. Не используйте его.
/v1/order/render
Запрос информации для отображения корзины.
В параметрах запроса передаются идентификаторы товаров и их количество или номер заказа. В ответе возвращаются параметры и контент для формы Яндекс Пэй.
На входе идентификаторы товаров и их количество.
Имеется возможность передать произвольные данные в поле metadata с фронтенда продавца на
бэкенд магазина. Метод вызывается при изменении состава корзины, выборе адреса, способа доставки,
вводе промокодов. Продавцу необходимо проверять состав заказа и заполнять детальную информацию
для товаров, способов доставки и промокодов, пересчитывать стоимости товаров и всего заказа.
В ответе ожидаются детальная информация по заказу и товарам:
- Доступные типы способов оплаты и доставки в
availablePaymentMethods,shipping.availableMethods - Дополнительные данные пользователя необходимые для оформления заказа, в
requiredFields - Стоимость каждого товара и название. Опционально, максимально доступное количество товара
- Информация о скидках, примененных к корзине, в
discounts
Request
POST
https://example.merchant.ru/v1/order/render
Production
POST
https://sandbox.example.merchant.ru/v1/order/render
Sandbox
Body
application/json
{
"cart": {
"cartId": "example",
"coupons": [
{
"description": "example",
"status": "VALID",
"value": "example"
}
],
"discounts": [
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
],
"externalId": "example",
"items": [
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": null,
"measurements": null,
"productId": "example",
"quantity": null,
"receipt": null,
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
],
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"total": null
},
"currencyCode": "RUB",
"merchantId": "123e4567-e89b-12d3-a456-426614174000",
"metadata": "example",
"orderId": "example",
"paymentMethod": {
"cardLast4": "example",
"cardNetwork": "AMEX",
"methodType": "CARD"
},
"shippingAddress": {
"addressLine": "example",
"building": "example",
"comment": "example",
"country": "example",
"district": "example",
"entrance": "example",
"floor": "example",
"intercom": "example",
"locale": "example",
"locality": "example",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"region": "example",
"room": "example",
"street": "example",
"zip": "example"
},
"shippingMethod": {
"courierOption": {
"allowedPaymentMethods": [
null
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"customerChoice": null,
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": null,
"timeIntervals": null,
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
},
"methodType": "DIRECT",
"pickupOption": {
"address": "example",
"allowedPaymentMethods": [
null
],
"amount": "123.45",
"description": "example",
"fromDate": "2025-01-01",
"location": null,
"phones": [
null
],
"pickupPointId": "example",
"provider": "YANDEX_MARKET",
"receipt": null,
"schedule": [
null
],
"storagePeriod": 0,
"title": "example",
"toDate": "2025-01-01"
},
"yandexDeliveryOption": {
"allowedPaymentMethods": [
null
],
"amount": "123.45",
"category": "EXPRESS",
"fromDatetime": "2025-01-01T00:00:00Z",
"receipt": null,
"title": "example",
"toDatetime": "2025-01-01T00:00:00Z",
"yandexDeliveryOptionId": "example"
}
}
}
|
Name |
Description |
|
cart |
All of 1 type
Корзина c ценами, размером и весом товаров Example
|
|
currencyCode |
Type: string Трехбуквенный код валюты заказа (ISO 4217) Enum: |
|
merchantId |
Type: string<uuid> Example: |
|
metadata |
Type: string Произвольные данные, переданные при инициализации кнопки Example: |
|
orderId |
Type: string Id существующего заказа на стороне продавца, переданный при инициализации кнопки Example: |
|
paymentMethod |
All of 1 type
Выбранный способ оплаты Example
|
|
shippingAddress |
All of 1 type
Адрес доставки доступен, если выбран метод COURIER Example
|
|
shippingMethod |
All of 1 type
Выбранный способ доставки Example
|
Coupon
|
Name |
Description |
|
value |
Type: string Код купона Example: |
|
description |
Type: string Описание. Например, "Скидка 3%" Example: |
|
status |
Type: string Enum: Example: |
Example
{
"description": "example",
"status": "VALID",
"value": "example"
}
Discount
|
Name |
Description |
|
amount |
Type: string<double> Сумма скидки Example: |
|
description |
Type: string Текстовое описание Example: |
|
discountId |
Type: string Идентификатор скидки в системе мерчанта Example: |
Example
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
CartItemFeatures
|
Name |
Description |
|
pointsDisabled |
Type: boolean Не распределять баллы Плюса. Используется только при создании заказа. Если это поле не указано, то баллы будут распределены на товар Default: |
|
tariffModifier |
Type: string Модификатор тарифа для расчета комиссии. Определяет, какой тариф будет применяться при расчете комиссии за обработку позиции в корзине. Enum: Example: |
Example
{
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
}
Measurements
|
Name |
Description |
|
height |
Type: number Высота, в метрах |
|
length |
Type: number Длина, в метрах |
|
weight |
Type: number Вес, в килограммах |
|
width |
Type: number Ширина, в метрах |
Example
{
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
}
ItemQuantity
|
Name |
Description |
|
count |
Type: string<double> Количество товара в заказе Example: |
|
available |
Type: string<double> Максимально доступное количество товара Example: |
Example
{
"available": "123.45",
"count": "123.45"
}
PaymentsOperator
|
Name |
Description |
|
phones |
Type: string[] Example
|
Example
{
"phones": [
"example"
]
}
TransferOperator
|
Name |
Description |
|
address |
Type: string Example: |
|
inn |
Type: string Example: |
|
name |
Type: string Example: |
|
phones |
Type: string[] Example
|
Example
{
"address": "example",
"inn": "example",
"name": "example",
"phones": [
"example"
]
}
Agent
|
Name |
Description |
|
agentType |
Type: integer Признак агента по предмету расчёта. См. значения Enum: |
|
operation |
Type: string Example: |
|
paymentsOperator |
Type: PaymentsOperator Example
|
|
phones |
Type: string[] Example
|
|
transferOperator |
Type: TransferOperator Example
|
Example
{
"agentType": 1,
"operation": "example",
"paymentsOperator": {
"phones": [
"example"
]
},
"phones": [
"example"
],
"transferOperator": {
"address": "example",
"inn": "example",
"name": "example",
"phones": [
"example"
]
}
}
MarkQuantity
|
Name |
Description |
|
denominator |
Type: integer |
|
numerator |
Type: integer |
Example
{
"denominator": 0,
"numerator": 0
}
Supplier
|
Name |
Description |
|
inn |
Type: string Example: |
|
name |
Type: string Example: |
|
phones |
Type: string[] Example
|
Example
{
"inn": "example",
"name": "example",
"phones": [
"example"
]
}
ItemReceipt
|
Name |
Description |
|
tax |
Type: integer Описание значений: Ссылка Enum: |
|
agent |
Type: Agent Example
|
|
excise |
Type: string<double> Не должно содержать больше двух знаков после запятой. Например: 1.12, 5.1, 10, 11.00 . Example: |
|
markQuantity |
Type: MarkQuantity Example
|
|
measure |
Type: integer Описание значений: Ссылка Enum: |
|
paymentMethodType |
Type: integer Описание значений: Ссылка Enum: |
|
paymentSubjectType |
Type: integer Описание значений: Ссылка Enum: |
|
productCode |
Type: string<base64> Код товара (base64 кодированный массив от 1 до 32 байт) Example: |
|
supplier |
Type: Supplier Example
|
|
title |
Type: string Example: |
Example
{
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": {
"phones": [
"example"
]
},
"phones": [
"example"
],
"transferOperator": {
"address": "example",
"inn": "example",
"name": "example",
"phones": [
"example"
]
}
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
"example"
]
},
"tax": 1,
"title": "example"
}
CartItemWithoutFinalPrice
|
Name |
Description |
|
productId |
Type: string Id товара в системе продавца. В параметрах запроса каждый идентификатор товара Example: |
|
quantity |
All of 1 type
Количество товара в заказе Example
|
|
description |
Type: string Описание товара Example: |
|
discountedUnitPrice |
Type: string<double> Цена за единицу товара с учётом скидок на позицию Example: |
|
features |
All of 1 type
Промо параметры товара Example
|
|
measurements |
All of 1 type
Размеры и вес товара. Обязательно для товара типа Example
|
|
receipt |
All of 1 type
Данные для формирования чека Example
|
|
skuId |
Type: string Уникальный id, который описывает единицу ассортимента. Необходим для применения индивидуального тарифа. Example: |
|
subtotal |
Type: string<double> Суммарная цена за позицию без учета скидок Example: |
|
title |
Type: string Наименование товара Example: |
|
total |
Type: string<double> Суммарная цена за позицию с учётом скидок на позицию Example: |
|
type |
Type: string Тип товара. Важен для интеграции с доставками Default: Enum: |
|
unitPrice |
Type: string<double> Полная цена за единицу товара без учетка скидки Example: |
Example
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
null
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
null
]
},
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
CartTotal
|
Name |
Description |
|
amount |
Type: string<double> Стоимость корзины с учетом всех скидок. Example: |
|
externalAmount |
Type: string<double> Сумма внешнего покрытия (сертификаты, подарочные карты). Example: |
Example
{
"amount": "123.45",
"externalAmount": "123.45"
}
CartWithoutFinalPrice
|
Name |
Description |
|
cartId |
Type: string Внутренний идентификатор корзины Яндекс Пэй. Бэкенд магазина должен использовать этот параметр как идентификатор корзины покупателя и как ключ идемпотентности для запроса Example: |
|
coupons |
Type: Coupon[] Купоны, применённые к корзине Example
|
|
discounts |
Type: Discount[] Скидки, применённые к корзине Example
|
|
externalId |
Type: string Переданный продавцом идентификатор корзины Example: |
|
items |
Type: CartItemWithoutFinalPrice[] Example
|
|
measurements |
Type: Measurements Example
|
|
total |
All of 1 type
Итоговая стоимость корзины, которая пойдет в оплату Default: |
Example
{
"cartId": "example",
"coupons": [
{
"description": "example",
"status": "VALID",
"value": "example"
}
],
"discounts": [
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
],
"externalId": "example",
"items": [
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": null,
"excise": "123.45",
"markQuantity": null,
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": null,
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
],
"measurements": null,
"total": null
}
PaymentMethod
|
Name |
Description |
|
methodType |
Type: string Enum: |
|
cardLast4 |
Type: string Example: |
|
cardNetwork |
Type: string Платежная система Enum: Example: |
Example
{
"cardLast4": "example",
"cardNetwork": "AMEX",
"methodType": "CARD"
}
Location
|
Name |
Description |
|
latitude |
Type: number |
|
longitude |
Type: number |
Example
{
"latitude": 0.5,
"longitude": 0.5
}
Address
|
Name |
Description |
|
building |
Type: string Example: |
|
country |
Type: string Example: |
|
addressLine |
Type: string Полный адрес Example: |
|
comment |
Type: string Example: |
|
district |
Type: string Example: |
|
entrance |
Type: string Example: |
|
floor |
Type: string Example: |
|
intercom |
Type: string Example: |
|
locale |
Type: string Example: |
|
locality |
Type: string Example: |
|
location |
Type: Location Example
|
|
region |
Type: string Example: |
|
room |
Type: string Example: |
|
street |
Type: string Example: |
|
zip |
Type: string Example: |
Example
{
"addressLine": "example",
"building": "example",
"comment": "example",
"country": "example",
"district": "example",
"entrance": "example",
"floor": "example",
"intercom": "example",
"locale": "example",
"locality": "example",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"region": "example",
"room": "example",
"street": "example",
"zip": "example"
}
TimeInterval
|
Name |
Description |
|
end |
Type: string Время конца интервала Example: |
|
start |
Type: string Время начала интервала Example: |
Example
{
"end": "example",
"start": "example"
}
FlexibleCustomerChoice
|
Name |
Description |
|
date |
Type: string<date> Example: |
|
time |
Type: TimeInterval Example
|
Example
{
"date": "2025-01-01",
"time": {
"end": "example",
"start": "example"
}
}
FlexibleTimeIntervalsGridDescriptor
|
Name |
Description |
|
duration |
Type: string Продолжительность каждого интервала Example: |
|
end |
Type: string Максимальное время начала самого последнего интервала Example: |
|
start |
Type: string Время начала самого первого интервала Example: |
|
step |
Type: string Разница во времени между началами двух соседних интервалов Example: |
Example
{
"duration": "example",
"end": "example",
"start": "example",
"step": "example"
}
FlexibleTimeIntervals
|
Name |
Description |
|
type |
Type: string Если указан тип Enum: |
|
grid |
All of 1 type
Кодирует интервалы в виде сетки. Используйте этот формат, если необходимо задать больше 20 интервалов доставки.
Пример: Example
|
|
values |
Type: TimeInterval[] Задаёт список интервалов напрямую. Подходит для небольшого количества интервалов доставки. Рекомендуемое максимальная количество интервалов - 20 Example
|
Example
{
"grid": {
"duration": "example",
"end": "example",
"start": "example",
"step": "example"
},
"type": "GRID",
"values": [
{
"end": "example",
"start": "example"
}
]
}
CourierOption
|
Name |
Description |
|
amount |
Type: string<double> Стоимость доставки Example: |
|
category |
Type: string Enum: |
|
courierOptionId |
Type: string id выбранного варианта доставки в системе продавца Example: |
|
title |
Type: string Название способа доставки. Показывается пользователю в списке вариантов Example: |
|
allowedPaymentMethods |
Type: string[] Индивидуальные методы оплаты для метода доставки. Этот параметр нужно использовать, если нужно ограничить методы оплаты, указанные в Example
|
|
customerChoice |
All of 1 type
Выбранные пользователем дата и интервал. Только для Example
|
|
fromDate |
Type: string<date> Ближайшая дата доставки для Example: |
|
fromTime |
Type: string Начало интервала времени доставки. Только для Example: |
|
provider |
Type: string Тип службы доставки. Enum: Example: |
|
receipt |
Type: ItemReceipt Example
|
|
timeIntervals |
All of 1 type
Кодирует интервалы времени доставки, доступные для выбора. Только для Example
|
|
toDate |
Type: string<date> Самая поздняя дата доставки для Example: |
|
toTime |
Type: string Конец интервала времени доставки. Только для Example: |
|
type |
Type: string Тип опции.
Для
Default: Enum: |
Example
{
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"customerChoice": {
"date": "2025-01-01",
"time": {
"end": "example",
"start": "example"
}
},
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
"example"
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
"example"
]
},
"tax": 1,
"title": "example"
},
"timeIntervals": {
"grid": {
"duration": "example",
"end": "example",
"start": "example",
"step": "example"
},
"type": "GRID",
"values": [
null
]
},
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
}
PickupSchedule
|
Name |
Description |
|
fromTime |
Type: string HH:mm, "08:00" Example: |
|
label |
Type: string Например, "пн-пт" Example: |
|
toTime |
Type: string HH:mm, "20:00" Example: |
Example
{
"fromTime": "example",
"label": "example",
"toTime": "example"
}
PickupOption
|
Name |
Description |
|
address |
Type: string Адрес в виде строки Example: |
|
location |
Type: Location Example
|
|
pickupPointId |
Type: string Уникальный id точки самовывоза в системе продавца Example: |
|
title |
Type: string Название точки самовывоза Example: |
|
allowedPaymentMethods |
Type: string[] Индивидуальные методы оплаты для выбранного способа самовывоза. Доступные методы оплаты заказа при выбранном способе самовывоза. Этот параметр нужно использовать, если нужно ограничить методы оплаты, указанные в Example
|
|
amount |
Type: string<double> Стоимость доставки в точку Example: |
|
description |
Type: string Дополнительное описание Example: |
|
fromDate |
Type: string<date> YYYY-MM-DD. Ближайшая возможная дата доставки Example: |
|
phones |
Type: string[] Телефоны для связи Example
|
|
provider |
Type: string Тип точки вывоза. Enum: |
|
receipt |
Type: ItemReceipt Example
|
|
schedule |
Type: PickupSchedule[] График работы точки Example
|
|
storagePeriod |
Type: integer Опционально. Срок хранения товара в точке самовывоза в днях |
|
toDate |
Type: string<date> YYYY-MM-DD. Самая поздняя дата доставки Example: |
Example
{
"address": "example",
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"description": "example",
"fromDate": "2025-01-01",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"phones": [
"example"
],
"pickupPointId": "example",
"provider": "YANDEX_MARKET",
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
"example"
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
"example"
]
},
"tax": 1,
"title": "example"
},
"schedule": [
{
"fromTime": "example",
"label": "example",
"toTime": "example"
}
],
"storagePeriod": 0,
"title": "example",
"toDate": "2025-01-01"
}
YandexDeliveryOption
|
Name |
Description |
|
amount |
Type: string<double> Стоимость доставки Example: |
|
category |
Type: string Enum: |
|
title |
Type: string Название способа доставки. Показывается пользователю в списке вариантов Example: |
|
yandexDeliveryOptionId |
Type: string Id предложения Яндекс Доставки Example: |
|
allowedPaymentMethods |
Type: string[] Индивидуальные методы оплаты для метода доставки. Этот параметр нужно использовать, если нужно ограничить методы оплаты, указанные в Example
|
|
fromDatetime |
Type: string<date-time> Example: |
|
receipt |
Type: ItemReceipt Example
|
|
toDatetime |
Type: string<date-time> Example: |
Example
{
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"fromDatetime": "2025-01-01T00:00:00Z",
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
"example"
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
"example"
]
},
"tax": 1,
"title": "example"
},
"title": "example",
"toDatetime": "2025-01-01T00:00:00Z",
"yandexDeliveryOptionId": "example"
}
ShippingMethod
|
Name |
Description |
|
methodType |
Type: string Enum: |
|
courierOption |
All of 1 type
если methodType == COURIER Example
|
|
pickupOption |
All of 1 type
если methodType == PICKUP Example
|
|
yandexDeliveryOption |
All of 1 type
если methodType == YANDEX_DELIVERY Example
|
Example
{
"courierOption": {
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"customerChoice": {
"date": "2025-01-01",
"time": null
},
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": {
"agent": null,
"excise": "123.45",
"markQuantity": null,
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": null,
"tax": 1,
"title": "example"
},
"timeIntervals": {
"grid": null,
"type": "GRID",
"values": [
null
]
},
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
},
"methodType": "DIRECT",
"pickupOption": {
"address": "example",
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"description": "example",
"fromDate": "2025-01-01",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"phones": [
"example"
],
"pickupPointId": "example",
"provider": "YANDEX_MARKET",
"receipt": null,
"schedule": [
{
"fromTime": "example",
"label": "example",
"toTime": "example"
}
],
"storagePeriod": 0,
"title": "example",
"toDate": "2025-01-01"
},
"yandexDeliveryOption": {
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"fromDatetime": "2025-01-01T00:00:00Z",
"receipt": null,
"title": "example",
"toDatetime": "2025-01-01T00:00:00Z",
"yandexDeliveryOptionId": "example"
}
}
Responses
200 OK
Вебхук успешно получен и обработан.
Тело ответа может быть любым, рекомендуем отправить {"status": "success"}.
При получении 200 Яндекс Пэй прекращает отправку повторных вебхуков.
Body
application/json
{
"data": {
"availablePaymentMethods": [
"CARD"
],
"cart": {
"coupons": [
{}
],
"discounts": [
{}
],
"externalId": "example",
"items": [
{}
],
"measurements": null,
"total": null
},
"currencyCode": "RUB",
"enableCommentField": true,
"enableCoupons": true,
"metadata": "example",
"orderAmount": "123.45",
"requiredFields": {
"billingContact": null,
"shippingContact": null
},
"shipping": {
"availableCourierOptions": [
{}
],
"availableMethods": [
"DIRECT"
],
"courierOptionsError": "WRONG_ADDRESS",
"yandexDelivery": null
}
},
"status": "example"
}
|
Name |
Description |
|
data |
Type: MerchantRenderOrderResponseData Example
|
|
status |
Type: string Example: |
CartItemWithoutFinalPrice
|
Name |
Description |
|
productId |
Type: string Id товара в системе продавца. В параметрах запроса каждый идентификатор товара Example: |
|
quantity |
All of 1 type
Количество товара в заказе Example
|
|
description |
Type: string Описание товара Example: |
|
discountedUnitPrice |
Type: string<double> Цена за единицу товара с учётом скидок на позицию Example: |
|
features |
All of 1 type
Промо параметры товара Example
|
|
measurements |
All of 1 type
Размеры и вес товара. Обязательно для товара типа Example
|
|
pointsAmount |
Type: string<double> Количество баллов Плюса Поле только для чтения. Переданные значения будут проигнорированы. Example: |
|
receipt |
All of 1 type
Данные для формирования чека Example
|
|
skuId |
Type: string Уникальный id, который описывает единицу ассортимента. Необходим для применения индивидуального тарифа. Example: |
|
subtotal |
Type: string<double> Суммарная цена за позицию без учета скидок Example: |
|
title |
Type: string Наименование товара Example: |
|
total |
Type: string<double> Суммарная цена за позицию с учётом скидок на позицию Example: |
|
type |
Type: string Тип товара. Важен для интеграции с доставками Default: Enum: |
|
unitPrice |
Type: string<double> Полная цена за единицу товара без учетка скидки Example: |
Example
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"pointsAmount": "123.45",
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
null
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
null
]
},
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
CartTotal
|
Name |
Description |
|
amount |
Type: string<double> Стоимость корзины с учетом всех скидок. Example: |
|
externalAmount |
Type: string<double> Сумма внешнего покрытия (сертификаты, подарочные карты). Example: |
|
pointsAmount |
Type: string<double> Количество баллов Плюса Поле только для чтения. Переданные значения будут проигнорированы. Example: |
Example
{
"amount": "123.45",
"externalAmount": "123.45",
"pointsAmount": "123.45"
}
CartWithoutFinalPrice
|
Name |
Description |
|
cartId |
Type: string Внутренний идентификатор корзины Яндекс Пэй. Бэкенд магазина должен использовать этот параметр как идентификатор корзины покупателя и как ключ идемпотентности для запроса Example: |
|
coupons |
Type: Coupon[] Купоны, применённые к корзине Example
|
|
discounts |
Type: Discount[] Скидки, применённые к корзине Example
|
|
externalId |
Type: string Переданный продавцом идентификатор корзины Example: |
|
items |
Type: CartItemWithoutFinalPrice[] Example
|
|
measurements |
Type: Measurements Example
|
|
total |
All of 1 type
Итоговая стоимость корзины, которая пойдет в оплату Default: |
Example
{
"cartId": "example",
"coupons": [
{
"description": "example",
"status": "VALID",
"value": "example"
}
],
"discounts": [
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
],
"externalId": "example",
"items": [
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"pointsAmount": "123.45",
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": null,
"excise": "123.45",
"markQuantity": null,
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": null,
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
],
"measurements": null,
"total": null
}
RenderedCartItem
|
Name |
Description |
|
productId |
Type: string Id товара в системе продавца. В параметрах запроса каждый идентификатор товара Example: |
|
quantity |
All of 1 type
Количество товара в заказе Example
|
|
total |
Type: string<double> Суммарная цена за позицию с учётом скидок на позицию Example: |
|
description |
Type: string Описание товара Example: |
|
discountedUnitPrice |
Type: string<double> Цена за единицу товара с учётом скидок на позицию Example: |
|
features |
All of 1 type
Промо параметры товара Example
|
|
measurements |
All of 1 type
Размеры и вес товара. Обязательно для товара типа Example
|
|
pointsAmount |
Type: string<double> Количество баллов Плюса Поле только для чтения. Переданные значения будут проигнорированы. Example: |
|
receipt |
All of 1 type
Данные для формирования чека Example
|
|
skuId |
Type: string Уникальный id, который описывает единицу ассортимента. Необходим для применения индивидуального тарифа. Example: |
|
subtotal |
Type: string<double> Суммарная цена за позицию без учета скидок Example: |
|
title |
Type: string Наименование товара Example: |
|
type |
Type: string Тип товара. Важен для интеграции с доставками Default: Enum: |
|
unitPrice |
Type: string<double> Полная цена за единицу товара без учетка скидки Example: |
Example
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"pointsAmount": "123.45",
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
null
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
null
]
},
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
RenderedCart
|
Name |
Description |
|
items |
Type: RenderedCartItem[] Корзина товаров, которую оплачивает покупатель. Example
|
|
total |
All of 1 type
Итоговая информация о стоимости заказа. Example
|
|
coupons |
Type: Coupon[] Купоны, применённые к корзине Example
|
|
discounts |
Type: Discount[] Скидки, применённые к корзине Example
|
|
externalId |
Type: string Переданный продавцом идентификатор корзины Example: |
|
measurements |
Type: Measurements Example
|
Example
{
"coupons": [
{
"description": "example",
"status": "VALID",
"value": "example"
}
],
"discounts": [
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
],
"externalId": "example",
"items": [
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": {
"pointsDisabled": false,
"tariffModifier": "VERY_LOW"
},
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"pointsAmount": "123.45",
"productId": "example",
"quantity": {
"available": "123.45",
"count": "123.45"
},
"receipt": {
"agent": null,
"excise": "123.45",
"markQuantity": null,
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": null,
"tax": 1,
"title": "example"
},
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
],
"measurements": null,
"total": {
"amount": "123.45",
"externalAmount": "123.45",
"pointsAmount": "123.45"
}
}
BillingContactFields
|
Name |
Description |
|
|
Type: boolean |
Example
{
"email": true
}
ContactFields
|
Name |
Description |
|
|
Type: boolean |
|
name |
Type: boolean |
|
phone |
Type: boolean |
Example
{
"email": true,
"name": true,
"phone": true
}
RequiredFields
|
Name |
Description |
|
billingContact |
Type: BillingContactFields Example
|
|
shippingContact |
Type: ContactFields Example
|
Example
{
"billingContact": {
"email": true
},
"shippingContact": {
"email": true,
"name": true,
"phone": true
}
}
CourierOption1
|
Name |
Description |
|
amount |
Type: string<double> Стоимость доставки Example: |
|
category |
Type: string Enum: |
|
courierOptionId |
Type: string id выбранного варианта доставки в системе продавца Example: |
|
title |
Type: string Название способа доставки. Показывается пользователю в списке вариантов Example: |
|
allowedPaymentMethods |
Type: string[] Индивидуальные методы оплаты для метода доставки. Этот параметр нужно использовать, если нужно ограничить методы оплаты, указанные в Example
|
|
fromDate |
Type: string<date> Ближайшая дата доставки для Example: |
|
fromTime |
Type: string Начало интервала времени доставки. Только для Example: |
|
provider |
Type: string Тип службы доставки. Enum: Example: |
|
receipt |
Type: ItemReceipt Example
|
|
timeIntervals |
All of 1 type
Кодирует интервалы времени доставки, доступные для выбора. Только для Example
|
|
toDate |
Type: string<date> Самая поздняя дата доставки для Example: |
|
toTime |
Type: string Конец интервала времени доставки. Только для Example: |
|
type |
Type: string Тип опции.
Для
Default: Enum: |
Example
{
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": {
"agent": {
"agentType": 1,
"operation": "example",
"paymentsOperator": null,
"phones": [
"example"
],
"transferOperator": null
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": {
"inn": "example",
"name": "example",
"phones": [
"example"
]
},
"tax": 1,
"title": "example"
},
"timeIntervals": {
"grid": {
"duration": "example",
"end": "example",
"start": "example",
"step": "example"
},
"type": "GRID",
"values": [
{
"end": "example",
"start": "example"
}
]
},
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
}
Contact
|
Name |
Description |
|
|
Type: string Example: |
|
firstName |
Type: string Example: |
|
lastName |
Type: string Example: |
|
phone |
Type: string Example: |
|
phoneAdditionalCode |
Type: string Example: |
|
secondName |
Type: string Example: |
Example
{
"email": "example",
"firstName": "example",
"lastName": "example",
"phone": "example",
"phoneAdditionalCode": "example",
"secondName": "example"
}
WeeklySchedule
|
Name |
Description |
|
fri |
All of 1 type
Пятница Example
|
|
mon |
All of 1 type
Понедельник Example
|
|
sat |
All of 1 type
Суббота Example
|
|
sun |
All of 1 type
Воскресенье Example
|
|
thu |
All of 1 type
Четверг Example
|
|
tue |
All of 1 type
Вторник Example
|
|
wed |
All of 1 type
Среда Example
|
Example
{
"fri": {
"end": "example",
"start": "example"
},
"mon": null,
"sat": null,
"sun": null,
"thu": null,
"tue": null,
"wed": null
}
Schedule
|
Name |
Description |
||
|
tzoffset |
Type: integer Смещение часового пояса относительно UTC в минутах. Например, 180 для Москвы (UTC+3) Min value: Max value: |
||
|
weekly |
All of 1 type
Еженедельное расписание работы Example
|
||
|
custom |
Type: object | null
Переопределённое расписание для конкретных дат. Ключи - даты в формате "YYYY-MM-DD", значения - объекты {"start": string, "end": string} или null для указания выходных Example
|
Example
{
"custom": {},
"tzoffset": -720,
"weekly": {
"fri": {
"end": "example",
"start": "example"
},
"mon": null,
"sat": null,
"sun": null,
"thu": null,
"tue": null,
"wed": null
}
}
ShippingWarehouse
|
Name |
Description |
|
address |
Type: Address Example
|
|
contact |
Type: Contact Example
|
|
emergencyContact |
Type: Contact Example
|
|
schedule |
All of 1 type
Расписание работы Example
|
Example
{
"address": {
"addressLine": "example",
"building": "example",
"comment": "example",
"country": "example",
"district": "example",
"entrance": "example",
"floor": "example",
"intercom": "example",
"locale": "example",
"locality": "example",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"region": "example",
"room": "example",
"street": "example",
"zip": "example"
},
"contact": {
"email": "example",
"firstName": "example",
"lastName": "example",
"phone": "example",
"phoneAdditionalCode": "example",
"secondName": "example"
},
"emergencyContact": null,
"schedule": {
"custom": {},
"tzoffset": -720,
"weekly": {
"fri": null,
"mon": null,
"sat": null,
"sun": null,
"thu": null,
"tue": null,
"wed": null
}
}
}
YandexDeliveryShippingParams
|
Name |
Description |
|
warehouse |
Type: ShippingWarehouse Example
|
Example
{
"warehouse": {
"address": {
"addressLine": "example",
"building": "example",
"comment": "example",
"country": "example",
"district": "example",
"entrance": "example",
"floor": "example",
"intercom": "example",
"locale": "example",
"locality": "example",
"location": {
"latitude": 0.5,
"longitude": 0.5
},
"region": "example",
"room": "example",
"street": "example",
"zip": "example"
},
"contact": {
"email": "example",
"firstName": "example",
"lastName": "example",
"phone": "example",
"phoneAdditionalCode": "example",
"secondName": "example"
},
"emergencyContact": null,
"schedule": {
"custom": {},
"tzoffset": -720,
"weekly": null
}
}
}
ShippingOptions
|
Name |
Description |
|
availableMethods |
Type: string[] Example
|
|
availableCourierOptions |
Type: CourierOption1[] Доступные варианты доставки (при наличии адреса в запросе) Example
|
|
courierOptionsError |
Type: string Ошибка при определении доставки. При указании этого параметра, в интерфейсе пользователя будет отображаться описание ошибки. Enum: Example: |
|
yandexDelivery |
Type: YandexDeliveryShippingParams Example
|
Example
{
"availableCourierOptions": [
{
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": {
"agent": null,
"excise": "123.45",
"markQuantity": null,
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "example",
"supplier": null,
"tax": 1,
"title": "example"
},
"timeIntervals": {
"grid": null,
"type": "GRID",
"values": [
null
]
},
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
}
],
"availableMethods": [
"DIRECT"
],
"courierOptionsError": "WRONG_ADDRESS",
"yandexDelivery": {
"warehouse": {
"address": {
"addressLine": "example",
"building": "example",
"comment": "example",
"country": "example",
"district": "example",
"entrance": "example",
"floor": "example",
"intercom": "example",
"locale": "example",
"locality": "example",
"location": null,
"region": "example",
"room": "example",
"street": "example",
"zip": "example"
},
"contact": {
"email": "example",
"firstName": "example",
"lastName": "example",
"phone": "example",
"phoneAdditionalCode": "example",
"secondName": "example"
},
"emergencyContact": null,
"schedule": null
}
}
}
MerchantRenderOrderResponseData
|
Name |
Description |
|
cart |
All of 1 type
Корзина Example
|
|
currencyCode |
Type: string Трехбуквенный код валюты заказа (ISO 4217) Enum: |
|
availablePaymentMethods |
Type: string[] Доступные методы оплаты на платежной форме Яндекс Пэй. Нужно указать все возможные методы, которые может выбрать пользователь - при оплате онлайн и доставке. Если вы интегрируете оплату только одним методом, например, Сплит — указывается один метод Example
|
|
enableCommentField |
Type: boolean |
|
enableCoupons |
Type: boolean |
|
metadata |
Type: string Произвольные данные, переданные при инициализации кнопки Example: |
|
orderAmount |
Type: string<double> Полная стоимость заказа к оплате с учётом возвратов, доставки, скидок и промокодов Example: |
|
requiredFields |
All of 1 type
Данные пользователя, необходимые для оформления заказа Example
|
|
shipping |
Type: ShippingOptions Example
|
Example
{
"availablePaymentMethods": [
"CARD"
],
"cart": {
"coupons": [
{
"description": "example",
"status": "VALID",
"value": "example"
}
],
"discounts": [
{
"amount": "123.45",
"description": "example",
"discountId": "example"
}
],
"externalId": "example",
"items": [
{
"description": "example",
"discountedUnitPrice": "123.45",
"features": null,
"measurements": null,
"pointsAmount": "123.45",
"productId": "example",
"quantity": null,
"receipt": null,
"skuId": "example",
"subtotal": "123.45",
"title": "example",
"total": "123.45",
"type": "UNSPECIFIED",
"unitPrice": "123.45"
}
],
"measurements": {
"height": 0.5,
"length": 0.5,
"weight": 0.5,
"width": 0.5
},
"total": {
"amount": "123.45",
"externalAmount": "123.45",
"pointsAmount": "123.45"
}
},
"currencyCode": "RUB",
"enableCommentField": true,
"enableCoupons": true,
"metadata": "example",
"orderAmount": "123.45",
"requiredFields": {
"billingContact": {
"email": true
},
"shippingContact": {
"email": true,
"name": true,
"phone": true
}
},
"shipping": {
"availableCourierOptions": [
{
"allowedPaymentMethods": [
"CARD"
],
"amount": "123.45",
"category": "EXPRESS",
"courierOptionId": "example",
"fromDate": "2025-01-01",
"fromTime": "example",
"provider": "BOXBERRY",
"receipt": null,
"timeIntervals": null,
"title": "example",
"toDate": "2025-01-01",
"toTime": "example",
"type": "PLAIN"
}
],
"availableMethods": [
"DIRECT"
],
"courierOptionsError": "WRONG_ADDRESS",
"yandexDelivery": {
"warehouse": null
}
}
}
400 Bad Request
Ошибка обработки вебхука.
При отсутствии ответа или любом статусе кроме 200 Яндекс Пэй генерирует новый JWT-токен и повторяет отправку вебхука:
- первые 10 раз через 5 мс;
- далее с экспоненциально возрастающим интервалом до 15 минут;
- затем каждые 15 минут в течение 24 часов. Общее время повторных отправок — 24 часа. После этого вебхук считается недоставленным.
Body
application/json
{
"reason": "example",
"reasonCode": "FORBIDDEN",
"status": "fail"
}
|
Name |
Description |
|
reasonCode |
Type: string Код ошибки:
Enum: |
|
reason |
Type: string Описание причины ошибки. Example: |
|
status |
Type: string Default: |
No longer supported, please use an alternative and newer version.