ym88659208ym87991671
Создание заявления на изменение лимита бизнес-карты (/v1/business-cards/limits) | Документация для разработчиков

Создание заявления на изменение лимита бизнес-карты (/v1/business-cards/limits)

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

Alt text https://fintech.sberbank.ru:9443/fintech/api/v1/business-cards/limits

Ресурс /v1/business-cards/limits позволяет создавать документ: «Заявления на изменение лимита бизнес-карты». Документ можно создать без подписи в виде черновика либо сразу с подписью. Банк начинает обработку заявления при наличии подписи.

Для создания заявления на изменение лимита по бизнес-карте необходимо отправить POST-запрос /v1/business-cards/limits с токеном доступа (access_token) пользователя в параметре Authorization заголовка и реквизиты заявления в теле запроса.

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


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

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

Request

/v1/business-cards/limits
НаименованиеТипФорматRegexpОбязательностьОписание
HEADER
Authorizationstringstring^([a-zA-Z0-9]){38}$requiredAccess token пользователя, полученный через SSO.
BODY
BusinessCardLimitChange {
   businessCardIdstringUUID^([0-9A-Fa-f]{8})-([0-9A-Fa-f]{4})-([0-9A-Za-z]{4})-([0-9A-Fa-f]{12})$requiredИдентификатор бизнес-карты,
   codestringstring^[a-zA-Z0-9._ -]{1,19}$

Актуальный список значений можно получить с помощью справочника CorpCardLimitType
requiredКод лимита,
   digestSignaturesArray[Signature]      optionalЭлектронные подписи по дайджесту документа,
   externalIdstringUUID^([0-9A-Fa-f]{8})-([0-9A-Fa-f]{4})-([0-9A-Za-z]{4})-([0-9A-Fa-f]{12})$requiredВнешний идентификатор заявления на изменение лимита,
   limitnumberfloat^[0-9]+(.[0-9]+)?$requiredРазмер лимита на период
}
Signature [
   {
      base64Encodedstringbase64^[a-zA-Z0-9]+$optionalЗначение электронной подписи (ЭП), закодированное в Base64.
Можно передать одну или две ЭП вместе с реквизитами создаваемого документа - ссылка на ЭП.
Если ЭП передана/ы в API, то они сохраняются вместе с документом, а сам документ продвигается дальше по своему жизненному циклу.
Если ЭП не была/и передана/ы, то документ сохраняется в своем начальном статусе и ожидает дальнейшего подписания в интерфейсе СберБизнес,
      certificateUuidstringUUID^([0-9A-Fa-f]{8})-([0-9A-Fa-f]{4})-([0-9A-Za-z]{4})-([0-9A-Fa-f]{12})$optionalУникальный идентификатор сертификата ключа проверки электронной подписи
   }
]

digestSignatures

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

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

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

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

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

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

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

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

Алгоритм сортировки
  1. Поля дайджеста должны быть отсортированы по алфавиту.
  2. Разделитель строк должен быть в формате unix (одиночный \n).
  3. Последняя строка дайджеста не должна содержать перевод строки.
  4. Перевод строк должен быть экранирован как \n.
Формат дайджеста
Наименование поляОписание поляПример
businessCardIdИдентификатор бизнес-картыccf62938-cbda-4785-a008-12bd300bef80
limitРазмер лимита на период2650000.00
codeКод лимитаNON_RENEW
externalIdИдентификатор заявления31663ef5-7975-4016-b0f3-f1d70a4e9c22

Responses

201 (Created)
НаименованиеТипОбязательностьОписание
BusinessCardLimitChangeRes {
   bankCommentstringoptionalБанковский комментарий к статусу документа,
   bankStatusstringoptionalСтатус документа,
   businessCardIdstringrequiredИдентификатор бизнес-карты,
   codestringrequiredКод лимита,
   datestringrequiredДата составления документа,
   digestSignaturesArray[Signature]optionalЭлектронные подписи по дайджесту документа,
   externalIdstringrequiredВнешний идентификатор заявления на изменение лимита,
   limitnumberrequiredРазмер лимита на период,
   numberstringrequiredНомер документа
}
Signature [
   {
      base64EncodedstringoptionalЗначение электронной подписи (ЭП), закодированное в Base64.
Можно передать одну или две ЭП вместе с реквизитами создаваемого документа - ссылка на ЭП.
Если ЭП передана/ы в API, то они сохраняются вместе с документом, а сам документ продвигается дальше по своему жизненному циклу.
Если ЭП не была/и передана/ы, то документ сохраняется в своем начальном статусе и ожидает дальнейшего подписания в интерфейсе СберБизнес,
      certificateUuidstringoptionalУникальный идентификатор сертификата ключа проверки электронной подписи
   }
]
202 (Accepted)
CauseMessageDescription
WORKFLOW_FAULTДокумент сохранен, но обработка ЭП или принятие документа завершились ошибкой. ЭП не может быть принятаНеизвестный идентификатор сертификата. Проверьте корректность отправленной ЭП в запросе.
Возможно, была отправлена ЭП с типом "Первая подпись" или "Вторая подпись". Для случаев, когда используется ЭП подписантов с типом "Первая подпись" или "Вторая подпись" для принятия документа в обработку требуется передать в запросе данные обеих подписей.
НаименованиеТипОбязательностьОписание
WorkflowFault {
   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 ресурса. Скорректируйте заполнение атрибутов и повторите запрос.
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, не указана операция BUSINESS_CARD_LIMIT. Необходимо добавить эту операцию в scope. Пользователю потребуется пройти аутентификацию заново. Вы получите новые токены access_token и refresh_token. Сделайте повторный запрос с новым access_token.
НаименованиеТипОбязательностьОписание
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 в настройках своего браузера.