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

Валютное платежное поручение

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

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

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

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

Ресурс /v1/pay-doc-cur

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

Шаги

1. Получить AccessToken.

2. Сформировать ЭП.

3. Отправить запрос.

4. Получить статус.

Для создания документа необходимо отправить POST-запрос (/v1 /pay-doc-cur), в котором необходимо передать авторизационный токен для доступа к данным собственной/дочерней организации (Access Token) и реквизитный состав документа. Авторизационный токен передается в параметре Authorization заголовка запроса.

Чтобы получить доступ к ресурсу, необходимо передать в scope сервис PAY_DOC_CUR.

Модель запроса и ответа

НаименованиеОписание
Параметры заголовка
Authorization (String)Access token собственной/дочерней организации, полученный через SSO
Пример: Bearer 8190f687-c916-453b-9d68-0ce22f4f3f9d-1
Параметры тела запроса
PayDocCur {
acceptDate (string, optional, read only)Дата представления в банк ,
addInfo (string, optional)Примечание , 300 символов
additionalInfo (string, optional)Информация получателю платежа (дополнительная информация), поле 72 , 220 символов
amountDebitTotal (number, optional, read only)Фактическая сумма списанной валюты ,
amountTransfer (AmountCurrency)Сумма перевода ,
amountTransferTotal (number, optional, read only)Фактическая сумма переведенной валюты ,
authPersonName (string, optional)ФИО уполномоченного сотрудника организации клиента ,
authPersonTelfax (string, optional)Номер телефона, факса уполномоченного сотрудника организации клиента ,
b77info (string, optional)Информация для регулирующих органов , 109 символов
bankComment (string, optional, read only)Банковский комментарий к статусу документа ,
bankStatus (string, optional, read only)Статус документа ,
beneficiaryAccount (string, optional)Счет бенефициара , 34 символа
beneficiaryAddress (string, optional)Адрес бенефициара ,
beneficiaryBankAccount (string, optional)Корреспондентский счет банка бенефициара ,
beneficiaryBankAddress (string, optional)Адрес банка бенефициара , 255 символов
beneficiaryBankBranchName (string, optional)Наименование филиала банка бенефициара , 70 символов
beneficiaryBankClearingCode (ClearingCode, optional)Клиринговый код банка бенефициара ,
beneficiaryBankCountryDigital (string)Цифровой код страны банка бенефициара ,
beneficiaryBankCountryIso2 (string)2х буквенный ISO-код страны банка бенефициара ,
beneficiaryBankName (string)Наименование банка бенефициара , 140 символов
beneficiaryBankPlace (string)Местонахождение банка бенефициара , 255 символов
beneficiaryBankSwift (string, optional)SWIFT-код банка бенефициара ,11 символов
beneficiaryBeiCode (string, optional)BEI-код (SWIFT-код) банка бенефициара , 11 символов
beneficiaryCountryDigital (string)Цифровой код страны бенефициара , 3 цифры
beneficiaryCountryIso2 (string)2х буквенный ISO-код страны бенефициара , 2 заглавные латинские буквы
beneficiaryCountryName (string, optional)Наименование страны бенефициара на русском языке (краткое наименование) , 255 символов
beneficiaryInn (string, optional)ИНН бенефициара , 10 либо 12 цифр, либо "0". Не заполняется при paymentDirection=0,
beneficiaryName (string)Наименование бенефициара , 140 символов
beneficiaryPlace (string)Город (месторасположение) бенефициара , 35 символов
chargesType (string)Тип комиссии за перевод: BEN, SHA или OUR = ['BEN', 'SHA', 'OUR']
stringEnum: "BEN", "SHA", "OUR",
codes23e (Array[Code23e], optional)23E: Код инструкции ,
date (string)Дата составления документа , YYYY-MM-DD
digestSignatures (Array[Signature], optional)Электронные подписи по дайджесту документа ,
externalId (string)Идентификатор документа в организации-партнере (UUID) ,
factRate (number, optional, read only)Фактический курс конверсии ,
iMediaBankAddress (string, optional)Адрес банка-посредника , 255 символов
iMediaBankCountryDigital (string, optional)Цифровой код страны банка-посредника , 3 цифры
iMediaBankCountryIso2 (string, optional)2х буквенный ISO-код страны банка-посредника , 2 заглавные латинские буквы
iMediaBankName (string, optional)Наименование банка-посредника , 140 символов
iMediaBankPlace (string, optional)Город банка-посредника , 35 символов
iMediaBankSwift (string, optional)SWIFT-код банка-посредника , 11 символов
iMediaClearingCode (ClearingCode, optional)Клиринговый код банка-посредника ,
iMediaFilialBankName (string, optional)Наименование филиала банка-посредника ,
inn (string)ИНН клиента , 10 либо 12 цифр, либо "0"
linkedDocs (Array[LinkedDoc], optional)Связанные документы ,
number (string, optional)Номер документа , до 7 цифр
option50a (string)Опция 50а = ['K', 'F'] stringEnum: "K", "F",
option56a (string, optional)Опция 56a = ['A', 'D'] stringEnum: "A", "D",
option57a (string)Опция 57а = ['A', 'D'] stringEnum: "A", "D",
option59a (string, optional)Опция 59а = ['A', 'F'] stringEnum: "A", "F",
orgName (string)Сокращенное наименование организации клиента , 160 символов
payerAccount (string)Счет плательщика , 20 цифр
payerAddress (string)Адрес плательщика , 120 символов
payerBankBic (string)БИК банка плательщика , 9 цифр
payerBankPlace (string, optional)Местонахождение банка плательщика , 35 символов
payerCountryDigital (string)Цифровой код страны перевододателя , 3 цифры
payerCountryIso2 (string)2х буквенный ISO-код страны перевододателя ,
payerCountryName (string)Наименование страны перевододателя на русском языке (краткое наименование) , 255 символов
payerName (string)Международное наименование плательщика , 140 символов
payerPlace (string)Город (местонахождение) плательщика , 35 символов
paymentDetails (string)Назначение платежа , 140 символов
paymentDirection (string)Направление платежа (Платеж внутри или вне СБРФ): 1-внутри, 0-вне ,
rateAgree (boolean)С курсом проведения конверсионной операции согласны ,
urgent (boolean)Срочность , значение true необходимо отправлять в случае, если по счету списания есть возможность отправлять неотложные платежи.
valueDate (string, optional, read only)Дата валютирования/возврата
}AmountCurrency {
amount (number)Сумма , Максимум 16 цифр в целой части, максимум 2 цифры в дробной части, не менее 0.01
currencyCode (string)Цифровой код валюты , 3 символа: первый - заглавная латинская буква либо цифра, второй и третий - цифры
currencyName (string)Буквенный ISO-код валюты, 3 заглавные латинские буквы
}ClearingCode {
clearingCode (string, optional)Клиринговый код , 11 символов
countryCode (string, optional)2-х символьный код страны,
shortName (string, optional)Сокращенное наименование национального клирингового кода , 140 символов
symbol (string, optional)Обозначение национального клирингового кода 2 заглавные латинские буквы
}Code23e {
code (string)Код инструкции , 4 символа
description (string, optional)Описание , 255 символов
info (string, optional)Дополнительная информация 30 символов
}Signature {
base64Encoded (string)Значение электронной подписи, закодированное в Base64 ,
certificateUuid (string)Уникальный идентификатор сертификата ключа проверки электронной подписи (UUID)
}LinkedDoc {
docExtId (string)Идентификатор документа во внешней системе (UUID) ,
type (string)Тип связанного документа
}

