Форум OlegON > Программы и оборудование для автоматизации торговли > Маркировка

как работать с API Честного Знака ? : Маркировка

06.05.2024 5:24


29.02.2024 09:33
MWWRuza
 
Да, кстати, подписываю почему-то вот этим скриптом:

СтрКода="function SignFile(FileName,Cert,OutFileName)
|{
| InStream=new ActiveXObject(""ADODB.Stream"");
| InStream.Type=1; // binary data
| InStream.Mode=3; // read/write
| InStream.Open();
| InStream.LoadFromFile(FileName);
| InData=InStream.Read(-1);
|
| Signer=new ActiveXObject(""CAPICOM.Signer"");
| Signer.Certificate=Cert;
| Signer.Options=2; // CAPICOM_CERTIFICATE_INCLUDE_END_ENTITY_ONLY
| SignedData=new ActiveXObject(""CAPICOM.SignedData"");
| SignedData.Content=InData;
| OutSignedData=SignedData.Sign(Signer,0,0);
|
| OutStream=new ActiveXObject(""ADODB.Stream"");
| OutStream.CharSet=""utf-8"";
| OutStream.Type=2; // text data
| OutStream.Mode=3; // read/write
| OutStream.Open();
| OutStream.WriteText(OutSignedData);
| OutStream.SaveToFile(OutFileName,2);
| OutStream.Close();
|
| return(0);
|}
|";

А это капиком и "прикрепленная"... А вроде нужно открепленная. Но, делал давно, и уже не помню, почему так, и работает, везде..
А тут, как в анекдоте - "работает и не трожь!!!"
29.02.2024 09:38
MWWRuza
 
Цитата:
FinSoft Я понимаю, что в 1С их нет.
Почему нет... Есть, но как и многое - через жо... Точнее, через "добавку" 1CPP(внешняя компонента, сильно расширяющая штатные возможности ЯП v7)... Ну, это кто к чему привык.
29.02.2024 10:04
MWWRuza
 
Цитата:
MWWRuza А это капиком и "прикрепленная"... А вроде нужно открепленная. Но, делал давно, и уже не помню, почему так, и работает, везде..
А тут, как в анекдоте - "работает и не трожь!!!"
Не утерпел, попробовал. Делаю "открепленную", на последнем шаге получаю ошибку 400, с дескриптором "Ошибка проверки подписи"... Х.з., почему. Видимо не спроста я ее сделал прикрепленной, похоже уже наступал на эти "грабли"... Просто благополучно забыл...
29.02.2024 14:07
FinSoft
 
Цитата:
MWWRuza Почему нет... Есть, но как и многое - через жо... Точнее, через "добавку" 1CPP(внешняя компонента, сильно расширяющая штатные возможности ЯП v7)... Ну, это кто к чему привык.
Я имел ввиду штатные возможности. Посмотрел "ооп" в 1cpp, это забавно было.
29.02.2024 16:14
MWWRuza
 
Блин, не давала мне покоя "открепленная ЭЦП"... Почему я так сделал?
А вот почему:



Так и должно быть. Просто делал давно, и уде забыл. Старый стал, "галочку" поставил, что сделал, получилось, отладил, пустил "в продакшен", и нефик мозги забивать ))
29.02.2024 16:19
MWWRuza
 
Открепленная, вроде в подписании документа в ЭДО лайт(да и в СБИС тоже). А делал ЭДО я позже, авторизация к тому моменту была уже давно сделана, отлажена "и сдана в архив" вот и запало в память то, с чем позже работал ...
04.03.2024 06:37
Ilya_Nsk
 
Ого!
Я еще раз написал в техподдержку с конкретными выкладками, они озадачились, пару раз меняли статус запроса что-то там об углублении в тему.. Жду ответа.

А у утилиты cryptcp, которую я использую для подписывания, (входит в состав Крипто-Про, поддерживает командную строку) действительно много ключей, т.к. в ней не только подписывание (в т.ч. в каком-то формате DER), но и проверка, шифрование/дешифровка, работа с самим сертификатами, добавление/удаление/запрос и пр.

Вот и мне в ответ "прилетает" токен - вполне себе законченное JSON сообщение
{"token":"bla-blal"}
извлекаю это bla-bla, "леплю" в заголовок
Authorization: Bearer bla-bla
а мне - Ваш bla-bla протух
06.03.2024 10:17
Ilya_Nsk
 
Кстати, господа, грядет запретительная система продажи маркированного товара. Пробую воспользоваться 5.1.7.1. Метод верификации кодов маркировки и получения сокращённой информации о товаре из True_API_GIS_MT-v377.0-21.02.2024-at-12-00-29.pdf. Метод публичный и, как бы, предназначен для он-лайн использования с ККТ. В ответ довольно шустро получаю массу параметров марки, причем состав ответа зависит от типа товара и как однозначно определить, можно ли продавать данный товар. Вот пример ответа на какую-то молочку (в приложении есть ответы на минералку, кеговое пиво, 19 л воду):
Код:
{"code":0,
"description":"ok",
"codes":[{"cis":"0104607038707145215agSdd\u001D93uIF2",
"valid":true,
"printView":"0104607038707145215agSdd",
"gtin":"04607038707145",
"groupIds":[8],
"verified":true,
"found":true,
"realizable":false,
"utilised":true,
"isBlocked":false,
"expireDate":"2023-08-28T00:00:00.000Z",
"productionDate":"2023-07-29T00:00:00.000Z",
"prVetDocument":"df5b4657-01ec-4cbb-90d4-934d70e3c0e2",
"isOwner":true,
"errorCode":0,
"isTracking":false,
"sold":true,
"packageType":"UNIT",
"producerInn":"4213003797",
"grayZone":false}],
"reqId":"dd9f0fa2-2ee5-4191-8fdd-66c16ebeb5b3",
"reqTimestamp":1709708532118}
Какие параметры отслеживать для запрещения?
Вложения
Тип файла: 7z Replies.7z (848 байт, 13 просмотров)
06.03.2024 10:27
RolSss
 
в этой же методичке есть раздел и таблица условий которые можете отслеживать 4. Определение случаев запрета продажи товаров, подлежащих обязательной
маркировке средствами идентификации
06.03.2024 11:27
student
 
Цитата:
RolSss в этой же методичке есть раздел
не ту методичку юзаешь, надо

и на форуме так же есть тема где все это уже давно обсуждается и есть все ссылки\аттачи
Часовой пояс GMT +3, время: 05:24.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.