Перейти к основному содержимому

Методы

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

Проведение операций

fiscalization

Фискализация без выплаты

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

Чтобы отправить запрос на фискализацию, нужно сначала создать платежную сессию и получить идентификатор сессии (session_id).

Адрес для отправки запроса

/api/v1/fiscalization

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
fiscalization_details+objectДанные для фискализации
payment_method-objectПлатежные данные (карта, банковский счёт и др.)
amount_details-objectСумма
participant_details-objectИнформация об участниках выплаты
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/fiscalization \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_2704",
"fiscalization_details": {
"professional_income_taxpayer": {
"tax_reference": "123456789012",
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "ООО Вектор",
"services": [
{
"name": "Доставка товара",
"amount_details": {
"amount": 5000,
"currency": "rub"
}
},
{
"name": "Доставка сырья",
"amount_details": {
"amount": 5000,
"currency": "rub"
}
}
]
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа

{
"status": "ok",
"session": {
"id": "ps_2704",
"status": "in_progress",
"created_at": "2021-05-27T08:13:33.736384Z",
"updated_at": "2021-05-27T08:13:33.871729Z",
"payments": [
{
"id": "po_2705",
"status": "in_progress",
"created_at": "2021-05-27T08:13:33.860754Z",
"amount_details": {
"amount": 15000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"services": [
{
"name": "Доставка товара",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 2
},
{
"name": "Доставка сырья",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 1
}
],
"tax_reference": "123456789012",
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "ООО Вектор"
}
}
}
]
}
}

recurrent/disable

Отключение токена

С помощью этого запроса можно отключить токен для рекуррентных платежей. Отправьте в запросе токен, в ответ придет is_active: false. Это значит, что с этим токеном больше нельзя проводить рекуррентные платежи.

После отключения токена в параметре даты окончания действия токена finished_at может появиться дата, относящаяся к 2000 году — она ни на что не влияет, можно не обращать на неё внимание.

Адрес для отправки запроса

/api/v1/recurrent/disable

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

НазваниеОбязательностьТипОписание
recurrent+objectОбъект с токеном, который нужно отключить
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/recurrent/disable \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"recurrent": {
"token": "97417d4a9a23da9c2401c510a3fc45c2d1752f68ac9fd2a366698d70293b6427"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
recurrent+objectОбъект с токеном
Пример ответа
{
"recurrent": {
"token": "97417d4a9a23da9c2401c510a3fc45c2d1752f68ac9fd2a366698d70293b6427",
"created_at": "2020-07-14T13:17:11+03:00",
"finished_at": "2020-07-31T16:05:42+03:00",
"is_active": false
},
"status": "ok"
}

session/cancel

Отмена операции

Этот запрос можно отправлять, когда Банк 131 готов провести операцию — выплату или платеж. Например, вы получили вебхук ready_to_confirm или ready_to_capture.

Если не хотите проводить эту операцию, можете ее отменить: отправьте запрос session/cancel.

Если всё в порядке, отправьте запрос на подтверждение операции (session/confirm) или на списание замороженной суммы (session/capture).

Адрес для отправки запроса

/api/v1/session/cancel

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/cancel \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "pending",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}
]
}
}

session/capture

Списание захолдированной суммы

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

Запрос можно отправлять, когда Банк 131 готов списать деньги и прислал вам вебхук ready_to_capture.

Если вы хотите списать замороженную сумму, отправьте запрос session/capture. Можно списать замороженную сумму или меньше.

Чтобы отменить списание, отправьте (session/cancel).

Адрес для отправки запроса

/api/v1/session/capture

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии Банка 131
amount_details-objectСумма к списанию. Может быть меньше захолдированной, но обязательно больше 0. Если параметр отсутствует, то захолдированная сумма будет списана полностью
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/capture \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка

session/confirm

Подтверждение операции

Этот запрос можно отправлять, когда Банк 131 готов провести операцию — выплату или платеж. Например, вы получили вебхук ready_to_confirm.

Вам нужно проверить параметры операции и принять решение. Если всё в порядке, подтвердите операцию: отправьте Банку session/confirm. Если что-то не так, отмените операцию: отправьте запрос (session/cancel).

Адрес для отправки запроса

/api/v1/session/confirm

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
confirm_information- (обязательно при операциях с номинальным счетом или если requier_confirm_information = true)objectИнформация для подтверждения операции
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/confirm \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "pending",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}
]
}
}

session/create

Создание платежной сессии

Этот запрос создает платежную сессию на стороне Банка 131.

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

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

Если вы готовы передать в запросе все данные, которые нужны для проведения операции, можете использовать метод, при котором сразу после создания сессии стартует выплата (session/start/payout) или оплата (session/start/payment). В этом случае запускать операцию отдельным запросом не нужно.

В ответе возвращаются параметры созданной сессии.

Адрес для отправки запроса

/api/v1/session/create

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

НазваниеОбязательностьТипОписание
payment_method-objectПлатежные данные (карта, банковский счет и др.)
payment_details-objectПлатежные данные
amount_details-objectСумма. Передается в минорных единицах. Чтобы передать 100 рублей, евро или долларов США, укажите 10000
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details-objectИнформация об участниках операции (отправителе и получателе)
customerОбязательно для платежейobjectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/create \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "order123"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "created",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z"
}
}

session/init/payment

Создание сессии с одновременным стартом платежа

Можно использовать, если вы сразу готовы передать все параметры, необходимые для оплаты. Например, при оплате банковской картой, если у вас есть PCI DSS.

В ответе возвращаются параметры созданной сессии и объект с информацией о платеже (acquiring_payments).

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

НазваниеОбязательностьТипОписание
payment_details+objectПлатежные данные
amount_details+objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
participant_details-objectИнформация об участниках
customer+objectДанные клиента вашей системе
payment_options-objectДополнительные параметры платежа
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/init/payment \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "05",
"expiration_year": "22",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://131.ru"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"acquiring_payments": [
{
"id": "pm_203",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"payment_options": {
"return_url": "https://131.ru"
}
}
]
}
}

session/init/payment/sync

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

Платеж одним запросом

Этот метод позволяет отправить запрос на оплату и сразу получить ответ. Можно использовать, если вы готовы в этом запросе передать все параметры для оплаты. Например, при оплате банковской картой, если у вас есть PCI DSS.

В ответе возвращаются параметры созданной сессии и объект acquiring_payments с результатом платежа и всей информацией о нем.

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

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

НазваниеОбязательностьТипОписание
payment_details+objectПлатежные данные
  type+stringТип способа оплаты. Возможные варианты: card
  card+objectОбъект с данными банковской карты
    type+stringСпособ передачи данных карты. Значение: bank_card
    bank_card+objectОбъект с данными карты в открытом виде
      number+stringНомер карты
      expiration_month+stringМесяц, до которого действует карта, в формате ММ. Например 01
      expiration_year+stringМесяц, до которого действует карта, в формате ГГ. Например 22
      security_code+stringСекретный код CVC или CVV
