ym88659208ym87991671
Создание платежного поручения | Документация для разработчиков

Создание платежного поручения

Обновлено 29 ноября 2024

Alt text /fintech/api/v1/payments

Запрос позволяет создать рублёвое платёжное поручение (далее РПП).

Для создания РПП необходимо отправить POST-запрос /fintech/api/v1/payments с токеном доступа (access_token) пользователя в параметре Authorization заголовка и реквизитами документа в теле запроса.

В параметре scope ссылки авторизации пользователя должен быть указан сервис PAY_DOC_RU для получения доступа к этому запросу.


  • Если в запросе на создание платежного документа передать ЭП к документу (объект digestSignatures), то Банк сразу начнет обработку документа.
  • Если в запросе не передавать ЭП к документу, то платежное поручение будет создано в статусе черновик. Для начала обработки документа Банком потребуется зайти в интерфейс СберБизнес и подписать его.

Для обращения к ресурсу необходимо отправлять запрос на:

  • Тестовый контур https://iftfintech.testsbi.sberbank.ru:9443
  • Промышленный контур https://fintech.sberbank.ru:9443

Request

/fintech/api/v1/payments
НаименованиеТипФорматRegexpОбязательностьОписание
HEADER
Authorizationstringstring^[a-zA-Z0-9]{38}$requiredAccess token пользователя, полученный через SSO.
BODY
Invoice {
  amountnumberfloat^[0-9]{1,16}\.[0-9]{2}$requiredСумма платежа,
  datestringISO 8601 YYYY-MM-DD^[0-9]{4}-[0-9]{2}-[0-9]{2}$requiredДата составления документа,
  deliveryKindstringstring^(электронно|срочно|0)$optionalВид платежа.
Если не заполнено или 0, то будет присвоено значение "электронно",
  departmentalInfoDepartmentalInfoobjectoptionalРеквизиты налогового, таможенного или иного бюджетного платежа,
  digestSignaturesarray[Signature]arrayoptionalЭлектронные подписи по дайджесту документа.
- Если ЭП передана/ы в API, то они сохраняются вместе с документом, а сам документ продвигается дальше по своему жизненному циклу.
- Если ЭП не была/и передана/ы, то документ сохраняется в своем начальном статусе и ожидает дальнейшего подписания в интерфейсе СберБизнес.

О подписании дайджеста платежного документа подробно рассказали в соответствующем разделе документации.
  externalIdstringUUID^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$requiredИдентификатор документа, который вы присваиваете самостоятельно,
  incomeTypeCodestringstring^[1-9]{1,6}$optionalКод вида дохода получателей выплаты по 229-ФЗ.

Коды:
1 - Заработная плата и иные доходы, в отношении которых ст. 99 229-ФЗ установлены ограничения размеров удержания.
2 - Периодические доходы, на которые в соответствии с ч. 1 ст. 101 229-ФЗ не может быть обращено взыскание, за исключением доходов, указанных в ч. 2 ст. 101 229-ФЗ.
3 - Периодические доходы, к которым согласно ч. 2 ст. 101 229-ФЗ ограничения по взысканию не применяются.
4 - Единовременный доход, на который в соответствии с ч. 1 ст. 101 229-ФЗ не может быть обращено взыскание, за исключением доходов, указанных в ч. 2 ст. 101 229-ФЗ.
5 - Единовременный доход, к которому согласно ч. 2 ст. 101 229-ФЗ ограничения по взысканию не применяются.
null - Код дохода указывать не нужно, если денежные средства не относятся к доходам с установленными ограничениями согласно ст. 99 и запретом согласно ст. 101 229-ФЗ,
  numberstringstring^[0-9]{1,6}$optionalНомер документа,
  operationCodestringstring^01$requiredКод операции,
  payeeAccountstringstring^[0-9]{20}$optionalСчет получателя платежа,
  payeeBankBicstringstring^[0-9]{9}$requiredБИК получателя платежа,
  payeeBankCorrAccountstringstring^[0-9]{20}$optionalКорсчет банка получателя платежа,
  payeeInnstringstring^([0-9]{5}|[0-9]{10}|[0-9]{12}|0)$optionalИНН получателя платежа,
  payeeKppstringstring^([0-9]{9}|0)$optionalКПП получателя платежа,
  payeeNamestringstring^.{1,254}$requiredПолное наименование получателя платежа,
  payerAccountstringstring^[0-9]{20}$requiredСчет плательщика,
  payerBankBicstringstring^[0-9]{9}$requiredБИК банка плательщика,
  payerBankCorrAccountstringstring^[0-9]{20}$requiredКорсчет банка плательщика,
  payerInnstringstring^([0-9]{5}|[0-9]{10}|[0-9]{12}|0)$requiredИНН плательщика,
  payerKppstringstring^([0-9]{9}|0)$requiredКПП плательщика,
  payerNamestringstring^.{1,254}$requiredПолное наименование плательщика,
  prioritystringstring^(1|2|3|4|5)$requiredОчередность платежа,
  purposestringstring^.{1,210}$requiredНазначение платежа.

Рекомендации по заполнению,
  urgencyCodestringstring^(INTERTAL|INTERNAL_NOTIF|OFFHOURS|BESP|NORMAL)$optionalКод срочности.

INTERNAL - срочный
INTERNAL_NOTIF - срочный платеж с уведомлением
OFFHOURS - неотложный
BESP - банковские электронные срочные платежи
NORMAL - срочность не указана,
  vatVatobjectoptionalДанные НДС,
  voCodestringstring^[0-9]{5}$optionalКод вида валютной операции
}
DepartmentalInfo {
  uipstringstring^[A-Za-z0-9]{1,25}$requiredУникальный идентификатор платежа,
  drawerStatus101stringstring^(01|02|08|13)$requiredПоказатель статуса налогоплательщика (реквизит - 101),
  kbkstringstring^[A-Za-z0-9]{1,20}$requiredКод бюджетной классификации (реквизит - 104),
  oktmostringstring^[A-Za-z0-9]{1,11}$requiredКод OKTMO (реквизит - 105),
  reasonCode106stringstring^[0-9]{1,2}$requiredПоказатель основания платежа (реквизит - 106),
  taxPeriod107stringstring^(0|[0-9]{8}|([0-9]{2}|МС|КВ|ПЛ|ГД)\.[0-9]{2}\.[0-9]{4})$requiredНалоговый период / код таможенного органа (реквизит - 107),
  docNumber108stringstring^[0-9]{1,15}$requiredНомер налогового документа (реквизит - 108),
  docDate109stringstring^(0|00|[0-9]{2}.[0-9]{2}.[0-9]{4})$requiredДата налогового документа (реквизит - 109),
  paymentKind110stringstring^[0-9]{1,2}$optionalТип налогового платежа (реквизит - 110)
}
Signature {
  base64Encodedstringbase64^[a-zA-Z0-9]+$requiredЗначение электронной подписи (ЭП), закодированное в Base64,
  certificateUuidstringUUID^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$requiredУникальный идентификатор сертификата ключа проверки электронной подписи
}
Vat {
  amountnumberfloat^[0-9]{1,16}\.[0-9]{2}$optionalСумма НДС,
  ratestringstring^[0-9]{0,2}$optionalСтавка НДС,
  typestringstring^(INCLUDED|NO_VAT|MANUAL)$requiredСпособ расчета НДС.

INCLUDED - НДС включен в сумму платежа
NO_VAT - не облагается НДС
MANUAL - ручной ввод НДС
}

