Платежи

Отправка запросов, если не указано иное, осуществляется с заголовком

«Content‑Type: application/x‑www‑form‑urlencoded».

Порядок следования параметров в запросах не важен.

Регистр символов в url‑адресах и параметрах запросов — важен.

Ответ на запрос передается в формате JSON, кодировка UTF‑8.

StartSession

Запрос инициализации платежа. Выполняется перед перенаправлением пользователя на страницу платежного шлюза Payler.

URL запроса: https://{host}.payler.com/gapi/StartSession

Доступно для: gapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

type

A

R

Тип операции. Определяет количество стадий платежа.

OneStep — одностадийный платеж;

TwoStep — двухстадийный платеж

session_type

N1

O

Тип сессии. Определяет режим сохранения карточных данных. Если этот параметр равен 1, требуется передавать customer_id

0 — обычная страница оплаты; 1 — страница оплаты с возможностью выбора из сохраненных карт или ввода полных карточных данных для оплаты картой не из списка. При выборе сохраненной карты пользователю необходимо ввести только CVV. По умолчанию — 0

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Для каждого платежа (сессии) требуется использовать уникальный идентификатор. Только печатные ASCII-символы

customer_id

A..100

O

Идентификатор пользователя.

Определяет пользователя, чей список карт будет доступен для выбора (если session_type = 1), или за которым будет сохранена карта, используемая при оплате. Должен быть передан, если параметр session_type = 1. Пользователь создается автоматически, если данное поле пустое

currency

A3

O

Валюта платежа (см. Поддерживаемые валюты). По умолчанию — RUB

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.)

product

A..256

O

Описание заказа, платежа.

template

A..100

O

Используемый шаблон страницы оплаты, заданный мерчантом. При отсутствии используется шаблон «по умолчанию».

lang

A2

O

Предпочитаемый язык платёжной формы. en — английский; ru — русский. По умолчанию — ru

userdata

A..1000

O

Пользовательские данные. Можно передать любую информацию, которую нужно сохранить вместе с платежом, а потом получить её с помощью метода GetAdvancedStatus

recurrent

N1

O

Показывает, требуется ли создать шаблон рекуррентных платежей на основе текущего:

1 — требуется создать шаблон;

0 — шаблон создавать не требуется

pay_page_param_*

A..100

O

Параметры для отображения на странице оплаты. Можно передать любые параметры, начинающиеся с pay_page_param_, а потом отобразить их на странице оплаты. Для этого необходимо использовать шаблон страницы (см. параметр template)

pay_page_param_addtoreport3

A

O

При сплитовании: суммы зачисления для каждого получателя в минимальной денежной единице (копейки, центы и т. д.) через запятую

pay_page_param_addtoreport4

A

O

При сплитовании: ID получателей через запятую. Регистрируются через службу технической поддержки

antifraud_*

A..100

O

Дополнительные параметры для системы антифрод. Можно передать любые параметры, начинающиеся с antifraud_

payment_methods

A..500

O

Способы платежа для данной сессии. Если параметр не указан, то будут доступны все способы, разрешенные мерчанту. Через запятую перечислены способы платежа, доступные для сессии. Cм. Способы оплаты

email

A..100

R

Адрес электронной почты пользователя

return_url_success

A..1000

O

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

return_url_decline

A..1000

O

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

lifetime

N

O

Время жизни сессии в минутах, от 1 мин и более

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.)

session_id

A..100

R

Идентификатор платёжной сессии

Пример ответа на успешный запрос:

{
  "amount": 30000,
  "session_id": "FE6nrdcfw4Zy88CRki6sjc1mRxW9xcv7m7CS",
  "order_id": "d1434908-7260-483e-8254-fa43af1b835d"
}

PayGate

Запрос списания средств с перенаправлением пользователя на страницу шлюза. Выполняется после команды StartSession. Результатом обработки запроса является списание денежных средств при одностадийной схеме проведения платежа, либо блокировка средств на карте пользователя при двухстадийной схеме проведения платежа.

URL запроса: https://{host}.payler.com/gapi/Pay

Доступно для: gapi

Метод отправки запроса: GET

Параметры запроса:

Название

Тип

R/O

Описание

session_id

A..100

R

Идентификатор платёжной сессии. Содержится в ответе на запрос StartSession

После обработки запроса PayGate на стороне платежного шлюза пользователь будет перенаправлен на страницу с результатами платежа, а через 3 секунды возвращен на сайт мерчанта.

Адрес возврата пользователя (URL страницы) — указывается мерчантом заранее в виде URL. Пример адреса возврата: http://myshop.ru/complete?order_id={order_id}

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

Нужно учесть, что возврат на указанный URL может быть сделан несколько раз, например, когда пользователь запутался, нажимал кнопку Back в браузере и несколько раз вводил карточные данные для оплаты. Если пользователь ошибочно попытается повторно оплатить заказ в рамках одной сессии, то ему будет показано сообщение о том, что оплата уже произведена, и сделано перенаправление на сайт мерчанта.

FindSession

Поиск платёжной сессии по идентификатору платежа (order_id).

URL запроса: https://{host}.payler.com/{api}/FindSession

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор оплачиваемого заказа или перевода в системе мерчанта. Только печатные ASCII‑символы

Параметры ответа:

Название

Тип

R/O

Описание

id

A..100

R

Идентификатор платежной сессии

created

A

R

Время создания сессии в формате «yyyy-MM-dd HH:mm:ss»

valid_through

A

R

Время действия сессии в формате «yyyy-MM-dd HH:mm:ss»

type

A

R

Тип операции. Определяет количество стадий платежа. OneStep — одностадийный платеж;

TwoStep — двухстадийный платеж

customer_id

A..100

O

Идентификатор пользователя

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Только печатные ASCII-символы

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

product

A..256

R

Наименование продукта.

currency

A..3

R

Валюта платежа (см. Поддерживаемые валюты). По умолчанию — RUB

pay_page_params

D

R

Параметры для отображения на странице оплаты

userdata

A..10000

R

Пользовательские данные

lang

A2

R

Предпочитаемый язык платёжной формы. en — английский, ru — русский

recurrent

B

R

Показывает, требуется ли создать шаблон рекуррентных платежей:

1 — шаблон создан,

0 — шаблон не требуется

session_type

A

R

Тип сессии. Определяет режим сохранения карточных данных. Если этот параметр равен 1, требуется передавать customer_id

0 — обычная страница оплаты;