amount_details+objectДанные для суммы платежа
  amount+intСумма в копейках. Значение должно быть больше нуля. Чтобы передать 100 рублей, укажите 10000
  currency+stringКод валюты согласно ISO 4217. Регистр не важен. Всегда: rub
participant_details-objectИнформация об участниках
customer+objectДанные отправителя платежа на вашей стороне
  reference+stringИдентификатор отправителя платежа в вашей системе
payment_options+objectДополнительные параметры платежа
  return_url+stringURL, на который нужно перенаправить пользователя после проведения платежа. URL должен быть валидным
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://proxy.bank131.ru/api/v1/session/init/payment/sync \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "01",
"expiration_year": "22",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://131.ru"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "accepted",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"acquiring_payments": [
{
"id": "pm_203",
"status": "succeeded",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"payment_options": {
"return_url": "https://131.ru"
}
}
]
}
}

session/init/payout

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

Можно использовать этот запрос, если вы сразу готовы передать все параметры для создания выплаты. Например, при отправке выплаты на российский банковский счет. При выплате на банковскую карту — только если у вас есть PCI DSS.

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

В ответе возвращаются параметры созданной сессии и объект с информацией о выплате (Payment).

Адрес для отправки запроса

/api/v1/session/init/payout

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

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные (карта, банковский счет и др.)
amount_details+objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
fiscalization_details-objectДанные для фискализации
participant_details-objectИнформация об участниках операции (отправителе и получателе)
customer+objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/init/payout \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"amount_details": {
"amount": 1000,
"currency": "rub"
},
"participant_details": {
"recipient": {
"full_name": "Ivanov Ivan"
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}
]
}
}

session/init/payout/fiscalization

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

Можно использовать при выплатах самозанятым, если вы сразу готовы передать всю информацию о самозанятом и платежные данные для создания выплаты. Например, при отправке выплаты на российский банковский счет. При выплате на банковскую карту — только если у вас есть PCI DSS.

В ответе возвращаются параметры созданной сессии, объект с информацией о выплате (Payment) с данными для отправки чека.

Адрес для отправки запроса

/api/v1/session/init/payout/fiscalization

НазваниеОбязательностьТипОписание
payment_method-objectПлатежные данные (карта, банковский счет и др.)
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
fiscalization_details-objectДанные для фискализации
participant_details-objectИнформация об участниках операции (отправителе и получателе)
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://proxy.bank131.ru/api/v1/session/init/payout/fiscalization \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"fiscalization_details": {
"professional_income_taxpayer": {
"tax_reference": "590000000000",
"payer_type": "legal",
"payer_tax_number": "3300000000",
"payer_name": "OOO Vector",
"services": [
{
"name": "Service description",
"amount_details": {
"amount": 10000,
"currency": "rub"
}
}
]
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "order123",
"participant_details": {
"recipient": {
"full_name": "Ivanov Ivan"
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "created",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2909",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"tax_reference": "590000000000",
"payer_type": "legal",
"payer_tax_number": "3300000000",
"payer_name": "OOO Vector",
"services": [
{
"name": "Service description",
"amount_details": {
"amount": 10000,
"currency": "rub"
}
}
]
}
},
"metadata": "order123",
"participant_details": {
"recipient": {
"full_name": "Ivanov Ivan"
}
}
}
]
}
}

session/refund

Возврат

С помощью этого запроса можно вернуть деньги пользователю после успешного платежа.

После проведения возврата Банк 131 отправит вам вебхук payment_refunded.

Адрес для отправки запроса

/api/v1/session/refund

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор успешной платежной сессии, по которой необходимо провести возврат
amount_details-objectСумма возврата. Если не указывать, то возврат будет на полную сумму платежа
metadata-*Дополнительная информация
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/refund \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"acquiring_payments": [
{
"id": "pm_2705",
"status": "succeeded",
"created_at": "2018-05-27T02:03:00.000000Z",
"finished_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"refunds": [
{
"id": "rf_23",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"amount_details": {
"amount": 10000,
"currency": "rub"
}
}
]
}
]
}
}

session/start/payment

Старт платежа

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

Адрес для отправки запроса

/api/v1/session/start/payment

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_details-objectПлатежные данные
amount_details-objectСумма
participant_details-objectИнформация об участниках (отправителе и получателе платежа)
customer-objectДанные отправителя платежа в вашей системе
payment_options-objectДополнительные параметры платежа
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/start \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230",
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "01",
"expiration_year": "26",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://www.131.ru"
},
"metadata": "good"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-08-21T06:21:36.913863Z",
"updated_at": "2024-08-21T06:21:56.832509Z",
"acquiring_payments": [
{
"id": "pm_3232",
"status": "in_progress",
"created_at": "2024-08-21T06:21:56.846204Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa",
"country_iso3": "RUS"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"payment_options": {
"return_url": "https://www.131.ru"
},
"metadata": "good"
}
]
}
}

session/start/payout

Старт выплаты

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

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

Адрес для отправки запроса

/api/v1/session/start/payout

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_method-objectПлатежные данные (карта, банковский счёт и др.)
amount_details-objectСумма
participant_details-objectИнформация об участниках выплаты
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/start/payout \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}
]
}
}

session/start/payout/fiscalization

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

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

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

Адрес для отправки запроса

/api/v1/session/start/payout/fiscalization

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_method-objectПлатежные данные (карта, банковский счет и др.)
amount_details-objectСумма
fiscalization_details-objectДанные для фискализации
participant_details-objectИнформация об участниках выплаты
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/start/payout/fiscalization \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230",
"fiscalization_details": {
"professional_income_taxpayer": {
"tax_reference": "590000000000",
"payer_type": "legal",
"payer_tax_number": "330000000000",
"payer_name": "ООО Вектор",
"services": [
{
"name": "Доставка товара",
"amount_details": {
"amount": 5000,
"currency": "rub"
}
}
]
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_203",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"services": [
{
"name": "Доставка товара",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 1
}
],
"tax_reference": "590613976192",
"payer_type": "legal",
"payer_tax_number": "3316004710",
"payer_name": "ООО Вектор"
}
}
}
]
}
}

token

Генерация публичного токена для работы с виджетами

Токен нужен для доступа к JavaScript-библиотеке Банка 131. Вы можете сгенерировать его этим запросом и использовать для работы с виджетами.

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

Адрес для отправки запроса

/api/v1/token

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

