Skip to main content

API


Общая информация

PSP предоставляет ТСП REST API для проведения финансовых операций.

В запросе ожидаются переданные методом GET или POST (предпочтительно) параметры в формате

application/x-www-form-urlencoded (обычная web-форма). Ответ отправляется в формате application/json.

Структура запроса/ответа унифицирована с целью упростить сборку/парсинг для ТСП.

Каждый запрос на операцию должен пройти аутентификацию посредством передачи подписи sign.

После формирования конечного результата по операции на стороне PSP, будет направлено уведомление (нотификация / callback).

ТСП – торгово-сервисное предприятие. Процессор – банк эквайер. PSP – Pay2me.

Алгоритм взаимодействия плательщика, ТСП и PSP при выполнении платежа

Этапы:

  1. ТСП инициирует финансовую операцию оплаты (например, method=c2b, fin_instrument=acquiring). 
  1. Плательщик на платежной странице ТСП или PSP вводит реквизиты платежного инструмента (например, банковской карты). 
  1. PSP получает от процессора информацию о необходимости дополнительной аутентификации плательщика (3DS). 
  1. Если дополнительная аутентификация не требуется, PSP возвращает онлайн-ответ, содержащий результат операции, ТСП. При необходимости ТСП отправляется callback, содержащий аналогичную информацию. В случае использования плательщиком платежной страницы PSP, ему отображается страница с результатом операции. На этом взаимодействие завершается. 
  1. Если дополнительная аутентификация требуется, PSP возвращает ТСП онлайн-ответ, содержащий URL, на который необходимо отправить браузер плательщика для прохождения аутентификации. В случае использования плательщиком платежной страницы PSP, происходит автоматический редирект его браузера на данный 
  1. Плательщик проходит дополнительную аутентификацию (ответственность за данный процесс лежит на эквайере и эмитенте).
  1. После завершения процесса аутентификации, браузер плательщика отправляется на URL PSP. В случае использования плательщиком платежной страницы PSP, ему отображается страница с результатом операции. В противном случае, PSP осуществляет редирект браузера плательщика на URL, указанный в параметре return_url или настроенный статически на стороне PSP. В случае необходимости, PSP отправляет ТСП уведомление (callback), содержащее результат операции. На этом взаимодействие завершается.

Callback - уведомление о результате операции

Если в наборе входных параметров операции присутствует параметр callback_url, система PSP отправит уведомление с результатом операции либо на callback_url, либо на URL, прописанный в настройках ТСП в системе PSP.

Данные в рамках уведомления передаются методом POST. Структура полностью аналогична структуре онлайн-ответа.

PSP осуществляет 3 попытки отправки уведомления, в случае неуспешной доставки с первой. Для получения признака успешной доставки ожидается 200 код HTTP. Тайм-аут на ответ = 20 секунд. Такой же интервал между отправками.

Прежде чем интерпретировать результат уведомления, ТСП обязано проверить подпись. В случае несовпадения подписей, вычисленной ТСП и полученной в уведомлении, ТСП игнорирует данные уведомления.

При наличии у ТСП технической возможности, рекомендуется принимать уведомления только с IP-адресов, указанных PSP.

Аутентификация запроса, подпись

Каждый запрос в API PSP должен быть подписан секретным ключом по алгоритму HMAC-SHA256.

В части ответов API PSP, обязательность подписи распространяется только на callback-уведомление. Подпись онлайн-ответов может быть включена по желанию ТСП.

Секретный ключ выдается при регистрации ТСП в системе PSP вместе с id_client.

Значение hmac-sha256 вычисляется от строки, сформированной на основании параметров запроса/ответа, следующим образом (в строку входят все фактические параметры запроса/ответа, кроме sign, в котором передается подпись, и параметров, в описании которых явно указано, что они не учитываются при вычислении подписи).

Структура мак-строки для генерации подписи:

name1=value1,name2=value2, ...,nameN=valueN

В качестве разделителя выступает запятая, а не амперсанд.

Пример строки для вычисления подписи запроса/ответа:

method=c2b,fin_instrument=acquiring,id_client=test,id_request=e5d50146-04d1- 4071, currency=643, amount=970.0, pan_src=5547810000004672,exp_month_src=03, exp_year_src=2023,cvc_src=123,return_url_success=https:/mysite.com/success,retur n_url_fail=https://mysite.com/fail,callback_url=https://mysite.com/callback

В конце строки запятой нет. Порядок следования пар «имя=значение» соответствует фактическому порядку следования в запросе/ответе.

Если в запросе/ответе имеет место параметр типа «массив», например, «”processor_code”: [25,52]», то в строку для вычисления подписи он войдет следующим образом:

... ,processor_code=25,processor_code=52, ...

Полученное значение hmac-sha256 передается в параметре sign.

Для расчета подписи на стадии интеграции, можно воспользоваться скриптом для POSTMAN:

const params = pm.request.body.urlencoded 
let p = []
params.each((element) => {
	if (typeof element.disabled == 'undefined' && element.key !== 'sign') { 
    	p.push(element.key+'='+element.value)
	}
})
const sig = CryptoJS.HmacSHA256(p.join(','), 'Ваш секретный ключ').toString() 
pm.request.body.urlencoded.append({key:'sign', value:sig})

Алгоритм определения результата операции

Ниже приведен алгоритм, который необходимо реализовать на стороне системы ТСП для определения результата операции.

Анализ response_code. Равенство 0 (нулю) означает, что обмен данными между системами PSP и процессора произошел корректно. Неравенство 0 (нулю) означает либо ошибку в процессе подготовки данных для отправки процессору (операция не выполнена), либо получение от процессора некорректного ответа / не получения ответа вовсе (фактический статус операции, при необходимости, может быть запрошен при помощи метода status API PSP).

Анализ state_fin_operation и/или state_fin_operation_parent согласно справочнику для определения статусов текущей и/или родительской операций.

Финансовый результат операции определяется только значением параметра state_fin_operation. Значения authorized и captured являются однозначными признаками успешности операции, declined и failed – неуспешности.

Если response_code не равен 0 (нулю) и state_fin_operation в ответе отсутствует, это означает, что финансовая операция даже не была инициирована (неуспешна).

Если response_code не равен 0 (нулю) и state_fin_operation=unknown, фактический статус операции должен быть запрошен при помощи метода status API PSP.

Справочник кодов ошибок PSP.

Финансовые операции

Определение результата финансовой операции

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

Тип финансовой операции определяется совокупностью значений двух параметров запроса: method и fin_instrument.

Например, method=c2b и fin_instrument=acquiring определяет тип финансовой операции «эквайринг», а method=c2b и fin_instrument=transfer – «перевод с банковской карты физического лица на счет юридического лица».

Типы финансовых операций PSP:

Эквайринг (ECOM RETAIL, СБП)

AFT (перевод счет - карта)

ОСТ (выплаты на карту, выплаты через POS-терминал, СБП)

C2C (P2P, перевод карта – карта)

CAPTURE (завершение предавторизации – используется при двустадийной схеме)

CANCEL (отмена)

REFUND (возврат)

Эквайринг - оплата (ecom retail)

Списание денежных средств с банковской карты физического лица в пользу юридического лица (ТСП).

Операция может проводиться по одностадийной или двустадийной схеме. Двустадийная схема подразумевает передачу method_mode = preauth. Метод preauth требует завершения операции методом capture.

Завершение операции рекомендуется проводить в тот же день или не позднее 3-х дней с момента предавторизации. В противном случае банк-эмитент может снять холд или, в зависимости от эквайера, все манипуляции с холдом могут быть ограничены по времени. Период снятия холда зависит от эмитента и варьируется от 3-х до 20-ти дней.

Если у ТСП отсутствует сертификация PCI DSS, можно воспользоваться методом create_order (создание заказа), для предоставления платежной страницы со стороны PSP. Данную ссылку можно передавать клиенту для оплаты. Смотрите раздел «Сервисные операции - Создание заказа»

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

Название параметра Обязательный Описание

method

да

Должен иметь значение c2b.

method_mode

нет

Значение preauth (предавторизация) означает необходимость вызова метода capture для отправки операции на клиринг.

fin_instrument

да

Должен иметь значение acquiring.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

да

Описание операции. Обязательно для прохождения 3ДС.

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

pan_src

да

PAN карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_month_src

нет

Месяц истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_year_src

нет

Год истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

cvc_src

нет

CVC/CVV/CVP карты плательщика.

card_token_src

нет

Токен карты плательщика. Заменяет параметры: pan_src, exp_month_src, exp_year_src.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

card_tokenization_mode_src

нет

При передаче значения "1", система будет выполнять токенизацию входных данных и создавать рекурренты на основе полученного токена.

tds_mode

нет

Определяет, следует ли использовать 3DS для транзакции. Если задано значение "force", то 3DS будет активирован, в противном случае - нет.

sign

да

Подпись запроса в API.

sub_merchant_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

sub_merchant_terminal_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

facilitator_merchant_name

нет

Название ТСП, зарегистрированное в НСПК.

merchant_inn

нет

