API ЮKassa
Помощь
Подключить ЮKassa
Форма для HTTP-уведомлений
Параметры платежной формы
Адрес для отправки формы
https://yoomoney.ru/eshop.xml
Параметры формы
ПараметрТипОписание
Обязательные параметры
shopIdlongИдентификатор магазина, выдается при подключении к ЮKassa.
scidlongИдентификатор витрины магазина, выдается при подключении к ЮKassa.
sumCurrencyAmountСумма заказа.
customerNumbernormalizedString,
128 символов
Идентификатор плательщика в системе магазина. В качестве идентификатора может использоваться номер договора плательщика, логин плательщика и т. п.
Допустимы повторные оплаты по одному и тому же идентификатору плательщика.
Допустимые символы:
  • цифры от 0 до 9,
  • латинские буквы,
  • буквы русского алфавита,
  • символы ~!@#$%^&*()_+{}|:"<>?-=[]\;./!"№;%:?*()_+/
  • пробелы (пробелы в начале и в конце недопустимы).
Необязательные параметры
orderNumbernormalizedString,
64 символа
Уникальный номер заказа в системе магазина. Уникальность контролируется ЮKassa в сочетании с параметром shopId.
Если платеж с таким номер заказа уже был успешно проведен или в процессе платежа возникла ошибка, то повторные попытки оплаты будут отвергнуты ЮKassa.
shopArticleIdlongИдентификатор товара, выдается при подключении к ЮKassa. Применяется, если магазин использует несколько платежных форм для разных товаров.
shopSuccessURLstring, URL path,
250 символов
URL, на который будет вести ссылка Вернуться в магазин со страницы успешного платежа. В зависимости от настроек магазина:
  • задается в личном кабинете (в разделе Настройки в поле successURL),
  • передается динамически.
shopFailURLstring, URL path,
250 символов
URL, на который будет вести ссылка Вернуться в магазин со страницы ошибки платежа.
В зависимости от настроек магазина:
  • задается в личном кабинете (в разделе Настройки в поле successURL),
  • передается динамически.
shopDefaultUrlstring, URL path,
250 символов
URL, на который будет вести ссылка Вернуться в магазин, когда процесс платежа на стороне ЮKassa завершен, но для завершения оплаты необходимы дополнительные действия пользователя.
Страницы, на которых отображается эта ссылка:
Если этот параметр задан, то на этот же URL будет вести ссылка Вернуться в магазин со страницы подтверждения оплаты.
Если shopDefaultUrl не задан, эта ссылка ведет на Адрес сайта из настроек.
cps_emailstring,
100 символов
Адрес электронной почты плательщика. Если он передан, то соответствующее поле на странице подтверждения платежа будет предзаполнено (шаг 3 на схеме платежа).
Допустимо передавать только адрес электронной почты (проверяется соответствие).
cps_phonestring,
15 символов, только цифры
Номер мобильного телефона плательщика. Если он передан, то соответствующее поле на странице подтверждения платежа будет предзаполнено (шаг 3 на схеме платежа).
paymentTypenormalizedString,
5 символов
Способ оплаты. Рекомендуем передавать в этом поле пустое значение, в этом случае выбор способа оплаты будет происходить на стороне ЮKassa.
Примеры:
  • PC — оплата из кошелька ЮMoney;
  • AC — оплата с произвольной банковской карты или через Mir Pay (при оплате с мобильного устройства на Android).
ym_merchant_receiptstring
Данные для формирования чека в формате JSON.
Параметр передается и является обязательным, если вы настроили взаимодействие со своей онлайн-кассой через ЮKassa и передаете в платежной форме данные для формирования чека.
Дополнительные параметры для B2B-платежей (paymentType=2S)
payment_purposestring,
210 символов
Назначение платежа. Обязательный параметр.
vatTypestring
Тип НДС. Возможные значения:
  • calculated — облагается налогом, у всех товаров одинаковая ставка;
  • untaxed — не облагается;
  • mixed — товары в платеже облагаются налогом по-разному.
vatRatestring
Ставка НДС. Обязательно, если vatType=calculated.
Возможные значения:
  • 0 — ставка НДС 0%;
  • 7 — ставка 7%;
  • 10 — ставка 10%;
  • 18 — ставка 18%;
  • 20 — ставка 20%.
vatSumCurrencyAmountСумма НДС. Обязательно, если vatType=calculated или vatType=mixed. Вам необходимо самостоятельно подсчитывать точную сумму НДС и передавать в запросе на оплату. А также в поле sum передавать полную сумму, которую заплатит покупатель, вместе с НДС.
Параметры, которые может добавить магазин (необязательно)
custom_fieldstringИспользуется для передачи дополнительных параметров.
Любые названия, отличные от перечисленных вышеstring,
4096 символов (суммарная длина всех параметров)
Параметры, добавленные магазином в платежную форму, будут сохранены и переданы магазину в запросах checkOrder и paymentAviso.
Требования к названиям параметров:
  • В названиях добавленных параметров можно использовать буквы латинского алфавита в любом регистре, цифры, символ подчеркивания и дефис. Нельзя использовать пробел, точку и квадратные скобки [].
  • Название должно начинаться с буквы, но нельзя использовать в начале сочетание xml.
Примеры
Пример платежной формы
HTML
<form action="https://yoomoney.ru/eshop.xml" method="post">
    <input name="shopId" value="1234" type="hidden"/>
    <input name="scid" value="4321" type="hidden"/>
    <input name="sum" value="100.50" type="hidden"/>
    <input name="customerNumber" value="abc000" type="hidden"/>
    <input name="paymentType" value="AC" type="hidden"/>
    <input name="orderNumber" value="abc1111111" type="hidden"/>
    <input name="cps_phone" value="79110000000" type="hidden"/>
    <input name="cps_email" value="user@domain.com" type="hidden"/>
  <input type="submit" value="Заплатить"/>
</form>
Пример платежной формы с параметрами для B2B-платежей
HTML
<form action="https://yoomoney.ru/eshop.xml" method="post">
    <input name="shopId" value="1234" type="hidden"/>
    <input name="scid" value="4321" type="hidden"/>
    <input name="sum" value="50.00" type="hidden" />
    <input name="customerNumber" value="abc000" type="hidden"/>
    <input name="paymentType" value="2S" type="hidden"/>
    <input name="orderNumber" value="abc1111111" type="hidden"/>
    <input name="cps_phone" value="79110000000" type="hidden"/>
    <input name="cps_email" value="user@domain.com" type="hidden"/>
    <input name="payment_purpose" value="Оплата заказа №2134О" type="hidden"/>
    <input name="vatType" value="calculated" type="hidden"/>
    <input name="vatRate" value="18" type="hidden"/>
    <input name="vatSum" value="9.00" type="hidden"/>
    <input type="submit" value="Заплатить"/>
</form>
Что почитать еще
Тестирование оплаты