НазваниеОбязательностьТипОписание
tokenize_widget-objectДанные для работы виджета токенизации
self_employed_widget-objectДанные для работы виджета регистрации самозанятого
acquiring_widget-objectДанные для работы виджета платежной формы
Пример запроса на создание токена для проведения выплаты с получением данных карты через виджет и с привязкой самозанятого
curl -X POST \
https://demo.bank131.ru/api/v1/token \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tokenize_widget": {
"access": true
},
"self_employed_widget": {
"tax_reference": "111111111111"
}
}'
Пример запроса на создание токена для проведения платежа с оплатой через платежную форму
curl -X POST \
https://demo.bank131.ru/api/v1/token \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"acquiring_widget": {
"session_id": "ps_123456"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
public_token-stringПубличный токен
error-objectОшибка
Примеры ответов
{
"status": "ok",
"public_token": "e065c2f1328e74156a883c00e210a4b1b1451782bbfdd18ae8d05715e05d8539"
}

token/info

Получение информации по токену

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

По любому платежному токену можно получить информацию:

  • о банковской карте, для которой создан этот токен — это будет маскированный номер карты и платежная система;
  • или о самом токене — тип токена, время создания, срок действия, активен ли этот токен на момент запроса.

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

Адрес для отправки запроса

/api/v1/token/info

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

НазваниеОбязательностьТипОписание
type+stringТип запроса. Варианты: card, public_token, recurrent_token, bank_account_ru
card- (обязателен для type = card)objectОбъект с данными банковской карты
public_token- (обязателен для type = public_token)objectОбъект с данными токена
recurrent_token- (обязателен для type = recurrent_token)objectОбъект с данными токена для рекуррентных платежей и выплат
bank_account_ru- (обязателен для type = bank_account_ru)objectОбъект с данными банковского счета
Примеры запросов информации

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

curl -X POST \
https://demo.bank131.ru/api/v1/token/info \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"type": "card",
"card": {
"type": "encrypted_card",
"encrypted_card": {
"number_hash": "card_number_hash (token)"
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
info-objectИнформация о токене, зависит от типа запроса (type): токенизированная банковская карта, публичный токен, токен для рекуррентных платежей или выплат или токен банковского счета
error-objectОшибка
Примеры ответов
{
"status": "ok",
"info": {
"number_hash": "card_number_hash",
"brand": "visa",
"last4": "4242",
"type": "card"
}
}

tokenize

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

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

Адрес для отправки запроса

/api/v1/tokenize

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

ПараметрТипОписание
typestringТип банковского счета
bank_account_ruobjectОбъект дополнительной информации о банковском счете
bikstringБИК банка
accountstringНомер счета
Пример запроса
curl -X POST \
https://proxy-stage.bank131.ru/api/v1/tokenize \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"type": "bank_account_ru",
"bank_account_ru": {
"bik": "044525974",
"account": "40817810400003869535"
}
}'

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

ПараметрТипОписание
statusstringТип банковского счета
tokenstringТокен
dataobjectОбъект с маскированным счетом
errorobjectОбъект с описанием ошибки
Примеры ответов
{
"status": "ok",
"token": "2c6ebe1368407b922057efee0fed58360dae1d28af50fa6734bb54c61a763c24",
"data": {
"masked_account": "40702***0025"
}
}

tokenize/elements

Метод для токенизации номера карты с хранением токенизированных данных на стороне Банка 131.

Метод доступен только для клиентов с PCI DSS. Для использования этого метода нужно обратиться к вашему менеджеру в Банке 131.

Адрес для отправки запроса

/api/v1/tokenize/elements

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

НазваниеОбязательностьТипОписание
card_elements+objectОбъект с номером банковской карты для токенизации
Пример запроса
curl -X POST \
https://proxy-stage.bank131.ru/api/v1/tokenize/elements \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"card_elements": [
{
"ref": "number",
"type": "card_number",
"card_number": "4242424242424242"
}
]
}'
Пример ответа
{
"status": "ok",
"data": {
"number": {
"token": "adb0eb0ac3f1f5f627f15aa8ca47b13483325ec42baab5e87cbff5f784dca919",
"info": {
"masked_card_number": "424242******4242",
"card_network": "visa",
"card_type": "visa"
}
}
}
}

Информация

fps/banks

С помощью этого запроса вы можете получить список наименований и идентификаторов банков-участников Системы быстрых платежей.

Адрес для отправки запроса

/api/v1/fps/banks

Пример запроса
curl -X GET
https://demo.bank131.ru/api/v1/fps/banks' \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{}'
Пример ответа
{
"banks": [
{
"id": "100000000243",
"eng_name": "National Standard Bank",
"ru_name": "Национальный стандарт"
},
{
"id": "100000000056",
"eng_name": "Khlynov",
"ru_name": "Хлынов"
},
...
]
}

fps/customer_verification

С помощью этого запроса можно проверить, зарегистрирован ли получатель в Системе быстрых платежей. Если пользователь найден в СБП, то сессия примет успешный статус, иначе сессия отменится. Эта операция не тарифицируется и подтверждается автоматически (вебхук ready_to_confirm не отправляется).

Адрес для отправки запроса

/api/v1/fps/customer_verification

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

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные (карта, банковский счёт и др.)
participant_details+objectИнформация об участниках выплаты
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/fps/customer_verification \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "faster_payment_system_verification",
"faster_payment_system_verification": {
"phone": "79261234567",
"bank_id": "100000000069"
}
}
},
"participant_details": {
"recipient": {
"first_name": "Иван",
"last_name": "Иванов",
"middle_name": "Иванович"
}
}
}

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_109941",
"status": "in_progress",
"created_at": "2022-03-01T11:57:31.652396Z",
"updated_at": "2022-03-01T11:57:31.861329Z",
"payments": [
{
"id": "po_31668",
"status": "in_progress",
"created_at": "2022-03-01T11:57:31.895773Z",
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "faster_payment_system_verification",
"faster_payment_system_verification": {
"phone": "79261234567",
"bank_id": "100000000069"
}
}
},
"participant_details": {
"recipient": {
"first_name": "Иван",
"last_name": "Иванов",
"middle_name": "Иванович"
}
}
}
]
}
}

report/account_balance

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

Адрес для отправки запроса

/api/v1/report/account_balance

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

НазваниеОбязательностьТипОписание
account_number+stringНомер счета. Счет должен начинаться с цифр: 40702, 40703, 40802, 40807, 40701
Пример запроса
curl -X GET \
https://demo.bank131.ru/api/v1/report/account_balance \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"account_number": "40702810400000000333"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
account_number-stringНомер счета
account_currency-stringВалюта счета согласно ISO 4217. Пример: RUB
balance-objectИнформация о балансе
error-objectОшибка
Примеры ответов
{
"status": "ok",
"account_number": "40702810400000000333",
"account_currency": "RUB",
"balance": {
"current_balance": 20900
}
}

report/account_statement