1 — страница оплаты с возможностью выбора из сохраненных карт или ввода полных карточных данных для оплаты картой не из списка. При выборе сохраненной карты пользователю необходимо ввести только CVV

Пример ответа на успешный запрос (платёж):

{
	"id": "VLaFQpI88NpCncTA1TkhlX6HtkhzwQAKhxvz",
	"created": "2015-10-26 17:11:30",
	"valid_through": "2015-10-26 17:11:30",
	"type": "OneStep",
	"order_id": "ad7ad8b4-d50e-4b68-72f4-ca1264a8fae4",
	"amount": 30000,
	"product": "el-ticket",
	"currency": "RUB",
	"pay_page_params": {"pay_page_param_phone": "+790012345678",       "pay_page_param_city":”Москва””},
	"userdata": "data",
	"lang": "RU",
	"recurrent": true,
	"customer_id": "kfRWk8nbT9LhO19sVYotkJ2gHSPs5E4Qph35",
	"session_type": "0"
}

PayMerchant

Запрос выполняется в рамках одностадийной схемы проведения платежа.

Результат обработки запроса — списание денежных средств с карты пользователя.

URL запроса: https://{host}.payler.com/mapi/v1/Pay

Доступно для: mapi

Метод отправки запроса: POST

Использование данного метода предполагает обязательное соответствие системы мерчанта требованиям PCI DSS.

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Для каждого платежа нужен свой уникальный идентификатор. Только печатные ASCII‑символы

currency

A3

О

Валюта платежа (см. Поддерживаемые валюты). По умолчанию — RUB

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.)

card_number

A..19

O

Номер карты. Десятичные цифры без разделителей [0–9]

card_holder

A..100

О

Имя владельца карты. Латинские символы, десятичные цифры или символ пробела [a-zA-Z0‑9]

expired_year

N2

O

Год окончания срока действия карты

expired_month

N2

O

Месяц окончания срока действия карты

secure_code

A

R

Код подлинности карты (CVC2/CVV2). Десятичные цифры [0–9]

product

A..256

O

Описание заказа, платежа.

lang

A2

О

Предпочитаемый язык ответов сервера.

en — английский; ru — русский.

По умолчанию — ru

email

A..100

R

Адрес электронной почты пользователя

userdata

A..1000

О

Пользовательские данные. Можно передать в этой строке любую информацию, которую нужно сохранить вместе с платежом, а потом получить её с помощью метода GetAdvancedStatus

recurrent

N1

О

Показывает, требуется ли создать шаблон рекуррентных платежей на основе текущего.

1 — требуется создать шаблон;

0 — шаблон создавать не требуется

card_id

A..100

О

Идентификатор сохранённой карты. Если указан, то можно не указывать card_number, expired_year, expired_month, достаточно указать secure_code

save_card

B

О

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

1 — требуется сохранить карту;

0 — карту сохранять не требуется

customer_id

A..100

О

Идентификатор пользователя. Если передан параметр save_card равный true или 1, то показывает, для какого пользователя будет сохранена карта. Если передан параметр card_id, то показывает, какому пользователю принадлежит карта (значение должно совпадать с указанным при сохранении карты). Генерируется мерчантом

antifraud_*

A..100

О

Дополнительные параметры для системы антифрод. Можно передать любые параметры, начинающиеся с antifraud_

user_entered_*

A..100

О

Можно указать дополнительные поля для оплаты, начинающиеся с user_entered_. Затем все эти поля возвращаются в GetAdvancedStatus в поле ser_entered_params

payer_ip

A

R

IP-адрес браузера покупателя

browserAccept

A

R

Заголовок Accept из браузера покупателя

browserLanguage

A

R

Язык браузера устройства покупателя. en — английский; ru — русский

browserUserAgent

A

R

Содержание заголовка User-Agent в браузере покупателя

browserJavaEnabled

B

R

Признак возможности выполнения Java в браузере устройства покупателя

browserJavascriptEnabled

B

O

Признак возможности выполнения JavaScript в браузере устройства покупателя. По умолчанию — true

browserScreenHeight

A

R

Общая высота экрана устройства покупателя в пикселях

browserScreenWidth

A

R

Общая ширина экрана устройства покупателя в пикселях

browserColorDepth

A

R

Глубина цветопередачи в битах

browserTZ

A

R

Часовой пояс — разница (в минутах) во времени между временем по UTC и местным временем браузера на устройстве покупателя

threeDsNotificationUrl

A

R

URL получения результата 3DS challenge

pay_page_param_addtoreport3

A

O

При сплитовании: суммы зачисления для каждого получателя в минимальной денежной единице (копейки, центы и т. д.) через запятую

pay_page_param_addtoreport4

A

O

При сплитовании: ID получателей через запятую. Регистрируются через службу технической поддержки

fee

N

O

Комиссия в минимальной денежной единице (копейки, центы и т. д.)

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.). Соответствует переданной в запросе

auth_type

N1

R

Значение, указывающее, требуется ли дополнительная авторизации для осуществления платежа.

0 — дополнительная авторизация не требуется;

1 — авторизация с использованием 3D‑Secure

recurrent_template_id

A..100

О

Идентификатор шаблона рекуррентных платежей.

Присутствует, если в рамках текущей транзакции был создан шаблон рекуррентных платежей

card_id

A..100

О

Идентификатор сохранённой карты

card_status

A

О

Статус карты. Saved — карта сохранена и готова к использованию. Invalid — карта недействительна (например, истёк срок её действия)

card_number

A..19

R

Маскированный номер банковской карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей.

Десятичные цифры без разделителей [0–9] и маскировочный символ ‘x’

card_holder

A..100

R

Имя держателя карты

expired_month

N2

R

Месяц истечения срока действия карты

expired_year

N2

R

Год истечения срока действия карты

acs_url

A..*

O

URL для перенаправления пользователя для прохождения 3DS (Access Control Service)

md

A*

O

Номер транзакции в МПС для идентификации при прохождении 3DS 1.0 (Merchant Data)

pareq

A*

O

Данные по транзакции для прохождения 3DS 1.0 (Payment Authentication Request)

threeDS_server_transID

A

O

Уникальный идентификатор, присвоенный 3DS-сервером. Необходим вызов 3DSMethod

threeDS_method_url

A

O

Значение для передачи в запросе к 3DSMethod

creq

A

O

Данные для авторизации в 3DS 2.0 после прохождения Challenge

status

A

O

Статус операции