ИНН ТСП.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test'
--data-urlencode 'method=c2b'
--data-urlencode 'fin_instrument=acquiring'
--data-urlencode 'id_request=10000111'
--data-urlencode 'id_order=10000111'
--data-urlencode 'amount=100'
--data-urlencode 'desc_public=Описание заказа.'
--data-urlencode 'pan_src=4268037339205792'
--data-urlencode 'exp_month_src=07'
--data-urlencode 'exp_year_src=2024'
--data-urlencode 'cvc_src=778'
--data-urlencode 'card_tokenization_mode_src=1'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "10000111",
"id_order": "10000111", 
"type_fin_operation": "c2b", 
"fin_instrument": "acquiring", 
"state_fin_operation": "captured", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 100,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "38E19CEF9BA530CE", 
"rrn": "430597021513",
"auth_code": "248648", 
"card_pan_masked_src": "426803xxxxxx5792", 
"card_payment_system_src": "visa", 
"card_issuer_country_src": "rus", 
"card_issuer_name_src": "promsvyazbank", 
"card_token_src": "740h9jpde9b2wuz3gij3", 
"card_token_last_4_src": "5792", 
"desc_public": "Описание заказа.", 
"response_code": 0,
"response_desc": "success", 
"processor_name": "ПромСвязьБанк", 
"processor_code": [
	0,
	0
],
"processor_desc": [ 
	"Approved"
],
"processor_tid": "79036800",
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 100,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"sign": " signature "
}

AFT - перевод на карту

Перевод денежных средств со счета банковской карты физического лица на счет юридического лица (ТСП).

Данный тип операции проводится исключительно по двустадийной схеме. Операция требует завершение методом capture.

Завершение операции рекомендуется проводить в тот же день или не позднее 3-х дней с момента предавторизации. В противном случае банк-эмитент может снять холд или, в зависимости от эквайера, все манипуляции с холдом могут быть ограничены по времени. Период снятия холда зависит от эмитента и варьируется от 3-х до 20-ти дней.

Операция проходит с обязательной процедурой 3ДС аутентификации.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение c2b.

fin_instrument

да

Должен иметь значение transfer.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

да

Описание операции. Обязательно для прохождения 3ДС.

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

pan_src

да

PAN карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_month_src

нет

Месяц истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_year_src

нет

Год истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

cvc_src

нет

CVC/CVV/CVP карты плательщика.

card_token_src

нет

Токен карты плательщика. Заменяет параметры: pan_src, exp_month_src, exp_year_src.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

card_tokenization_mode_src

нет

При передаче значения "1", система будет выполнять токенизацию входных данных и создавать рекурренты на основе полученного токена.

tds_mode

нет

Определяет, следует ли использовать 3DS для транзакции. Если задано значение "force", то 3DS будет активирован, в противном случае - нет.

sign

да

Подпись запроса в API.

sub_merchant_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

sub_merchant_terminal_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

facilitator_merchant_name

нет

Название ТСП, зарегистрированное в НСПК.

merchant_inn

нет

ИНН ТСП.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_aft'
--data-urlencode 'method=c2b'
--data-urlencode 'fin_instrument=transfer'
--data-urlencode 'id_request=1000011'
--data-urlencode 'id_order=1000011'
--data-urlencode 'amount=100'
--data-urlencode 'desc_public=Описание заказа.'
--data-urlencode 'pan_src=2201382000000047'
--data-urlencode 'exp_month_src=12'
--data-urlencode 'exp_year_src=2026'
--data-urlencode 'cvc_src=480'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_aft", 
"id_request": "1000011",
"id_order": "1000011", 
"type_fin_operation": "c2b", 
"fin_instrument": "transfer", 
"state_fin_operation": "captured", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 100,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "38E19CEF9BA530CE", 
"rrn": "430597021513",
"auth_code": "248648", 
"card_pan_masked_src": "426803xxxxxx5792", 
"card_payment_system_src": "visa", 
"card_issuer_country_src": "rus", 
"card_issuer_name_src": "promsvyazbank", 
"card_token_src": "740h9jpde9b2wuz3gij3", 
"card_token_last_4_src": "5792", 
"desc_public": "Описание заказа.", 
"response_code": 0,
"response_desc": "success", 
"processor_name": "ПромСвязьБанк", 
"processor_code": [
	0,
	0
],
"processor_desc": [ 
	"Approved"
],
"processor_tid": "33333340",
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 100,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"sign": " signature "
}

OCT - выплата на карту

Перевод денежных средств со счета юридического лица (ТСП) на счет банковской карты физического лица. Средства по этой операции не подлежат возврату.

Если у ТСП отсутствует сертификация PCI DSS, можно воспользоваться методом create_order (создание заказа), для ввода карточных данных на стороне PSP. Смотрите раздел «Сервисные операции - Создание заказа»

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

Название параметра Обязательный Описание

method

да

Должен иметь значение b2c.

fin_instrument

да

Должен иметь значение transfer.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

нет

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

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

pan_dst

да

PAN карты получателя. Является обязательным при отсутствии в запросе параметра card_token_dst и не передается при его наличии.

card_token_dst

нет

Токен карты получателя. Заменяет параметр pan_dst.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

card_tokenization_mode_dst

нет

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

sign

да

Подпись запроса в API.

first_name_dst

нет

Имя получателя.

last_name_dst

нет

Фамилия получателя.

bank_account_id_src

нет

Номер банковского счета отправителя.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_oct'
--data-urlencode 'method=b2c'
--data-urlencode 'fin_instrument=transfer'
--data-urlencode 'id_request=1000111'
--data-urlencode 'id_order=1000111'
--data-urlencode 'amount=10'
--data-urlencode 'pan_dst=4268037339205792'
--data-urlencode 'card_tokenization_mode_dst=1'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_oct", 
"id_request": "1000111",
"id_order": "1000111", 
"type_fin_operation": "b2c", 
"fin_instrument": "transfer", 
"state_fin_operation": "captured", 
"amount": 10,
"amount_authorized": 0,
"amount_captured": 10,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "9E115A57A6C7F147", 
"rrn": "430546009618",
"auth_code": "296791", 
"card_pan_masked_dst": "426803xxxxxx5792", 
"card_payment_system_dst": "visa", 
"card_issuer_country_dst": "rus", 
"card_issuer_name_dst": "promsvyazbank", 
"card_token_dst": "ix0ftf6uvmltf3izqm8b", 
"card_token_last_4_dst": "5792",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_code": [
	0,
	0
],
"processor_desc": [ 
	"Approved"
],
"processor_tid": "22222222",
"processor_amount": 10,
"processor_amount_authorized": 0,
"processor_amount_captured": 10,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"sign": " signature"
}

C2C - P2P перевод

Перевод денежных средств со счета банковской карты одного физического лица на счет банковской карты другого физического лица.

Средства по этой операции не подлежат возврату.

Операция проходит с обязательной процедурой 3ДС аутентификации.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение c2c.

fin_instrument

да

Должен иметь значение transfer.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

да

Описание операции. Обязательно для прохождения 3ДС.

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

pan_src

да

PAN карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_month_src

нет

Месяц истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

exp_year_src

нет

Год истечения срока действия карты плательщика. Является обязательным при отсутствии в запросе параметра card_token_src и не передается при его наличии.

cvc_src

нет

CVC/CVV/CVP карты плательщика.

pan_dst

да

PAN карты получателя. Является обязательным при отсутствии в запросе параметра card_token_dst и не передается при его наличии.

card_token_src

нет

Токен карты плательщика. Заменяет параметры: pan_src, exp_month_src, exp_year_src.

card_token_dst

нет

Токен карты получателя. Заменяет параметр pan_dst.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

card_tokenization_mode_dst

нет

При передаче значения "1", система будет выполнять токенизацию карты получателя.

card_tokenization_mode_src

нет

При передаче значения "1", система будет выполнять токенизацию карты отправителя.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_oct'
--data-urlencode 'method=b2c'
--data-urlencode 'fin_instrument=transfer'
--data-urlencode 'id_request=1000111'
--data-urlencode 'id_order=1000111'
--data-urlencode 'amount=10'
--data-urlencode 'pan_dst=4268037339205792'
--data-urlencode 'card_tokenization_mode_dst=1'
--data-urlencode 'sign=signature'

Эквайринг - оплата по СБП

Перевод денежных средств со счета физического лица на счет юридического лица (ТСП) посредством Системы Быстрых Платежей.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение c2b.

fin_instrument

да

Должен иметь значение sbp.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

нет

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

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

sbp_qr_timeout

нет

Срок жизни QR-кода в минутах (минимум 1, максимум 129600).

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_sbp'
--data-urlencode 'method=c2b'
--data-urlencode 'fin_instrument=sbp'
--data-urlencode 'id_request=10000011'
--data-urlencode 'id_order=10000011'
--data-urlencode 'amount=100'
--data-urlencode 'desc_public=Описание'
--data-urlencode 'sbp_qr_timeout=100'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_sbp", 
"id_request": "10000011",
"id_order": "10000011", 
"type_fin_operation": "c2b", 
"fin_instrument": "sbp", 
"state_fin_operation": "pending", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "137751715",
"sbp_qr_id": "BD10005N24F35EFC8GQPPQMU3HN0P86Q",
"sbp_transaction_id": "", 
"desc_public": "Описание", 
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_tid": "79036777",
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643,
"sbp_link": "https://qr.nspk.ru/BD10005N24F35EFC8GQPPQMU3HN0P86Q", 
"sbp_qr_media_type": "image/png",
"sbp_qr": " iVBORw0KGgoAAAANSUhEUgAAASwAAA…", 
"sign": " signature"
}

