Интеграция со СБИС

Обмен через файловое хранилище

Обмен через файловое хранилище

Файлы отчетности, которые вы отправляете, помещаются в файловое хранилище. Ссылка на файловое хранилище передается в методы API для отправки отчета.

Для размещения файла в хранилище получите ссылку на хранилище файлов и разместите файл в хранилище.

1. Получите ссылку на файловое хранилище
2. Разместите файл в хранилище

Чтобы получить ссылку на хранилище файлов, выполните запрос с пустым телом на адрес: https://online.sbis.ru/disk/api/v1/temp?object=simple_file_sd.

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

POST https://online.sbis.ru/disk/api/v1/temp?object=simple_file_sd HTTP/1.1
Cache-Control: no-cache
Connection: Keep-Alive
Pragma: no-cache
Accept: */*
Cookie: 
User-Agent: External API Client Name
Content-Disposition: attachment; filename*=UTF-8''b171a299-d21a-4182-b6ab-f0c59fa9a794
X-Object-Filename: b171a299-d21a-4182-b6ab-f0c59fa9a794
X-Object-Folder: True
X-SBISAccessToken: base64-encoded-access-token gathered from OAuth.GetToken
X-SBISDeviceId: device-ide gathered from OAuth.GetToken
Content-Length: 0
Host: fix-online.sbis.ru 

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

HTTP/1.1 201 Created
Date: Mon, 16 Apr 2018 11:40:50 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 404
Connection: keep-alive
Keep-Alive: timeout=30
Strict-Transport-Security: max-age=31536000;
Cache-Control: must-revalidate, max-age=0
X-Frame-Options: SAMEORIGIN

{
    "status":201,
    "href":"https://online.sbis.ru/disk/api/v1/7eee56a3-97c8-496d-9c95-c9d07e2c9317?object=simple_file_sd&diskhmac=NWyM7hKvLYlYb3TdUIMrEU64lS4%3D&expire_date=2018-04-16T21:40:50Z",
    "relativePath":"/disk/api/v1/7eee56a3-97c8-496d-9c95-c9d07e2c9317?object=simple_file_sd&diskhmac=NWyM7hKvLYlYb3TdUIMrEU64lS4%3D&expire_date=2018-04-16T21:40:50Z",
    "fileid":"7eee56a3-97c8-496d-9c95-c9d07e2c9317"
}

Итог: ссылка для размещения получена. Она находится в поле «href». Далее нужно разместить файл в хранилище.

Для размещения отправляемых файлов отчетности используйте ссылку, которая получена в поле «href» при первом обращении к файловому хранилищу.

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

POST https://online.sbis.ru/disk/api/v1/7eee56a3-97c8-496d-9c95-c9d07e2c9317?object=simple_file_sd&diskhmac=NWyM7hKvLYlYb3TdUIMrEU64lS4%3D&expire_date=2018-04-16T21:40:50Z HTTP/1.1
Cache-Control: no-cache
Connection: Keep-Alive
Pragma: no-cache
Content-Type: application/octet-stream
Accept: */*
User-Agent: External API Client Name
Content-Disposition: attachment; filename*=UTF-8''NO_ENVD_7666_7666_1708003233170801001_20180416_32DB18D2-6551-4B41-A84B-0D8D3F3F49B9.xml
X-Object-Filename: NO_ENVD_7666_7666_1708003233170801001_20180416_32DB18D2-6551-4B41-A84B-0D8D3F3F49B9.xml
X-SBISAccessToken: base64-encoded-access-token gathered from OAuth.GetToken
X-SBISDeviceId: device-ide gathered from OAuth.GetToken
Content-Length: 1160
Host: fix-online.sbis.ru

<?xml version="1.0" encoding="Windows-1251"?>
<Сведения><Описание><ИмяФормы>Налоговая декларация по единому налогу на вмененный доход для отдельных видов деятельности</ИмяФормы><КНДФормы>1152016</КНДФормы><ВидДокумента>первичный</ВидДокумента><Период ИдентификаторВложения="aec8aea7-6109-4089-bd7a-2e2325280d5f" Код="21" Год="2016"/><НОПоМестуУчета>9992</НОПоМестуУчета><НОПоМестуНахождения>9992</НОПоМестуНахождения><УполномоченнаяБухгалтерия>false</УполномоченнаяБухгалтерия><КолФайл>1</КолФайл></Описание><Пакет><ВерсПрог>СБИС 2.4.353</ВерсПрог><СКЗИ>Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider</СКЗИ><ПрограммаФормированияОтчета>СБИС 2.4.353</ПрограммаФормированияОтчета></Пакет></Сведения>

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

HTTP/1.1 201 Created
Date: Mon, 16 Apr 2018 11:40:50 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 562
Connection: keep-alive
Keep-Alive: timeout=30
Last-Modified: Mon, 16 Apr 2018 11:40:50 GMT
Strict-Transport-Security: max-age=31536000;
Cache-Control: must-revalidate, max-age=0
X-Dispatch: fix-online-dispatch3.unix.tensor.ru (fix-online.sbis.ru)
X-Frame-Options: SAMEORIGIN

{
   "status":201,
   "href":"https://fix-online.sbis.ru/disk/api/v1/efb957ee-9d7a-4304-a827-c130f4e57832_2ba54e6c-9a15-4373-9634-de603a6df312?object=simple_file_sd&diskhmac=DnOIfRkH4if%2BU%2FqVHcJIaZrwhZs%3D",
   "relativePath":"/disk/api/v1/efb957ee-9d7a-4304-a827-c130f4e57832_2ba54e6c-9a15-4373-9634-de603a6df312?object=simple_file_sd&diskhmac=DnOIfRkH4if%2BU%2FqVHcJIaZrwhZs%3D",
   "fileid":"efb957ee-9d7a-4304-a827-c130f4e57832",
   "versionid":"efb957ee-9d7a-4304-a827-c130f4e57832_2ba54e6c-9a15-4373-9634-de603a6df312",
   "range-md5":"0-1159_f9c718bbbb4721625451dd22066fa366"
}

Итог: файл размещен в хранилище. Значение, которое получено в поле «href» — ссылка на объект в файловом хранилище. Ее нужно передать в поле «Документ.Вложение.Файл.Ссылка» для отправки вложения.