Форма для сбора данных

Для перевода денег на банковскую карту необходимо собрать персональные данные пользователя и данные банковской карты. Это можно сделать самостоятельно или с помощью специальной формы Яндекс.Денег.

Если использовать форму, необходимые данные будут храниться на стороне Яндекс.Денег. Персональные данные необходимо проверять только один раз. После этого контрагент получает данные для проведения выплаты, и может проводить выплаты на эту карту без проверки паспортных данных.

Сценарий взаимодействия

Шаг 1. Пользователь инициирует выплату на свою банковскую карту на стороне контрагента.

Шаг 2. Контрагент перенаправляет пользователя на форму для сбора данных банковской карты.

Шаг 3. Пользователь вводит данные карты и нажимает Добавить карту.

Форма ввода данных банковской карты

Шаг 4. Переходит на веб-страницу Яндекс.Денег с формой для ввода паспортных данных, заполняет все поля и нажимает Добавить.

Форма ввода персональных данных пользователя (полный набор полей)

Шаг 5. Данные проходят проверку, и Яндекс.Деньги перенаправляют пользователя на сторону контрагента.

  • Если с данными всё в порядке, Яндекс.Деньги отправляют контрагенту параметры для проведения выплаты (синоним банковской карты и идентификатор пользователя) и перенаправляют пользователя на страницу успеха.
  • Если с данными что-то не так, Яндекс.Деньги перенаправляют пользователя на страницу неудачи.

Шаг 6. Контрагент отправляет Яндекс.Деньгам запрос на проведение выплаты (makeDeposition) с параметрами, полученными от Яндекс.Денег на предыдущем шаге.

Important. Яндекс.Деньги проверяют персональные данные пользователя в два этапа: быстрая проверка — на этапе ввода данных пользователем — и полная проверка в течение суток после отправки данных. Если после полной проверки с данными будет что-то не так, в ответ на запрос makeDeposition вернется ошибка.

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

Форма для сбора данных размещена в сервисе Яндекс.Денег. Контрагенту нужно перенаправить на нее пользователя.

Адрес для отправки запросов: https://money.yandex.ru/cardauth/payout

Параметр

Тип

Описание

url_success

xs:string, до 250 символов

URL, на который необходимо отправить пользователя в случае успеха авторизации.

Обязательный параметр

url_error

xs:string, до 250 символов

URL, на который необходимо отправить пользователя в случае неуспеха авторизации.

Обязательный параметр

identify

xs:boolean

Необходимость получить от пользователя данные для идентификации кошелька. Используется в случае, если требуется хранение и проверка паспортных данных на стороне Яндекс.Денег.

Необязательный параметр

Important. Если передан, в ответе придет результат проверки паспортных данных (identificationStatus) и идентификатор пользователя в Яндекс.Деньгах (accountNumber).
small_amount_only

xs:boolean

Признак выплат от 100 до 15 000 рублей включительно. Влияет на количество полей, которые нужно заполнить пользователю.

Значение по умолчанию — false.

Необязательный параметр

Параметр

Тип

Описание

url_success

xs:string, до 250 символов

URL, на который необходимо отправить пользователя в случае успеха авторизации.

Обязательный параметр

url_error

xs:string, до 250 символов

URL, на который необходимо отправить пользователя в случае неуспеха авторизации.

Обязательный параметр

identify

xs:boolean

Необходимость получить от пользователя данные для идентификации кошелька. Используется в случае, если требуется хранение и проверка паспортных данных на стороне Яндекс.Денег.

Необязательный параметр

Important. Если передан, в ответе придет результат проверки паспортных данных (identificationStatus) и идентификатор пользователя в Яндекс.Деньгах (accountNumber).
small_amount_only

xs:boolean

Признак выплат от 100 до 15 000 рублей включительно. Влияет на количество полей, которые нужно заполнить пользователю.

Значение по умолчанию — false.

Необязательный параметр

