Сохранение данных карт
Отправка запросов осуществляется с заголовком «Content‑Type: application/x‑www‑form‑urlencoded».
Порядок следования параметров в запросах не важен.
Регистр символов в url‑адресах и параметрах запросов — важен.
Ответ на запрос передается в формате JSON, кодировка UTF‑8.
Ответы API сервиса могут содержать незадокументированные поля. При обработке ответов такие поля должны игнорироваться клиентским кодом.
StartSaveCardSession
Запрос инициализации сессии сохранения карты. Выполняется перед перенаправлением пользователя на страницу платежного шлюза Payler.
Формат запроса: https://{host}.payler.com/{api}/StartSaveCardSession
Доступность: gapi, cgapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
template
A..100
O
Используемый шаблон страницы оплаты, заданный мерчантом. При отсутствии используется шаблон «по умолчанию»
lang
A2
O
Предпочитаемый язык платёжной формы.
en — английский; ru — русский. По умолчанию — ru
pay_page_param_*
A..100
O
Параметры для отображения на странице оплаты. Можно передать любые параметры, начинающиеся с pay_page_param_, а потом отобразить их на странице оплаты. Для этого необходимо использовать шаблон страницы (см. параметр template)
return_url_success
A..1000
O
URL, на который будет перенаправлен пользователь в случае успешного сохранения карты
lifetime
N
O
Время жизни сессии в минутах, от 1 минуты и более
Параметры ответа:
Название
Тип
R/O
Описание
session_id
A..100
R
Идентификатор сессии
order_id
A..100
R
Идентификатор заказа в системе мерчанта. Генерируется автоматически
Пример ответа на успешный запрос:
{
"session_id": "dOadCwvzuHxJVKNX4peVZpzTRulVG4OJwomj",
"order_id": "kqonTcrezjZHhNxs619HYoVE737N7JNXYadb"
}Save
Перенаправление пользователя с сайта мерчанта на страницу формы оплаты на стороне шлюза. Выполняется после команды StartSaveCardSession. После заполнения пользователем полей формы, шлюз автоматически выполняет запрос к эмитенту.
Результатом является сохранение данных карты пользователя
Формат запроса: https://{host}.payler.com/{api}/Save
Доступно для: gapi, cgapi
Метод отправки запроса: GET
Параметры запроса:
Название
Тип
R/O
Описание
После обработки запроса Save на стороне платежного шлюза пользователь будет перенаправлен на страницу с отображением результата сохранения карты, а через 3 секунды будет возвращен на сайт мерчанта.
Адрес возврата пользователя (URL страницы) — указывается мерчантом заранее в виде URL. Пример адреса возврата: http://mysite.ru/complete?session_id={session_id}
Для получения результатов операции следует использовать данные, полученные в рамках запроса статуса операции (см. метод GetStatusSaveCard).
Нужно учесть, что возврат на указанный URL может быть сделан несколько раз, например, когда пользователь запутался, нажимал кнопку «Back» в браузере. Если пользователь ошибочно попытается повторно сохранить карту в рамках одной сессии, то ему будет показано сообщение о том, что карта уже сохранена и сделано перенаправление на сайт мерчанта.
PaySaveCard
Сохранение данных карты путем списания или блокировки (в зависимости от настроек мерчанта) контрольной суммы на счете карты с последующей автоматической разблокировкой или возвратом списанной суммы.
Результатом является сохранение данных карты пользователя.
URL запроса: https://{host}.payler.com/mapi/v1/PaySaveCard
Доступно для: mapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
order_id
A..100
R
Идентификатор оплачиваемого заказа в системе мерчанта. Для каждого платежа нужен свой уникальный идентификатор. Только печатные ASCII‑символы
card_number
A..19
R
Номер карты. Десятичные цифры без разделителей [0–9]
card_holder
A..100
O
Имя владельца карты. Латинские символы, десятичные цифры или символ пробела [a-zA-Z0‑9]
expired_year
N2
R
Год окончания срока действия карты
expired_month
N2
R
Месяц окончания срока действия карты
secure_code
A
R
Код подлинности карты (CVC2/CVV2). Десятичные цифры [0–9]
lang
A2
О
Предпочитаемый язык ответов сервера.
en — английский; ru — русский. По умолчанию — ru
A..100
R
Адрес электронной почты пользователя
userdata
A..1000
О
Пользовательские данные. Можно передать в этой строке любую информацию, которую нужно сохранить вместе с платежом, а потом получить её с помощью метода GetAdvancedStatus
customer_id
A..100
О
Идентификатор пользователя. Показывает для какого пользователя будет сохранена карта
antifraud_*
A..100
О
Дополнительные параметры для системы антифрод. Можно передать любые параметры, начинающиеся с antifraud_
user_entered_*
A..100
О
Можно указать дополнительные поля для оплаты, начинающиеся с user_entered_. Затем все эти поля возвращаются в GetAdvancedStatus в поле user_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
Параметры ответа:
Формат ответа совпадает форматом ответа PayMerchant
GetStatusSaveCard
Запрос статуса сохранённой карты.
Формат запроса: https://{host}.payler.com/{api}/GetStatusSaveCard
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
session_id
A..100
O
Идентификатор сессии, по которой требуется получить информацию. Если не указан, должен быть указан параметр card_id
card_id
A..100
O
Идентификатор карты, по которой требуется получить информацию. Если не указан, должен быть указан параметр session_id
Параметры ответа:
Название
Тип
R/O
Описание
card_id
A..100
R
Идентификатор карты
card_status
A
R
Статус карты.
Saved — карта сохранена и готова к использованию.
Invalid — карта недействительна (например, истёк срок её действия)
card_number
A..19
R
Маскированный номер карты. Оставлены первые 6 и последние 4 цифры, остальные заменены на ‘x’
card_holder
A..100
R
Имя владельца карты
expired_year
N2
R
Год истечения срока действия карты
expired_month
N2
R
Месяц истечения срока действия карты
recurrent_template_id
A..100
O
Идентификатор шаблона рекуррентных платежей
customer_id
A..100
R
Идентификатор пользователя
Пример ответа на успешный запрос:
{
"card_status": "Saved",
"card_id": "ZRzroTofO42UkBv5vsMmckgU3Dowz7J4UhMZ",
"card_number": "400000xxxxxx0093",
"card_holder": "NONAME",
"expired_year": 25,
"expired_month": 12,
"customer_id": "BCaFGEp8gQhT1XXFs1HEf5LRFstC4efydqxv"
}GetCardList
Запрос на получение списка сохраненных карт.
Формат запроса: https://{host}.payler.com/{api}/GetCardList
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
customer_id
A..100
R
Идентификатор пользователя. Будут возвращены карты, принадлежащие этому пользователю
Параметры ответа:
Название
Тип
R/O
Описание
cards
Ar
R
Список карт
cards/card_id
A..100
R
Идентификатор карты
cards/customer_id
A..100
R
Идентификатор пользователя
cards/card_status
A
R
Статус карты.
Saved — карта сохранена и готова к использованию.
Invalid — карта недействительна (например, истёк срок её действия)
cards/card_number
A..19
R
Маскированный номер карты. Оставлены первые 6 и последние 4 цифры, остальные заменены на ‘x’
cards/card_holder
A..100
R
Имя владельца карты
cards/expired_year
N2
R
Год истечения срока действия карты
cards/expired_month
N2
R
Месяц истечения срока действия карты
cards/recurrent_template_id
A..100
O
Идентификатор шаблона рекуррентных платежей. Присутствует если по карте создан шаблон рекуррентных платежей
Пример ответа на успешный запрос:
{
"cards": [
{
"card_status": "Saved",
"card_id": "Zk8ou8tcfiitc31DwJPOIIOwC8oFZOlIDknL",
"customer_id": "jsdlf8sDD9LhO19sVYotkJ2gHSPs5E4Qph14"
"card_number": "452427xxxxxx1232",
"card_holder": "IVAN PETROV",
"expired_year": 17,
"expired_month": 7
},
{
"card_status": "Saved",
"card_id": "OvzLAlY3twt5GYnm2ddGiixha1tNSHJcXk2k",
"customer_id": "sdkKhnf23ds987K8bsdj79ldn23fsldmMJ",
"card_number: "415432xxxxxx8564",
"card_holder": "PETR IVANOV",
"expired_year": 16,
"expired_month": 9
}
]
}RemoveCard
Запрос удаления сохранённой карты.
URL запроса: https://{host}.payler.com/{api}/RemoveCard
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
card_id
A..100
R
Идентификатор карты по которой требуется получить информацию
Параметры ответа:
Название
Тип
R/O
Описание
changed
B
R
Показывает, привёл ли запрос к изменениям в системе.
1 — карта была удалена в результате этого запроса.
0 — карта была удалена ранее
Пример ответа на успешный запрос:
{
"changed": true
}CustomerRegister
Запрос регистрации нового пользователя.
Формат запроса: https://{host}.payler.com/{api}/CustomerRegister
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
customer_name
A..100
O
Имя пользователя
customer_phone
A..100
O
Номер телефона пользователя
customer_email
A..100
O
Адрес электронной почты пользователя
customer_fullName
A..100
O
Ф. И. О. пользователя
customer_address
A..100
O
Адрес пользователя
customer_documentType
A..60
O
Тип документа пользователя
customer_documentSeria
A..60
O
Серия документа пользователя
customer_documentNumber
A..60
O
Номер документа пользователя
Параметры ответа:
Название
Тип
R/O
Описание
customer_id
A..100
R
Идентификатор пользователя
Пример ответа на успешный запрос:
{
"customer_id": "Wkl7nBsMhwQICc2I9wXncMeSwnIaucQ5BHyo"
}CustomerUpdate
Запрос обновления данных о пользователе.
Формат запроса: https://{host}.payler.com/{api}/CustomerUpdate
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
customer_id
A..100
R
Идентификатор пользователя
customer_name
A..100
O
Имя пользователя
customer_phone
A..100
O
Номер телефона пользователя
customer_email
A..100
O
Адрес электронной почты пользователя
customer_fullName
A..100
O
Ф. И. О. пользователя
customer_address
A..100
O
Адрес пользователя
customer_documentType
A..60
O
Тип документа пользователя
customer_documentSeria
A..60
O
Серия документа пользователя
customer_documentNumber
A..60
O
Номер документа пользователя
Параметры ответа:
Название
Тип
R/O
Описание
customer_id
A..100
R
Идентификатор пользователя
Пример ответа на успешный запрос:
{
"changed": true
}CustomerDelete
Запрос удаления пользователя.
Формат запроса: https://{host}.payler.com/{api}/CustomerDelete
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
customer_id
A..100
R
Идентификатор пользователя
Параметры ответа:
Название
Тип
R/O
Описание
changed
B
R
Показывает, привёл ли запрос к изменениям в системе.
1 — плательщик был удалён в результате этого запроса,
0 — плательщик был удалён ранее
Пример ответа на успешный запрос:
{
"changed": true
}CustomerGetStatus
Проверка регистрации пользователя в системе.
Формат запроса: https://{host}.payler.com/{api}/CustomerGetStatus
Доступно для: gapi, mapi, cgapi, cmapi
Метод отправки запроса: POST
Параметры запроса:
Название
Тип
R/O
Описание
key
A..100
R
Идентификатор мерчанта. Выдается с параметрами доступа
customer_id
A..100
R
Идентификатор пользователя
Параметры ответа:
Название
Тип
R/O
Описание
status
A..10
R
Показывает, активен ли пользователь.
Active — пользователь зарегистрирован в системе. Если пользователь не зарегистрирован, то в ответ на запрос вернется ошибка
Пример ответа на успешный запрос:
{
"status": "Active"
}Last updated