Эквайринг - оплата по СБП - подписки (привязка счета)

Перевод денежных средств со счета физического лица на счет юридического лица (ТСП) посредством Системы Быстрых Платежей.

Структура запроса ничем не отличается от структуры обычной оплаты, за исключением добавления трех параметров subscription, desc_subscription и card_tokenization_mode_src.

Идентификатор подписки (токен) для последующих платежей будет содержаться в card_token_src при успешно проведенной оплаты.

Непосредственно операция по уже привязанному счету будет осуществляться с передачей параметра card_token_src.

Важно! Прежде чем осуществлять привязку счета, клиент должен дать свое согласие.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение c2b.

fin_instrument

да

Должен иметь значение sbp.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

нет

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

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

sbp_qr_timeout

нет

Срок жизни QR-кода в минутах (минимум 1, максимум 129600).

subscription

да

Должен иметь значение true.

desc_subscription

да

Описание подписки.

card_tokenization_mode_src

да

Должен иметь значение 1.

sign

да

Подпись запроса в API.

OCT - выплата по СБП

Перевод денежных средств со счета юридического лица (ТСП) на счет физического лица посредством Системы Быстрых Платежей.

Операция может проводиться по одностадийной или двустадийной схеме. Двустадийная схема подразумевает передачу method_mode = 2stage. На первой стадии идет холдирование средств на стороне ТСП. Далее следует подтверждение ФИО получателя средств методом capture.

Завершение операции проводится в течении 3-х минут. В противном случае банк отклонит операцию и средства будут расхолдированы.

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

«Сервисные операции - Запрос списка банков-участников СБП»

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

Название параметра Обязательный Описание

method

да

Должен иметь значение b2c.

fin_instrument

да

Должен иметь значение sbp.

method_mode

нет

При использовании двустадийной схемы передается значение 2stage.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

нет

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

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

bank_id_dst

да

Идентификатор банка получателя.

bank_bic_dst

да

БИК банка получателя.

msisdn_dst

да

Номер мобильного телефона получателя в международном формате. 7XXXXXXXXXX

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_sbp_oct'
--data-urlencode 'method=b2c'
--data-urlencode 'method_mode=2stage'
--data-urlencode 'fin_instrument=sbp'
--data-urlencode 'id_request=10000011'
--data-urlencode 'id_order=10000011'
--data-urlencode 'amount=100'
--data-urlencode 'desc_public=Описание'
--data-urlencode 'bank_id_dst=999999999998'
--data-urlencode 'bank_bic_dst=088888887'
--data-urlencode 'msisdn_dst=79990001111'
--data-urlencode 'sign=signature'

OCT - выплата через POS-терминал

Перевод денежных средств со счета юридического лица (ТСП) на счет физического лица.

Поддерживаются выплаты на карту и через систему СБП. Для этого на терминал Android устанавливается специальное приложение Pay2me – уточняйте у тех. поддержки.

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

«Сервисные операции - Удаление заказа».

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

Название параметра Обязательный Описание

method

да

Должен иметь значение create_order.

fin_instrument

да

Должен иметь значение transfer.

method_order

да

Должен иметь значение b2c.

id_client

да

Уникальный идентификатор ТСП.

order_life_time

нет

Время жизни заказа в минутах.

id_request

да

Уникальный идентификатор запроса в API.

id_order

нет

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

нет

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

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_oct_2'
--data-urlencode 'method_order=b2c'
--data-urlencode 'fin_instrument=transfer'
--data-urlencode 'order_life_time=20'
--data-urlencode 'id_request=1000111'
--data-urlencode 'id_order=1000111'
--data-urlencode 'amount=10'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_oct_2", 
"id_request": "1000111",
"id_order": "1000111", 
"type_fin_operation": "b2c", 
"fin_instrument": "transfer", 
"state_fin_operation": "initiated", 
"amount": 10,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643, 
"processor_transaction_id": "", 
"rrn": "",
"auth_code": "", 
"desc_public": "Описание", 
"response_code": 0, 
"response_desc": "success", 
"processor_amount": 10,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"sign": " signature"
}

Завершение предавторизации - CAPTURE

Завершение операции рекомендуется проводить в тот же день или не позднее 3-х дней с момента предавторизации. В противном случае банк-эмитент может снять холд или, в зависимости от эквайера, все манипуляции с холдом могут быть ограничены по времени. Период снятия холда зависит от эмитента и варьируется от 3-х до 20-ти дней.

Завершение можно провести частичное, но только один раз. Остаток будет расхолдирован.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение capture.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_request_parent

нет

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

id_order_parent

нет

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

id_order

нет

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'method=capture'
--data-urlencode 'id_client= test'
--data-urlencode 'id_request= 1200001112'
--data-urlencode 'id_order_parent= 120000111'
--data-urlencode 'amount=100'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "1200001112",
"id_order": "120000111",
"id_request_parent": "120000111",
"id_order_parent": "120000111", "type_fin_operation": "capture", 
"fin_instrument": "acquiring", "state_fin_operation": "captured", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "12D712BBB8CD023E", 
"rrn": "431591364878",
"auth_code": "262475", 
"card_pan_masked_src": "554781xxxxxx6817", 
"type_fin_operation_parent": "c2b", 
"fin_instrument_parent": "acquiring", 
"state_fin_operation_parent": "captured", 
"amount_parent": 100,
"amount_authorized_parent": 0,
"amount_captured_parent": 100,
"amount_cancelled_parent": 0,
"amount_refunded_parent": 0,
"currency_parent": 643, 
"processor_transaction_id_parent": "9363EF4CACE3A695", 
"rrn_parent": "431591364878",
"auth_code_parent": "262475", 
"card_pan_masked_src_parent": "554781xxxxxx6817", 
"card_payment_system_src_parent": "mastercard (ipm)", 
"card_issuer_country_src_parent": "rus", 
"card_issuer_name_src_parent": "promsvyazbank", 
"card_token_src_parent": "ao1y8fb2i7gmfgnvqr1z", 
"card_token_last_4_src_parent": "6817",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_code": [
	0,
	0
],
"processor_desc": [ 
	"Approved"
],
"processor_tid": "79036800",
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"processor_code_parent": [
	0,
	0
],
"processor_desc_parent": [ 
	"Approved"
],
"processor_tid_parent": "79036800",
"processor_amount_parent": 100,
"processor_amount_authorized_parent": 0,
"processor_amount_captured_parent": 100,
"processor_amount_cancelled_parent": 0,
"processor_amount_refunded_parent": 0,
"processor_currency_parent": 643, 
"sign": " signature "
}

Отмена / Возврат

ОТМЕНА. Полная или частичная разблокировка денежных средств на счете плательщика, заблокированных в результате родительской операции. Применима к операциям в статусе authorized.

В рамках предавторизации можно совершить только одну отмену.

ВОЗВРАТ. Полный или частичный возврат денежных средств на счет плательщика, списанных в результате родительской операции. Применим к операциям в статусе captured.

Конкретные нюансы реализации (срок возврата/ разблокировки средств, возможность частичного возврата/ разблокировки средств) зависят от процессора.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение cancel для отмен и refund для возвратов.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_request_parent

нет

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

id_order_parent

нет

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

id_order

нет

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'method=refund'
--data-urlencode 'id_client= test'
--data-urlencode 'id_request= 12000011122'
--data-urlencode 'id_order_parent= 120000111'
--data-urlencode 'amount=100'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "12000011122",
"id_order": "120000111",
"id_request_parent": "120000111",
"id_order_parent": "120000111", 
"type_fin_operation": "refund", 
"fin_instrument": "acquiring", 
"state_fin_operation": "captured", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643,
"processor_transaction_id": "9363EF4CACE3A695", 
"rrn": "431591364878",
"auth_code": "262475", 
"card_pan_masked_src": "554781xxxxxx6817", 
"type_fin_operation_parent": "c2b", 
"fin_instrument_parent": "acquiring", 
"state_fin_operation_parent": "refunded", 
"amount_parent": 100,
"amount_authorized_parent": 0,
"amount_captured_parent": 0,
"amount_cancelled_parent": 0,
"amount_refunded_parent": 100,
"currency_parent": 643, 
"processor_transaction_id_parent": "9363EF4CACE3A695", 
"rrn_parent": "431591364878",
"auth_code_parent": "262475", 
"card_pan_masked_src_parent": "554781xxxxxx6817", 
"card_payment_system_src_parent": "mastercard (ipm)", 
"card_issuer_country_src_parent": "rus", 
"card_issuer_name_src_parent": "promsvyazbank", 
"card_token_src_parent": "ao1y8fb2i7gmfgnvqr1z", 
"card_token_last_4_src_parent": "6817",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_code": [
	0,
	0
],
"processor_desc": [ 
	"Approved"
],
"processor_tid": "79036800",
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643, 
"processor_code_parent": [
	0,
	0
],
"processor_desc_parent": [ 
	"Approved"
],
"processor_tid_parent": "79036800",
"processor_amount_parent": 100,
"processor_amount_authorized_parent": 0,
"processor_amount_captured_parent": 0,
"processor_amount_cancelled_parent": 0,
"processor_amount_refunded_parent": 100,
"processor_currency_parent": 643, 
"sign": " signature"
}