Используйте этот метод, чтобы запросить выписку по расчетному или номинальному счету в рублях. Выписку можно получить по данным за одни сутки. Чтобы узнать больше, переходите по ссылке.

Адрес для отправки запроса

/api/v1/report/account_statement

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

НазваниеОбязательностьТипОписание
date_from+dateДата начала выписки. Пример: 2023-06-01
date_to+dateДата окончания выписки. Пример: 2023-06-01
account_number+stringНомер счета (20 цифр), по которому запрашивается выписка

Значения в date_from и date_to должны совпадать.

Пример запроса
curl -X GET \
https://demo.bank131.ru/api/v1/report/account_statement \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"date_from": "2023-06-01",
"date_to": "2023-06-01",
"account_number": "40702810600200000014"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
name+stringНазвание метода account_statement
account_statement+objectДетали выписки
  date_from+dateДата начала выписки
  date_to+dateДата окончания выписки
  account_number+stringНомер счёта (20 цифр), по которому сформирована выписка
total_turnover+objectИнформация по движению средств
  debet+intСумма списаний по счёту за период выписки
  credit+intСумма пополнений по счёту за период выписки
total_balance+objectИнформация по балансу
  opening+intВходящий остаток по счёту на дату начала выписки
  closing+intИсходящий остаток по счёту на дату окончания выписки
transactions+objectСписок транзакций
  amount+intСумма транзакции (только неотрицательные значения)
  base_amount-intСумма операции в валюте. Заполняется только для транзакций в валюте, отличной от рублей. При использовании базовой валюты (RUB) параметр является необязательным
  currency+stringВалюта операции
  payment_date+dateДата операции
  bank_system_id+stringИдентификатор платежа. Указывается для любого движения денежных средств по счету:
- для платежей, отправленных по API
- для переводов из другого банка
- для платежей, совершенных через интернет-банк
  transaction_id-stringИдентификатор транзакции. Передается для платежей, отправленных по API
  session_id-stringИдентификатор сессии. Передается для платежей, отправленных по API
  purpose+stringНазначение платежа
counter_party+objectИнформация о контрагенте
  kpp-stringКПП контрагента
  inn-stringИНН контрагента
  name+stringНаименование контрагента
  account_number+stringНомер счета контрагента
  bank_code+stringБИК банка контрагента
  type+stringТип транзакции. Может принимать значения credit (для операции пополнения) или debet (для операции списания)
Пример успешного ответа
{
"status": "ok",
"method": {
"name": "account_statement",
"account_statement": {
"date_from": "2022-11-12T18:19:32.487+0000",
"date_to": "2022-11-13T18:19:32.487+0000",
"account_number": "40703810500000000025",
"total_turnover": {
"debet": 0,
"debet_base": null,
"credit": 100,
"credit_base": null
},
"total_balance": {
"opening": 0,
"opening_base": null,
"closing": 100,
"closing_base": null
},
"transactions": [
{
"amount": 10000,
"base_amount": null,
"currency": "RUB",
"payment_date": "2022-11-13",
"bank_system_id": "2080040097819020",
"transaction_id": "c7b923ec-844f-4d98-ad02-795d62fe1989",
"session_id": "ps_3230",
"purpose": "Пополнение счета для тестов",
"counter_party": {
"kpp": "165501001",
"inn": "1655415696",
"name": "Плата за услуги процессинга по переводам без открытия счета",
"account_number": "70606810600004710401",
"bank_code": "049205131"
},
"type": "credit"
}
]
}
}
}
Примеры неуспешных ответов

date_from не равна date_to

{
"status": "error",
"error": {
"description": "Invalid input request parameters: (max interval is 1 day)",
"code": "invalid_request"
}
}

date_from больше date_to

{
"status": "error",
"error": {
"description": "Invalid input request parameters: (date_to must be greater than date_from); (max interval is 1 day)",
"code": "invalid_request"
}
}

Невалидная дата в date_from

{
"status": "error",
"error": {
"description": "Invalid value in date_from",
"code": "invalid_request"
}
}

Невалидная дата в date_to

{
"status": "error",
"error": {
"description": "Invalid value in date_to",
"code": "invalid_request"
}
}

session/status

Получение информации по сессии

Вы можете отправить этот запрос, если хотите получить полную информацию о платежной сессии. Например, проверить, прошла выплата или нет. Или узнать, можно ли списывать сумму, захолдированную при оплате картой.

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

Адрес для отправки запроса

/api/v1/session/status

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"next_action": "confirm",
"payments": [
{
"id": "po_2018",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa",
"bin": "220220"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"transaction_info": {
"rrn": "425307614918",
"auth_code": "057441"
},
"metadata": "good"
}
]
}
}

wallet/balance

С помощью этого запроса можно узнать ваш текущий баланс на депозите в Банке 131.

примечание

Данный метод можно использовать только для выплат. Информация о балансе для эквайринга доступна в вашем аккаунте интернет-банка в разделе Выписки, если возмещение перечисляется на счет в Банке 131.

Это нужно, чтобы убедиться, что на депозите достаточно денег:

  • для проведения выплат,
  • для проведения возвратов.

Если денег недостаточно, вы можете пополнить депозит.

Данный метод не передает информацию о балансе номинального счета. Эту информацию можно получить в вашем аккаунте интернет-банка в разделе Счета или с помощью метода report/account_balance.

Адрес для отправки запроса

/api/v1/wallet/balance

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

НазваниеОбязательностьТипОписание
request_datetime+stringТекущее время запроса в формате ISO 8601
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/wallet/balance \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_datetime": "2019-10-14T19:53:00+03:00"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
wallets-objectСписок доступных счетов обеспечения в Банке 131
error-objectОшибка
Пример ответа
{
"status": "ok",
"wallets": [
{
"id": "131",
"amount_details": {
"amount": 13100,
"currency": "rub"
}
}
]
}

Самозанятые

check и request/status

Проверка статуса самозанятого

Этот запрос позволяет проверить по ИНН, является физлицо самозанятым или нет.

Запрос состоит из двух частей:

  1. Отправьте запрос check с ИНН физлица в параметре tax_reference и получите в ответ идентификатор request_id.
  2. Отправьте запрос request/status с этим идентификатором. В ответе придет информация, зарегистрирован ли этот ИНН в налоговой как самозанятый и привязан ли он к Банку 131.

Запрос check не следует отправлять чаще, чем раз в 30 секунд.

Адрес для отправки запроса check

/api/v1/npd/check

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

НазваниеОбязательностьТипОписание
tax_reference+stringИНН физлица
Пример запроса check
curl -X POST \
https://demo.bank131.ru/api/v1/npd/check \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tax_reference": "123456789012"
}'

