Инструменты страницы
Запрос регистрации заказа с предавторизацией (registerPreAuth.do)
Для запроса регистрации заказа с предавторизацией используется метод registerPreAuth.do
.
Возможность проводить двухстадийные платежи предоставляется по отдельному запросу.
В настоящем документе при описании параметров запросов и ответов используются следующие обозначения типов данных:
- A<n> – последовательность латинских букв длины <n>;
- A..<n> – последовательность латинских букв длиной, не превышающей <n>;
- N<n> – последовательность цифр длины <n>;
- N..<n> – последовательность цифр длиной, не превышающей <n>;
- AN<n> – последовательность латинских букв и цифр фиксированной длины <n>;
- AN..<n> – последовательность латинских букв и цифр длиной, не превышающей <n>;
- ANS<n> – последовательность латинских букв, цифр и символов фиксированной длины <n>
- ANS..<n> – последовательность латинских букв, цифр и символов длиной, не превышающей <n>;
- UTC – дата и время, при этом: дата должна быть передана без указания часового пояса, время московское, для протокола SOAP используется стандартная кодировка xs:dateTime.
Пользуясь протоколом REST, тело сообщения запроса следует отправлять с типом: 'Content-Type: application/x-www-form-urlencoded'.
Параметры запроса
Параметры запроса представлены в таблице ниже.
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
AN..30 | нет (нужно указать либо пару логин и пароль, либо токен) |
Логин магазина, полученный при подключении. Если вместо аутентификации по логину и паролю используется открытый токен (параметр token), параметр userName передавать не нужно. |
|
AN..200 | нет (нужно указать либо пару логин и пароль, либо токен) |
Пароль магазина, полученный при подключении. Если для аутентификации при регистрации вместо логина и пароля используется открытый токен (параметр token), параметр password передавать не нужно. |
|
AN..256 | нет (нужно указать либо пару логин и пароль, либо токен) |
Открытый ключ, который можно использовать для аутентификации при выполнении запроса. Если для аутентификации используются логин и пароль, параметр Чтобы получить открытый ключ, обратитесь в техническую поддержку. |
|
ANS..32 | Да |
Номер (идентификатор) заказа в системе магазина, уникален для каждого магазина в пределах системы. Если номер заказа генерируется на стороне платёжного шлюза, этот параметр передавать необязательно |
|
N..12 | Да |
Сумма платежа в минимальных единицах валюты. |
|
N3 | Нет |
Код валюты платежа ISO 4217. Если не указано, то используется значение по умолчанию. |
|
ANS..512 | Да |
Адрес, на который требуется перенаправить пользователя в случае успешной оплаты, а также в случае неуспешной оплаты (при отсутствии переданного параметра Адрес нельзя указывать относительным путем, т.е. они не должны начинаться на «.» и «/». В противном случае вернется ошибка 4: «URL возврата некорректен». Например:
|
|
ANS..512 | Нет |
Адрес, на который требуется перенаправить пользователя в случае неуспешной оплаты. Адрес должен быть указан полностью, включая используемый протокол (например, https://test.ru вместо test.ru). В противном случае пользователь будет перенаправлен по адресу следующего вида: http://<адрес_платёжного_шлюза>/<адрес_продавца>. Адрес нельзя указывать относительным путем, т.е. они не должны начинаться на «.» и «/». В противном случае вернется ошибка 4: «URL возврата некорректен». Например:
Параметр необязательный. |
|
ANS..512 | Нет |
Параметр позволяет воспользоваться функциональность динамической отправки callback-уведомлений. В нем можно передать адрес, на который будут отправляться все «платежные» callback-уведомления, активированные для продавца. Под платежными понимаются callback-уведомления о следующих событиях: успешный холд, платеж отклонен по таймауту, платеж cardpresent отклонен, успешное списание, возврат, отмена. При этом активированные для мерчанта callback-уведомления, не относящиеся к платежам (включение/выключение связки, создание связки), будут отправляться на статический адрес для callback-ов. Для использования функциональности динамической отправки callback-уведомлений необходимо, чтобы у мерчанта была выставлена соответствующая настройка: Тип callback-а: Динамический (CALLBACK_TYPE = DYNAMIC). Чтобы мерчант мог получать callback-уведомления, для него необходима активация пермиссии: Разрешено выполнять callback операции. |
|
ANS..598 | Нет |
Описание заказа в свободной форме. |
|
A2 | Нет |
Язык в кодировке ISO 639-1. Если не указан, будет использован язык, указанный в настройках магазина как язык по умолчанию. |
|
ANS..20 | Нет |
По значению данного параметра определяется, какие страницы платёжного интерфейса должны загружаться для клиента. Возможны следующие значения.
Где:
Если параметр отсутствует, либо не соответствует формату, то по умолчанию считается |
|
ANS..255 | Нет |
Номер (идентификатор) клиента в системе магазина. Используется для реализации функционала связок. Может присутствовать, если магазину разрешено создание связок. Указание этого параметра при платежах по связке необходимо - в противном случае платёж будет неуспешен. |
|
AN..255 | Нет |
Чтобы зарегистрировать заказ от имени дочернего продавца, укажите его логин в этом параметре. |
|
Строка | Нет |
Блок для передачи дополнительных параметров продавца. Поля дополнительной информации для последующего хранения, передаются в следующем виде. {name1:value1,…,nameN:valueN} Эти поля могут быть переданы в процессинг банка для последующего отображения в реестрах. Включение этой функциональности возможно по согласованию с банком в период интеграции. Если для продавца настроена отправка уведомлений покупателю, адрес электронной почты покупателя должен передаваться в этом блоке в параметре с именем email. В параметре запрещено передавать зарезервированные имена (в случае их передачи заказ может быть отклонен):
|
|
N..9 | Нет |
Продолжительность жизни заказа в секундах. В случае если параметр не задан, будет использовано значение, указанное в настройках мерчанта или время по умолчанию (1200 секунд = 20 минут). Если в запросе присутствует параметр expirationDate, то значение параметра sessionTimeoutSecs не учитывается. |
|
ANS | Нет |
Дата и время окончания жизни заказа. Формат:
Если этот параметр не передаётся в запросе, то для определения времени окончания жизни заказа используется |
|
AN..255 | Нет |
Идентификатор созданной ранее связки. Может использоваться, только если у продавца есть разрешение на работу со связками. Если этот параметр передаётся в данном запросе, то это означает: |
|
ANS..255 | Нет |
Контейнер для параметра
Особенности передачи значения VERIFY
1. Даже если сумма платежа будет передана в запросе, она не будет списана со счёта клиента.
Ниже представлен пример использования.
<features> <feature>AUTO_PAYMENT</feature> </features> |
|
ANS..19 | Нет |
Дата и время автозавершения двухстадийного платежа в следующем формате
Чтобы подключить эту функциональность, обратитесь в службу технической поддержки. |
|
ANS..19 | Нет |
Дата и время автоотмены авторизации (двухстадийного платежа) в следующем формате
Чтобы подключить эту функциональность, обратитесь в службу технической поддержки. |
|
ANS..40 | Нет |
Адрес электронной почты покупателя. |
|
NS..12 | Нет |
Номер телефона клиента. Примеры:
В случае передачи номера в отдельном параметре и в дополнительных параметрах, в качестве основного использоваться будет номер, указанный в настоящем параметре |
|
См. описание | Нет |
Блок c регистрационными данными клиента (адрес, почтовый индекс), необходимыми для прохождения проверки адреса в рамках сервисов AVS/AVV. Обязателен, если активна соответствующая пермиссия для мерчанта («Разрешено использование AVS/AVV»). |
|
A1 | Нет |
Индикатор совпадения адреса держателя карты для выставления счета и адреса доставки. Возможные значения:
Этот параметр используется для дальнейшей 3DS аутентификации клиента. |
|
См. описание | Нет |
Блок с данными доставки клиента. Используется для дальнейшей 3DS аутентификации клиента. |
|
См. описание | Нет |
Блок с данными о плательщике заказа. Используется для дальнейшей 3DS аутентификации клиента. |
|
См. описание | Нет |
Блок с данными предзаказа. Используется для дальнейшей 3DS аутентификации клиента. |
Параметры блока billingPayerData
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
AN..50 | Нет |
Город, зарегистрированный по конкретной карте у Банка Эмитента |
|
AN..50 | Нет |
|
|
AN..50 | Нет |
Адрес, зарегистрированный по конкретной карте у Банка Эмитента Строка 1. Обязательно, если у Мерчанта активирована пермиссия «Разрешено использование AVS/AVV». |
|
AN..50 | Нет |
Адрес, зарегистрированный по конкретной карте у Банка Эмитента Строка 2. |
|
AN..50 | Нет |
Адрес, зарегистрированный по конкретной карте у Банка Эмитента Строка 3. |
|
AN..50 | Нет |
Почтовый индекс, зарегистрированный по конкретной карте у Банка Эмитента. Обязательно, если у Мерчанта активирована пермиссия «Разрешено использование AVS/AVV». |
|
AN..50 | Нет |
Штат, зарегистрированный по конкретной карте у Банка Эмитента (ISO 3166-2) |
Параметры блока shippingPayerData
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
ANS…50 | Нет |
Город клиента (из адреса доставки). |
|
ANS…50 | Нет |
Страна клиента. |
|
ANS…50 | Нет |
Основной адрес клиента (из адреса доставки). |
|
ANS…50 | Нет |
Основной адрес клиента (из адреса доставки). |
|
ANS…50 | Нет |
Основной адрес клиента (из адреса доставки). |
|
ANS…16 | Нет |
ZIP или иной почтовый индекс клиента для доставки. |
|
ANS…50 | Нет |
Штат/регион клиента (из адреса доставки). |
|
N2 | Нет |
Индикатор способа доставки. Перечень возможных значений:
|
|
N2 | Нет |
Сроки доставки товара. Перечень возможных значений:
|
|
ANS…254 | Нет |
Целевой адрес электронной почты для доставки цифровой дистрибуции. |
Параметры блока orderPayerData
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
ANS…19 | Нет |
Домашний телефон держателя карты, с обязательным символом «+». |
|
ANS…19 | Нет |
Рабочий телефон держателя карты, c обязательным символом «+». |
|
ANS…19 | Нет |
Мобильный телефон держателя карты, c обязательным символом «+». |
Параметры блока preOrderPayerData
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
ANS8 | Нет |
Ожидаемая дата, когда будет доступна доставка (для предварительно заказанных покупок), в формате YYYYMMDD. |
|
N2 | Нет |
Индикатор размещения клиентом заказа на доступную или будущую доставку. Перечень возможных значений:
|
|
N2 | Нет |
Индикатор того, что клиент выполняет переоформляет ранее оплаченную доставку в рамках нового заказа. Перечень возможных значений:
|
По умолчанию в процессинг банка передаются поля:
orderNumber
– номер заказа в системе магазина;description
– описание заказа (не более 24 символов, запрещены к использованию %, +, конец строки \r и перенос строки \n).
Параметры ответа
Параметры ответа представлены в таблице ниже.
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
ANS36 | Нет |
Номер заказа в платежной системе. Уникален в пределах системы. Отсутствует если регистрация заказа не удалась по причине ошибки, детализированной в ErrorCode. |
|
AN..512 | Нет |
URL платежной формы, на который надо перенаправить браузер клиента. Не возвращается если регистрация заказа не удалась по причине ошибки, детализированной в |
|
N..2 | Нет |
Код ошибки. Может отсутствовать, если результат не привёл к ошибке. |
|
|
Нет |
|
Коды ошибок
Код ошибки | Текст ошибки |
---|---|
0 |
Обработка запроса прошла без системных ошибок. |
1 |
Заказ с таким номером уже обработан. |
1 |
Неверный номер заказа. |
3 |
Неизвестная валюта. |
4 |
Номер заказа не может быть пуст. |
4 |
Имя продавца не может быть пустым. |
4 |
Отсутствует сумма. |
4 |
URL возврата не может быть пуст. |
4 |
Пароль не может быть пуст. |
5 |
Неверная сумма. |
5 |
Неправильный параметр 'Язык'. |
5 |
Логин продавца неверен. |
5 |
Доступ запрещён. |
5 |
Пользователь должен сменить свой пароль. |
5 |
|
7 |
Системная ошибка. |
13 |
Мерчант не имеет привилегии выполнять проверочные платежи. |
14 |
|
Примеры
Пример запроса POST
amount=100¤cy=643&language=ru&orderNumber=87654321&returnUrl=http://yoursite.com&pageView=MOBILE&expirationDate=2014-09-08T14:14:14&merchantLogin=merch_child&features=AUTO_PAYMENT
Пример ответа
{"orderId":"61351fbd-ac25-484f-b930-4d0ce4101ab7","formUrl":"https://3dsec.sberbank.ru/payment/mobile_payment_ru.html?mdOrder=61351fbd-ac25-484f-b930-4d0ce4101ab7"}