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

Создание черновика платежного поручения (отправка на свой счет в Сбербанке)

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

Alt text /fintech/api/v1/payments/from-invoice

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

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

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


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

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

Request

/fintech/api/v1/payments/from-invoice
НаименованиеТипФормат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, то будет присвоено значение "электронно",
  expirationDatestringISO 8601 YYYY-MM-DD^[0-9]{4}-[0-9]{2}-[0-9]{2}$optionalДата истечения заказа (платеж должен быть подтвержден клиентом),
  externalIdstringUUID^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$requiredИдентификатор документа, присвоенный партнером,
  linkedDocsarray[LinkedDoc]array[object]optionalСвязанные документы,
  operationCodestringstring^01$optionalКод операции,
  orderNumberstringstringoptionalНомер заказа,
  payeeAccountstringstring^[0-9]{20}$requiredСчет получателя платежа,
  payeeOrgIdHashstringstring^[0-9a-f]{64}$optionalИдентификатор получателя платежа,
  paymentNumberstringstring^[0-9]{1,6}$optionalНомер платежного поручения.

Если Клиент не ведет в своей учетной системе нумерацию платежных поручений, созданных на основании выставленных счетов, то атрибут можно не передавать, он будет присвоен автоматически,
  prioritystringstring^[4-5]{1}$optionalОчередность платежа,
  purposestringstring^.{0,240}$requiredНазначение платежа.

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

INTERNAL - срочный
INTERNAL_NOTIF - срочный платеж с уведомлением
OFFHOURS - неотложный
BESP - банковские электронные срочные платежи
NORMAL - срочность не указана,
  vatVatobjectrequiredДанные НДС
}
LinkedDoc {
  docExtIdstringUUID^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$optionalИдентификатор документа (заявления на страхование экспортного контракта) во внешней системе (UUID), к которому необходимо привязать платежное поручение,
  typestringstring^(ExportContractInsure)$optionalТип связанного документа (доступное значение для заполнения - exportContractInsure), с которым необходимо связать платежное поручение
}
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 - ручной ввод НДС
}

Responses

201 (Created)
НаименованиеТипОбязательностьОписание
Payment {
  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ИНН плательщика,
  payerKppstringoptionalКПП плательщика,
  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Уникальный идентификатор сертификата ключа проверки электронной подписи (UUID),
}
Vat {
  amountnumberoptionalСумма НДС,
  ratestringoptionalСтавка НДС,
  typestringrequiredСпособ расчета НДС
}
400 (Bad request)
CauseMessageDescription
DESERIALIZATION_FAULTНеверный формат запросаДанные в request указаны в неправильном формате. Атрибуты request, в которых найдены ошибки, указаны в responce в массиве fields с описанием проблемы. Описание типа, формата и regexp атрибутов находится в request запроса. Скорректируйте заполнение атрибутов и повторите запрос.
WORKFLOW_FAULTНе найдена организация получателя по payeeOrgIdHash: <значение payeeOrgIdHash>Проверьте корректность поля payeeOrgIdHash. Также можно в повторном запросе не указывать данное поле - оно не обязательное.
Невозможно идентифицировать организацию плательщикаПроверьте корректность указанных реквизитов плательщика.
Документ с таким externalId уже существует в системеИспользуется externalId, который уже есть в системе (дубль). Сгенерируйте новый externalId и повторите запрос.
Отсутствует доступный открытый рублевый расчетный счет у организации плательщикаПлательщику требуется открыть рублевый расчетный счет в Сбербанке.
Неизвестный счет получателя: <счет получателя платежа>Проверьте корректность указанного счета в атрибуте payeeAccount. Счет должен принадлежать вашей организации.
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Уникальный идентификатор ошибки (UUID),
  messagestringoptionalСообщение,
}
403 (Forbidden)
CauseMessageDescription
ACTION_ACCESS_EXCEPTIONОперация не может быть выполнена: доступ к ресурсу запрещенИспользуемый в запросе access_token не имеет разрешения на доступ к нужному сервису Sber API.
В ссылке авторизации СберБизнес ID, в параметре scope, не указана операция PAY_DOC_RU_INVOICE. Необходимо добавить эту операцию в scope. Пользователю потребуется пройти авторизацию заново. Вы получите новые токены access_token и refresh_token. Сделайте повторный запрос с новым access_token.
Вы использовали access_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 в настройках своего браузера.