Параметры ответа на запрос check

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
request_id+stringИдентификатор запроса
Пример ответа на запрос check
{
"status": "ok",
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса request/status

/api/v1/npd/request/status

Параметры запроса request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос check
Пример запроса request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
is_professional_income_taxpayer-boolЯвляется ли физлицо самозанятым
is_linked-boolПривязан ли самозанятый к Банку 131
error-objectОшибка
Примеры ответов на запрос request/status для check
{
"status": "ok",
"is_professional_income_taxpayer": true,
"is_linked": true
}

npd/accruals и npd/request/status

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

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/accruals, передайте в параметрах данные самозанятого и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет подробная информация о наличии налоговой задолженности и остатке налогового бонуса у самозанятого.

Адрес для отправки запроса npd/accruals

/api/v1/npd/accruals

Параметры запроса npd/accruals

НазваниеОбязательностьТипОписание
tax_reference_list+arrayСписок ИНН самозанятых. Не более 100 ИНН в одном запросе
Пример запроса npd/accruals
curl -X POST \
https://demo.bank131.ru/api/v1/npd/accruals \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tax_reference_list": [
"111111111111"
]
}'

Параметры ответа на запрос npd/accruals

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/accruals
Пример ответа на запрос npd/accruals
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/accruals
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
accruals-jagged array
tax_charge_list-arrayИнформация о налоговой задолженности
amount-stringСумма начисления
due_date-stringСрок оплаты
tax_period_id-stringИдентификатор налогового периода. Формат: ГГГГММ
oktmo-stringОКТМО региона ведения деятельности
kbk-stringКод бюджетной классификации
paid_amount-stringСумма поступивших оплат в АИС Налог 3 по данному начислению
create_time-stringДата и время создания налогового начисления
id-stringВнутренний идентификатор налогового начисления в ПП НПД
krsb_list-arrayИнформация о задолженности по карточке
debt-stringСумма о задолженности по карточке
penalty-stringСумма пени по карточке
overpayment-stringСумма переплаты по карточке
oktmo-stringОКТМО региона ведения деятельности, связанного с КРСБ
kbk-stringКод бюджетной классификации, связанный с КРСБ
tax_organ_code-stringКод налогового органа, связанного с КРСБ
update_time-stringДата/Время обновления информации по карточке в ПП НПД
id-stringВнутренний идентификатор карточки в ПП НПД
inn-stringИНН
Пример ответа на запрос npd/request/status
{
"status": "ok",
"accruals": [
{
"tax_charge_list": [
{
"amount": "",
"due_date": "",
"tax_period_id": "",
"oktmo": "",
"kbk": "",
"paid_amount": "",
"create_time": "",
"id": ""
}
],
"krsb_list": [
{
"debt": "",
"penalty": "",
"overpayment": "",
"oktmo": "",
"kbk": "",
"tax_organ_code": "",
"update_time": "",
"id": ""
}
],
"inn": "111111111111"
}
]
}

npd/notifications/count и npd/request/status

Метод для получения количества непрочитанных оповещений из ФНС для самозанятых.

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/notifications/count, передайте в параметрах ИНН и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет информация о количестве непрочитанных оповещений. Статус pending означает, что необходимо повторить запрос.

Адрес для отправки запроса npd/notifications/count

/api/v1/npd/notifications/count

Параметры запроса npd/notifications/count

НазваниеОбязательностьТипОписание
tax_reference_list+arrayСписок ИНН (не более 1000 штук в одном запросе)
Пример запроса npd/notifications/count
curl -X POST \
https://demo.bank131.ru/api/v1/npd/notifications/count \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tax_reference_list": [
"123456789012"
]
}'

Параметры ответа на запрос npd/notifications/count

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/count
Пример ответа на запрос npd/notifications/count
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/count
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
info-arrayКоличество оповещений
Пример ответа на запрос npd/request/status
{
"status": "ok",
"info": [
{
"tax_reference": "",
"count": 0
}
]
}

npd/notifications/mark_as_delivered и npd/request/status

Метод для отправки в ФНС уведомления о доставке оповещений самозанятому. Метод необходимо вызывать после метода notifications/read.

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/notifications/mark_as_delivered, передайте в параметрах данные самозанятого и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет статус доставки.

Адрес для отправки запроса npd/notifications/mark_as_delivered

/api/v1/npd/notifications/mark_as_delivered

Параметры запроса npd/notifications/mark_as_delivered

НазваниеОбязательностьТипОписание
notification_list+arrayДанные об оповещениях
Пример запроса npd/notifications/mark_as_delivered
curl -X POST \
https://demo.bank131.ru/api/v1/npd/notifications/mark_as_delivered \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"notification_list": [
{
"message_id_list": [
"123",
"234"
],
"tax_reference": "123456789012"
}
]
}'

Параметры ответа на запрос npd/notifications/mark_as_delivered

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/mark_as_delivered
Пример ответа на запрос npd/notifications/mark_as_delivered
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/mark_as_delivered
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
Пример ответа на запрос npd/request/status
{
"status": "ok"
}

npd/notifications/read и npd/request/status

Метод для получения подробной информации о непрочитанных оповещениях для самозанятых из ФНС.

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/notifications/read, передайте в параметрах ИНН и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет информация о непрочитанных оповещениях для самозанятых из ФНС. Статус pending означает, что необходимо повторить запрос.

Адрес для отправки запроса npd/notifications/read

/api/v1/npd/notifications/read

Параметры запроса npd/notifications/read

НазваниеОбязательностьТипОписание
tax_reference_list+arrayСписок ИНН
get_read+booleanВыводить в ответе уже прочитанные оповещения. Возможные варианты: true — выводить; false — не выводить
get_archived+booleanВыводить в ответе архивные оповещения. Возможные варианты: true — выводить; false — не выводить
Пример запроса npd/notifications/read
curl -X POST \
https://demo.bank131.ru/api/v1/npd/notifications/read \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tax_reference_list": [
"123456789012"
],
"get_read": false,
"get_archived": false
}'

Параметры ответа на запрос npd/notifications/read

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/read
Пример ответа на запрос npd/notifications/read
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/read
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
info-arrayСписок параметров для ИНН
Пример ответа на запрос npd/request/status
{
"status": "ok",
"info": [
{
"tax_reference": "123456789012",
"notifications": [
{
"id": "132313",
"title": "131.ru запрашивает разрешение на осуществление определенных действий от Вашего имени",
"message": "131.ru запросил у Вас разрешение на осуществление определенных действий от Вашего имени. Вы можете ознакомиться с перечнем запрошенных разрешений и дать свое согласие (уполномочить 131.ru), нажав кнопку \"Разрешить\", или отказать ему, нажав кнопку \"Отказать\".",
"status": "NEW",
"created_at": "2023-03-22T13:29:55+00:00"
}
]
}
]
}'

npd/notifications/update и npd/request/status

