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

Создание платежного требования

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

ВАЖНО!

Выставить платежное требование Клиенту можно не раньше даты, следующей за датой оформления Подписки.

Например, Клиент оформил Подписку 15 января. На следующий день, 16 января, можно будет сформировать платежное требование для списания денежных средств. Если сформировать платежное требование в день оформления Подписки, то платежное требование не будет исполнено - оно встанет в "Картотеку" в СберБизнес Клиента на ручное подтверждение.

Alt text /fintech/api/v1/payment-requests/outgoing

Ресурс позволяет создавать платежные требования, где получателем средств является ваша компания. Отправьте POST-запрос с токеном доступа (access_token) пользователя собственной организации в параметре Authorization заголовка и реквизитами платежного требования в теле запросе.

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


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

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


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

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

Request

/fintech/api/v1/payment-requests/outgoing
НаименованиеТипФорматRegexpОбязательностьОписание
HEADER
Authorizationstringstring^[a-zA-Z0-9]{38}$requiredAccess token пользователя, полученный через SSO.
BODY
PaymentRequestOut {
 acceptanceTermstringstring^[1-5]{1}$optionalСрок для акцепта (поле 36). Указывается количество дней для получения акцепта плательщика,
 amountnumberfloat^[0-9]+(.[0-9]+)?$requiredСумма платежа,
 datestringISO 8601 YYYY-MM-DD^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$requiredДата составления документа,
 deliveryKindstringstring^(электронно|срочно|0)$optionalВид платежа: электронно, срочно
Если не заполнено или 0, то будет присвоено значение "электронно",
 digestSignaturesarray[Signature]array[object]optionalЭлектронные подписи по дайджесту документа.

Если ЭП передана/ы в API, то они сохраняются вместе с документом, а сам документ продвигается дальше по своему жизненному циклу.

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

О подписании дайджеста платежного документа подробно рассказали в соответствующем разделе документации
 externalIdstringUUID^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$requiredИдентификатор документа, присвоенный партнером,
 numberstringstring^[0-9]$optionalНомер документа,
 operationCodestringstring^02$requiredКод операции,
 payeeAccountstringstring^[0-9]$requiredСчет получателя платежа,
 payeeBankBicstringstring^[0-9]{9}$requiredБИК получателя платежа,
 payeeBankCorrAccountstringstring^[0-9]{20}$requiredКорсчет банка получателя платежа,
 payeeInnstringstring^([0-9]{5}|[0-9]{10}|[0-9]{12}|0)$optionalИНН получателя платежа,
 payeeNamestringstring^[0-9a-zA-Zа-яА-ЯеЁ \t]+$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ИНН плательщика,
 payerNamestringstring^[0-9a-zA-Zа-яА-ЯеЁ \t]+$requiredПолное наименование плательщика,
 paymentConditionstringstring^(1|2)$requiredУсловие оплаты (поле 35).

Указывается цифра "1" - заранее данный акцепт плательщика или цифра "2" - требуется получение акцепта плательщика,
 prioritystringstring^[1-5]{1}$requiredОчередность платежа,
 purposestringstring^.{0,210}$requiredНазначение платежа.

Рекомендации по заполнению
 vatVatobjectrequiredДанные НДС,
 voCodestringstring^[0-9]{5}$requiredКод вида валютной операции
}
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]+(.[0-9]+)?$optionalСумма НДС,
 ratestringstring^[0-9]{0,2}$optionalСтавка НДС,
 typestringstring^(INCLUDED|NO_VAT|MANUAL)$requiredСпособ расчета НДС.

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

digestSignatures