Рекуррент - операция по сохраненным реквизитам карты

Данный вид операции на стороне PSP подразумевает передачу параметра card_tokenization_mode_src = 1 в первичной операции оплаты, именуемая в дальнейшем «привязочная операция».

Все последующие операции в рамках цепочки передаются с токеном (параметр card_token_src).

О поддержке рекуррентных операций на стороне конкретного эквайера – уточняйте у службы тех. поддержки Pay2me.

Сервисные операции

Определение сервисной операции

Результатом сервисной операции является получение информации или выполнение какого-либо технического действия в рамках системы PSP. Выполнение сервисной операции не приводит к движению денежных средств. Тип сервисной операции определяется значением параметра запроса method. 

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

Получение информации о состоянии финансовой операции (родительская операция).

Все параметры, содержащие приписку _parent в ответе на запрос, относятся к информации по запрашиваемой (родительской) операции.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение status.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

нет

Уникальный идентификатор заказа.

id_request_parent

нет

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

id_order_parent

нет

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

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test'
--data-urlencode 'method=status'
--data-urlencode 'id_request=111000111'
--data-urlencode 'id_order_parent=10000111'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "111000111",
"id_request_parent": "10000111",
"id_order_parent": "10000111", 
"type_fin_operation_parent": "c2b", 
"fin_instrument_parent": "acquiring", 
"state_fin_operation_parent": "captured", 
"amount_parent": 100,
"amount_authorized_parent": 0,
"amount_captured_parent": 100,
"amount_cancelled_parent": 0,
"amount_refunded_parent": 0,
"currency_parent": 643, 
"processor_transaction_id_parent": "38E19CEF9BA530CE", 
"rrn_parent": "430597021513",
"auth_code_parent": "248648", 
"card_pan_masked_src_parent": "426803xxxxxx5792", 
"card_payment_system_src_parent": "visa", 
"card_issuer_country_src_parent": "rus", 
"card_issuer_name_src_parent": "promsvyazbank", 
"card_token_src_parent": "740h9jpde9b2wuz3gij3", 
"card_token_last_4_src_parent": "5792",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_code_parent": [
	0,
	0
],
"processor_desc_parent": [ 
	"Approved"
],
"processor_tid_parent": "79036800",
"processor_amount_parent": 100,
"processor_amount_authorized_parent": 0,
"processor_amount_captured_parent": 100,
"processor_amount_cancelled_parent": 0,
"processor_amount_refunded_parent": 0,
"processor_currency_parent": 643, 
"sign": " signature"
}

Запрос баланса

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

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

Название параметра Обязательный Описание

method

да

Должен иметь значение balance.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

нет

Уникальный идентификатор заказа.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_oct'
--data-urlencode 'method=balance'
--data-urlencode 'id_request=111000111'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_oct", 
"id_request": "111000111",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_tid": "22222222",
"balance": "999282252.16",
"sign": " signature"
}

Запрос списка банков-участников СБП

Получение актуального списка банков-участников Системы Быстрых Платежей.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение bank_list.

fin_instrument

да

Должен иметь значение sbp.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

нет

Уникальный идентификатор заказа.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'method=bank_list'
--data-urlencode 'fin_instrument=sbp'
--data-urlencode 'id_client=test_sbp_oct'
--data-urlencode 'id_request=111000111'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_sbp_oct", 
"id_request": "111000111",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_tid": "22222222", 
"bank_list": [
	{
		"bankId": "100000000022", 
		"bankName": "ЯНДЕКС.ДЕНЬГИ", 
		"bankBic": "044525444"
	},
	{
		"bankId": "188888888885",
		"bankName": "Золотой Банк", 
		"bankBic": "044525600"
	}, …
],
"sign": " signature"
}

Создание заказа

Создание в системе PSP заказа, который впоследствии может быть оплачен посредством платежной страницы на стороне PSP. 

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

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

Название параметра Обязательный Описание

method

да

Должен иметь значение create_order.

method_mode

нет

Значение preauth (предавторизация) означает необходимость вызова метода capture для отправки операции на клиринг.

method_order

нет

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

fin_instrument

да

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

payment_page_method

нет

Выбор методов оплаты, которые будут отражены на платежной странице. Передается в виде массива JSON. Возможные значения: ["card","sbp","mts_pay","mir_pay"]

payment_page_session_life_time

нет

Передача желаемого времени жизни платежной ссылки в минутах (от 1 минуты до 365 дней). Значение в минутах.

sbp_qr_timeout

нет

Срок жизни QR-кода в минутах (минимум 1, максимум 129600).

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order

да

Уникальный идентификатор заказа.

amount

да

Сумма операции.

currency

нет

ISO-код валюты операции.

desc_public

да

Описание операции. Обязательно для прохождения 3ДС.

desc_private

нет

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

Параметр для передачи дополнительной информации (при наличии у процессора технической возможности).

card_token_src

нет

Токен карты плательщика. Заменяет параметры: pan_src, exp_month_src, exp_year_src.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

return_url

нет

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

card_tokenization_mode_src

нет

При передаче значения "1", система будет выполнять токенизацию входных данных и создавать рекурренты на основе полученного токена.

tds_mode

нет

Определяет, следует ли использовать 3DS для транзакции. Если задано значение "force", то 3DS будет активирован, в противном случае - нет.

sign

да

Подпись запроса в API.

sub_merchant_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

sub_merchant_terminal_id

нет

Идентификатор ТСП, зарегистрированный в НСПК.

facilitator_merchant_name

нет

Название ТСП, зарегистрированное в НСПК.

merchant_inn

нет

ИНН ТСП.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test'
--data-urlencode 'method=create_order'
--data-urlencode 'method_mode=preauth'
--data-urlencode 'fin_instrument=acquiring'
--data-urlencode 'id_request=2220000333'
--data-urlencode 'id_order=2220000333'
--data-urlencode 'payment_page_method=["card","sbp"]'
--data-urlencode 'sbp_qr_timeout=1440'
--data-urlencode 'payment_page_session_life_time=1440'
--data-urlencode 'amount=100'
--data-urlencode 'desc_public=Описание'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "2220000333",
"id_order": "2220000333", 
"type_fin_operation": "c2b", 
"fin_instrument": "acquiring", 
"state_fin_operation": "initiated", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643, 
"processor_transaction_id": "", 
"rrn": "",
"auth_code": "", 
"desc_public": "Описание", 
"response_code": 0, 
"response_desc": "success", 
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643,
"payment_page_url": "https://api.pay2me.com/public/?id=payment_page&id_payment_page_session=uwzu0nzo3kr4cnea", 
"sign": " signature "
}

Создание ссылки на опату заказа

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

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

Название параметра Обязательный Описание

method

да

Должен иметь значение create_payment_page_url.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_request_parent

нет

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

id_order_parent

нет

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

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test'
--data-urlencode 'method=create_payment_page_url'
--data-urlencode 'id_request=2220000333'
--data-urlencode 'id_order_parent=22200003333'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "2220000333",
"id_order": "22200003333", 
"type_fin_operation": "c2b", 
"fin_instrument": "acquiring", 
"state_fin_operation": "initiated", 
"amount": 100,
"amount_authorized": 0,
"amount_captured": 0,
"amount_cancelled": 0,
"amount_refunded": 0,
"currency": 643, 
"processor_transaction_id": "", 
"rrn": "",
"auth_code": "", 
"desc_public": "Описание", 
"response_code": 0, 
"response_desc": "success", 
"processor_amount": 100,
"processor_amount_authorized": 0,
"processor_amount_captured": 0,
"processor_amount_cancelled": 0,
"processor_amount_refunded": 0,
"processor_currency": 643,
"payment_page_url": "https://api.pay2me.com/public/?id=payment_page&id_payment_page_session=uwzu0nzo3kr4cnea", 
"sign": " signature "
}

Удаление заказа

Удаление ранее созданного неоплаченного заказа.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение delete_order.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_request_parent

нет

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

id_order_parent

нет

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

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test'
--data-urlencode 'method=delete_order'
--data-urlencode 'id_request=2220000333'
--data-urlencode 'id_order_parent=22200003333'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "2220000444",
"id_request_parent": "2220003333",
"id_order_parent": "22200003333",
"type_fin_operation_parent": "c2b",
"fin_instrument_parent": "acquiring",
"state_fin_operation_parent": "deleted", 
"amount_parent": 100,
"amount_authorized_parent": 0,
"amount_captured_parent": 0,
"amount_cancelled_parent": 0,
"amount_refunded_parent": 0,
"currency_parent": 643,
"processor_transaction_id_parent": "", 
"rrn_parent": "",
"auth_code_parent": "", 
"response_code": 0, 
"response_desc": "success", 
"processor_amount_parent": 100,
"processor_amount_authorized_parent": 0,
"processor_amount_captured_parent": 0,
"processor_amount_cancelled_parent": 0,
"processor_amount_refunded_parent": 0,
"processor_currency_parent": 643,
"payment_page_url": "https://api.pay2me.com/public/?id=payment_page&id_payment_page_session=7adagynuyq8047tm", 
"sign": " signature "
}

