/v1/subscriptions

Request

POST

https://pay.yandex.ru/api/merchant/v1/subscriptions

Production

POST

https://sandbox.pay.yandex.ru/api/merchant/v1/subscriptions

Sandbox

Body

application/json
{
    "cart": {
        "externalId": "string",
        "items": [
            {
                "description": "string",
                "discountedUnitPrice": "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"
        }
    },
    "currencyCode": "RUB",
    "futureWriteOffAmount": "123.45",
    "intervalCount": 0,
    "intervalUnit": "SECOND",
    "metadata": "string",
    "orderId": "string",
    "orderSource": "WEBSITE",
    "purpose": "string",
    "redirectUrls": {
        "onAbort": "string",
        "onError": "string",
        "onSuccess": "string"
    },
    "title": "string",
    "trialCount": 0,
    "trialEndAt": "2022-12-29T18:02:01Z",
    "trialUnit": "SECOND",
    "ttl": 1800
}

Name

Type

Description

cart*

RenderedCart

Корзина

currencyCode*

string

Трехбуквенный код валюты заказа (ISO 4217)
Enum: RUB
Max length: 2048

futureWriteOffAmount

string<double>

Сумма, которую будет списана в будущем
Example: 123.45

intervalCount*

integer<int32>

Количество периодов подписки, например "списание каждые 6 месяцев"

intervalUnit*

string

Единица времени в которой будет периодичность подписки
Enum: SECOND, DAY, WEEK, MONTH, YEAR

metadata

string

Произвольные данные по заказу для внутреннего использования
Max length: 2048

orderId*

string

Идентификатор заказа на стороне продавца (должен быть уникальным). Дальнейшее взаимодействие по заявке на оплату будет осуществляться с использованием этого идентификатора. Также данный идентификатор будет использоваться в сверках
Max length: 2048

orderSource

string

Поверхность на который инициализацировали создание заказа

Необходимо для последующей аналитики


WEBSITE: Кнопка размещена на сайте. Ссылка на оплату сформировалась после действий (нажатия кнопки) пользователя на сайте

APP: Кнопка размещена в мобильном приложении. Ссылка на оплату сформировалась после действий (нажатия кнопки) пользователя в приложении

CRM: Ссылка на оплату сформирована менеджером в CRM или другой админке

CASH_REGISTER: Ссылка на оплату сформирована для отображения на офлайн-кассе
Enum: WEBSITE, APP, CRM, CASH_REGISTER
Default: null

purpose

string

Назначение платежа
Max length: 128

redirectUrls

MerchantRedirectUrls

Ссылки для переадресации пользователя с формы оплаты. Обязательно для онлайн продавца

title

string

Название подписки
Max length: 30

trialCount

integer<int32>

Количество периодов триального периода, например "7 дней"

trialEndAt

string<date-time>

Дата окончания пробного периода. Взаимоисключающее с полями trial_unit + trial_count

trialUnit

string

Единица времени в которой будет периодичность триального периода
Enum: SECOND, DAY, WEEK, MONTH, YEAR, null

ttl

integer<int32>

Время жизни заказа (в секундах)

180 <= ttl <= 604800
Default: 1800

RenderedCart

Корзина

Name

Type

Description

externalId

string

Переданный продавцом идентификатор корзины
Max length: 2048

items*

RenderedCartItem[]

total*

CartTotal

Итоговая стоимость корзины, которая пойдет в оплату

MerchantRedirectUrls

Ссылки для переадресации пользователя с формы оплаты. Обязательно для онлайн продавца

Name

Type

Description

onAbort

string

Ссылка для переадресации пользователя в случае отмены процесса оплаты
Max length: 2048

onError*

string

Ссылка для переадресации пользователя в случае возникновения ошибки во время оплаты, или если срок ссылки на оплату истек
Max length: 2048

onSuccess*

string

Ссылка для переадресации пользователя в случае успешной оплаты
Max length: 2048

RenderedCartItem

Name

Type

Description

description

string

Описание товара
Max length: 2048

discountedUnitPrice

string<double>

Цена за единицу товара с учётом скидок на позицию
Example: 123.45

productId*

string

Id товара в системе продавца. В параметрах запроса каждый идентификатор товара productId должен быть уникальным
Max length: 2048

quantity*

ItemQuantity

Количество товара в заказе

receipt

ItemReceipt

Данные для формирования чека

subtotal

string<double>

Суммарная цена за позицию без учета скидок
Example: 123.45

title*

string

Наименование товара
Max length: 2048

total*

string<double>

Суммарная цена за позицию с учётом скидок на позицию
Example: 123.45

unitPrice

string<double>

Полная цена за единицу товара без учетка скидки
Example: 123.45

CartTotal

Итоговая стоимость корзины, которая пойдет в оплату

Name

Type

Description

amount*

string<double>

Стоимость корзины с учетом всех скидок, и без учета доставки
Example: 123.45

label

string

Max length: 2048

ItemQuantity

Количество товара в заказе

Name

Type

Description

available

string<double>

Максимально доступное количество товара
Example: 123.45

count*

string<double>

Количество товара в заказе
Example: 123.45

label

string

Название единиц измерения, например "кг" или "шт"
Max length: 2048

ItemReceipt

Данные для формирования чека

Name

Type

Description

agent

Agent

excise

string<double>

Не должно содержать больше двух знаков после запятой. Например: 1.12, 5.1, 10, 11.00 .
Example: 123.45

markQuantity

MarkQuantity

measure

integer

Описание значений: Ссылка
Enum: 0, 10, 11, 12, 20, 21, 22, 30, 31, 32, 40, 41, 42, 50, 51, 70, 71, 72, 73, 80, 81, 82, 83, 255, null

paymentMethodType

integer

Описание значений: Ссылка
Enum: 1, 2, 3, 4, 5, 6, 7, null

paymentSubjectType

integer

Описание значений: Ссылка
Enum: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, null

productCode

string<base64>

Код товара (base64 кодированный массив от 1 до 32 байт)

supplier

Supplier

tax*

integer

Описание значений: Ссылка
Enum: 1, 2, 3, 4, 5, 6

title

string

Max length: 2048

Agent

Name

Type

Description

agentType*

integer

Описание значений: Ссылка
Enum: 1, 2, 3, 4, 5, 6, 7

operation

string

Max length: 2048

paymentsOperator

PaymentsOperator

phones

string[]

Max length: 2048

transferOperator

TransferOperator

MarkQuantity

Name

Type

Description

denominator*

integer<int32>

numerator*

integer<int32>

Supplier

Name

Type

Description

inn

string

Max length: 2048

name

string

Max length: 2048

phones

string[]

Max length: 2048

PaymentsOperator

Name

Type

Description

phones

string[]

Max length: 2048

TransferOperator

Name

Type

Description

address

string

Max length: 2048

inn

string

Max length: 2048

name

string

Max length: 2048

phones

string[]

Max length: 2048

Responses

200 OK

Body

application/json
{
    "code": 200,
    "data": {
        "paymentUrl": "string",
        "subscriptionId": "c3073b9d-edd0-49f2-a28d-b7ded8ff9a8b"
    },
    "status": "success"
}

Name

Type

Description

code

number

Default: 200

data*

CreateSubscriptionResponseData

status

string

Enum: success
Default: success

CreateSubscriptionResponseData

Name

Type

Description

paymentUrl*

string

Ссылка на оплату заказа
Max length: 2048

subscriptionId*

string<uuid>

Идентификатор подписки
Max length: 2048

Предыдущая
Следующая