Метод для отправки в ФНС уведомления о том, что оповещение было прочитано самозанятым. Метод необходимо вызывать после метода notifications/mark_as_delivered.

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/notifications/update, передайте в параметрах данные самозанятого и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет статус отправки.

Адрес для отправки запроса npd/notifications/update

/api/v1/npd/notifications/update

Параметры запроса npd/notifications/update

НазваниеОбязательностьТиОписание
notification_list+arrayДанные об оповещениях
Пример запроса npd/notifications/update
curl -X POST \
https://demo.bank131.ru/api/v1/npd/notifications/update \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"notification_list": [
{
"tax_reference": "123456789012"
}
]
}'

Параметры ответа на запрос npd/notifications/update

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/update
Пример ответа на запрос npd/notifications/update
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/notifications/update
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
Пример ответа на запрос npd/request/status
{
"status": "ok"
}

npd/taxpayer/account_status и npd/request/status

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

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/taxpayer/account_status, передайте в параметрах данные самозанятого и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет общая информация о наличии налоговой задолженности и остатке налогового бонуса у самозанятого.

Адрес для отправки запроса npd/taxpayer/account_status

/api/v1/npd/taxpayer/account_status

Параметры запроса npd/taxpayer/account_status

НазваниеОбязательностьТипОписание
tax_reference+stringИНН самозанятого. Не более 1 ИНН в запросе
Пример запроса npd/taxpayer/account_status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/taxpayer/account_status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tax_reference": "123456789012"
}'

Параметры ответа на запрос npd/taxpayer/account_status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/taxpayer/account_status
Пример ответа на запрос npd/taxpayer/account_status
{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/taxpayer/account_status
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
bonus_amount-stringСумма бонусного счета
unpaid_amount-stringОбщая сумма неоплаченных платежей
debt_amount-stringСумма задолженности (включена в общая сумму неоплаченных платежей)
Пример ответа на запрос npd/request/status
{
"status": "ok",
"bonus_amount": "9972.3624",
"unpaid_amount": "0",
"debt_amount": "0"
}

npd/taxpayer/check_personal_info и npd/request/status

Проверка соответствия данных самозанятого

Запрос позволяет проверить соответствие данных (ИНН, ФИО, номер телефона) самозанятого с теми, которые имеются в ФНС.

Запрос состоит из двух частей:

  1. Отправьте запрос в методе npd/taxpayer/check_personal_info, передайте в параметрах ИНН, ФИО и номер телефона самозанятого, и получите в ответ идентификатор в параметре request_id.
  2. Отправьте запрос с этим идентификатором в методе npd/request/status. В ответе придет информация о возможных расхождениях с данными, которые есть у ФНС. Статус pending означает, что необходимо повторить запрос.

Адрес для отправки запроса npd/taxpayer/check_personal_info

/api/v1/npd/taxpayer/check_personal_info

Параметры запроса npd/taxpayer/check_personal_info

НазваниеОбязательностьТипОписание
first_name+stringИмя самозанятого
second_name+stringФамилия самозанятого
patronymic+stringОтчество самозанятого
tax_reference+stringИНН самозанятого
phone+stringНомер телефона самозанятого. Формат: "7ХХХХХХХХХХ"
Пример запроса npd/taxpayer/check_personal_info
curl -X POST \
https://demo.bank131.ru/api/v1/npd/taxpayer/check_personal_info \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"first_name": "Иван",
"second_name": "Иванов",
"patronymic": "Иванович",
"tax_reference": "123456789012",
"phone": "71234567890"
}'

Параметры ответа на запрос npd/taxpayer/check_personal_info

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
request_id-stringИдентификатор, который пришел в ответ на запрос npd/taxpayer/check_personal_info
Пример ответа на запрос npd/taxpayer/check_personal_info
{
"status": "ok",
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}

Адрес для отправки запроса npd/request/status

/api/v1/npd/request/status

Параметры запроса npd/request/status

НазваниеОбязательностьТипОписание
request_id+stringИдентификатор, который пришел в ответ на запрос npd/taxpayer/check_personal_info
Пример запроса npd/request/status
curl -X POST \
https://demo.bank131.ru/api/v1/npd/request/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
}'

Параметры ответа на запрос npd/request/status

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok, pending
success-booleanРасхождение в параметрах. true - расхождение не обнаружено; false - обнаружено расхождение
violations-array[string]Массив с названиями параметров, в значениях которых обнаружены расхождения. Возможные значения: "first_name", "second_name", "patronymic", "tax_reference", "phone"
error-objectОшибка
Пример ответа на запрос npd/request/status
{
"status": "ok",
"success": false,
"violations": [
"first_name",
"second_name",
"phone"
]
}

Номинальный счет

session/init/payout/nominal

Создание сессии с одновременным стартом выплаты на банковский счет

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

Адрес для отправки запроса

api/v1/session/init/payout/nominal

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

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
participant_details+objectИнформация об участниках операции (отправителе и получателе)
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Примеры запросов
curl -X POST \
https://demo.bank131.ru/api/v1/session/init/payout/nominal \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "bank_account",
"bank_account": {
"ru": {
"bik": "044525974",
"account": "40817810400003869535",
"full_name": "Иванов Иван Иванович",
"description": "Перевод средств по договору № 5015553111 Иванов Иван Иванович НДС не облагается"
},
"system_type": "ru"
}
},
"amount_details": {
"amount": 300,
"currency": "rub"
},
"participant_details": {
"sender": {
"account": "40702810300200000013"
},
"recipient": {
"beneficiary_id": "1234567890"
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_287403",
"status": "in_progress",
"created_at": "2023-05-10T16:58:43.586072Z",
"updated_at": "2023-05-10T16:58:43.705620Z",
"payments": [
{
"id": "po_72265",
"status": "in_progress",
"created_at": "2023-05-10T16:58:43.781934Z",
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "ru",
"ru": {
"bik": "049205131",
"account": "40702810900000000001",
"full_name": "Наименование организации",
"description": "Перечисление денежных средств по договору № 1 НС от 01.09.2021 комиссия площадки за декабрь 2022 г. НДС не облагается.",
"is_fast": false,
"kpp": "156605001",
"inn": "3111104710"
}
}
},
"amount_details": {
"amount": 200,
"currency": "rub"
},
"paymentMetadata": {},
"participant_details": {
"sender": {
"account": "40702810300200000013"
},
"recipient": {
"beneficiary_id": "1234567890"
}
}
}
]
}
}

session/multi/create/nominal

Создание платежной сессии

Этот запрос создает платежную сессию на стороне Банка 131.

Сессия необходима для проведения платежных операций. В рамках сессии может проходить одна или несколько операций.

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

Если вы готовы передать в запросе все данные, которые нужны для проведения операции, можете использовать метод, при котором сразу после создания сессии стартует выплата session/multi/init/payment/nominal. В этом случае запускать операцию отдельным запросом не нужно.