Формат дайджеста
Наименование поляОписание поляПример
acceptanceTermСрок акцепта5
amountСумма платежа100.01
dateДата составления документа31.12.2018
externalIdИдентификатор документа, присвоенный сервисом22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6
operationCodeКод операции02
payeeAccountНомер счета получателя40802810600000200000
payeeBankBicБИК получателя044525225
payeeBankCorrAccountКорсчет банка получателя30101810400000000225
payeeInnИНН получателя0452566242
payeeNameПолное наименование получателя платежаОбщество с ограниченной ответственностью "Получатель"
payerAccountСчет плательщика40802810600000200000
payerBankBicБИК плательщика044525225
payerBankCorrAccountКорсчет банка плательщика30101810400000000225
payerInnИНН плательщика8554122325
payerNameПолное наименование плательщикаОбщество с ограниченной ответственностью "Клиент"
paymentConditionУсловие оплаты (1/2)1
priorityОчередность платежа5
purposeНазначение платежаОплата по договору №123 от 13.04.2024. НДС 20% - 20.00 рублей включен в сумму.

Responses

201 (Created)
НаименованиеТипОбязательностьОписание
PaymentRequestOut {
 acceptanceTermstringoptionalСрок для акцепта (поле 36). Указывается количество дней для получения акцепта плательщика,
 amountnumberrequiredСумма платежа,
 bankCommentstringoptionalБанковский комментарий к статусу документа,
 bankStatusstringoptionalСтатус документа,
 crucialFieldsHashstringoptionalHash от ключевых полей документа,
 datestringrequiredДата составления документа,
 deliveryKindstringoptionalВид платежа: электронно, срочно
Если не заполнено или 0, то будет присвоено значение "электронно",
 digestSignaturesarray[Signature]optionalЭлектронные подписи по дайджесту документа,
 externalIdstringrequiredИдентификатор документа, присвоенный партнером,
 numberstringoptionalНомер документа,
 operationCodestringrequiredКод операции,
 payeeAccountstringrequiredСчет получателя платежа,
 payeeBankBicstringrequiredБИК получателя платежа,
 payeeBankCorrAccountstringrequiredКорсчет банка получателя платежа,
 payeeInnstringoptionalИНН получателя платежа,
 payeeNamestringrequiredПолное наименование получателя платежа,
 payerAccountstringrequiredСчет плательщика,
 payerBankBicstringrequiredБИК банка плательщика,
 payerBankCorrAccountstringrequiredКорсчет банка плательщика,
 payerInnstringrequiredИНН плательщика,
 payerNamestringrequiredПолное наименование плательщика,
 paymentConditionstringrequiredУсловие оплаты (поле 35),
 prioritystringrequiredОчередность платежа,
 purposestringrequiredНазначение платежа,
 vatVatrequiredДанные НДС,
 voCodestringrequiredКод вида валютной операции
}
Signature {
 base64EncodedstringoptionalЗначение электронной подписи (ЭП), закодированное в Base64,
 certificateUuidstringoptionalУникальный идентификатор сертификата ключа проверки электронной подписи
}
Vat {
 amountnumberoptionalСумма НДС,
 ratestringoptionalСтавка НДС,
 typestringrequiredСпособ расчета НДС
}
202 (Accepted)
CauseMessageDescription
WORKFLOW_FAULTДокумент сохранен, но обработка ЭП или принятие документа завершились ошибкой. ЭП не может быть принятаНеизвестный идентификатор сертификата. Проверьте корректность отправленной ЭП в запросе.
Возможно, была отправлена ЭП с типом "Первая подпись" или "Вторая подпись". Для случаев, когда используется ЭП подписантов с типом "Первая подпись" или "Вторая подпись" для принятия документа в обработку требуется передать в запросе данные обеих подписей.
НаименованиеТипОбязательностьОписание
ResourceFault {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
 messagestringoptionalСообщение,
 checksarray[Check]optionalСписок проверок, приведших к ошибке,
 fieldNamesarray[string]optionalНазвания полей с некорректным значением (только для VALIDATION_FAULT)
}
Check {
 levelstringoptionalУровень результата = ['ERROR', 'WARNING'],
 messagestringoptionalСообщение,
 fieldsarray[string]optionalНазвания полей (при наличии связи с моделью)
}
400 (Bad request)
CauseMessageDescription
DESERIALIZATION_FAULTНеверный формат запросаДанные в request указаны в неправильном формате. Атрибуты request, в которых найдены ошибки, указаны в responce в массиве fields с описанием проблемы. Описание типа, формата и regexp атрибутов находится в request ресурса. Скорректируйте заполнение атрибутов и повторите запрос.
WORKFLOW_FAULTНевозможно идентифицировать организацию плательщикаПроверьте корректность указанных реквизитов плательщика.
Невозможно идентифицировать банк получателя по указанным номеру БИК и корреспондентскому счетуПроверьте корректность указанных реквизитов получателя платежа - атрибуты payeeBankBic и payeeBankCorrAccount
Документ с таким externalId уже существует в системеИспользуется externalId, который уже есть в системе (дубль). Сгенерируйте новый externalId и повторите запрос.
VALIDATION_FAULTОшибка валидацииДанные не соответствуют требованиям валидации. Сведения о некорректных атрибутах request содержатся в массивах fieldNames и checks. Подробные требования к атрибутам описаны в request ресурса, включая типы, форматы и регулярные выражения. Необходимо скорректировать заполнение атрибутов и повторить запрос.
НаименованиеТипОбязательностьОписание
ResourceFault {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
 messagestringoptionalСообщение,
 checksarray[Check]optionalСписок проверок, приведших к ошибке,
 fieldNamesarray[string]optionalНазвания полей с некорректным значением (только для VALIDATION_FAULT)
}
Check {
 levelstringoptionalУровень результата = ['ERROR', 'WARNING'],
 messagestringoptionalСообщение,
 fieldsarray[string]optionalНазвания полей (при наличии связи с моделью)
}
401 (Unauthorized Error)
CauseMessageDescription
UNAUTHORIZEDaccessToken not found by value =хххххххх-хххх-хххх-хххх-хххххххххххх-хУказан некорректный или просроченный access_token. Используйте refresh_token для обновления access_token и повторите запрос.
НаименованиеТипОбязательностьОписание
Notice {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки,
 messagestringoptionalСообщение,
}
403 (Forbidden)
CauseMessageDescription
ACTION_ACCESS_EXCEPTIONОперация не может быть выполнена: доступ к ресурсу запрещенИспользуемый в запросе access_token не имеет разрешения на доступ к нужному сервису Sber API.
В ссылке авторизации СберБизнес ID, в параметре scope, не указана операция PAYMENT_REQUEST_OUT. Необходимо добавить эту операцию в scope. Пользователю потребуется пройти авторизацию заново. Вы получите новые токены access_token и refresh_token. Сделайте повторный запрос с новым access_token.
Вы использовали access_token пользователя Клиента, а не пользователя вашей организации. Нужно использовать access_token пользователя вашей организации.
НаименованиеТипОбязательностьОписание
Notice {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки,
 messagestringoptionalСообщение,
}
429 (Too Many Requests)
CauseMessageDescription
TOO_MANY_REQUESTSПревышен лимит запросов. Повторите операцию позже.Количество запросов к данному методу за ограниченное время превысило допустимое значение. Пользователю необходимо повторить запрос позднее
НаименованиеТипОбязательностьОписание
Notice{
causestringoptionalПричина или основание сообщения,
referenceIdstringoptionalУникальный идентификатор ошибки (UUID),
messagestringoptionalСообщение,
}
500 (Internal Server Error)
CauseMessageDescription
UNKNOWN_EXCEPTIONВнутренняя ошибка сервераСделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка.
НаименованиеТипОбязательностьОписание
Notice {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки,
 messagestringoptionalСообщение,
}
503 (Service Temporarily Unavailable)
CauseMessageDescription
UNAVAILABLE_RESOURCE_EXCEPTIONВнутренняя ошибка сервераСделайте повторный запрос. Если ошибка повторится, подготовьте логи запроса и направьте в службу Технической поддержки Банка.
НаименованиеТипОбязательностьОписание
Notice {
 causestringoptionalПричина или основание сообщения,
 referenceIdstringoptionalУникальный идентификатор ошибки,
 messagestringoptionalСообщение,
}

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