Пример запроса

{
"addInfo":"Примечание",
"additionalInfo":"/CCTFDR/",
"amountTransfer":{
"amount":1.01,
"currencyCode":"840",
"currencyName":"USD"
},
"amountTransferTotal":1.01,
"authPersonName":"Иванов Иван Иванович",
"authPersonTelfax":"4955005550",
"b77info":"/BENEFRES/",
"beneficiaryAccount":"40802840600000200000",
"beneficiaryAddress":"UL.KUTUZOVSKAYA,D.2",
"beneficiaryBankAccount":"40802840600000200000",
"beneficiaryBankAddress":"3, AVENUE HOCHE",
"beneficiaryBankBranchName":"(TREASURY DEPARTMENT)",
"beneficiaryBankClearingCode":{
"clearingCode":"BLAAAOLU",
"countryCode":"DE",
"shortName":"German Bankleitzahl (BLZ)",
"symbol":"BL"
},
"beneficiaryBankCountryDigital":"643",
"beneficiaryBankCountryIso2":"RU",
"beneficiaryBankName":"ALANDSBANKEN ABP (FINLAND),SVENSK FILIAL",
"beneficiaryBankPlace":"ФИНЛЯНДИЯ",
"beneficiaryBankSwift":"AABAFI22TMS",
"beneficiaryBeiCode":"UBSWUS33CHI",
"beneficiaryCountryDigital":"643",
"beneficiaryCountryIso2":"RU",
"beneficiaryCountryName":"РОССИЯ",
"beneficiaryInn":"7707083893",
"beneficiaryName":"EMIRP",
"beneficiaryPlace":"MOSCOW",
"chargesType":"BEN",
"codes23e":[
{
"code":"SDVA",
"description":"Средства должны быть зачислены бенефициару той же датой валютирования",
"info":"DOPOLNITEL INFO 8747483893"
}
],
"date":"2018-12-31",
"digestSignatures":[
{
"base64Encoded":"HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid":"22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId":"22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"iMediaBankAddress":"ACCIONES Y VALORES, PISO 12:CALLE 72 7 64",
"iMediaBankCountryDigital":"643",
"iMediaBankCountryIso2":"RU",
"iMediaBankName":"BANCO DE DESENVOLVIMENTO DE ANGOLA",
"iMediaBankPlace":"LUANDA",
"iMediaBankSwift":"BDAAAOLU",
"iMediaClearingCode":{
"clearingCode":"BLAAAOLU",
"countryCode":"DE",
"shortName":"German Bankleitzahl (BLZ)",
"symbol":"BL"
},
"iMediaFilialBankName":"BANCO DE DESENVOLVIMENTO DE ANGOLA",
"inn":"7707083893",
"linkedDocs":[
{
"docExtId":"22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"type":"PayDocCur"
}
],
"number":"1",
"option50a":"K",
"option56a":"A",
"option57a":"A",
"option59a":"A",
"orgName":"ООО \"Организация\"",
"payerAccount":"40802840600000200000",
"payerAddress":"UL.DOBROLIUBOVA,D.18,OF.III",
"payerBankBic":"044525225",
"payerBankPlace":"MOSCOW",
"payerCountryDigital":"643",
"payerCountryIso2":"RU",
"payerCountryName":"РОССИЯ",
"payerName":"LLC COMPANY",
"payerPlace":"MOSKVA",
"paymentDetails":"CONTRACT 123",
"paymentDirection":"0",
"rateAgree":false,
"urgent":false,
"valueDate":"2018-12-31"
}
Наименование документаtype для linkedDocs
СВОCurrencyOperationDetails

Заполнение клиринговых кодов

Для задания клиринговых кодов банка бенефициара и банка-посредника, описываемых в виде JSON-объекта ClearingStructure, можно использовать данные справочников:

  • Справочник структур национальных клиринговых кодов (ClearingStructure) для заполнения countryCode, shortName и symbol;

  • Международный справочник банков (SwiftBic) для заполнения clearingCode и countryCode.

Чтобы их получить, необходимо отправить соответствующие GET-запросы с указанием имени нужного справочника (см. Получение справочной информации).

Ниже представлена таблица с заполняемыми полями объекта ClearingCode с соответствующими им значениями полей объектов из полученных справочников.

Имя поляОписание
Поля объекта ClearingCode
clearingCode (String)Клиринговый код банка
countryCode (String)Код страны (2 символа)
shortName (String)Сокращенное наименование национального клирингового кода
symbol (String)Обозначение национального клирингового кода
Поля объектов из справочника ClearingStructure
countryCode (String)Код страны (2 символа)
name (String)Сокращенное наименование национального клирингового кода
note (String)Обозначение национального клирингового кода
Поля объектов из справочника SwiftBic
bicInt (String)Международный БИК
mnem02 (String)2-символьный код страны

Передача электронной подписи вместе с документом

Передача электронной подписи (ЭП) осуществляется с использованием массива digestSignatures, где каждый элемент представляет собой подпись (Signature). Каждая подпись должна содержать следующие обязательные поля:

Наименование поляОписание поляПример
base64Encoded (string)Значение ЭП документаHlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==
certificateUuid (string)Идентификатор сертификата, использованного при создании ЭП (можно узнать, обратившись к ресурсу /v1/crypto или /v1/crypto/eio)22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6

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

Документ может быть подписан следующими наборами подписей:

  • одна (единственная) подпись;
  • первая и вторая подписи.

При этом нельзя сочетать подпись, имеющую единственное полномочие, с подписью, имеющей первую или вторую подписи.

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

Подробнее о работе с ЭЦП в Sber API можно ознакомиться в соответствующем разделе документации.

Формирование электронной подписи (ГОСТ 2012).

Теги дайджеста должны быть отсортированы по алфавиту. В дайджесте не указываются значения number и блок linkedDocs.

Формат дайджеста

Наименование поляОписание поляПример
addInfoПримечаниеПримечание
additionalInfoИнформация получателю платежа (поле 72)/CCTFDR/
amountTransfer.amountСумма валютного перевода1.00
amountTransfer.currencyCodeЦифровой код валюты840
amountTransfer.currencyNameISO-код валютыUSD
authPersonNameФИО ответственного лицаИванов Алексей Сергеевич
authPersonTelfaxТелефон ответственного лица+74951234567
b77infoИнформация для регулирующих органовИнформация для регулирующих органов
beneficiaryAccountСчет бенефициара40802840600000200000
beneficiaryAddressАдрес бенефициараUL.KUTUZOVSKAYA,D.2
beneficiaryBankAccountКорреспондентский счет банка бенефициара40802840600000200000
beneficiaryBankAddressАдрес банка бенефициараул. Вавилова, д. 19
beneficiaryBankBranchNameНаименование филиала банка бенефициара(TREASURY DEPARTMENT)
beneficiaryBankClearingCode.clearingCodeКлиринговый код банка бенефициара111111
beneficiaryBankClearingCode.countryCodeОбозначение национального клирингового кода банка бенефициараUA
beneficiaryBankClearingCode.shortNameСокращенное наименование национального клирингового кодаСокращенное наименование национального клирингового кода
beneficiaryBankClearingCode.symbolКлиринговый код банка бенефициараUA
beneficiaryBankCountryDigitalЦифровой код страны банка бенефициара643
beneficiaryBankCountryIso22х буквенный ISO-код страны банка бенефициараRU
beneficiaryBankNameНаименование банка бенефициараПАО СБЕРБАНК
beneficiaryBankPlaceМестонахождение банка бенефициараMOSKVA
beneficiaryBankSwiftSWIFT-код банка бенефициараABNARUMMSPB
beneficiaryBeiCodeBEI-код (SWIFT-код)AAAAAAAA
beneficiaryCountryDigitalЦифровой код страны бенефициара643
beneficiaryCountryIso22х буквенный ISO-код страны бенефициараRU
beneficiaryCountryNameНаименование страны бенефициара на русском языке (краткое наименование)Россия
beneficiaryInnИНН бенефициара222201236445
beneficiaryNameНаименование бенефициараEMIRP
beneficiaryPlaceГород (месторасположение) бенефициараMOSKVA
chargesTypeТип комиссии за перевод: BEN, SHA или OURBEN
dateДата документа2019-10-16
externalIdИдентификатор документа в организации-партнере (UUID)619e25cf-dc0b-4420-8957-1b94bf29f145
iMediaBankAddressАдрес банка-посредникаSWEDEN HOUSE
iMediaBankCountryDigitalЦифровой код страны банка-посредника643
iMediaBankCountryIso22х буквенный ISO-код страны банка-посредникаRU
iMediaBankNameНаименование банка-посредникаABN AMRO BANK A.O.
iMediaBankPlaceГород банка-посредникаST. PETERSBURG
iMediaBankSwiftSWIFT-код банка-посредникаABNARUMMSPB
iMediaClearingCode.clearingCodeКлиринговый код банка посредника111111
iMediaClearingCode.countryCodeОбозначение национального клирингового кода банка-посредникаUA
iMediaClearingCode.shortNameСокращенное наименование национального клирингового кода
iMediaClearingCode.symbolОбозначение национального клирингового кода банка-посредникаUA
iMediaFilialBankNameНаименование филиала банка-посредникаОСБ1
innИНН клиента1182079004
option50aОпция "K" для поля 50аK
option56aОпция "A", "D" для поля 56аA
option57aОпция "A", "D" для поля 57аA
option59aОпция "А" для поля 59а или «без опции»A
orgNameНаименование организации клиентаОрганизация YUaegpVCyvHROOE
payerAccountСчет плательщика40702840775470463045
payerAddressАдрес плательщикаUL.DOBROLIUBOVA,D.18,OF.III
payerBankBicБИК банка плательщика044525225
payerBankPlaceМестонахождение банка плательщикаMOSKVA
payerCountryDigitalЦифровой код страны перевододателя643
payerCountryIso22х буквенный ISO-код страны перевододателяRU
payerCountryNameНаименование страны перевододателя на русском языке (краткое наименование)Россия
payerNameМеждународное наименование плательщикаLLC COMPANY
payerPlaceГород (местонахождение) плательщикаMOSKVA
paymentDetailsНазначение платежаABCD
paymentDirectionНаправление платежа (Платеж внутри или вне СБРФ): 1-внутри, 0-вне1
rateAgreeС курсом проведения конверсионной операции согласныtrue
urgentСрочностьfalse
TABLES
Table23E: Код инструкцииCodes23e
codeКод инструкцииTELE
descriptionОписаниеОписание
infoДополнительная информацияИНФО
#Разделитель

Пример дайджеста

addInfo=Примечание
additionalInfo=Информация получателю платежа
amountTransfer.amount=1.00
amountTransfer.currencyCode=840
amountTransfer.currencyName=USD
authPersonName=Иванов Алексей Сергеевич
authPersonTelfax=+74951234567
b77info=Информация для регулирующих органов
beneficiaryAccount=40802840600000200000
beneficiaryAddress=UL.KUTUZOVSKAYA,D.2
beneficiaryBankAccount=40802840600000200000
beneficiaryBankAddress=ул. Вавилова, д. 19
beneficiaryBankBranchName=ОСБ1
beneficiaryBankClearingCode.clearingCode=111111
beneficiaryBankClearingCode.countryCode=UA
beneficiaryBankClearingCode.shortName=Сокращенное наименование национального клирингового кода
beneficiaryBankClearingCode.symbol=UA
beneficiaryBankCountryDigital=643
beneficiaryBankCountryIso2=RU
beneficiaryBankName=ПАО СБЕРБАНК
beneficiaryBankPlace=MOSKVA
beneficiaryBankSwift=ABNARUMMSPB
beneficiaryBeiCode=AAAAAAAA
beneficiaryCountryDigital=643
beneficiaryCountryIso2=RU
beneficiaryCountryName=Россия
beneficiaryInn=222201236445
beneficiaryName=EMIRP
beneficiaryPlace=MOSKVA
chargesType=BEN
date=2019-11-26
externalId=fa1dabed-d7c4-42c3-9c59-25cbf4724765
iMediaBankAddress=SWEDEN HOUSE
iMediaBankCountryDigital=643
iMediaBankCountryIso2=RU
iMediaBankName=ABN AMRO BANK A.O.
iMediaBankPlace=ST. PETERSBURG
iMediaBankSwift=ABNARUMMSPB
iMediaClearingCode.clearingCode=111111
iMediaClearingCode.countryCode=UA
iMediaClearingCode.shortName=Сокращенное наименование национального клирингового кода
iMediaClearingCode.symbol=UA
iMediaFilialBankName=ОСБ1
inn=7494979410
option50a=K
option56a=A
option57a=A
option59a=A
orgName=Организация LCMdmYRFBCUflhq
payerAccount=40702840459430282265
payerAddress=UL.DOBROLIUBOVA,D.18,OF.III
payerBankBic=044525225
payerBankPlace=MOSKVA
payerCountryDigital=643
payerCountryIso2=RU
payerCountryName=Россия
payerName=LLC COMPANY
payerPlace=MOSKVA
paymentDetails=НАЗНАЧЕНИЕ ПЛАТЕЖА
paymentDirection=1
rateAgree=true
urgent=false
TABLES
Table=Codes23e
code=TELE
description=Описание
info=Дополнительная информация
#

Ресурс /v1/pay-doc-cur/{externalId}/state

Ресурс позволяет получить статус ранее отправленного электронного документа.

Шаги

1. Получить AccessToken.

2. Отправить запрос

Для получения статуса документа необходимо отправить GET-запрос (/v1/pay-doc-cur/{externalId}/state), в котором передать авторизационный токен к данным собственной/дочерней организации (Access Token) и идентификатор документа (externalId). Авторизационный токен передается в параметре Authorization заголовка запроса.

Чтобы получить доступ к ресурсу, необходимо передать в scope сервис PAY_DOC_CUR.

Модель запроса

НаименованиеОписание
Параметры заголовка
Authorization (String)Access token, полученный через SSO
Пример: Bearer daf9a14c-821d-4bde-9c10-0e56e63d54a0-1
Параметры запроса
externalId (String)Идентификатор документа, присвоенный клиентом

Пример запроса

curl -X GET --header 'Accept: application/json' --header
'Authorization: Bearer daf9a14c-821d-4bde-9c10-0e56e63d54a0-1'
'https://iftfintech.testsbi.sberbank.ru:9443/fintech/api/v1/pay-doc-cur
/22a6dd81-103a-4d3a-8e9b0ba4b527f010/state'

Модель ответа

НаименованиеОписание
DocState
bankComment (string, optional, read only)Банковский комментарий к статусу документа,
bankStatus (string, optional)Статус документа,
channelInfo (string, optional, read only)Комментарий, специфичный для документа, полученного по данному каналу,

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

{
"bankStatus": "DELIVERED",
"bankComment": null,
"channelInfo": null,
}

Возможные статусы

Код состояние документаНаименование статуса
Промежуточные статусы/Продолжать опрашивать
ACCEPTEDПринят
ACCEPTED_BY_ABSПринят АБС
ACCEPTED_BY_CFEПринят ВК
ACCEPTED_RZKАкцептован СБК
CARD2Картотека №2
CORRESPONDENT_APPROVE_WAITINGОжидает подтверждения контрагента
CREATEDСоздан
CHECKERRORОшибка контроля
CREATED_BANKСоздан Банком
CHECKERROR_BANKОшибка контроля, Банк
DELAYEDПриостановлен
DELIVEREDДоставлен
EXPORTEDВыгружен
FRAUDSMSТребуется подтверждение СМС-паролем
FRAUDREVIEWНа проверке у специалиста банка
FRAUDSENTОтправлен во ФРОД
FRAUDALLOWОдобрен ФРОД
FRAUDDENYОтвергнут ФРОД
IMPORTEDИмпортирован
IMPORTED_BANKИмпортирован Банком
NEED_REVIEWНеобходимы исправления
PROCESSINGВ обработке
PUBLISHED_BY_BANKИздан Банком
PARTSIGNEDЧастично подписан
PROCESSING_RZKОбрабатывается СБК
PROCESSEDОбработан
READY_TO_SENDЖдет отправки
RETURNEDВозвращен
RATE_CONFIRMATIONНа подтверждении курса
SIGNEDПодписан
SENDINGОтправляется
SENDEDОтправлен
SENDING_TO_RZKОтправляется в СБК
SIGNED_BANKПодписан Банком
SENT_TO_ADMINПередан администратору
TEMPLATEШаблон документа
TRIEDПроверен
TO_PROCESSING_RZKК отправке в СБК
TO_SIGN_IN_RZKПодписывается в СБК
TRIED_BY_CFEПроверяется ВК
USER_RESERVEDЗарезервированы логины
VALIDEDSЭП/АСП верна
Окончательные статусы/Прекратить опрос
CLOSEDЗакрыт
DELETEDУдален
EXPORTED_TO_1CВыгружен в реестр
INVALIDEDSЭП/АСП не верна
PROCESSERRORОтказан
REQUISITEERRORОшибка реквизитов
REFUSEDBYBANKОтвергнут Банком
REFUSEDBYABSОтказан АБС
RECALLОтозван
RECALL_BY_BANKОтозван Банком
REFUSED_BY_CFEОтказан ВК
UNABLE_TO_DECRYPTОшибка шифрования
UNABLE_TO_RECEIVEОшибка при приеме
Окончательные(Успешные) статусы/Прекратить опрос
IMPLEMENTEDИсполнен

Ресурс /v1/pay-doc-cur/{externalId}

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

Шаги

1. Получить AccessToken.

2. Отправить запрос.

Для получения документа необходимо отправить GET-запрос (/v1/pay-doc-cur/{externalId}), в котором передать авторизационный токен к данным собственной/дочерней организации (Access Token) и идентификатор документа (externalId). Авторизационный токен передается в параметре Authorization заголовка запроса.

Чтобы получить доступ к ресурсу, необходимо передать в scope сервис PAY_DOC_CUR.

Модель запроса

НаименованиеОписание
Параметры заголовка
Authorization (String)Access token, полученный через SSO
Пример: Bearer f8ad3141-b7e8-4924-92de-3de4fd0a464e-1
Параметры запроса
externalId (String)Идентификатор документа, присвоенный партнером

Пример запроса

curl -X GET --header 'Accept: application/json' --header
'Authorization: Bearer f8ad3141-b7e8-4924-92de-3de4fd0a464e-1'
'https://iftfintech.testsbi.sberbank.ru:9443/fintech/api/v1/pay-doc-cur/22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6'

Модель ответа

Соответствует модели запроса и ответа /v1/pay-doc-cur

Дополнительная информация

Подписание запроса транспортной подписью

Content-Type может содержать одно из двух значений:

  • application/json – запрос без подписи
  • application/jose – запрос, подписанный транспортной подписью

Если Content-Type имеет значение application/jose, то запрос должен содержать данные в виде компактной сериализации RFC 7515: JSON Web Signature (JWS).

JWS состоит из трёх частей:

  1. Заголовок (Header) - определяет алгоритм подписи и тип токена
  2. Полезная нагрузка (Payload) - содержит данные, которые необходимо защитить
  3. Электронная подпись (Signature) - вычисляется с использованием приватного ключа клиента
Base64Url(Header) || ’.’ ||  Base64Url(Payload) || ’.’ || Base64Url(Signature)

Каждая часть ответа, разделенная точкой, должна декодироваться отдельно. Для декодирования следует воспользоваться алгоритмом Base64URL Encoding.

Signature - это подпись данных приватной частью ключевой пары клиента (используется приватный ключ парный сертификату клиента). Подпись вычисляется по алгоритму указанному в Заголовке (Header) в параметре alg (в нашем случае gost34.10-2012) и вычисляется от исходных данных:

Base64Url(Header) || ‘.’ || Base64Url(Payload).

Формирование исходных данных для вычисления подписи описано в спецификации RFC 7515: JSON Web Signature (JWS).

При кодировании JWS используется преобразование Base64Url. Преобразование можно представить следующим образом:

Base64Url(x) := Base64(x).Split(‘=’)[0].Replace(‘+’, ’-’).Replace(‘/’, ’_’)
  • функция Split(x), разбивает строку на части ([i] означает взятие i–ой части), используя символ разделитель x,
  • функция Replace(x,y) заменяет все вхождения символа x на символ y.

Преобразование Base64Url, отличается от Base64 преобразования:

BASE64URLBASE64
- (minus)+
_ (underline)/

Коды возврата

Код возвратаОписание кода возвратаПричина возникновения
200 (GET-запрос)ОК
201 (POST-запрос)CREATED
Создан
400DESERIALIZATION_FAULT
Неверный формат запросаНеверный формат запроса
WORKFLOW_FAULT
Для внешнего сервиса недоступны операции по счету: 40702810ХХХХХХХХХХХХДля внешнего сервиса недоступны операции по счету:

счет не добавлен в список разрешенных в оферте;
внешний сервис заблокирован в СББОЛ;
счет указан неверно.

Отсутствует доступный открытый рублевый расчетный счет у организации плательщика
Документ с такими реквизитами уже существуетДокумент с такими реквизитами уже существует. Проверка по номер документа в течении года.
Не указан идентификатор сертификата подписиНе указан идентификатор сертификата подписи(параметр kid заголовка JWS)
Некорректный формат параметра kid заголовка JWSНекорректный формат параметра kid заголовка JWS(ожидается UUID)
VALIDATION_FAULT
Ошибка валидацииОшибка валидации данных запроса с указанием некорректных значений. Значения полей модели или параметров запроса не соответствуют допустимым и определенным в модели.
SIGN_CHECK_EXCEPTION
Подлинность подписи не установлена/Сертификат не обнаружен или не является активнымОшибка возникает, если не удалось установить подлинность подписи
401UNAUTHORIZED
accessToken not found by value =хххххххх-хххх-хххх-хххх-хххххххххххх-хУказан некорректный или просроченный access_token.
403ACTION_ACCESS_EXCEPTION
Операция не может быть выполнена: доступ к ресурсу запрещенУ пользователя нет прав на использование соответствующего сервиса Sber API, доступ к которому не предусмотрен настройками scope; У пользователя отсутствует оферта с внешним сервисом.
415JWS_EXCEPTED
В соответствии с текущими настройками сервиса с clientId=%s необходимо использовать запрос в формате JWS Compact SerializationОшибка возникает, если в настройках внешних сервисов выставлен флаг "Требуется подпись для внешнего сервиса"
500UNKNOWN_EXCEPTION
Внутренняя ошибка сервера
503UNAVAILABLE_RESOURCE_EXCEPTION
Сервис временно недоступенПроводятся технические работы
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.