Примеры ответов на успешный запрос:

Если карта вовлечена в 3DS 2.0 и требуется вызов 3DSMethod:

{
      "threeDS_server_transID":"9f7f012d-d6d0-38fe-9bfd-70a727c7473a",
      "threeDS_method_url":"https://someurl.com",
      "auth_type":1,
      "amount":2050,
      "order_id":"c8ebb763-5b75-4c5e-a731-2489220b4f2a"
}

Если карта вовлечена в 3DS 2.0 и требуется вызов СhallengeComplete:

{
        "acs_url":"https://someurl.com",
    "creq":"eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImE3ZTYzZWRkLTYwYTgtMzE0Yi
04MzJlLTU3YTFhNzg2NTZjZSIsImFjc1RyYW5zSUQiOiJhM2MxMDQwYS05OGUxLTQ0
N2EtOTE4Ni0zYzY3N2MyODMxNmEiLCJjaGFsbGVuZ2VXaW5kb3dTaXplIjoiMDUiLC
JtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0=",
       "auth_type":1,
       "amount":2050,
       "card_number":"411111xxxxxx1111",
       "card_holder":"NONAME",
       "expired_year":20,
       "expired_month":12,
       "order_id":"201d6446-c351-4df6-8f46-8f5b24be76aa"
}

Если карта вовлечена в 3DS 1.0:

{
         "acs_url": "https://web.rbsuat.com/acs/auth/start.do",
         "pareq": "eJxVUdluwjAQ/BWU9+ADhwBajNICAlUBWkKl9i3HFlKRAxMq4OtrByhU8sPMejRjz8LgmG0bP6j2aZH3LdakVgPzuEjSfN23VsHY7lgDCcFGIQ6XGB8USvBxvw/X2EiTvvXluOi6HWFjRIUtusyxIx4Lm1FkPBKUJu3IkrDw3nAn4RokdU6TA7lR7ajiTZhXEsJ49zSdScHdNqVArhQyVNOhZLwlnLYL5EIhDzOUZXjaogJSE4iLQ16pk2yLFpAbgYPayk1VlT1CLvJmXGRAzBjIPXxxMGivbY5pIv3g9eyf13wejNjs2xezs8f84ciZD70+EKOAJKxQcsq61OWtBu30uD4MSD2HMDP50qk/csFQmgjv4eJxALpfpeu/Pf/GAI9lkaNW6NL+MJD7e58nprq40q2UbiZoNFpUbjUOJi/55/sqGe/Ws6WHH6bQWmQcU90M67KLpSFAjA257opc16zRv/X/Aj0Rt1Q=",
         "md": "949cdebb-b7a7-46b0-874e-bd11f410992c",
         "auth_type": 1,
         "amount": 500,
         "card_number": "411111xxxxxx1111",
         "card_holder": "IVAN",
         "expired_year": 19,
         "expired_month": 12,
  	"order_id": "test_example_002"
}

Если карта не вовлечена в 3DS или аутентификация успешно прошла по frictionless flow и выполнение 3DSMethod не требовалось:

{
         "auth_type": 0,
         "amount": 500,
         "recurrent_template_id": "rec-pay-42301e79-b92d-4753-b248-b92ad552fdfd",
         "card_number": "555555xxxxxx5599",
         "card_holder": "IVAN",
         "expired_year": 19,
         "expired_month": 12,
         "order_id": "test_example_003",
         "status": "Charged"
}

Карты Maestro

Правила МПС запрещают проводить рекуррентные платежи по картам Maestro. Мы можем настроить ваш аккаунт так, чтобы при попытке оплаты платежной сессии с созданием рекуррентного платежа (в запросе в качестве значения параметра recurrent указано true) платеж отклонялся, а пользователь получал сообщение, что данный тип карт не поддерживается.

Block

Запрос выполняется в рамках двухстадийной схемы проведения платежа.

Результат обработки запроса — блокировка денежных средств на карте пользователя.

URL запроса: https://{host}.payler.com/mapi/v1/Block

Доступно для: mapi

Метод отправки запроса: POST

Использование данного метода предполагает обязательное соответствие системы мерчанта требованиям PCI DSS.

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта.

Выдается с параметрами доступа

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Для каждого платежа нужен свой уникальный идентификатор. Только печатные ASCII-символы

currency

A3

О

Валюта платежа (RUB, USD, EUR, GBP, PLN, TJS, KGS).

По умолчанию — RUB

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.)

card_number

A..19

O

Номер карты. Десятичные цифры без разделителей [0–9]

card_holder

A..100

О

Имя владельца карты. Латинские символы, десятичные цифры или символ пробела [a-zA-Z0-9]

expired_year

N2

O

Год окончания срока действия карты

expired_month

N2

O

Месяц окончания срока действия карты. Целое двухзначное число в формате с лидирующим нулем

secure_code

A

R

Код подлинности карты (CVC2/CVV2). Десятичные цифры [0–9]

product

A..256

O

Описание заказа, платежа.

email

A..100

R

Адрес электронной почты пользователя

lang

A2

О

Предпочитаемый язык ответов сервера.

en — английский; ru — русский.

По умолчанию — ru

userdata

A..*

О

Пользовательские данные. Можно передать в этой строке любую информацию, которую нужно сохранить вместе с платежом, а потом получить её с помощью метода GetAdvancedStatus

recurrent

A..100

О

Показывает, требуется ли создать шаблон рекуррентных платежей на основе текущего.

1 — требуется создать шаблон;

0 — шаблон создавать не требуется

card_id

A..100

О

Идентификатор ранее сохранённой карты. Если указан, то можно не указывать card_number, expired_year, expired_month, достаточно указать secure_code

save_card

N1

О

Показывает, требуется ли сохранить данные карты. Если передано 1, то нужно передавать customer_id

1 — требуется сохранить карту;

0 — карту сохранять не требуется

customer_id

A..100

О

Идентификатор пользователя. Если передан параметр save_card, равный true или 1, то показывает для какого пользователя будет сохранена карта. Если передан параметр card_id, то показывает, какому пользователю принадлежит карта (значение должно совпадать с указанным при сохранении карты). Генерируется мерчантом

user_entered_*

A..100

О

Можно указать дополнительные поля для оплаты, начинающиеся с user_entered_. Затем все эти поля возвращаются в GetAdvancedStatus в поле user_entered_params

pay_page_param_addtoreport3

A

O