Токенизация карты без проведения финансовой операции

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

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

Название параметра Обязательный Описание

 

method

 

да

Должен иметь значение:

create_card_token – при передачи карточных данных с запросом; create_order – создание ссылки на страницу для заполнения клиентом своих карточных данных.

 

method_order

 

нет

Должен иметь значение create_card_token, если используется метод

create_order, в противном случае не передается.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

pan_src

нет

PAN карты плательщика.

exp_month_src

нет

Месяц истечения срока действия карты плательщика.

exp_year_src

нет

Год истечения срока действия карты плательщика.

pan_dst

нет

PAN карты получателя.

callback_url

нет

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_create_card_token '
-data-urlencode 'method=create_card_token'
--data-urlencode 'pan_src=4762085995973998'
--data-urlencode 'exp_month_src=12'
--data-urlencode 'exp_year_src=2024'
--data-urlencode 'id_request=1110006667'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test_create_card_token", 
"id_request": "1110006667", 
"card_payment_system_src": "visa", 
"card_issuer_country_src": "rus", 
"card_issuer_name_src": "promsvyazbank", 
"card_token_src": "m06mx6nkey2me9trpnyw", 
"card_token_last_4_src": "3998",
"response_code": 0, 
"response_desc": "success", 
"sign": " signature "
}

Удаление токена

На стадии реализации

Запрос справки об успешности операции выплата (только для эквайера ПСБ)

Справка на стороне эквайера может сформироваться не сразу с момента получения финального результата операции. Срок ожидания до 30 минут. Ссылка на справку будет отдана в параметре inform_letter_url.

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

Название параметра Обязательный Описание

method

да

Должен иметь значение inform_letter.

id_client

да

Уникальный идентификатор ТСП.

id_request

да

Уникальный идентификатор запроса в API.

id_order_parent

да

Уникальный идентификатор заказа родительской операции.

sign

да

Подпись запроса в API.

Пример запроса

curl --location 'https://api.pay2me.com/psp'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'id_client=test_oct'
--data-urlencode 'method=inform_letter'
--data-urlencode 'id_request=111000555'
--data-urlencode 'id_order_parent=111000666'
--data-urlencode 'sign=signature'

Пример ответа

{
"id_client": "test", 
"id_request": "111000555",
"id_request_parent": "111222555",
"id_order_parent": "111000666", 
"type_fin_operation_parent": "b2c", 
"fin_instrument_parent": "transfer", 
"state_fin_operation_parent": "captured", 
"amount_parent": 100,
"amount_authorized_parent": 0,
"amount_captured_parent": 100,
"amount_cancelled_parent": 0,
"amount_refunded_parent": 0,
"currency_parent": 643, 
"processor_transaction_id_parent": "7EAF9FDC95D9AE2B", 
"rrn_parent": "425647774310",
"auth_code_parent": "232010", 
"card_pan_masked_dst_parent": "536829xxxxxx8643", 
"card_payment_system_dst_parent": "mastercard (ipm)", 
"card_issuer_country_dst_parent": "", 
"card_issuer_name_dst_parent": "",
"response_code": 0, 
"response_desc": "success",
"processor_name": "ПромСвязьБанк", 
"processor_tid": "30191614", 
"processor_code_parent": [
	0,
	0
],
"processor_desc_parent": [ 
	"Approved"
],
"processor_tid_parent": "30191614",
"processor_amount_parent": 100,
"processor_amount_authorized_parent": 0,
"processor_amount_captured_parent": 100,
"processor_amount_cancelled_parent": 0,
"processor_amount_refunded_parent": 0,
"processor_currency_parent": 643,
"inform_letter_url": "https://3ds.payment.ru/B2C/inform_letter/1731245552d2nJMhbn3Gw.html", 
"sign": " signature "
}

Передача фискальных данных – RECEIPT

Передача фискальных данных. Передается в составе основного запроса на операцию. Строка в формате JSON.

Структура параметра RECEIPT

receipt =
{
	"params": {														// параметры чека
		"customer_contact":"Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.",
        "tax_mode":"TAX_MODE_SIMPLIFIED_INCOME_MINUS_EXPENSE"
		"place":"www.site.ru" 
        "document_type":"DOCUMENT_TYPE_DEBIT"
	},
	"items":[														// позиции чека
			{
				"price":"9999.99",
				"description":"Оплата курса 1",
				"pay_attribute": "PAY_ATTRIBUTE_FULL_PAYMENT" 
                "line_attribute": "LINE_ATTRIBUTE_SERVICE" 
                "tax_id":"TAX_ID_VAT_20"
			},
			{
				"price":"20010.52",
				"description":"Оплата курса 2", 
                "qty":2
				"agent_mode":"AGENT_MODE_BANK_AGENT", 
                "agent_data": {
						"phone":"+7XXXXXXXXXX",
						"operation":"выдача наличных"
				}
				"supplier_data":{
						"phone":"+7XXXXXXXXXX",
						"name":"Иванов Иван Иванович" 
                        "inn":"10-12 chars"
				}
			}
			],
	"payments": {														// не обязательно, суммарные значения
			"cash":9999.99,
			"non_cash":20010.52, 
            "advance_payment":5000.00, 
            "credit":1000.00, 
            "consideration":500.00
	}
}

Описание параметров

Название параметра Описание

customer_contact

E-mail или телефон в формате +7XXXXXXXXXX, на который придет чек

tax_mode

Режим налогообложения. Не обязательное, по умолчанию берется из кассы либо из настроек шлюза

place

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

document_type

Тип чека, по умолчанию значение в зависимости от типа операции, разрешенной на терминале

price

Сумма

description

Название товарной позиции

pay_attribute

Признак способа расчёта. По умолчанию PAY_ATTRIBUTE_FULL_PAYMENT

line_attribute

Признак предмета расчёта. По умолчанию LINE_ATTRIBUTE_SERVICE

tax_id

Ставка НДС. По умолчанию TAX_ID_NO_VAT

qty

Количество, 1 - если не указывать

agent_mode

Признак агента. Поле не обязательно.

agent_data

Если установлено agent_mode

phone

Телефон агента в формате +7XXXXXXXXXX

operation

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

supplier_data

Данные поставщика

name

Название поставщика

inn

ИНН поставщика

cash

Сумма оплаты наличными

non_cash

Сумма безналичной оплаты

advance_payment

Предварительная оплата (зачет аванса и (или) предыдущих платежей)

credit

Постоплата, указывается общая сумма рассрочки, применяется только для первого платежа (если в items есть хотя бы один элемент pay_attribute со значением "PAY_ATTRIBUTE_PARTIAL_PAYMENT")

consideration

Сумма оплаты встречным предоставлением

Таблица допустимых констант

Значение Описание

Ставка НДС

TAX_ID_VAT_20

Ставка НДС 20%

TAX_ID_VAT_10

Ставка НДС 10%

TAX_ID_VAT_7

Ставка НДС 7%

AX_ID_VAT_5

Ставка НДС 5%

TAX_ID_BET_20_120

Ставка НДС расч. 20/120

TAX_ID_BET_10_110

Ставка НДС расч. 10/110

TAX_ID_BET_7_107

Ставка НДС расч. 7/107

TAX_ID_BET_5_10

Ставка НДС расч. 5/10

TAX_ID_VAT_0

Ставка НДС 0%

TAX_ID_NO_VAT

НДС не облагается

Режим налогообложения

TAX_MODE_COMMON

Общая, ОСН

TAX_MODE_SIMPLIFIED_INCOME

Упрощенная доход, УСН доход

TAX_MODE_SIMPLIFIED_INCOME_MINUS_EXPENSE

Упрощенная доход минус расход, УСН доход - расход

TAX_MODE_SINGLE_AGRICULTURAL_TAX

Единый сельскохозяйственный налог, ЕСН

TAX_MODE_PATENT_TAXATION

Патентная система налогообложения, Патент

Признак способа расчёта

PAY_ATTRIBUTE_FULL_PREPAYMENT

Предоплата 100%

PAY_ATTRIBUTE_PREPAYMENT

Частичная предоплата

PAY_ATTRIBUTE_ADVANCE

Аванс

PAY_ATTRIBUTE_FULL_PAYMENT

Полный расчет

PAY_ATTRIBUTE_PARTIAL_PAYMENT

Частичный расчет и кредит

PAY_ATTRIBUTE_CREDIT

Передача в кредит

PAY_ATTRIBUTE_CREDIT_PAYMENT

Оплата кредита

Признак агента

AGENT_MODE_BANK_AGENT

Банковский платежный агент

AGENT_MODE_BANK_SUBAGENT

Банковский платежный субагент

AGENT_MODE_PAYMENT_AGENT

Платежный агент

AGENT_MODE_PAYMENT_SUBAGENT

Платежный субагент

AGENT_MODE_ATTORNEY

Поверенный

AGENT_MODE_COMMISSION

Комиссионер

AGENT_MODE_ANOTHER

Иной агент

Признак предмета расчёта

LINE_ATTRIBUTE_GOODS

Товар

LINE_ATTRIBUTE_EXCISABLE

Подакцизный товар

LINE_ATTRIBUTE_WORK

Работа