Note.
  • Если выплаты будут небольшие (до 15 000 рублей), рекомендуется передать small_amount_only=true. В этом случае, если карта эмитирована российским банком, пользователю нужно будет заполнить меньше полей.
  • Чтобы после привязки банковской карты пользователь ввел свои персональные данные, необходимо передать identify=true.

Пример формы (полный набор полей)

https://money.yandex.ru/cardauth/payout?url_error=http://domain.tld/fail&url_success=http://domain.tld/success&identify=true

Пример формы (сокращенный набор полей)

https://money.yandex.ru/cardauth/payout?url_error=http://domain.tld/fail&url_success=http://domain.tld/success&identify=true&small_amount_only=true

Ответ после отправки формы

Сервис обрабатывает полученные на форме данные и перенаправляет пользователя методом GET на адрес, указанный в url_success или url_error.

Контрагент получает ответ при перенаправлении пользователя на страницу успеха или ошибки.

В случае успеха к адресу добавляются синоним, маска и дополнительные параметры карты пользователя, которые удалось определить в процессе обработки. Контрагент может хранить синонимы, маски и дополнительные параметры карты на своей стороне без опасения утечки: их публикация не приводит к финансовым или имиджевым потерям.

Параметр

Тип

Описание

Обязательные параметры
skr_destinationCardPanmask

xs:string, до 25 символов

Маска банковской карты. Пример: 510612******3456

skr_destinationCardSynonim

xs:string, до 100 символов

Синоним банковской карты. Пример: Ubc1CrurSqRQ5Va09IeVIRI6.SC.000.201812

skr_destinationCardCountryCode

xs:string, до 3 символов

Цифровой код страны, в которой выпущена карта. Например, 643 (Россия)

skr_destinationCardType xs:string, до 25 символов Тип банковской карты. Visa, Mastercard, Mir
identificationStatus xs:string, до 100 символов

Результат проверки паспортных данных:

  1. success при успехе,
  2. error или fail при ошибке.

Возвращается, только если контрагент передал в форме identify = true

accountNumber xs:string, до 25 символов

Идентификатор пользователя в Яндекс.Кассе. Возвращается только в случае успеха идентификации. Пример: 410012345678933

Возвращается, только если контрагент передал в форме identify = true

Условно-обязательные параметры
identificationError xs:string, до 1000 символов Возвращается только в случае ошибки при проверке. В отдельных случаях может не возвращаться

Параметр

Тип

Описание

Обязательные параметры
skr_destinationCardPanmask

xs:string, до 25 символов

Маска банковской карты. Пример: 510612******3456

skr_destinationCardSynonim

xs:string, до 100 символов

Синоним банковской карты. Пример: Ubc1CrurSqRQ5Va09IeVIRI6.SC.000.201812

skr_destinationCardCountryCode

xs:string, до 3 символов

Цифровой код страны, в которой выпущена карта. Например, 643 (Россия)

skr_destinationCardType xs:string, до 25 символов Тип банковской карты. Visa, Mastercard, Mir
identificationStatus xs:string, до 100 символов

Результат проверки паспортных данных:

  1. success при успехе,
  2. error или fail при ошибке.

Возвращается, только если контрагент передал в форме identify = true

accountNumber xs:string, до 25 символов

Идентификатор пользователя в Яндекс.Кассе. Возвращается только в случае успеха идентификации. Пример: 410012345678933

Возвращается, только если контрагент передал в форме identify = true

Условно-обязательные параметры
identificationError xs:string, до 1000 символов Возвращается только в случае ошибки при проверке. В отдельных случаях может не возвращаться
Attention. Ответ Яндекс.Кассы может включать не описанные в этом документе параметры. Контрагенту следует их игнорировать.

Полученные данные нужно использовать в запросах на зачисление переводов. Яндекс.Деньги по полученному синониму определяют номер карты получателя, а по идентификатору — персональные данные пользователя.

Смотрите также

Зачисление переводов на банковскую карту

Типы данных

Коды ошибок

Тестирование