При сплитовании: суммы зачисления для каждого получателя в минимальной денежной единице (копейки, центы и т. д.) через запятую

pay_page_param_addtoreport4

A

O

При сплитовании: ID получателей через запятую. Регистрируются через службу технической поддержки

antifraud_*

A..100

O

Дополнительные параметры для системы антифрод. Можно передать любые параметры, начинающиеся с antifraud_

payer_ip

A

R

IP-адрес браузера покупателя

browserAccept

A

R

Заголовок Accept из браузера покупателя

browserLanguage

A

R

Язык браузера устройства покупателя. en — английский; ru — русский

browserUserAgent

A

R

Содержание заголовка User-Agent в браузере покупателя

browserJavaEnabled

B

R

Признак возможности выполнения Java в браузере устройства покупателя

browserJavascriptEnabled

B

O

Признак возможности выполнения JavaScript в браузере устройства покупателя. По умолчанию — true

browserScreenHeight

A

R

Общая высота экрана устройства покупателя в пикселях

browserScreenWidth

A

R

Общая ширина экрана устройства покупателя в пикселях

browserColorDepth

A

R

Глубина цветопередачи в битах

browserTZ

A

R

Часовой пояс — разница (в минутах) во времени между временем по UTC и местным временем браузера на устройстве покупателя

threeDsNotificationUrl

A

R

URL получения результата 3DS challenge

fee

N

O

Комиссия в минимальной денежной единице (копейки, центы и т. д.)

Параметры ответа:

Формат ответа совпадает форматом ответа PayMerchant.

3DSMethod

Данный метод вызывается на стороне банка-эмитента карты, если в ответе PayMerchant, Block или PaySaveCard вернулись значения threeDS_server_transID и threeDS_method_url.

Мерчанту необходимо добавить на страницу пользователя javascript — iframe с html-формой с threeDSMethodData. Javascript выполняет submit этой формы, выполняя POST-запрос на threeDSmethodUrl (см. значение threeDS_method_url в ответе PayMerchant, Block или PaySaveCard).

Пример содержимого iframe:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>3DS Method</title>
    <script type="text/javascript"
        language="javascript">function moveWindow() { document.returnform.submit(); } /script>
</head>
<body onLoad="javascript:moveWindow()">
    <form name="returnform" action="' + threeDsMethodUrl + '" method="POST">
        <input type="hidden" name="threeDSMethodData" value="' + threeDSMethodData + '" />
        <noscript>
            <center>Please click the submit button below.<br /><input type="submit" name="submit" value="Submit" />
            </center>
        </noscript>
    </form>
</body>
</html>

Сценарий выполнения:

  1. Система мерчанта в скрытом iframe отправляет методом POST на ThreeDSMethodURL параметр threeDSMethodData. На данном шаге threeDSMethodData — это закодированный в base64url объект json с полями:

    • threeDSMethodNotificationURL — адрес, на который ACS отправит POST-запрос после того, как соберет информацию о браузере клиента;

    • threeDSServerTransID — значение параметра threeDS_server_transID.

  2. ACS отправляет страницу со скриптом для сбора информации о браузере на стороне пользователя;

  3. ACS собирает информацию о браузере пользователя;

  4. Собранная информация о браузере отправляется на ACS;

  5. ACS отправляет POST-запрос на адрес threeDSMethodNotificationURL. В запросе передает параметр threeDSMethodData. На данном шаге threeDSMethodData — это закодированный в base64url объект json с полем threeDSServerTransID.

После получения от ACS POST-запроса на адрес threeDSMethodNotificationURL или, если в течение предусмотренного протоколом таймаута (10 сек) запрос не был получен, система мерчанта выполняет запрос ThreeDsMethodComplete.

ThreeDsMethodComplete

Завершение аутентификации по протоколу 3DS 2.0. Выполняется после вызова 3DSMethod.

Формат запроса: https://{host}.payler.com/{api}/v1/ThreeDsMethodComplete Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

threeDs_comp_ind

A1

R

Результат прохождения аутентификации 3DS 2.0. Возможные значения: Y — успех (callback от ACS был получен), N — отклонение (callback от ACS не был получен)

key

A

R

Платёжный ключ мерчанта

threeDS_server_transID

A

R

Значение threeDSServerTransI, полученное в ответе на запрос PayMerchant, Block или PaySaveCard

Параметры ответа:

Название

Тип

R/O

Описание

acs_url

A

O

URL перенаправления пользователя для прохождения 3DS

creq

A

O

Данные для авторизации в 3DS 2.0 после Challenge

auth_type

N1

R

Значение, указывающее, требуется ли дополнительная авторизации для осуществления платежа.

0 — дополнительная авторизация не требуется;

1 — авторизация с использованием 3D‑Secure

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.). Соответствует переданной в запросе

recurrent_template_id

A..100

О

Идентификатор шаблона рекуррентных платежей.

Присутствует, если в рамках текущей транзакции был создан шаблон рекуррентных платежей

card_number

A..19

R

Маскированный номер банковской карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей. Десятичные цифры без разделителей [0–9] и маскировочный символ ‘x’

card_holder

A..100

R

Имя держателя карты

expired_year

N2

R

Год истечения срока действия карты

expired_month

N2

R

Месяц истечения срока действия карты

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

status

A

O

Статус операции

Примеры ответов на успешный запрос:

Если карта вовлечена в 3DS 2.0 и требуется вызов СhallengeComplete:

{
       "acs_url":"https://someurl.com",
    "creq":"eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImE3ZTYzZWRkLTYwYTgtMzE0Yi
04MzJlLTU3YTFhNzg2NTZjZSIsImFjc1RyYW5zSUQiOiJhM2MxMDQwYS05OGUxLTQ0
N2EtOTE4Ni0zYzY3N2MyODMxNmEiLCJjaGFsbGVuZ2VXaW5kb3dTaXplIjoiMDUiLC
JtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0=",
       "auth_type":1,
       "amount":2050,
       "card_number":"411111xxxxxx1111",
       "card_holder":"NONAME",
       "expired_year":20,
       "expired_month":12,
       "order_id":"201d6446-c351-4df6-8f46-8f5b24be76aa"
}

Если карта не вовлечена в 3DS или аутентификация успешно прошла по frictionless flow:

{
        "auth_type": 0,
        "amount": 500,
        "recurrent_template_id": "rec-pay-42301e79-b92d-4753-b248-b92ad552fdfd",
        "card_number": "555555xxxxxx5599",
        "card_holder": "IVAN",
        "expired_year": 19,
        "expired_month": 12,
        "order_id": "test_example_003",
        "status": "Charged"
}