В ответе возвращаются параметры созданной сессии.

Адрес для отправки запроса

/api/v1/session/multi/create/nominal

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

НазваниеОбязательностьТипОписание
payment_details+objectДанные о переводе
payment_method+objectПлатежные данные (карта, банковский счет и др.)
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details- (обязателен при выплатах на карту)objectИнформация об участниках операции (отправителе и получателе)
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/multi/create/nominal \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "Назначение платежа"
}
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "****************"
}
}
},
"participant_details": {
"sender": {
"full_name": "Данные отправителя",
"beneficiary_id": "1234567890"
},
"recipient": {
"full_name": "Иванов Иван Иванович"
}
},
"amount_details": {
"amount": 293400,
"currency": "RUB"
},
"customer": {
"reference": "123456789012"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_72974",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.274416Z",
"updated_at": "2021-08-06T11:34:51.466550Z",
"payments": [
{
"id": "po_25657",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545329Z",
"customer": {
"reference": "lucky"
},
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "0002"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
],
"acquiring_payments": [
{
"id": "pm_15174",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545232Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "test payout",
"card_mask": "400000******0002"
}
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
]
}
}

session/multi/init/payment/nominal

Создание сессии с одновременным стартом выплаты на банковскую карту

Можно использовать этот запрос, если вы сразу готовы передать все параметры для создания выплаты. При выплате на банковскую карту — только если у вас есть PCI DSS.

В ответе возвращаются параметры созданной сессии и объект с информацией о выплате (acquiring_payments).

Адрес для отправки запроса

/api/v1/session/multi/init/payment/nominal

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

НазваниеОбязательностьТипОписание
payment_details+objectДанные о переводе
payment_method+objectПлатежные данные (карта)
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details+ (обязателен при выплатах на карту)objectИнформация об участниках операции (отправителе и получателе)
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
customer+objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/multi/init/payment/nominal \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "test payout"
}
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"participant_details": {
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"beneficiary_id": "123412341234"
},
"sender": {
"full_name": "Ivan Ivanovich Ivanov",
"beneficiary_id": "123412341234"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"customer": {
"reference": "test"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_72974",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.274416Z",
"updated_at": "2021-08-06T11:34:51.466550Z",
"payments": [
{
"id": "po_25657",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545329Z",
"customer": {
"reference": "lucky"
},
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "0002"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
],
"acquiring_payments": [
{
"id": "pm_15174",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545232Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "test payout",
"card_mask": "400000******0002"
}
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
]
}
}

session/multi/start/payment/nominal

Старт выплаты

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

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

Адрес для отправки запроса

/api/v1/session/multi/start/payment/nominal

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_details-objectДанные о переводе
payment_method-objectПлатежные данные (карта, банковский счет и др.)
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details- (обязателен при выплатах на карту)objectИнформация об участниках операции (отправителе и получателе)
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/multi/start/payment/nominal \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_12345",
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "test payout"
}
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"participant_details": {
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"beneficiary_id": "123412341234"
},
"sender": {
"full_name": "Ivan Ivanovich Ivanov",
"beneficiary_id": "123412341234"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"customer": {
"reference": "test"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_72974",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.274416Z",
"updated_at": "2021-08-06T11:34:51.466550Z",
"payments": [
{
"id": "po_25657",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545329Z",
"customer": {
"reference": "lucky"
},
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "0002"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
],
"acquiring_payments": [
{
"id": "pm_15174",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545232Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_nominal_account",
"transfer_from_nominal_account": {
"description": "test payout",
"card_mask": "400000******0002"
}
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
]
}
}

Расчетный счет

session/init/payout/rko

Метод инициализации сессии и старта выплаты с расчетного счета.

Адрес для отправки запроса

/api/v1/session/init/payout/rko

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

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные (банковский счет)
amount_details+objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
participant_details+objectИнформация об отправителе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://proxy-stage.bank131.ru/api/v1/session/init/payout/rko \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "ru",
"ru": {
"bik": "049205131",
"account": "40702810300000000006",
"full_name": "Вектор",
"inn": "1234567890",
"kpp": "165801002",
"description": "Перевод с расчетного счета на счет другого ЮЛ, открытого в Банке 131"
}
}
},
"amount_details": {
"amount": 212,
"currency": "rub"
},
"participant_details": {
"sender": {
"account": "40702810900000000011"
}
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"updated_at": "2018-05-27T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "in_progress",
"created_at": "2018-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [
{
"email": "user@gmail.com"
}
]
},
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "ru",
"ru": {
"bik": "049205131",
"account": "40702810300000000006",
"full_name": "Вектор",
"inn": "1234567890",
"kpp": "165801002",
"description": "Перевод с расчетного счета на счет другого ЮЛ, открытого в Банке 131"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}
]
}
}

session/multi/create/rko

Этот запрос создает платежную сессию на стороне Банка 131 для выплаты с расчетного счета.

Сессия необходима для проведения платежных операций. В рамках сессии может проходить одна или несколько операций.

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

Если вы готовы передать в запросе все данные, которые нужны для проведения операции, можете использовать метод, при котором сразу после создания сессии стартует выплата (/api/v1/session/multi/init/payment/rko). В этом случае запускать операцию отдельным запросом не нужно.

В ответе возвращаются параметры созданной сессии.

Адрес для отправки запроса

/api/v1/session/multi/create/rko

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

НазваниеОбязательностьТипОписание
payment_details+objectДанные о переводе
payment_method-objectПлатежные данные (карта, банковский счет и др.)
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details- (обязателен при выплатах на карту)objectИнформация об участниках операции (отправителе и получателе)
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции. Возвращаются в ответах и вебхуках
Пример запроса
curl -X POST \
https://demo.bank131.ru//api/v1/session/multi/create/rko \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_bank_account",
"transfer_from_bank_account": {
"description": "Назначение платежа"
}
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "****************"
}
}
},
"participant_details": {
"sender": {
"full_name": "Данные отправителя"
},
"recipient": {
"full_name": "Иванов Иван Иванович"
}
},
"amount_details": {
"amount": 293400,
"currency": "RUB"
},
"customer": {
"reference": "123456789012"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_72974",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.274416Z",
"updated_at": "2021-08-06T11:34:51.466550Z",
"payments": [
{
"id": "po_25657",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545329Z",
"customer": {
"reference": "lucky"
},
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "0002"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
],
"acquiring_payments": [
{
"id": "pm_15174",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545232Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_bank_account",
"transfer_from_bank_account": {
"description": "test payout",
"card_mask": "400000******0002"
}
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
]
}
}

session/multi/start/payment/rko

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

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

Адрес для отправки запроса

/api/v1/session/multi/start/payment/rko

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_details-objectДанные о переводе
payment_method-objectПлатежные данные (карта, банковский счет и др.)
customer-objectДанные получателя в вашей системе
amount_details-objectСумма. Передается в копейках. Чтобы передать 100 рублей, укажите 10000
fiscalization_details-objectДанные для фискализации, только для выплат самозанятым
participant_details- (обязателен при выплатах на карту)objectИнформация об участниках операции (отправителе и получателе)
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/session/multi/start/payment/rko \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_12345",
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_bank_account",
"transfer_from_bank_account": {
"description": "test payout"
}
}
},
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"participant_details": {
"recipient": {
"full_name": "Ivan Ivanovich Ivanov"
},
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"customer": {
"reference": "test"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_72974",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.274416Z",
"updated_at": "2021-08-06T11:34:51.466550Z",
"payments": [
{
"id": "po_25657",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545329Z",
"customer": {
"reference": "lucky"
},
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "0002"
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
],
"acquiring_payments": [
{
"id": "pm_15174",
"status": "in_progress",
"created_at": "2021-08-06T11:34:51.545232Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "internal_transfer",
"internal_transfer": {
"type": "transfer_from_bank_account",
"transfer_from_bank_account": {
"description": "test payout",
"card_mask": "400000******0002"
}
}
},
"amount_details": {
"amount": 1011,
"currency": "RUB"
},
"metadata": {
"key": "value"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanovich Ivanov"
},
"recipient": {
"full_name": "Ivan Ivanovich Ivanov",
"reference": "1234"
}
}
}
]
}
}