LINE_ATTRIBUTE_SERVICE

Услуга

LINE_ATTRIBUTE_BETTING

Ставка азартной игры

LINE_ATTRIBUTE_BETTING_WIN

Выигрыш азартной игры

LINE_ATTRIBUTE_LOTTERY

Лотерейный билет

LINE_ATTRIBUTE_LOTTERY_WIN

Выигрыш лотереи

LINE_ATTRIBUTE_GRANTING_RIGHTS

Предоставление РИД

LINE_ATTRIBUTE_PREPAID

Платеж

LINE_ATTRIBUTE_REWARD

Агентское вознаграждение

LINE_ATTRIBUTE_ITEMS

Выплата

LINE_ATTRIBUTE_NON_ITEMS

Иной предмет расчета

LINE_ATTRIBUTE_TRANSFER_PROPERTY_RIGHTS

Имущественное право

LINE_ATTRIBUTE_NON_OPERATING_INCOME

Внереализационный доход

LINE_ATTRIBUTE_TAX_REDUCTION

Иные платежи и взносы

LINE_ATTRIBUTE_TRADE_FEE

Торговый сбор

LINE_ATTRIBUTE_RESORT_FEE

Курортный сбор

LINE_ATTRIBUTE_DEPOSIT

Залог

LINE_ATTRIBUTE_EXPENSE

Расход

LINE_ATTRIBUTE_OPS_IP

Взносы на обязательное пенсионное страхование ИП

LINE_ATTRIBUTE_OPS

Взносы на обязательное пенсионное страхование

LINE_ATTRIBUTE_OMS_IP

Взносы на обязательное медицинское страхование ИП

LINE_ATTRIBUTE_OMS

Взносы на обязательное медицинское страхование

LINE_ATTRIBUTE_OSS

Взносы на обязательное социальное страхование

LINE_ATTRIBUTE_CASINO

Платеж казино

LINE_ATTRIBUTE_PAYMENT

Выдача денежных средств

LINE_ATTRIBUTE_ATNM

АТНМ (не имеющем кода маркировки)

LINE_ATTRIBUTE_ATM

АТМ (имеющем код маркировки)

LINE_ATTRIBUTE_TNM

ТНМ

LINE_ATTRIBUTE_TM

ТМ

Тип чека

DOCUMENT_TYPE_DEBIT

Приход

DOCUMENT_TYPE_DEBIT_REFUND

Возврат прихода

DOCUMENT_TYPE_CREDIT

Расход

Справочник статусов финансовой операции

Статус Описание

initiated

Инициирована. Запрос на выполнение операции прошел первичные проверки (корректность входных параметров и подпись) и начал обрабатываться API PSP.

input_data_waiting

Ожидание входных данных. Например, ожидание ввода данных карты на платежной форме.

pending

В обработке на стороне процессора. Конечный результат операции на момент данного статуса неизвестен.

auth_ext_ready

Готова к внешней аутентификации. ТСП отправлены данные, необходимые для инициации процедуры аутентификации плательщика (3DS).

auth_ext_started

Внешняя аутентификация началась. Плательщик стартовал процедуру аутентификации (3DS).

auth_ext_finished

Внешняя аутентификация завершилась. Плательщик завершил процедуру аутентификации (3DS). Ее результат на момент данного статуса неизвестен.

authorized

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

captured

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

cancelled_partially

Отменена частично. Клиринг по операции будет произведен на сумму, меньшую оригинальной суммы операции.

cancelled

Отменена. Клиринг по операции произведен не будет.

refunded_partially

Возвращена частично. Плательщику будет возвращена часть оригинальной суммы операции.

refunded

Возвращена. Плательщику будет возвращена вся сумма операции.

declined

Отклонена процессором. Причина отклонения может быть определена на основании значений параметров processor_code и processor_desc.

failed

Отклонена PSP. Причина отклонения может быть определена на основании значений параметров response_code и response_desc.

unknown

Нет информации о статусе. Данный статус имеет место при возникновении нештатных ситуаций в процессе коммуникации PSP и процессора. Например, если PSP не получил ответ от процессора (таймаут). В таких ситуациях рекомендуется использовать метод status API PSP для определения фактического статуса операции.

expired

Просрочена. Операция достигла истечения срока действия без завершения или подтверждения.

deleted

Заказ удален. Возвращается при использовании сервисной операции delete_order.

Справочник кодов ошибок PSP

В случае возникновения ошибки в процессе обработки запроса на стороне системы PSP, в ответе в обязательном порядке присутствуют следующие значения параметров: 

response_code, не равный 0 (нулю), позволяет определить тип ошибки,

response_desc, не равный success”, позволяет определить причину ошибки, состоит из трех частей, разделенных символом “|” (вертикальная черта): 

  • общее сообщение – соответствует коду ошибки и позволяет быстрее определить тип ошибки,
  • место возникновения (может отсутствовать в зависимости от настроек на стороне системы PSP) – указывает на модуль и функцию, где произошла ошибка (информация имеет ценность исключительно для службы технической поддержки PSP),
  • детализация – содержит детальную информацию об ошибке.
Код Общее сообщение Описание

Общие уровня системы

100000

DB CONNECT ERROR

Ошибка подключения к БД PSP

100001

DB QUERY ERROR

Ошибка исполнения запроса к БД PSP

100002

INPUT DATA ERROR

Ошибка входных данных

100003

INTERNAL ERROR

Внутренняя ошибка

100004

NOT FOUND

Сущность не найдена

100005

CLIENT AUTH ERROR

Ошибка аутентификации клиента

Ошибки уровня службы

101000

INTERNAL ERROR

Ошибка подключения к БД PSP

101001

NOT FOUND

Ошибка исполнения запроса к БД PSP

101002

SECURITY VIOLATION

Ошибка входных данных

101003

INPUT DATA ERROR

Внутренняя ошибка

101005

DUPLICATE ID

Сущность не найдена

Ошибки уровня интерфейса

102000

INTERNAL ERROR

Внутренняя ошибка

102001

NOT FOUND

Сущность не найдена

102002

REQUEST OUT DATA ERROR

Ошибка в данных исходящего запроса

102003

RESPONSE OUT DATA ERROR

Ошибка в данных исходящего ответа

102004

REQUEST IN DATA ERROR

Ошибка в данных входящего запроса

102005

RESPONSE IN DATA ERROR

Ошибка в данных входящего ответа

102006

SECURITY VIOLATION

Ошибка безопасности

102007

NPUT DATA ERROR

Ошибка входных данных

Ошибки уровня сущности

103000

INTERNAL ERROR

Внутренняя ошибка

103001

NOT FOUND

Сущность не найдена

Ошибки уровня HTTP

104000

HTTP REQUEST ERROR

Ошибка при выполнении HTTP-запроса. Как правило, возникает при коммуникационных проблемах между системами PSP и процессора.

Справочник кодов ошибок процессора (ISO8583)

Если кодировка ошибок на стороне системы процессора соответствует спецификации ISO8583, то для интерпретации причины отказа процессора в проведении операции можно использовать следующую таблицу. Следует иметь ввиду, что некоторые процессоры возвращают более одного кода ответа (соответствующий параметр processor_code в ответе системы PSP имеет тип «массив»). В таком случае, основной код, определяющий результат операции, возвращается первым элементом массива.

Код Сообщение Описание

00

Approved

Успешная транзакция

01

Refer to card issuer

Обратитесь к эмитенту карты

02

Refer to card issuer, special condition

Обратитесь к эмитенту карты, особое условие

03

Invalid merchant or service provider

Недействительный идентификатор продавца

04

Pickup card

Изъять карту

05

Do not honor

Транзакция была отклонена эмитентом без объяснения причин

06

Error

Эмитент карты вернул ошибку без дополнительных объяснений

07

Pickup card, special condition (other than lost/stolen card)

Изъять карту, специальные условия

08

Honor with identification

Не пройдена идентификация, проблема с идентификацией

09

Request in progress

Выполняется запрос

10

Approved for partial amount

Одобрено для частичной суммы

11

Approved, VIP Approved, VIP program

Одобрено для VIP, программа VIP

12

Invalid transaction

Запрошенная транзакция не поддерживается или недействительна для представленного номера карты

13

Invalid amount

Сумма превышает лимиты, установленные эмитентом для данного типа транзакции

14

Invalid card (no such number)

Эмитент указывает, что эта карта недействительна.

15

No such issuer

Номер эмитента карты недействителен

16

Approved, update track 3

Утверждено, обновить

17

Customer cancellation

Отмена клиентом

18

Customer dispute

Открыт спор с клиентом

19

Re-enter transaction

Клиент должен повторно отправить транзакцию

20

Invalid response

Неверный ответ

21

No action taken

Никаких действий не предпринимается. Эмитент отказался без других объяснений

22

Suspected malfunction

Предполагаемая неисправность

23

Unacceptable transaction fee

Неприемлемая комиссия за транзакцию

24

File update not supported

Обновление файла не поддерживается

25

Unable to locate record

Невозможно найти запись

26

Duplicate record

Дублирующая запись

27

File update edit error

Ошибка редактирования обновления файла

28

File update file locked

Файл/обновления файла заблокировано

29

not used

не используется

30

Format error

Ошибка формата

31

Bank not supported