ChallengeComplete

Прохождение дополнительного этапа для проверки подлинности платежа 3D-Secure 2.0 при блокировке или списании средств со счёта карты.

Сценарий:

  1. Если требуется дополнительный этап выполнения проверки подлинности платежа 3D-Secure 2.0, то в ответе метода PayMerchant, Block, PaySaveCard или ThreeDsMethodComplete присутствуют строковые параметры acs_url и creq.

  2. После получения ответа от шлюза мерчант перенаправляет пользователя на сайт банка-эмитента для дополнительной аутентификации. Формат перенаправления: POST-запрос по адресу, указанному в значении параметра acs_url. Параметр: creq.

Формат ответа в результате перенаправления: возврат пользователя POST-запросом по адресу, указанному в параметре threeDsNotificationUrl запроса PayMerchant, Block или PaySaveCard. Параметр: cres.

Формат запроса: https://{host}.payler.com/mapi/v1/ChallengeComplete

Доступно для: mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

cres

A

R

Значение cres, полученное от банка-эмитента на threeDsNotificationUrl (передается в запросах PayMerchant, Block, PaySaveCard)

key

A

R

Платёжный ключ мерчанта

Параметры ответа:

Формат ответа совпадает форматом ответа Send3DS

Send3DS

Прохождение аутентификации 3D‑Secure 1.0 при блокировке или списании средств с карты.

Сценарий:

  1. Если карта пользователя задействована в механизме аутентификации 3D‑Secure, значение параметра auth_type в ответе на запрос PayMerchant, Block или PaySaveCard становится равным ThreeDS (1). В этом случае в ответе также присутствуют строковые параметры acs_url, pareq и md.

  2. После получения ответа от шлюза мерчант перенаправляет пользователя на сайт банка-эмитента для дополнительной аутентификации. Формат перенаправления: POST‑запрос по адресу, указанному в значении параметра acs_url. Параметры: PaReq, TermUrl, MD. Формат ответа в результате перенаправления: Возврат пользователя POST‑запросом по адресу, указанному в значении атрибута TermUrl. Параметры: PaRes, MD.

  3. После получения результатов аутентификации от банка-эмитента для завершения блокировки или платежа мерчант выполняет дополнительный запрос к шлюзу Payler.

Формат запроса: https://{host}.payler.com/mapi/v1/Send3DS

Доступно для: mapi

Метод отправки запроса: POST

Использование данного метода предполагает обязательное соответствие системы мерчанта требованиям PCI DSS.

Параметры запроса:

Название

Тип

R/O

Описание

PaRes

A

R

Значение, полученное страницей TermUrl от банка-эмитента

MD

A

R

Значение, полученное при ответе на запрос PayMerchant, Block или PaySaveCard

Параметры ответа:

Название

Тип

R/O

Описание

auth_type

N1

R

Значение, указывающее, требуется ли дополнительная авторизации для осуществления платежа.

0 — дополнительная авторизация не требуется;

1 — авторизация с использованием 3D‑Secure

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.). Соответствует переданной в запросе

recurrent_template_id

A..100

О

Идентификатор шаблона рекуррентных платежей.

Присутствует, если в рамках текущей транзакции был создан шаблон рекуррентных платежей

card_number

A..19

R

Маскированный номер банковской карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей. Десятичные цифры без разделителей [0–9] и маскировочный символ ‘x’

card_holder

A..100

R

Имя держателя карты

expired_year

N2

R

Год истечения срока действия карты

expired_month

N2

R

Месяц истечения срока действия карты

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

status

A

O

Статус операции

Пример ответа на успешный запрос:

{
        "auth_type": 0,
        "amount": 500,
        "recurrent_template_id": "rec-pay-42301e79-b92d-4753-b248-b92ad552fdfd",
        "card_number": "555555xxxxxx5599",
        "card_holder": "IVAN",
        "expired_year": 19,
        "expired_month": 12,
        "order_id": "test_example_003",
        "status": "Charged"
}

Charge

Запрос выполняется для списания предварительно заблокированной суммы с карты пользователя.

Запрос выполняется после успешной команды PayGate или Block при двухстадийной схеме проведения платежа. Статус платежа должен быть «Authorized». Также, для схемы Gate, в запросе StartSession, параметр type должен иметь значение «TwoStep».

URL запроса: https://{host}.payler.com/{api}/Charge

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

password

A..100

R

Пароль мерчанта для проведения операций. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор заказа в системе мерчанта. Должен соответствовать order_id операции StartSession или Block

amount

N

R

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

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Списанная сумма в минимальной денежной единице (копейки, центы и т. д.)

status

A

R

Статус операции

Пример ответа на успешный запрос:

{
         "amount": 3457500,
         "order_id": "sk-d97b9c351818d820fdd3d5d33e6c1edf",
         "status": "Charged"
}

Retrieve

Запрос выполняется после успешной команды PayGate или Block при двухстадийной схеме проведения платежа. Статус платежа должен быть «Authorized».

Результатом обработки запроса является разблокировка (частичная или полная) денежных средств на карте пользователя.

URL запроса: https://{host}.payler.com/{api}/Retrieve

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

password

A..100

R

Пароль мерчанта для проведения операций. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор заказа в системе мерчанта. Должен соответствовать order_id операции StartSession или Block

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.), которую следует вернуть. Не должна превышать значение, указанное в запросе StartSession или PayMerchant

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

new_amount

N

R

Новая величина суммы платежа в копейках

Пример ответа на успешный запрос:

{
         "new_amount": 10000,
         "order_id": "4c1552c5-11bb-465f-8564-62ac933ae15d"
}

Refund

Запрос выполняется после успешной команды PayGate или PayMerchant при одностадийной схеме, либо после успешной команды Charge при двухстадийной схеме. Статус платежа должен быть «Charged». Результатом обработки запроса является возврат (полный или частичный) списанных денежных средств на карту пользователя.

Формат запроса: https://{host}.payler.com/{api}/Refund

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

password

A..100

R

Пароль мерчанта для проведения операций. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор заказа в системе мерчанта. Должен соответствовать order_id операции StartSession, PayMerchant или Block

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.), которую следует вернуть

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Остаток списанной суммы в минимальной денежной единице (копейки, центы и т. д.)

Пример ответа на успешный запрос:

