Создание черновика платежного поручения для отправки платежа в бюджет
/fintech/api/v1/payments/from-invoice-budget
Ресурс позволяет вам создавать черновики платежных поручений в адрес бюджетных организаций со счетом в любом банке для оплаты налоговых, таможенных и других бюджетных платежей.
Для создания черновика платежного поручения необходимо отправить POST-запрос /fintech/api/v1/payments/from-invoice-budget
с токеном доступа (access_token) пользователя в параметре Authorization заголовка и реквизитами счета в теле запросе.
В параметре scope ссылки авторизации пользователя должен быть указан сервис PAY_DOC_RU_INVOICE_BUDGET
для получения доступа к этому ресурсу.
Для обращения к ресурсу необходимо отправлять запрос на:
- Тестовый контур
https://iftfintech.testsbi.sberbank.ru:9443
- Промышленный контур
https://fintech.sberbank.ru:9443
Request
/fintech/api/v1/payments/from-invoice-budget
- Модель
- Пример
Наименование | Тип | Формат | Regexp | Обязательность | Описание |
---|---|---|---|---|---|
HEADER | |||||
Authorization | string | string | ^[a-zA-Z0-9]{38}$ | required | Access token пользователя, полученный через SSO. |
BODY | |||||
Invoice { | |||||
amount | number | float | ^[0-9]{1,16}\.[0-9]{2}$ | required | Сумма платежа, |
date | string | ISO 8601 YYYY-MM-DD | ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ | required | Дата составления документа, |
deliveryKind | string | string | ^(электронно|срочно|0)$ | optional | Вид платежа. Если не заполнено или 0, то будет присвоено значение "электронно", |
departmentalInfo | DepartmentalInfo | object | required | Реквизиты налогового, таможенного или иного бюджетного платежа, | |
externalId | string | UUID | ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ | required | Идентификатор документа, присвоенный партнером, |
operationCode | string | string | ^01$ | optional | Код операции, |
payeeAccount | string | string | ^[0-9]{20}$ | required | Счет получателя платежа, |
payeeBankBic | string | string | ^[0-9]{9}$ | required | БИК банка получателя платежа, |
payeeBankCorrAccount | string | string | ^[0-9]{20}$ | optional | Кор. счет банка получателя платежа, |
payeeInn | string | string | ^([0-9]{5}|[0-9]{10}|[0-9]{12}|0)$ | required | ИНН получателя платежа, |
payeeKpp | string | string | ^([0-9]{9}|0)$ | optional | КПП получателя платежа, |
payeeName | string | string | ^.{0,254}$ | required | Наименование получателя платежа, |
paymentNumber | string | string | ^[0-9]{1,6}$ | optional | Номер платежного поручения. Если Клиент не ведет в своей учетной системе нумерацию платежных поручений, созданных на основании выставленных счетов, то атрибут можно не передавать, он будет присвоен автоматически, |
priority | string | string | ^[4-5]{1}$ | optional | Очередность платежа, |
purpose | string | string | ^.{0,240}$ | required | Назначение платежа. Рекомендации по заполнению, |
urgencyCode | string | string | ^(INTERTAL|INTERNAL_NOTIF|OFFHOURS|BESP|NORMAL)$ | optional | Код срочности. INTERNAL - срочный INTERNAL_NOTIF - срочный платеж с уведомлением OFFHOURS - неотложный BESP - банковские электронные срочные платежи NORMAL - срочность не указана, |
vat | Vat | object | required | Данные НДС | |
} | |||||
DepartmentalInfo { | |||||
uip | string | string | ^[A-Za-z0-9]{1,25}$ | required | Уникальный идентификатор платежа, |
drawerStatus101 | string | string | ^[01|02|08|13]+$ | required | Показатель статуса налогоплательщика (реквизит - 101), |
kbk | string | string | ^[A-Za-z0-9]{1,20}$ | required | Код бюджетной классификации (реквизит - 104), |
oktmo | string | string | ^[A-Za-z0-9]{1,11}$ | required | Код OKTMO (реквизит - 105), |
reasonCode106 | string | string | ^[0-9]{1,2}$ | required | Показатель основания платежа (реквизит - 106), |
taxPeriod107 | string | string | ^(0|[0-9]{8}|([0-9]{2}|МС|КВ|ПЛ|ГД).[0-9]{2}.[0-9]{4})$ | required | Налоговый период / код таможенного органа (реквизит - 107), |
docNumber108 | string | string | ^[0-9]{1,15}$ | required | Номер налогового документа (реквизит - 108), |
docDate109 | string | string | ^(0|00|[0-9]{2}.[0-9]{2}.[0-9]{4})$ | required | Дата налогового документа (реквизит - 109), |
paymentKind110 | string | string | ^[0-9]{1,2}$ | optional | Тип налогового платежа (реквизит - 110) |
} | |||||
LinkedDoc { | |||||
docExtId | string | UUID | ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ | optional | Идентификатор документа (заявления на страхование экспортного контракта) во внешней системе (UUID), к которому необходимо привязать платежное поручение, |
type | string | string | ^(ExportContractInsure)$ | optional | Тип связанного документа (доступное значение для заполнения - exportContractInsure), с которым необходимо связать платежное поручение |
} | |||||
Vat { | |||||
amount | number | float | ^[0-9]{1,16}\.[0-9]{2}$ | optional | Сумма НДС, |
rate | string | string | ^[0-9]{0,2}$ | optional | Ставка НДС, |
type | string | string | ^(INCLUDED|NO_VAT|MANUAL)$ | required | Способ расчета НДС. INCLUDED - НДС включен в сумму платежа NO_VAT - не облагается НДС MANUAL - ручной ввод НДС |
} |
POST /fintech/api/v1/payments/from-invoice-budget HTTP/1.1
Content-Type: application/json
Authorization: Bearer xbgDF3brf456ghi789jkl012mNKFtEpqr678
{
"amount": 64.00,
"date": "2023-11-14",
"deliveryKind": "электронно",
"externalId": "49441d51-222c-4763-ac14-3bb758d94f4c",
"number": "10",
"operationCode": "01",
"payeeAccount": "40101810800000010041",
"payeeBankBic": "044525000",
"payeeKpp": "771201001",
"payeeInn": "7713034630",
"payeeName": "11 ГУ БАНКА РОССИИ ПО ЦФО Г. Москва 35",
"payerAccount": "40702810538000001230",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7785961231",
"payerKpp": "124784444",
"payerName": "ООО Тестовая",
"priority": "5",
"purpose": "Оплата счета 1 от 14.11.2023",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0.00,
"rate": "0",
"type": "NO_VAT"
},
"departmentalInfo": {
"docDate109": "0",
"docNumber108": "123",
"drawerStatus101": "01",
"kbk": "00000000000000000110",
"oktmo": "32321312",
"reasonCode106": "ПК",
"taxPeriod107": "12.01.2022",
"uip": "0"
}
}
Responses
201 (Created)
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Payment { | |||
amount | number | required | Сумма платежа, |
bankComment | string | optional | Банковский комментарий к статусу документа, |
bankStatus | string | optional | Статус документа, |
crucialFieldsHash | string | optional | Hash от ключевых полей документа, |
date | string | required | Дата составления документа, |
deliveryKind | string | optional | Вид платежа, |
departmentalInfo | DepartmentalInfo | optional | Реквизиты налогового, таможенного или иного бюджетного платежа, |
digestSignatures | array[Signature] | optional | Электронные подписи по дайджесту документа, |
externalId | string | required | Идентификатор документа, присвоенный партнером, |
incomeTypeCode | string | optional | Код вида дохода получателей выплаты по 229-ФЗ, |
number | string | optional | Номер документа, |
operationCode | string | required | Код операции, |
payeeAccount | string | optional | Счет получателя платежа, |
payeeBankBic | string | required | БИК получателя платежа, |
payeeBankCorrAccount | string | optional | Корсчет банка получателя платежа, |
payeeInn | string | optional | ИНН получателя платежа, |
payeeKpp | string | optional | КПП получателя платежа, |
payeeName | string | required | Полное наименование получателя платежа, |
payerAccount | string | required | Счет плательщика, |
payerBankBic | string | required | БИК банка плательщика, |
payerBankCorrAccount | string | required | Корсчет банка плательщика, |
payerInn | string | required | ИНН плательщика, |
payerKpp | string | optional | КПП плательщика, |
payerName | string | required | Полное наименование плательщика, |
priority | string | required | Очередность платежа, |
purpose | string | required | Назначение платежа, |
urgencyCode | string | optional | Код срочности, |
vat | vat | optional | Данные НДС, |
voCode | string | optional | Код вида валютной операции |
} | |||
DepartmentalInfo { | |||
uip | string | required | Уникальный идентификатор платежа, |
drawerStatus101 | string | required | Показатель статуса налогоплательщика (реквизит - 101), |
kbk | string | required | Код бюджетной классификации (реквизит - 104), |
oktmo | string | required | Код OKTMO (реквизит - 105), |
reasonCode106 | string | required | Показатель основания платежа (реквизит - 106), |
taxPeriod107 | string | required | Налоговый период / код таможенного органа (реквизит - 107), |
docNumber108 | string | required | Номер налогового документа (реквизит - 108), |
docDate109 | string | required | Дата налогового документа (реквизит - 109), |
paymentKind110 | string | optional | Тип налогового платежа (реквизит - 110) |
} | |||
Signature { | |||
base64Encoded | string | required | Значение электронной подписи, закодированное в Base64, |
certificateUuid | string | required | Уникальный идентификатор сертификата ключа проверки электронной подписи (UUID), |
} | |||
Vat { | |||
amount | number | optional | Сумма НДС, |
rate | string | optional | Ставка НДС, |
type | string | required | Способ расчета НДС |
} |
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
{
"number": "4",
"date": "2023-11-14",
"digestSignatures": [],
"bankStatus": "CREATED",
"bankComment": null,
"externalId":"49441d51-222c-4763-ac14-3bb758d94a4d",
"amount": 64.00,
"operationCode": "01",
"deliveryKind": "электронно",
"priority": "5",
"urgencyCode": "NORMAL",
"voCode": null,
"purpose": "Оплата счета 1 от 14.11.2023",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "00000000000000000110",
"oktmo": "32321312",
"reasonCode106": "ПК",
"taxPeriod107": "12.09.2023",
"docNumber108": "123",
"docDate109": "0",
"paymentKind110": null
},
"payerName": "ООО_Автотест_Клиент_ЕКС_20231027092414",
"payerInn": "6376615662",
"payerKpp": "124784444",
"payerAccount": "40702810506000002149",
"payerBankBic": "048073601",
"payerBankCorrAccount": "30101810300000000601",
"payeeName": "11 ГУ БАНКА РОССИИ ПО ЦФО Г. Москва 35",
"payeeInn": "7713034630",
"payeeKpp": "771201001",
"payeeAccount": "40101810800000010041",
"payeeBankBic": "044525000",
"payeeBankCorrAccount": null,
"crucialFieldsHash": "a82a6f43eecd8b6c439255f8a83e85dc",
"vat": {
"type": "MANUAL",
"rate": "10",
"amount": 0.00
},
"incomeTypeCode":null
}
400 (Bad request)
Cause | Message | Description |
---|---|---|
DESERIALIZATION_FAULT | Неверный формат запроса | Данные в request указаны в неправильном формате. Атрибуты request, в которых найдены ошибки, указаны в responce в массиве fields с описанием проблемы. Описание типа, формата и regexp атрибутов находится в request запроса. Скорректируйте заполнение атрибутов и повторите запрос. |
WORKFLOW_FAULT | Невозможно идентифицировать организацию плательщика | Проверьте корректность указанных реквизитов плательщика. |
Невозможно идентифицировать банк получателя по указанным номеру БИК и корреспондентскому счету | Проверьте корректность указанных реквизитов получателя платежа - атрибуты payeeBankBic и payeeBankCorrAccount | |
Документ с таким externalId уже существует в системе | Используется externalId, который уже есть в системе (дубль). Сгенерируйте новый externalId и повторите запрос. | |
Отсутствует доступный открытый рублевый расчетный счет у организации плательщика | Плательщику требуется открыть рублевый расчетный счет в Сбербанке. | |
VALIDATION_FAULT | Ошибка валидации | Данные не соответствуют требованиям валидации. Сведения о некорректных атрибутах request содержатся в массивах fieldNames и checks. Подробные требования к атрибутам описаны в request запроса, включая типы, форматы и регулярные выражения. Необходимо скорректировать заполнение атрибутов и повторить запрос. |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
ResourceFault { | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
checks | array[Check] | optional | Список проверок, приведших к ошибке, |
fieldNames | array[string] | optional | Названия полей с некорректным значением (только для VALIDATION_FAULT) |
} | |||
Check { | |||
level | string | optional | Уровень результата = ['ERROR', 'WARNING'], |
message | string | optional | Сообщение, |
fields | array[string] | optional | Названия полей (при наличии связи с моделью) |
} |
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
{
"cause": "VALIDATION_FAULT",
"referenceId": "145ac7ed-9c20-4a75-8135-8a978d403836",
"message": "Объект Invoice не соответствует модели",
"checks": [
{
"level": "ERROR",
"message": "должно соответствовать \"^(электронно|срочно|0)$\"",
"fields": [
"deliveryKind"
]
}
],
"fieldNames": [
"deliveryKind"
]
}
401 (Unauthorized Error)
Cause | Message | Description |
---|---|---|
UNAUTHORIZED | accessToken not found by value =хххххххх-хххх-хххх-хххх-хххххххххххх-х | Указан некорректный или просроченный access_token. Используйте refresh_token для обновления access_token и повторите запрос. |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Notice { | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
} |
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=UTF-8
{
"cause": "UNAUTHORIZED",
"referenceId": "014ec3a1-3e41-4805-9e22-d07947b012af",
"message": "accessToken not found by value = 3513f959-bbd5-490a-9f9f-67fb7380fae5-2"
}
403 (Forbidden)
Cause | Message | Description |
---|---|---|
ACTION_ACCESS_EXCEPTION | Операция не может быть выполнена: доступ к ресурсу запрещен | Используемый в запросе access_token не имеет разрешения на доступ к нужному сервису Sber API. В ссылке авторизации СберБизнес ID, в параметре scope, не указана операция PAY_DOC_RU_INVOICE_BUDGET . Необходимо добавить эту операцию в scope. Пользователю потребуется пройти авторизацию заново. Вы получите новые токены access_token и refresh_token. Сделайте повторный запрос с новым access_token. |
Вы использовали access_token пользователя вашей организации, а не Клиента. Нужно использовать access_token пользователя Клиента. |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Notice { | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
} |
HTTP/1.1 403 Forbidden
Content-Type: application/json;charset=UTF-8
{
"cause": "ACTION_ACCESS_EXCEPTION",
"referenceId": "7535c2bb-7706-4b16-9882-d68aedbf2fef",
"message": "Операция не может быть выполнена: доступ к ресурсу запрещен"
}
429 (Too Many Requests)
Cause | Message | Description |
---|---|---|
TOO_MANY_REQUESTS | Превышен лимит запросов. Повторите операцию позже. | Количество запросов к данному методу за ограниченное время превысило допустимое значение. Пользователю необходимо повторить запрос позднее |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Notice{ | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
} |
json HTTP/1.1 429 Too Many Requests Content-Type: application/json;charset=UTF-8
{ "cause": " TOO_MANY_REQUESTS ", "referenceId": "5650c1e4-5039-4038-8cad-afab64003f61", "message": " Превышен лимит запросов. Повторите операцию позже" }
500 (Internal Server Error)
Cause | Message | Description |
---|---|---|
UNKNOWN_EXCEPTION | Внутренняя ошибка сервера | Сделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка. |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Notice { | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
} |
HTTP/1.1 500 Internal Server Error
Content-Type: application/json;charset=UTF-8
{
"cause": "UNKNOWN_EXCEPTION",
"referenceId": "9e209109-4b0d-408c-a2fd-e1983c20a65d",
"message": "Внутренняя ошибка сервера"
}
503 (Service Temporarily Unavailable)
Cause | Message | Description |
---|---|---|
UNAVAILABLE_RESOURCE_EXCEPTION | Внутренняя ошибка сервера | Сделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка. |
- Модель
- Пример
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
Notice { | |||
cause | string | optional | Причина или основание сообщения, |
referenceId | string | optional | Уникальный идентификатор ошибки (UUID), |
message | string | optional | Сообщение, |
} |
HTTP/1.1 503 Service Temporarily Unavailable
Content-Type: application/json;charset=UTF-8
{
"cause": "UNAVAILABLE_RESOURCE_EXCEPTION",
"referenceId": "9e209109-4b0d-408c-a2fd-e1983c20a67d",
"message": "Внутренняя ошибка сервера"
}