digestSignatures

Формат дайджеста
Наименование поляОписание поляПример
amountСумма платежа100.00
dateДата составления документа2018-05-31
departmentalInfo.docNumber108Номер налогового документа(реквизит-108)123
departmentalInfo.drawerStatus101Показатель статуса налогоплательщика(реквизит-101)01
departmentalInfo.kbkКод бюджетной классификации(реквизит-104)18210102010011000110
departmentalInfo.oktmoКод ОКТМО(реквизит-105)1701000
departmentalInfo.paymentKind110Тип налогового платежа(реквизит-110)НС
departmentalInfo.reasonCode106Показатель основания платежа(реквизит-106)ТП
departmentalInfo.uipУникальный идентификатор платежа0
externalIdИдентификатор документа, присвоенный сервисомa0000000-0000-0000-0000-000000000001
incomeTypeCodeКод вида дохода получателей выплаты по 229-ФЗ2
operationCodeКод операции01
payeeAccountНомер счета получателя40702810600100001212
payeeBankBicБИК получателя044525225
payeeBankCorrAccountКорсчет банка получателя30101810400000000225
payeeInnИнн получателя222201236445
payeeKppКпп получателя222201001
payeeNameПолное наименование получателя платежаОбщество с ограниченной ответственностью "Получатель"
payerAccountСчет плательщика40702810500006103990
payerBankBicБИК плательщика044525225
payerBankCorrAccountКорсчет банка плательщика30101810400000000225
payerInnИНН плательщика222201236445
payerKppКПП плательщика222201001
payerNameПолное наименование плательщикаОбщество с ограниченной ответственностью "Клиент"
priorityОчередность платежа5
purposeНазначение платежаОплата интернет заказа №123. НДС нет.
voCodeКод вида валютной операции61150