{
         "amount": 0,
         "order_id": "4c1552c5-11bb-465f-8564-62ac933ae15d"
}

RepeatPay

Запрос осуществления повторного платежа в рамках серии рекуррентных платежей. Результатом обработки запроса является списание денежных средств без указания пользователем карточных данных.

Формат запроса: https://{host}.payler.com/{api}/v1/RepeatPay

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Для каждого платежа (сессии) требуется использовать уникальный идентификатор. Только печатные ASCII‑символы

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.). Может отличаться от суммы платежа, осуществленного в рамках транзакции, на основе которой был создан шаблон рекуррентных платежей

product

A..256

O

Описание заказа, платежа.

recurrent_template_id

A..100

R

Идентификатор шаблона рекуррентных платежей, полученный в callback

currency

A3

О

Валюта платежа (RUB, USD, EUR, GBP, PLN, TJS, KGS).

По умолчанию — RUB

userdata

A..1000

О

Пользовательские данные. Можно передать в этой строке любую информацию, которую нужно сохранить вместе с платежом, а потом получить её с помощью метода GetAdvancedStatus

Параметр currency

Если мерчант использует при расчетах более одной валюты, параметр currency является обязательным! Например, если шаблон рекуррентного платежа был создан по платежу, осуществленному в USD, то при повторном списании необходимо указывать USD. В противном случае платеж пройдет по рублевому терминалу, с конвертацией валюты и начислением дополнительной комиссии.

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплаченного заказа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Сумма в минимальной денежной единице (копейки, центы и т. д.)

status

A

R

Статус операции

Пример ответа на успешный запрос:

{
         "amount": 50000,
         "order_id": "3e31f52f-84bd-4a98-b798-8aafd325a229",
         "status": "Charged"
}

Карты Maestro

Правила МПС запрещают проводить рекуррентные платежи по картам Maestro. Мы можем настроить аккаунт в Payler так, чтобы при попытке оплаты платежной сессии с созданием рекуррентного платежа (в запросе StartSession в качестве значения параметра recurrent было указано true) платеж отклонялся, а пользователь получил сообщение, что данный тип карт не поддерживается.

GetTemplate

Запрос получения информации о шаблоне рекуррентных платежей. Рекомендуется использовать для получения полной информации о зарегистрированном шаблоне рекуррентных платежей.

Формат запроса: https://{host}.payler.com/{api}/GetTemplate

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

recurrent_template_id

A..100

R

Идентификатор шаблона рекуррентных платежей, полученный в callback

Параметры ответа:

Название

Тип

R/O

Описание

recurrent_template_id

A..100

R

Идентификатор шаблона рекуррентных платежей

created

A

R

Дата и время регистрации шаблона рекуррентных платежей в формате «yyyy-MM-dd HH:mm:ss»

card_holder

A..100

R

Имя держателя карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей

card_number

A..19

R

Маскированный номер банковской карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей.

Десятичные цифры без разделителей [0–9] и маскировочный символ ‘x’

expiry

A..5

R

Срок действия шаблона рекуррентных платежей.

Месяц и год в формате «MM/yy»

active

B

R

Показывает, активен ли шаблон.

1 — шаблон активен;

0 — шаблон неактивен

Пример ответа на успешный запрос:

{
         "recurrent_template_id": "rec-pay-2160e16c-849d-42c5-a224-19f302ce4806",
         "created": "2014-08-21 18:22:03",
         "card_holder": "TEST USER",
         "card_number": "510047xxxxxx0401",
         "expiry": "03/15",
         "active": true
}

ActivateTemplate

Запрос активации/деактивации шаблона рекуррентных платежей. Используется для временного отключения возможности совершать платежи по шаблону.

Формат запроса: https://{host}.payler.com/{api}/ActivateTemplate

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

recurrent_template_id

A..100

R

Идентификатор шаблона рекуррентных платежей

active

B

R

Показывает, требуется ли активировать или деактивировать шаблон рекуррентных платежей.

1 — шаблон требуется активировать;

0 — шаблон требуется деактивировать

Параметры ответа:

Название

Тип

R/O

Описание

recurrent_template_id

A..100

R

Идентификатор шаблона рекуррентных платежей.

Соответствует переданному в запросе

created

A

R

Дата и время регистрации шаблона рекуррентных платежей в формате «yyyy-MM-dd HH:mm:ss»

card_holder

A..100

R

Имя держателя карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей

card_number

A..19

R

Маскированный номер банковской карты, к которой привязан шаблон. Указывается при совершении первого платежа в серии рекуррентных платежей. Десятичные цифры без разделителей [0–9] и маскировочный символ ‘x’

expiry

A..5

R

Срок действия шаблона рекуррентных платежей в формате «MM/yy»

active

B

R

Показывает, активен ли шаблон.

1 — шаблон активен; 0 — шаблон неактивен

Пример ответа на успешный запрос:

{
         "recurrent_template_id": "rec-pay-2160e16c-849d-42c5-a224-19f302ce4806",
         "created": "2014-08-21 18:22:03",
         "card_holder": "TEST USER",
         "card_number": "510047xxxxxx0401",
         "expiry": "03/15",
         "active": true
}

GetStatus

Результатом выполнения запроса является получение актуального статуса операции. Рекомендуется использовать в случае неполучения ответа от шлюза Payler при проведении других запросов по платежу.

Формат запроса: https://{host}.payler.com/{api}/GetStatus

Доступно для: gapi, mapi, cgapi, cmapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор операции в системе мерчанта

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор платежа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

status

A

R

Состояние платежа. См. Статусы операций

recurrent_template_id

A..100

O

Идентификатор шаблона рекуррентных платежей. Присутствует, если в рамках текущей транзакции был создан шаблон рекуррентных платежей или она была осуществлена по шаблону

payment_type

A

O

Способ оплаты. См. Способы оплаты

Пример ответа на успешный запрос:

{
         "status": "Charged",
         "amount": 30000,
         "recurrent_template_id": "rec-pay-02e20707-eed4-4cb4-9a45-03b5465f8e92",
         "order_id": "a0c799a6-a3df-47cc-b452-63b19d95bb59",
         "payment_type": "Card"
}

Если статус операции имеет значение «Pending», то запрос статуса следует повторять до изменения статуса. Частоту запроса изменять в геометрической прогрессии.

GetAdvancedStatus

Результатом выполнения запроса является получение расширенного статуса операции. Используется для получения детальной информации в том случае, если ответа на запрос GetStatus недостаточно для решения бизнес‑задач.