Банк не поддерживается коммутатором

32

Completed partially

Завершено частично

33

Expired card, pick-up

Срок действия карты истек

34

Issuer suspects fraud, pick-up card

Эмитент карты подозревает мошенничество

35

Contact acquirer, pick-up

Обратиться к эмитенту карты

36

Restricted card, pick-up

Ограничено эмитентом карты

37

Call ECHO security, pick-up

Обратитесь в службу безопасности

38

PIN tries exceeded, pick-up

Количество попыток получения PIN-кода превышает лимиты эмитента

39

No credit account

Нет кредитного счета

40

Function not supported

Запрошенная функция не поддерживается

41

Pickup card (lost card)

Карта была утеряна

42

No universal account

Нет универсальной учетной записи

43

Pickup card (stolen card)

Карта была украдена

44

No investment account

Нет инвестиционного счета

45

50 not used

не используется

46

Contract closed

Запрет на проведение операции с данной картой.

51

Not sufficient funds

Недостаточно средств на карте

52

No checking account

Нет текущего счета

53

No savings account

Нет сберегательного счета

54

Expired card

Срок действия карты истек

55

Incorrect PIN

Неправильный PIN-код держателя карты

56

No card record

Нет такой карты

57

Transaction not permitted to cardholder

Операция не разрешена держателю карты. Карта не разрешена для запрошенного типа транзакции.

58

Transaction not permitted on terminal

Транзакция не разрешена на терминале. Продавцу запрещен этот тип транзакции (заблокирован терминал; сработало ограничение и т.д. необходимо уточнять подробности у эквайера)

59

Suspected fraud

Предполагаемое мошенничество

60

Contact ECHO

Связаться с службой безопасности

61

Exceeds withdrawal limit

Превышен лимит, подробности у эквайера

62

Restricted card

Карта заблокирована

63

Security violation

Нарушение безопасности. Карта заблокирована

64

Original amount incorrect

Неверная исходная сумма

65

Activity count limit exceeded

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

66

Call acquirer security

Связаться со службой безопасности эквайера

67

not used

не используется

68

Response received too late

Ответ получен слишком поздно

69

74 not used

не используется

75

PIN tries exceeded

Превышено допустимое количество попыток ввода PIN-кода

76

Invalid "to" account

Неверный счет. Дебетового счета не существует

77

Invalid "from" account

Недействительный счет. Кредитный счет не существует

78

Invalid account specified (general)

Связанная учетная запись с номером карты недействительна или не существует

79

Already reversed

Уже отменено

80

Visa transactions: credit issuer unavailable

Операции с Visa: эмитент недоступен

81

PIN cryptographic error found

Обнаружена криптографическая ошибка PIN-кода

82

Negative CAM, dCVV, iCVV, or CVV results

Некорректный CAM, dCVV, iCVV или CVV

83

Unable to verify PIN

Невозможно проверить PIN-код

84

Invalid authorization life cycle

Просроченная авторизация

85

not used

не используется

86

Cannot verify PIN

Невозможно проверить PIN-код

87

Network Unavailable

Сеть недоступна

88

Invalid CVC2

Ошибочно введенный cvc2

89

Ineligible to receive financial position information

Невозможно получить финансовую информацию

90

Cut-off in progress

Отключение в процессе

91

Issuer or switch inoperative

Банк-эмитент недоступен

92

Routing error

Ошибка маршрутизации

93

Violation of law

Нарушение закона

94

Duplicate transaction

Дублирующая транзакция

95

Reconcile error

Ошибка согласования/ошибка при расчетах с МПС/НСПК

96

System malfunction

Произошла системная ошибка

97

not used

не используется

98

Exceeds cash limit

Превышен денежный лимит

A1

Activity count limit exceeded

Превышен лимит, ретрансляция кода 65 (НСПК)

Таблица параметров API Pay2Me

Название параметра Обязательный Допустимый контент Допустимая длина / диапазон значений Описание

ПОЛЯ ВХОДЯЩЕГО ТРАНЗАКЦИОННОГО СООБЩЕНИЯ

method

да

0-9a-z_

не более 50 символов

Платежные методы:

  • c2b – эквайринг или AFT
  • b2c – выплата.
  • c2c – перевод между физлицами
  • cancel – отмена
  • refund – возврат
  • capture - завершение операции (применим для методов, логика исполнения которых предполагает несколько стадий)

 Сервисные методы:

  • status – запрос статуса операции
  • b2c_check – проверка возможности выплаты (при наличии у процессора технической возможности)
  • bank_list – получение списка банков (в текущей версии API поддерживается только получение списка банков-участников СБП)
  • create_order – создание заказа с возможностью его последующей оплаты посредством ссылки на платежную страницу
  • delete_order – удаление заказа
  • create_payment_page_url – создание ссылки на оплату ранее созданного заказа
  • balance – запрос баланса счета ТСП (при наличии у процессора технической возможности)
  • create_card_token – создание токена,
  • delete_card_token – удаление токена,
  • inform_letter – запрос на получение справки об операции (при наличии у процессора технической возможности)

method_mode

нет

0-9a-z_

не более 50 символов

Режим выполнения платежного метода: 

  • preauth (предавторизация) - для платежного метода c2b и финансового инструмента acquiring, что означает необходимость вызова метода capture для отправки операции на клиринг
  • 2stage – для платежного метода b2c и финансового инструмента sbp, что означает необходимость вызова метода capture для подтверждения операции
  • forced – используется для запросов статуса операции, дает возможность принудительно запросить статус на стороне эквайера, игнорируя статус PSP.

method_order

нет

0-9a-z_

не более 50 символов

  • b2c - в рамках метода create_order
  • create_card_token – в рамках получения страницы для заполнения карточных данный при токенизации

payment_page_method

нет

строка

1 - 10000

Передается в рамках метода create_order. Возможные значения: ["card","sbp","mts_pay","mir_pay"]

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

fin_instrument

нет

0-9a-z_

не более 50 символов

Финансовый инструмент:

  • acquiring – эквайринг
  • transfer – перевод
  • sbp – Система Быстрых Платежей

Финансовый инструмент определяет конкретный способ реализации платежного метода.

Метод c2b может быть реализован при помощи всех трех инструментов. b2c – перевод или СБП

id_client

да

0-9a-z_.:|-

не более 64 символов

Уникальный идентификатор ТСП (выдается при его регистрации в системе PSP).

id_request

да

0-9a-zA-Z_.:|-

не более 64 символов

Уникальный идентификатор запроса в API. Для каждого запроса в API  PSP ТСП должен сгенерировать уникальный идентификатор. В качестве такового рекомендуется использовать timestamp или GUID. В ответ на запросы с неуникальными id_request будет возвращена ошибка.

id_request_parent

нет

0-9a-zA-Z_.:|-

не более 64 символов

Уникальный идентификатор запроса родительской операции. Родительская операция – это операция, на которую ссылается данная операция.

Например, возврат (refund), ссылается на операцию оплата (c2b). Если по одной оплате производится несколько возвратов, то у них у всех будет одинаковый id_request_parent.

id_order

нет

0-9a-zA-Z_.:|-

не более 64 символов

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

id_order_parent

нет

0-9a-zA-Z_.:|-

не более 64 символов

Уникальный идентификатор заказа родительской операции. Родительская операция – это операция, на которую ссылается данная операция.

Например, возврат (refund), ссылается на операцию оплата (c2b). Если по одной оплате производится несколько возвратов, то у них у всех будет одинаковый id_order_parent.

amount

нет

число с 2-мя знаками после запятой

в диапазоне 0.01 - 9999999999.99

Сумма операции. В случае отправки ТСП значения, имеющего более 2-х знаков после запятой, будет произведено математическое округление до 2-х знаков.

currency

нет

целое число

в диапазоне 1 - 999

ISO-код валюты операции.

desc_public

нет

строка

не более 1000 символов

Описание операции, которое отображается на платежной странице, странице 3DS или экране оплаты СБП в мобильном приложении банка плательщика.

desc_private

нет

строка

не более 1000 символов

Описание операции, которое возвращается в реестрах процессора (при наличии у него технической возможности).

add_info

нет

строка

не более 1000 символов

Параметр для передачи дополнительной информации процессору (при наличии у него технической возможности). Как правило используется для передачи информации в реестр.

pan_dst

нет

0 - 9

от 16 до 19 цифр

PAN карты получателя.

pan_src

нет

0 - 9

от 16 до 19 цифр

PAN карты плательщика.

exp_month_src

нет

целое число

в диапазоне 1 - 12

Месяц истечения срока действия карты плательщика.

exp_year_src

нет

целое число

в диапазоне 2014 – 2050

Год истечения срока действия карты плательщика.

cvc_src

нет

0 - 9

3 цифры

CVC/CVV/CVP карты плательщика.

payment_page_session_li fe_time

нет

целое число

от 1 минуты до 365 дней

Передача желаемого времени жизни платежной ссылки в минутах.

sbp_qr_timeout

нет

0 - 9

1 - 129600

Период в минутах, в течение которого будет возможна оплата по платёжной ссылке (QR-коду). Минимальное значение — одна минута, максимальное значение – 129600 (90 дней в минутах). Если значение не задано, будет использоваться значение по умолчанию - 20 минут. Поддерживается не всеми эквайерами.