Responses

201 (Created)
НаименованиеТипОбязательностьОписание
Invoice {
  amountnumberrequiredСумма платежа,
  bankCommentstringoptionalБанковский комментарий к статусу документа,
  bankStatusstringoptionalСтатус документа,
  crucialFieldsHashstringoptionalHash от ключевых полей документа,
  datestringrequiredДата составления документа,
  deliveryKindstringoptionalВид платежа,
  departmentalInfoDepartmentalInfooptionalРеквизиты налогового, таможенного или иного бюджетного платежа,
  digestSignaturesarray[Signature]optionalЭлектронные подписи по дайджесту документа,
  externalIdstringrequiredИдентификатор документа, который вы присваиваете самостоятельно,
  incomeTypeCodestringoptionalКод вида дохода получателей выплаты по 229-ФЗ,
  numberstringoptionalНомер документа,
  operationCodestringrequiredКод операции,
  payeeAccountstringoptionalСчет получателя платежа,
  payeeBankBicstringrequiredБИК получателя платежа,
  payeeBankCorrAccountstringoptionalКорсчет банка получателя платежа,
  payeeInnstringoptionalИНН получателя платежа,
  payeeKppstringoptionalКПП получателя платежа,
  payeeNamestringrequiredПолное наименование получателя платежа,
  payerAccountstringrequiredСчет плательщика,
  payerBankBicstringrequiredБИК банка плательщика,
  payerBankCorrAccountstringrequiredКорсчет банка плательщика,
  payerInnstringrequiredИНН плательщика,
  payerKppstringrequiredКПП плательщика,
  payerNamestringrequiredПолное наименование плательщика,
  prioritystringrequiredОчередность платежа,
  purposestringrequiredНазначение платежа,
  urgencyCodestringoptionalКод срочности,
  vatVatoptionalДанные НДС,
  voCodestringoptionalКод вида валютной операции
}
DepartmentalInfo {
  uipstringrequiredУникальный идентификатор платежа,
  drawerStatus101stringrequiredПоказатель статуса налогоплательщика (реквизит - 101),
  kbkstringrequiredКод бюджетной классификации (реквизит - 104),
 oktmostringrequiredКод OKTMO (реквизит - 105),
  reasonCode106stringrequiredПоказатель основания платежа (реквизит - 106),
  taxPeriod107stringrequiredНалоговый период / код таможенного органа (реквизит - 107),
  docNumber108stringrequiredНомер налогового документа (реквизит - 108),
  docDate109stringrequiredДата налогового документа (реквизит - 109),
  paymentKind110stringoptionalТип налогового платежа (реквизит - 110)
}
Signature {
  base64EncodedstringrequiredЗначение электронной подписи (ЭП), закодированное в Base64,
  certificateUuidstringrequiredУникальный идентификатор сертификата ключа проверки электронной подписи
}
Vat {
  amountnumberoptionalСумма НДС,
  ratestringoptionalСтавка НДС,
  typestringrequiredСпособ расчета НДС
}
400 (Bad request)
CauseMessageDescription
DESERIALIZATION_FAULTНеверный формат запросаДанные в request указаны в неправильном формате. Атрибуты request, в которых найдены ошибки, указаны в responce в массиве fields с описанием проблемы. Описание типа, формата и regexp атрибутов находится в request ресурса. Скорректируйте заполнение атрибутов и повторите запрос.
WORKFLOW_FAULTДля внешнего сервиса недоступны операции по счету: {номер счета}Возможные причины ошибки:
счет не добавлен в список разрешенных в оферте;
внешний сервис заблокирован в СберБизнес;
счет указан неверно;
отсутствует доступный открытый рублевый расчетный счет у организации плательщика
Отсутствует возможность подписи документа, сумма превышает дневной лимитНеобходимо в UI СберБизнес изменить настройли дневного лимита переводов для пользователя
Невозможно идентифицировать банк плательщика по указанным номеру БИК и корреспондентскому счетуПроверьте корректность заполнения атрибутов payerBankBic и payerBankCorrAccount
Невозможно идентифицировать банк получателя по указанным номеру БИК и корреспондентскому счетуПроверьте корректность заполнения атрибутов payeeBankBic и payeeBankCorrAccount
Документ с таким externalId уже существует в системеСгенерируйте новый UUID для атрибута externalId и выполните запрос повторно
{Наименование криптопрофиля}: не найдено действующих полномочий подписиУ Пользователя, чей access_token используется в зарпосе создания платежного поручения, отсутствует право подписи документов в СберБизнес. Проверьте настройки профиля Пользователя в UI СберБизнес. Либо получите access_token другим профилем Пользователя, который имеет право подписи в СберБизнес.
{Наименование криптопрофиля}: некорректные настройки полномочий подписи
{Наименование криптопрофиля}: нет полномочий для подписи документа в рамках организации {Наименование организации}
{Наименование криптопрофиля}: нет полномочий для подписи документа по счету {Номер счета}
{Наименование криптопрофиля}: нет полномочий для подписи документа {Наименование типа документа}
{Наименование криптопрофиля}: нет полномочий для подписи документа {Наименование типа документа} на сумму, превышающую {сумма лимита}
ЭП не может быть принята
Не предусмотрено сохранение более двух ЭП под документом
Не предусмотрено указание будущей даты в документе с ЭП
VALIDATION_FAULTОбъект {название объекта} не соответствует моделиДанные не соответствуют требованиям валидации. Сведения о некорректных атрибутах request содержатся в массивах fieldNames и checks. Подробные требования к атрибутам описаны в request ресурса, включая типы, форматы и регулярные выражения. Необходимо скорректировать заполнение атрибутов и повторить запрос.
SIGN_CHECK_EXCEPTIONПодлинность подписи не установлена/Сертификат не обнаружен или не является активным
НаименованиеТипОбязательностьОписание
ResourceFault {
  causestringoptionalПричина или основание сообщения,
  referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
  messagestringoptionalСообщение,
  checksarray[Check]optionalСписок проверок, приведших к ошибке,
  fieldNamesarray[string]optionalНазвания полей с некорректным значением (только для VALIDATION_FAULT)
}
Check {
  levelstringoptionalУровень результата = ['ERROR', 'WARNING'],
  messagestringoptionalСообщение,
  fieldsarray[string]optionalНазвания полей (при наличии связи с моделью)
}
403 (Forbidden)
CauseMessageDescription
ACTION_ACCESS_EXCEPTIONОперация не может быть выполнена: доступ к ресурсу запрещенИспользуемый в запросе access_token не имеет разрешения на доступ к нужному сервису Sber API.
В ссылке авторизации СберБизнес ID, в параметре scope, не указана операция PAY_DOC_RU. Необходимо добавить одному или несколько операций в scope. Пользователю потребуется пройти авторизацию заново. Вы получите новые токены access_token и refresh_token. Сделайте повторный запрос с новым access_token.
НаименованиеТипОбязательностьОписание
Notice {
  causestringoptionalПричина или основание сообщения,
  referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
  messagestringoptionalСообщение,
}
429 (Too Many Requests)
CauseMessageDescription
TOO_MANY_REQUESTSПревышен лимит запросов. Повторите операцию позже.Количество запросов к данному методу за ограниченное время превысило допустимое значение. Пользователю необходимо повторить запрос позднее
НаименованиеТипОбязательностьОписание
Notice{
causestringoptionalПричина или основание сообщения,
referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
messagestringoptionalСообщение,
}
500 (Internal Server Error)
CauseMessageDescription
UNKNOWN_EXCEPTIONВнутренняя ошибка сервераСделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка.
НаименованиеТипОбязательностьОписание
Notice {
  causestringoptionalПричина или основание сообщения,
  referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
  messagestringoptionalСообщение,
}
503 (Service Temporarily Unavailable)
CauseMessageDescription
UNAVAILABLE_RESOURCE_EXCEPTIONВнутренняя ошибка сервераСделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка.
НаименованиеТипОбязательностьОписание
Notice {
  causestringoptionalПричина или основание сообщения,
  referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
  messagestringoptionalСообщение,
}

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