Формат запроса: https://{host}.payler.com/{api}/GetAdvancedStatus

Доступно для: gapi, mapi, cgapi, cmapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

A..100

R

Идентификатор операции в системе мерчанта

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор платежа в системе мерчанта. Соответствует переданному в запросе

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

status

A

R

Состояние платежа. См. Статусы операций

product

A..256

O

Описание операции

recurrent_template_id

A..100

O

Идентификатор шаблона рекуррентных платежей.

Присутствует, если в рамках текущей транзакции был создан шаблон рекуррентных платежей или она была осуществлена по шаблону

card_number

A..19

R

Маскированный номер карты, с которой сделан платеж

card_holder

A..100

R

Имя держателя карты, с которой осуществлен платеж

dt

A

R

Время регистрации транзакции в системе Payler в формате «yyyy-MM-dd HH:mm:ss»

from

A

O

IP‑адрес, с которого выполнен запрос платежа

approval_code

A..6

O

Буквенно-цифровой код, присвоенный банком‑эмитентом для удостоверения подтверждения запроса авторизации

rrn

A..6

O

Номер, присвоенный транзакции в платежной системе

userdata

A..1000

O

Значение параметра userdata, переданного в методе StartSession, PayMerchant или Block

type

A..7

O

Определяет количество стадий платежа.

OneStep — одностадийный платеж;

TwoStep — двухстадийный платеж

processing

A

O

Название процессинга, обрабатывающего платёж

processing_order_id

A

O

Идентификатор платежа в процессинговом центре

card_bankname

A

R

Название банка. Может быть пустым значением

card_paymentsystem

A

R

Платежная система. Может быть пустым значением

card_product

A

R

Тип карты. Может быть пустым значением

card_id

A..100

O

Идентификатор карты, с помощью которой была произведена оплата. Отсутствует, если оплата производилась не по сохранённой карте

card_status

A..10

O

Статус карты:

Saved — карта сохранена и готова к использованию;

Invalid — карта недействительна (например, истёк срок её действия)

user_entered_params

D

R

При оплате можно указать дополнительные поля для ввода, начинающиеся с user_entered_. Максимальная длина каждого параметра — 100 символов. Затем все эти поля возвращаются в GetAdvancedStatus в поле user_entered_params

Пример ответа на успешный запрос (платёж):

{
   "card_number": "554781xxxxxx4672",
   "card_holder": "NO NAME",
   "expired_year": 22,
   "expired_month": 3,
   "dt": "2019-06-26 12:59:05",
   "from": "127.0.0.1",
   "approval_code": "598101",
   "rrn": "917791485893",
   "processing": "PSB",
   "currency": "RUB",
   "user_entered_params":
   {
       "user_entered_documentSeria": "1500",
       "user_entered_documentNumbers": "aB"
   },
   "type": "OneStep",
   "card_bankname": "PUBLIC JOINT STOCK COMPANY PROMSVYAZBANK",
   "card_paymentsystem": "MASTERCARD",
   "card_product": "GOLD",
   "card_country_code": "RU",
   "processing_order_id": "1561543145757000",
   "status": "Charged",
   "amount": 500,
   "recurrent_template_id": "rec-pay-da24a6e3-8b9e-4bf2-8fa5-45e5365f5222",
   "payment_type": "Card",
   "order_id": "Dr24ake3-875e-4bf2-8fa5-45e5365f6773"
}

GetAdvancedStatusBulk

Результатом выполнения запроса является получение расширенного статуса по нескольким операциям. Используется для проведения сверок и массовых повторных запросов.

Формат запроса: https://{host}.payler.com/{api}/GetAdvancedStatusBulk

Доступно для: gapi, mapi, cgapi, cmapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A..100

R

Идентификатор мерчанта. Выдается с параметрами доступа

order_id

Ar

R

Массив со списком идентификаторов в системе мерчанта.

Ограничение: не более 100 идентификаторов в одном запросе

Параметры ответа:

В ответе отправляется массив “orders”, содержащий модель, аналогичную ответу на вызов GetAdvancedStatus.

Параметр ответа на успешный запрос:

{
    "orders": [
        {
            "card_number": "557805xxxxxx3717",
            "card_holder": "NONAME",
            "expired_year": 22,
            "expired_month": 12,
            "dt": "2022-11-16 22:41:39",
            "processing": "SNGB2",
            "currency": "RUB",
            "user_entered_params": {},
            "type": "TwoStep",
            "card_bankname": "JOINT STOCK COMPANY SURGUTNEFTEGASBANK",
            "card_paymentsystem": "MASTERCARD",
            "card_product": "GOLD",
            "card_country_code": "US",
            "processing_order_id": "a32da2ec-bce9-4518-a9d7-ed6a34742ee1",
            "card_id": "vmGRYqk7cPiJj2COqnxPcUSNqJiy5ybq09bd",
            "card_status": "Saved",
            "status": "Charged",
            "amount": 100,
            "recurrent_template_id": "rec-pay-3e996e77-77e4-4cfb-ae68-531f36cb25c8",
            "payment_type": "Card",
            "order_id": "5211e525-fdbc-444e-b5dc-ba685f258b7b",
            "from": "192.168.0.104",
            "userdata": ""
        },
        {
            "card_number": "557805xxxxxx3717",
            "card_holder": "NONAME",
            "expired_year": 22,
            "expired_month": 12,
            "dt": "2022-11-18 09:39:49",
            "processing": "SNGB2",
            "currency": "RUB",
            "user_entered_params": {},
            "type": "TwoStep",
            "card_bankname": "JOINT STOCK COMPANY SURGUTNEFTEGASBANK",
            "card_paymentsystem": "MASTERCARD",
            "card_product": "GOLD",
            "card_country_code": "US",
            "processing_order_id": "0c15078e-70a2-4809-9cfe-a24d60200686",
            "status": "Rejected",
            "amount": 100,
            "payment_type": "Card",
            "order_id": "862a643b-1edf-4b7e-b8b9-2ac429a3e2e2",
            "from": "192.168.0.104",
            "userdata": "",
            "error_code": "THREE_DS_FAIL",
            "error_message": "Payment Confirmation on the side of the bank issuing the card canceled or it's impossible to perform due to an error."
        },
        {
            "card_number": "220058xxxxxx0913",
            "card_holder": "NONAME",
            "expired_year": 22,
            "expired_month": 9,
            "dt": "2022-11-18 14:14:22",
            "rrn": "130930416142",
            "processing": "SNGB2",
            "currency": "RUB",
            "user_entered_params": {},
            "type": "OneStep",
            "card_bankname": "",
            "card_paymentsystem": "NSPK MIR",
            "card_product": "",
            "card_country_code": "RU",
            "processing_order_id": "93e522a8-a8db-4ca8-ae54-b29be699bc9a",
            "card_id": "mSkjBEsCRDM97LJyx1a0z6HumKuA59k4dG5S",
            "card_status": "Deleted",
            "status": "Credited",
            "amount": 100,
            "payment_type": "Card",
            "order_id": "f120c06b-8390-4eef-8f30-17d0a2b8fe2c",
            "from": "51.250.11.77",
            "userdata": ""
        }
    ]
}