Денежные переводы

/bpa/session/init/payment

Метод предназначен для старта перевода.

Адрес для отправки запроса

/api/v1/bpa/session/init/payment

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

НазваниеОбязательностьТип данныхОписание
payment_details+objectПлатежные данные
amount_details-objectСумма
participant_details-objectИнформация об участниках
cash_details+objectДополнительная информация о платеже наличными
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/bpa/session/init/payment \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 1000,
"currency": "rub"
},
"participant_details": {
"sender": {
"citizenship_country_iso3": "AUS",
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"country_iso3": "RUS",
"state": "New York",
"city": "Kazan",
"postal_code": "420000",
"street": "Nekrasova",
"building": "1",
"flat": "131",
"tax_reference": "123456789012",
"date_of_birth": "2010-01-01",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
},
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani"
},
"documents_foreigner": {
"id_type": "Виза",
"issued_by": "OVD Kazani",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "Lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary",
"description": "salary transfers"
},
"recipient": {
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"date_of_birth": "2010-01-01",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+79377654321",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
}
}
},
"cash_details": {
"shift": "11"
}
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_592245",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.255803Z",
"updated_at": "2022-11-15T15:38:50.336303Z",
"acquiring_payments": [
{
"id": "pm_296251",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.357833Z",
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 978,
"currency": "rub"
},
"participant_details": {
"sender": {
"citizenship_country_iso3": "AUS",
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"country_iso3": "RUS",
"state": "New York",
"city": "Kazan",
"postal_code": "420000",
"street": "Nerkasova",
"building": "1",
"flat": "131",
"tax_reference": "123456789012",
"date_of_birth": "2010-01-01",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
},
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani"
},
"documents_foreigner": {
"id_type": "Виза",
"issued_by": "OVD Kazani",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "Lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary",
"description": "salary transfers"
},
"recipient": {
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"date_of_birth": "2010-01-01",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+79376151530",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
}
}
}
}
]
}
}

/cash/payout/session/init

Метод предназначен для старта выдачи перевода получателю или возврата денег отправителю. Набор параметров в обоих случаях одинаков. Чтобы вернуть перевод отправителю, данные отправителя (participant_details.sender) и получателя перевода (participant_details.recipient) в запросе должны совпадать.

Обратите внимание, что в параметр tcn_code_encoded передается код перевода, который необходимо обернуть в BASE64.

Адрес для отправки запроса

/api/v1/cash/payout/session/init

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

НазваниеОбязательностьТип данныхОписание
tcn_code_encoded+stringКонтрольный номер перевода, полученный от Получателя и обернутый в BASE64. Пример: “MzU4MDctMjM1ODk=”
payment_method+objectPayment details. Передайте значение moneysend.
amount_details-objectСумма
participant_details-objectИнформация об участниках выплаты
cash_details+objectДополнительная информация о платеже наличными
Пример запроса
curl -X POST \
https://demo.bank131.ru/api/v1/cash/payout/session/init \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"tcn_code_encoded": "NTkyMjM3LTg5MjEzNDk5",
"payment_method": {
"type": "moneysend",
"moneysend": {}
},
"cash_details": {
"shift": "159"
},
"amount_details": {
"amount": 1000,
"currency": "rub"
},
"participant_details": {
"recipient": {
"citizenship_country_iso3": "AUS",
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"country_iso3": "RUS",
"state": "New York",
"city": "Kazan",
"postal_code": "420000",
"street": "Nerkasova",
"building": "1",
"flat": "131",
"tax_reference": "123456789012",
"date_of_birth": "2008-01-01",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani"
},
"documents_foreigner": {
"id_type": "Виза",
"issued_by": "OVD Kazani",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "Lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary",
"description": "salary transfers",
"contacts": {
"phone": {
"full_number": "+79377654321",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
}
},
"sender": {
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
}
}
}
}

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
payment_method+objectИнформация о методе платежа
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2022-11-01T02:03:00.000000Z",
"updated_at": "2022-11-01T02:03:00.000000Z",
"payments": [
{
"id": "po_2018",
"status": "in_progress",
"created_at": "2022-11-01T02:03:00.000000Z",
"payment_method": {
"type": "moneysend"
},
"participant_details": {
"recipient": {
"citizenship_country_iso3": "AUS",
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"country_iso3": "RUS",
"state": "New York",
"city": "Kazan",
"postal_code": "420000",
"street": "Nekrasova",
"building": "1",
"flat": "131",
"tax_reference": "123456789012",
"date_of_birth": "2010-01-01",
"contacts": {
"phone": {
"full_number": "+79377654321",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
},
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani"
},
"documents_foreigner": {
"id_type": "Виза",
"issued_by": "OVD Kazani",
"issue_date": "2020-01-01",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "Lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary",
"description": "salary transfers",
"customer_verification": {
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"date_of_birth": "2010-01-01",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
}
}
},
"sender": {
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
}
}
}
}
]
}
}'

Прочее

sberpay/push

Метод для запроса статуса оплаты через SberPay.

Адрес для отправки запроса

/api/v1/sberpay/push

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

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
phone+stringНомер телефона для отправки пуш-уведомления
Пример запроса
curl -X GET
https://proxy.bank131.ru/api/v1/sberpay/push \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_75459435",
"phone": "+79638594ххх"
}'

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

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
error-objectОшибка
Примеры ответов
{
"status": "ok"
}