card_tokenization_mode_src

нет

строка

20

Определяет, следует ли производить токенизацию и использовать полученный токен для создания рекуррентов.

Если задано значение "1", система будет выполнять токенизацию входных данных и создавать рекурренты на основе полученного токена.

card_tokenization_dst

нет

строка

20

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

Если задано значение "1", система будет выполнять токенизацию входных данных карты получателя и создавать рекуррентные платежи на основе полученного токена.

card_token_src

нет

строка

не более 64 символов

Токен карты плательщика. Может использоваться вместо параметров: pan_src, exp_month_src и exp_year_src, если карта плательщика была токенизирована ранее.

card_token_dst

нет

строка

не более 64 символов

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

msisdn_src

нет

0 - 9

11 цифр

Номер мобильного телефона отправителя в международном формате. 7XXXXXXXXXX

msisdn_dst

нет

0 - 9

11 цифр

Номер мобильного телефона получателя в международном формате. 7XXXXXXXXXX

bank_bic_dst

нет

строка

9 символов

БИК банка получателя.

bank_id_src

нет

0 - 9

12 цифр

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

bank_id_dst

нет

0 - 9

12 цифр

Идентификатор банка получателя.

bank_account_id_src

нет

0 - 9

20 цифр

Номер банковского счета отправителя.

bank_account_id_dst

нет

0 - 9

20 цифр

Номер банковского счета получателя.

first_name_src

нет

строка

не более 50 символов

Имя отправителя.

middle_name_src

нет

строка

не более 50 символов

Отчество отправителя.

last_name_src

нет

строка

не более 50 символов

Фамилия отправителя.

first_name_dst

нет

строка

не более 50 символов

Имя получателя.

middle_name_dst

нет

строка

не более 50 символов

Отчество получателя.

last_name_dst

нет

строка

не более 50 символов

Фамилия получателя.

callback_url

нет

строка (URL)

от 11 до 512 символов

URL системы ТСП, на который система PSP по завершению операции отправит уведомление, содержащее результат операции. В рамках уведомления, данные передаются методом POST в формате, аналогичном формату онлайн-ответа (application/json).

return_url

нет

строка (URL)

от 11 до 512 символов

URL, на который система PSP вернет браузер плательщика после прохождения аутентификации 3DS или после завершения процесса оплаты посредством платежной страницы на стороне PSP.

return_url_success

нет

строка (URL)

от 11 до 512 символов

Аналог return_url, используемый только в случае, если операция завершена успешно.

return_url_fail

нет

строка (URL)

от 11 до 512 символов

Аналог return_url, используемый только в случае, если операция завершена неуспешно.

tds_mode

нет

строка

0 - 5

Определяет, следует ли использовать 3DS для транзакции. Если задано значение "force", то 3DS будет активирован, в противном случае - нет.

receipt

нет

строка

1 - 10000

Передача фискальных данных, строка в формате JSON.

merchant_inn

нет

0 - 9

от 10 до 12 цифр

ИНН ТСП.

sign

а

0-9a-z

не более 128 символов

Подпись запроса в API. Каждый запрос в API PSP ТСП должен подписывать по алгоритму SHA-256.

sub_merchant_terminal_id

нет

строка

8 символов

Идентификатор ТСП, зарегистрированный в НСПК.

facilitator_merchant_name

нет

строка

латинские буквы + цифры + звездочка + разделители, длина от 3 до 22 символов

Название ТСП, зарегистрированное в НСПК.

subscription

нет

строка

boolean

Единственное значение true. Используется для операций при создании подписки по СБП.

desc_subscription

нет

строка

не более 1000 символов

Описание подписки. Используется для операций при создании подписки по СБП.

ПОЛЯ ИСХОДЯЩЕГО ТРАНЗАКЦИОННОГО СООБЩЕНИЯ

state_fin_operation

нет

строка

 

Статус операции. Является однозначным критерием определения успешности/неуспешности операции.

state_fin_operation_parent

нет

строка

 

Статус родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция. Например, при выполнении возврата (refund). Позволяет определить, в каком статусе находится родительская операция после выполнения текущей операции.

amount_authorized

нет

число

 

Сумма, заблокированная на счете плательщика в рамках операции и не отправленная на клиринг.

amount_captured

нет

число

 

Сумма, которая в рамках операции отправлена на клиринг.

amount_cancelled

нет

число

 

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

amount_refunded

нет

число

 

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

amount_parent

нет

число

 

Сумма родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

amount_authorized_parent

нет

число

 

Сумма, заблокированная на счете плательщика в рамках родительской операции, и не отправленная на клиринг. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

amount_captured_parent

нет

число

 

Сумма, которая в рамках родительской

операции отправлена на клиринг. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

amount_cancelled_parent

нет

число

 

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

amount_refunded_parent

нет

число

 

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

processor_transaction_id

нет

строка

 

Идентификатор операции, присвоенный процессором.

processor_transaction_id_parent

нет

строка

 

Идентификатор родительской операции, присвоенный процессором. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

rrn

нет

строка

 

RRN операции. Банковский идентификатор на стороне эквайера.

rrn_parent

нет

строка

 

RRN родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

auth_code

нет

строка

 

Код авторизации операции.

auth_code_parent

нет

строка

 

Код авторизации родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

sbp_qr_id

нет

строка

 

Идентификатор QR-кода СБП.

sbp_qr_id_parent

нет

строка

 

Идентификатор QR-кода СБП для

родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

sbp_transaction_id

нет

строка

 

Идентификатор операции СБП.

sbp_transaction_id_parent

нет

строка

 

Идентификатор операции СБП для

родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

card_token_src

нет

строка

 

Токен карты плательщика. Возвращается в том случае, если имела место токенизация карты плательщика.

card_token_last_4_src

нет

строка

 

Последние 4 цифры номера карты плательщика. Возвращается в том случае, если имела место токенизация карты плательщика.

card_token_dst

нет

строка

 

Токен карты получателя. Возвращается в том случае, если имела место токенизация карты получателя.

card_token_last_4_dst

нет

строка

 

Последние 4 цифры номера карты получателя. Возвращается в том случае, если имела место токенизация карты получателя.

card_token_src_parent

нет

строка

 

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

card_token_last_4_src_parent

нет

строка

 

Последние 4 цифры номера карты плательщика для родительской операции. Возвращается в том случае, если имела место токенизация карты плательщика.

card_token_dst_parent

нет

строка

 

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

card_token_last_4_dst_parent

нет

строка

 

Последние 4 цифры номера карты получателя для родительской операции. Возвращается в том случае, если имела место токенизация карты получателя.

response_code

да

целое число

 

Код результата обработки запроса на стороне API PSP. Значение 0 (ноль) означает успех. Любое другое значение – неуспех.

response_desc

да

строка

 

Текстовое пояснение к response_code.

processor_name

нет

строка

 

Наименование фактического процессора операции.

processor_code

нет

массив целых чисел

 

Код(ы) ответ(а, ов), которые вернул фактический процессор операции.

processor_desc

нет

массив строк

 

Текстов(ое, ые) пояснени(е, я) к processor_code.

processor_code_parent

нет

массив целых чисел

 

processor_code для родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

processor_desc_parent

нет

массив строк

 

processor_desc для родительской операции. Возвращается в том случае, если в контексте запроса/ответа имеет место родительская операция.

auth_ext_url

нет

строка

 

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

sbp_link

нет

строка

 

Ссылка (deep link/universal link), позволяющая инициировать оплату через СБП на мобильном устройстве посредством выбранного плательщиком приложения банка.

sbp_qr_media_type

нет

строка

 

Формат изображения, содержащегося в параметре sbp_qr.

sbp_qr

нет

строка

 

Закодированное в формате base64 изображение QR- кода СБП.

card_pan_masked_src

нет

строка

 

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

card_payment_system_src

нет

строка

 

Платежная система карты источника.

card_issuer_country_src

нет

строка

 

Страна, в которой выпущена платежная карта источника.

card_issuer_name_src

нет

строка

 

Название банка-эмитента платежной карты источника.

inform_letter_url

нет

строка

 

URL справки об успешности операции выплата в ПСБ.

История изменений

Версия Изменения

121124

-

151124

Добавлен раздел «РЕКУРРЕНТ - ОПЕРАЦИЯ ПО СОХРАНЕННЫМ РЕКВИЗИТАМ КАРТЫ».

281124

Незначительные исправления.

041224

Добавлена информация по IP-адресам PSP.

091224

Добавлен метод method_mode = force.

161224

Добавлены новые ставки НДС 5, 7, 5/10, 7/107.

171224

Изменено значение для опроса статуса method_mode=force на forced.

090125

Исправлено значение method в Выплатах по СБП.

150125

Добавлен раздел «ЭКВАЙРИНГ - ОПЛАТА ПО СБП - ПОДПИСКИ (ПРИВЯЗКА СЧЕТА)».

Интеграция CMS

Tilda

  1. Перейдите в настройки сайта и выберите раздел Платежные системы
  2. Выберите из предложенных Платежных сервисов Pay2me
  3. Заполните Id Client и Secret Key

Для получения секретного ключа и id необходимо обратиться на почту Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.

Укажите страницы возврата после оплаты

Сохраните изменения