AppleValidateMerchant

Валидация мерчанта в Apple.

URL запроса: https://{host}.payler.com/{gapi}/applevalidatemerchant

Content-Type: application/json

Доступно для: gapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

key

A

R

Платежный ключ мерчанта

apple_pay_validation_url

A

R

Url валидации мерчанта, полученный обработчиком события onvalidatemerchant

apple_pay_type

N1

R

Тип оплаты. 3 — кнопка Apple Pay на сайте мерчанта

Параметры ответа:

Название

Тип

R/O

Описание

validation_object

A

R

Объект, полученный от Apple. Его необходимо передать в метод completeMerchantValidation.

Пример ответа на успешный запрос:

{
  "validation_object": "..."
}

ApplePay

Проведение платежа с помощью Apple Pay через мобильное приложение или на web‑сайте мерчанта с использованием зашифрованных платежных данных. Результатом обработки запроса является списание или блокировка денежных средств на карте пользователя.

URL запроса: https://{host}.payler.com/{api}/ApplePay

Content-Type: application/json

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

session_id

A..100

R

Идентификатор сессии, полученный с помощью вызова StartSession

apple_payment_data

A

R

Зашифрованные платежные данные из параметра paymentData объекта PKPaymentToken

email

A..100

R

Адрес электронной почты плательщика

apple_pay_type

N1

R

Тип оплаты. Возможные значения: 1 — оплата из приложения, 3 — кнопка Apple Pay на сайте мерчанта

payer_ip

A

O

IP-адрес пользователя

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе StartSession

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

Пример ответа на успешный запрос:

{
         "amount": 30000,
         "order_id": "d1434908-7260-483e-8254-fa43af1b835d",
}

ApplePayDecrypted

Проведение платежа с помощью Apple Pay через мобильное приложение или на web‑сайте мерчанта с использованием расшифрованных платежных данных. Результатом обработки запроса является списание или блокировка денежных средств на карте пользователя.

URL запроса: https://{host}.payler.com/{api}/ApplePay/Decrypted

Content-Type: application/json

Доступно для: mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

session_id

A..100

R

Идентификатор сессии, полученный с помощью вызова StartSession

apple_pay_payload

A

R

Расшифрованные платежные данные из параметра paymentData объекта PKPaymentToken

email

A..100

R

Адрес электронной почты плательщика

apple_pay_type

N1

R

Тип оплаты. Возможные значения: 1 — оплата из приложения, 3 — кнопка Apple Pay на сайте мерчанта

payer_ip

A

O

IP-адрес пользователя

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе StartSession

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

Пример ответа на успешный запрос:

{
         "amount": 30000,
         "order_id": "d1434908-7260-483e-8254-fa43af1b835d",
}

GooglePay

Проведение платежа с помощью Google Pay через мобильное приложение или на web‑сайте мерчанта с использованием зашифрованных платежных данных. Результатом обработки запроса является списание или блокировка денежных средств на карте пользователя.

Для использования метода GooglePay мерчанту требуется предварительно выполнить настройку Google Pay API. Информацию по настройке см. в разделе Платежи GooglePay.

URL запроса: https://{host}.payler.com/{api}/GooglePay

Content-Type: application/json

Доступно для: gapi, mapi

Метод отправки запроса: POST

Параметры запроса:

Название

Тип

R/O

Описание

session_id

A..100

R

Идентификатор сессии, полученный с помощью вызова StartSession

google_pay_token

A

R

Зашифрованные платежные данные "paymentMethodData", "tokenizationData", "token" из полученного от Google объекта PaymentData (можно получить в методе handlePaymentSuccess) вызовом paymentData, getPaymentMethodToken, getToken

email

A..100

O

Адрес электронной почты плательщика

payer_ip

A

O

IP-адрес пользователя

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе StartSession

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

Пример ответа на успешный запрос:

{
         "amount": 30000,
         "order_id": "d1434908-7260-483e-8254-fa43af1b835d",
}

GooglePayDecrypted

Проведение платежа с помощью Google Pay через мобильное приложение или на web‑сайте мерчанта с использованием расшифрованных платежных данных. Результатом обработки запроса является списание или блокировка денежных средств на карте пользователя.

Для использования метода GooglePay мерчанту требуется предварительно выполнить настройку Google Pay API. Информацию по настройке см. в разделе Платежи GooglePay.

URL запроса: https://{host}.payler.com/mapi/GooglePay/Decrypted

Content-Type: application/json

Доступно для: mapi

Метод отправки запроса: POST

Использование данного метода предполагает обязательное соответствие системы мерчанта требованиям PCI DSS.

Параметры запроса:

Название

Тип

R/O

Описание

session_id

A..100

R

Идентификатор сессии, полученный с помощью вызова StartSession

google_pay_payload

A

R

Расшифрованные платежные данные "encryptedMessage" из полученного от Google объекта PaymentData (можно получить в методе handlePaymentSuccess) вызовом paymentData, getPaymentMethodToken, getToken.

Поддерживается только "CRYPTOGRAM_3DS", как метод аутентификации (свойство "authMethod")

email

A..100

O

Адрес электронной почты плательщика

payer_ip

A

O

IP-адрес пользователя

Параметры ответа:

Название

Тип

R/O

Описание

order_id

A..100

R

Идентификатор оплачиваемого заказа в системе мерчанта. Соответствует переданному в запросе StartSession

amount

N

R

Сумма платежа в минимальной денежной единице (копейки, центы и т. д.)

Пример ответа на успешный запрос:

{
         "amount": 30000,
         "order_id": "d1434908-7260-483e-8254-fa43af1b835d",
}

Last updated