/v1/orders
Запрос на создание ссылки на оплату заказа.
Запрос используется для создания и получения ссылки на оплату заказа.
Request
POST
https://pay.yandex.ru/api/merchant/v1/orders
Production
POST
https://sandbox.pay.yandex.ru/api/merchant/v1/orders
Sandbox
Body
application/json
{
"availablePaymentMethods": null,
"billingPhone": "string",
"cart": {
"externalId": "string",
"items": [
{
"description": "string",
"discountedUnitPrice": "123.45",
"pointsAmount": "123.45",
"productId": "string",
"quantity": {
"available": "123.45",
"count": "123.45",
"label": "string"
},
"receipt": {
"agent": {
"agentType": 1,
"operation": "string",
"paymentsOperator": {
"phones": [
"string"
]
},
"phones": [
"string"
],
"transferOperator": {
"address": "string",
"inn": "string",
"name": "string",
"phones": [
"string"
]
}
},
"excise": "123.45",
"markQuantity": {
"denominator": 0,
"numerator": 0
},
"measure": 0,
"paymentMethodType": 1,
"paymentSubjectType": 1,
"productCode": "string",
"supplier": {
"inn": "string",
"name": "string",
"phones": [
"string"
]
},
"tax": 1,
"title": "string"
},
"subtotal": "123.45",
"title": "string",
"total": "123.45",
"unitPrice": "123.45"
}
],
"total": {
"amount": "123.45",
"label": "string",
"pointsAmount": "123.45"
}
},
"currencyCode": "RUB",
"extensions": {
"billingReport": {
"branchId": null,
"managerId": null
},
"qrData": {
"token": "string"
},
"smsOffer": {
"phone": "string"
}
},
"isPrepayment": false,
"metadata": "string",
"orderId": "string",
"orderSource": "WEBSITE",
"preferredPaymentMethod": "FULLPAYMENT",
"publicConstructor": "2",
"purpose": "string",
"redirectUrls": {
"onAbort": "string",
"onError": "string",
"onSuccess": "string"
},
"risk": {
"billingPhone": "string",
"deviceId": "string",
"shippingAddress": "string",
"shippingPhone": "string",
"shippingType": "COURIER"
},
"ttl": 1800,
"uniqrMetadata": {
"uniQrId": "string"
}
}
Name |
Description |
cart* |
Type: RenderedCart Корзина |
currencyCode* |
Type: string Трехбуквенный код валюты заказа (ISO 4217) Max length: Enum: |
orderId* |
Type: string Идентификатор заказа на стороне продавца (должен быть уникальным). Дальнейшее взаимодействие по заявке на оплату будет осуществляться с использованием этого идентификатора. Также данный идентификатор будет использоваться в сверках Max length: |
availablePaymentMethods |
Type: string[] Доступные методы оплаты на платежной форме Яндекс Пэй. Если вы интегрируете оплату только одним методом, например, Карта — указывается один метод Enum: Min items: |
billingPhone |
Type: string Номер телефона клиента. Используется для упрощения авторизации, а также может увеличить вероятность одобрения по Сплиту. Для номера телефона предлагаем использовать формат Например, такие переданные значения Max length: |
extensions |
Type: OrderExtensions Дополнительные параметры для оформления офлайн заказа |
isPrepayment |
Type: boolean Проводить ли заказ по флоу "отложенно оплаты". Если параметр установлен в |
metadata |
Type: string Произвольные данные по заказу для внутреннего использования Max length: |
orderSource |
Type: string Поверхность на которой инициализировали создание заказа Необходимо для последующей аналитики WEBSITE: Кнопка размещена на сайте. Ссылка на оплату сформировалась после действий (нажатия кнопки) пользователя на сайте APP: Кнопка размещена в мобильном приложении. Ссылка на оплату сформировалась после действий (нажатия кнопки) пользователя в приложении CRM: Ссылка на оплату сформирована менеджером в CRM или другой админке CASH_REGISTER: Ссылка на оплату сформирована для отображения на офлайн-кассе Enum: |
preferredPaymentMethod |
Type: string Предпочтительный метод оплаты. Переданный метод будет автоматически выбран на форме оплаты, если это не противоречит доступным методам оплаты. По умолчанию - Карта. Enum: |
publicConstructor |
Type: string Конструктор предвыбранного плана для оплаты в Сплит. Доступно только по согласованию Enum: |
purpose |
Type: string Назначение платежа Max length: |
redirectUrls |
Type: MerchantRedirectUrls Ссылки для переадресации пользователя с формы оплаты. Обязательно для онлайн продавца |
risk |
Type: MerchantRiskInfo Дополнительная информация, наличие которой может увеличить вероятность одобрения по Сплиту. Доступно в полной мере только для онлайн-магазинов. |
ttl |
Type: integer<int32> Параметр определяет время, в течение которого пользователь может воспользоваться ссылкой на форму оплаты заказа. По истечении времени пользователь будет видеть сообщение "Вышло время оплаты". Если пользователь воспользовался ссылкой до истечения времени, то на завершение оплаты отводится дополнительно 15 минут. Если по истечении дополнительного времени оплата не произошла, заказ считается не оплаченным окончательно. Это отражается в изменении статуса заказа Время жизни (сек): Время жизни (при создании ссылки в личном кабинете, сек): Default: |
uniqrMetadata |
Type: UniqrMetadata Дополнительные данные uniqr |
RenderedCart
Корзина
Name |
Description |
items* |
Type: RenderedCartItem[] Корзина товаров, которую оплачивает покупатель. |
total* |
Type: CartTotal Итоговая информация о стоимости заказа. |
externalId |
Type: string Переданный продавцом идентификатор корзины Max length: |
OrderExtensions
Дополнительные параметры для оформления офлайн заказа
Name |
Description |
billingReport |
Type: BillingReport Информация о месте и авторе оформления заказа. |
qrData |
Type: QRData Дополнительные параметры для отправки ссылки на оплату с использованием QR |
smsOffer |
Type: SMSOffer Дополнительные параметры для отправки ссылки на оплату с использованием SMS. Обязательное поле только для офлайн-магазинов. |
MerchantRedirectUrls
Ссылки для переадресации пользователя с формы оплаты. Обязательно для онлайн продавца
Name |
Description |
onError* |
Type: string Обязательное поле только для онлайн-магазинов. Ссылка для переадресации пользователя в случае возникновения ошибки во время оплаты, или если срок ссылки на оплату истек. Max length: |
onSuccess* |
Type: string Обязательное поле только для онлайн-магазинов. Ссылка для переадресации пользователя в случае успешной оплаты. Max length: |
onAbort |
Type: string Ссылка для переадресации пользователя в случае отмены процесса оплаты. Отмену оплаты осуществляет пользователь на форме для оплаты. Max length: |
MerchantRiskInfo
Дополнительная информация, наличие которой может увеличить вероятность одобрения по Сплиту. Доступно в полной мере только для онлайн-магазинов.
Name |
Description |
billingPhone |
Type: string DEPRECATED Номер телефона клиента. Max length: |
deviceId |
Type: string Идентификатор устройства клиента (device_id/gaid/idfa/ifv) Max length: |
shippingAddress |
Type: string Адрес доставки Max length: |
shippingPhone |
Type: string Номер телефона получателя (пример +71234567890) Max length: |
shippingType |
Type: string Способ получения заказа Enum: |
UniqrMetadata
Дополнительные данные uniqr
Name |
Description |
uniQrId* |
Type: string Max length: |
RenderedCartItem
Name |
Description |
productId* |
Type: string Id товара в системе продавца. В параметрах запроса каждый идентификатор товара Max length: |
quantity* |
Type: ItemQuantity Количество товара в заказе |
title* |
Type: string Наименование товара Max length: |
total* |
Type: string<double> Суммарная цена за позицию с учётом скидок на позицию Example: |
description |
Type: string Описание товара Max length: |
discountedUnitPrice |
Type: string<double> Цена за единицу товара с учётом скидок на позицию Example: |
pointsAmount |
Type: string<double> Количество баллов Плюса Example: |
receipt |
Type: ItemReceipt Данные для формирования чека |
subtotal |
Type: string<double> Суммарная цена за позицию без учета скидок Example: |
unitPrice |
Type: string<double> Полная цена за единицу товара без учетка скидки Example: |
CartTotal
Итоговая информация о стоимости заказа.
Name |
Description |
amount* |
Type: string<double> Стоимость корзины с учетом всех скидок. Example: |
label |
Type: string Название единиц измерения, например "кг" или "шт". Max length: |
pointsAmount |
Type: string<double> Количество баллов плюса Example: |
BillingReport
Информация о месте и авторе оформления заказа.
Name |
Description |
branchId |
Type: string Обязательное поле только для офлайн-магазинов. Идентификатор точки продаж Max length: |
managerId |
Type: string Обязательное поле только для офлайн-магазинов. Идентификатор менеджера Max length: |
QRData
Дополнительные параметры для отправки ссылки на оплату с использованием QR
Name |
Description |
token* |
Type: string QR токен Max length: |
SMSOffer
Дополнительные параметры для отправки ссылки на оплату с использованием SMS.
Обязательное поле только для офлайн-магазинов.
Name |
Description |
phone* |
Type: string Номер телефона клиента (пример Max length: Pattern: |
ItemQuantity
Количество товара в заказе
Name |
Description |
count* |
Type: string<double> Количество товара в заказе Example: |
available |
Type: string<double> Максимально доступное количество товара Example: |
label |
Type: string Название единиц измерения, например "кг" или "шт" Max length: |
ItemReceipt
Данные для формирования чека
Name |
Description |
tax* |
Type: integer Описание значений: Ссылка Enum: |
agent |
Type: Agent |
excise |
Type: string<double> Не должно содержать больше двух знаков после запятой. Например: 1.12, 5.1, 10, 11.00 . Example: |
markQuantity |
Type: MarkQuantity |
measure |
Type: integer Описание значений: Ссылка Enum: |
paymentMethodType |
Type: integer Описание значений: Ссылка Enum: |
paymentSubjectType |
Type: integer Описание значений: Ссылка Enum: |
productCode |
Type: string<base64> Код товара (base64 кодированный массив от 1 до 32 байт) |
supplier |
Type: Supplier |
title |
Type: string Max length: |
Agent
Name |
Description |
agentType* |
Type: integer Признак агента по предмету расчёта. См. значения Enum: |
operation |
Type: string Max length: |
paymentsOperator |
Type: PaymentsOperator |
phones |
Type: string[] Max length: |
transferOperator |
Type: TransferOperator |
MarkQuantity
Name |
Description |
denominator* |
Type: integer<int32> |
numerator* |
Type: integer<int32> |
Supplier
Name |
Description |
inn |
Type: string Max length: |
name |
Type: string Max length: |
phones |
Type: string[] Max length: |
PaymentsOperator
Name |
Description |
phones |
Type: string[] Max length: |
TransferOperator
Name |
Description |
address |
Type: string Max length: |
inn |
Type: string Max length: |
name |
Type: string Max length: |
phones |
Type: string[] Max length: |
Responses
200 OK
Body
application/json
{
"code": 200,
"data": {
"paymentUrl": "string"
},
"status": "success"
}
Name |
Description |
data* |
Type: CreateOrderResponseData |
code |
Type: number Default: |
status |
Type: string Default: Enum: |
CreateOrderResponseData
Name |
Description |
paymentUrl* |
Type: string Ссылка на оплату заказа Max length: |