QA » История » Версия 114
Версия 113 (as multisoft, 08.02.2019 15:55) → Версия 114/338 (as multisoft, 11.02.2019 14:01)
h1. QA Вопросы и ответы
h2. Ссылки на документацию: "aidl":http://doc.multisoft.ru/doc/MSPOS/, "примеры":http://doc.multisoft.ru/doc/MSPOS/Examples/, "описания функций":http://doc.multisoft.ru/doc/MSPOS/html/
h2. Перед началом работы: какие модели поддерживаются?
В настоящий момент Фискальное ядро установлено на следующие модели ККТ: *MSPOS-K, MSPOS-T-Ф, MSPOS-Е-Ф*.
Им соответствуют строковые константы моделей (Build.MODEL) устройств:
* MSPOS-K: "V1S-G", "V1S", "V2"
* MSPOS-T-Ф: "T1MINI-G", "T1MINI"
* MSPOS-Е-Ф: "P1_4G", "P1_4G-G", "P1_4G-EU"
h2. Q0:
h2. *Любые обращения по поводу конерктного устройства/ККТ. Вопросы по переводу устройств между ТК и ОК, а также между субаккаунтами внутри ТК и ОК.*
h2. A0:
При обращении по любым вопросам, которые касаются конкретного устройства, в чаты ТП и разработки
нужно указывать *SN* устройства (см. наклейку со штрих-кодами на обратной стороне аппарата).
Если вопрос связан с переводом устройства в тестовый контур или обратно в основной,
*нужно прикладывать фото задней части устройства либо скриншот первой страницы mspos-expert %{color:red}с читаемым SN%*.
Перенос устройств между ТК и ОК, а также между их субаккаунтами осуществляется только после подтверждения права собственности на устройство.
%{color:red}Переводы клиентского оборудования из *кастомного магазина в основной* делаются *по заявке с подписью ответственного лица и печатью организации*%.
Заявки на перевод принимаются *только от той организации, к кастомному магазину которой устройство было привязано при отгрузке*.
Перенос устройств между ТК и ОК после *13-00 МСК* выполняется с большой вероятностью только *на следующий день*.
h2. {{collapse(где найти SN)
!1.png!
}}
Фото не обязательно, если девайс уже привязан к Вашему личному кабинету. Предоставление фото позволяет избежать ошибок при переводе.
{{collapse(Так делать не надо)
!2.png!
}}
h2. Q1:
h2. *Как добавить IFiscalCore.aidl в Android Studio?*
h2. A1:
0. Скачать IFiscalCore.aidl, IAuth.aidl, IExceptionCallback.aidl с "сервера":http://doc.multisoft.ru/doc/MSPOS/
1. В корневой папке проекта создать папку aidl
2. Внутри папки aidl создать папку с именем, соответствуюим package (com.multisoft.drivers.fiscalcore).
3. Правый клик по папке с именем package -> New -> AIDL -> AIDL File
4. Во всплывающем окне ввести имя интерфейса (например, IFiscalCore). Подтвердить выбор.
5. Скопировать содержимое скачанного файла в текстовом виде в созданный без(!) замены файлов.
6. Повторить операции 3-5 для IAuth.aidl и IExceptionCallback.aidl
h2. Q2:
h2. *У меня ошибка вида %{color:red}Execution failed for task ':app:compileDebugAidl'%. Либо %{color:red}*.aidl:1: syntax error don't know what to do with "?"%*
h2. A2:
Вероятно файлы содержат "BOM":https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%80%D0%BA%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2.
Выполните инструкции, описанные в "Q1":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q1.
h2. Q3:
h2. *Как зарегистрироваться в программе Sunmi Partners?*
h2. A3:
После подписания партнёрского соглашения на указанную в нём почту придёт приглашение на регистрацию в "Sunmi Partners":https://partner.sunmi.com/login. Регистрироваться без инвайта не нужно.
Откройте присланную ссылку с персонального компьютера (ПК) в "Google Chrome":https://www.google.ru/chrome/browser/desktop/index.html. Рекомендуется использовать его и в дальнейшем для любых действий в "личном кабинете (ЛК)":https://partner.sunmi.com/login.
Первая загрузка сайта может занять некоторое время, подождите полной загрузки и не обновляйте страницу, пока она не будет полностью загружена.
Если страница загрузилась, но открывается пустой список для выбора страны и/или кода телефона - очистите кеш браузера и обновите страницу.
Не обновляйте страницу повторно, пока она не загрузится полностью.
Следуйте шагам реристрации. *Оформлять смс подтверждение не нужно*.
По окончании дождитесь верификации аккаута. Она выполняется автоматически в течение 1 рабочего дня.
В процессе регистрации будет предложено загрузить Company Registration Certification. Подробнее в "Q5":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q5.
*После регистрации и успешной верификации нужно добавить фискальное ядро в свой магазин.
Для этого выполните пункты "A3_1":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#A3_1*
При настройке личного кабинета (ЛК) разработчика установите триггеры в соответствии с картинкой.
Debugger access control рекомендуется установить в положение "выкл", иначе придётся периодически вводить в устройство временный пароль,
который присылается на почту, указанную в ЛК в Development -> Debugger.
*Не включайте Google Play. В основном контуре Google Play выключен* в целях безопасности.
h3. {{collapse(Настройки ТК)
!tk_setttings1.png!
}}
h2. Q3_1:
h2. На устройстве нет MSPOS-Expert. Что делать?
На устройстве нет прилоения <notextile>%</notextile>AppName<notextile>%</notextile>. Как его добавить?
h2. A3_1:
Зайдите в "личный кабинет":https://partner.sunmi.com/login на вкладку *App Store -> App List*,
найдите *MSPOS-Expert* (или <notextile>%</notextile>AppName<notextile>%</notextile>) справа в *"No apps added"*, выделите его галку и нажмите кнопку *"Added apps"*.
После этого приложение появится в *"Apps Selected"*.
Если приложения нет в списке справа, проверьте список слева.
Для добавления приложения, отсутствующего в обоих списках напишите разработчикам этого приложения.
Также рекомендуем добавить *TeamViewerQS* и *TeamViewerQS —APPX*.
В дальнейшем *не удаляйте MSPOS-Expert из магазина*.
h3. {{collapse(Как добавить приложение в ЛК разработчика)
!add_mspos.png!
}}
h2. Q4:
h2. *Как подготовить устройство MSPOS-K к отладке?*
h2. A4:
В тестовом контуре возможность отладки автоматически включена для всех устройств, привязанных к тестовому аккаунту.
На своём устройстве *в "Настройки"->"Безопасность" разрешите установку приложений из неизвестных источников*.
Сообщите серийный номер устройств(а) (SN) сотрудникам Multisoft/Альфа-Проект, которые занимаются интеграцией.
Они привяжут его к вашему аккаунту по завершении регистрации в Sunmi Partners.
Для упрощения *разработки в ТК* в Вашем "личном кабинете":https://partner.sunmi.com/login *device configuration* -> *common* -> *debugger access control* должен быть *выключен*.
В этом случае способ, описанный "здесь":https://docs.sunmi.com/htmls/index.html?lang=en##Debug%20device , не имеет смысла и его не нужно использовать.
Подключите устройство к сети WiFi с открытым доступом и интернет.
Подключите включенное устройство по USB к компьютеру с установленным Android SDK.
Дождитесь установки драйверов (если используется Windows) и появления уведомления "Отладка по USB разрешена" на устройстве
В *%AndroidSDKInstallDir%\android-sdk\platform-tools\* выполните *"adb devices"* из консоли,
на экран должны будут выведены серийный номер аппарата и *device*, что означает, устройство готово к отладке.
Если эта команда показывает *"unauthorized"*, проверьте подключение к интернет и перезагрузите аппарат.
Если после перезагрузки *adb devices* всё равно возвращает *unauthorized*, либо при отладке возникают ошибки доступа,
попробуйте включить режим разработчика вручную стандартным для android устройств способом:
многократными тапами по *Build.Number (Номер сборки)* в меню *"о телефоне".*
Также попробуйте отключить (если была включена) и включить снова опцию *"Отладка по USB"* в меню *"Для разработчиков"*.
h2. Q5:
h2. *Что делать с Company Registration Certification при регистрации аккаунта в sunmi partners?*
h2. A5:
Прикрепите пустую картинку. Эта опция нужна китайским компаниям.
h2. Q6:
h2. *Как загрузить приложение в магазин Sunmi?*
h2. A6:
Воспользуйтесь "инструкцией по загрузке":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/AddAppSunmi
При загрузке укажите правильные модели(Terminals): *приложение будет доступно только на указанных моделях*.
Поле *price* выставлять в соответствии с партнёрским соглашением.
После загрузки каждой версии в магазин требуется около 1 рабочего дня на автоматический аудит.
Если приложение было загружено в магазин в режиме пре-релиза (gray release),
аудит выполняется при первой загрузке и не распространяется на *Change to official version*.
Кнопка *Change to official version* нужна, чтобы применить грей релиз на все аппараты.
Изменение списка устройств для пре-релиза (в т.ч. применение пре-релизана все устройства - change to official version) не сопровождается аудитом.
Изменение атрибутов приложения, таких как скриншоты, описание, поддерживаемые модели и др. вызывает повторный аудит при применении этих свойств (кнопка Save внизу).
*"ТРЕБОВАНИЯ МАГАЗИНА ПРИЛОЖЕНИЙ К ПО":https://docs.sunmi.com/htmls/index.html?lang=en##App%20Test%20Specifications*
Для *обновления* приложения в магазине мы подготовили "другую инструкцию":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/UpdAppSunmi
h2. Q7:
h2. *Что нужно знать о регистрации фискального накопителя (ФН)?*
h2. A7:
Процедура регистрации выполняется один раз за время жизни ФН.
Регистрация ФН - часть процесса включения фискального режима работы ККТ.
Пока ККТ не зарегистрирована с ФН, она находится в учебном режиме. Об этом свидетельствует надпись * *учебный режим* * в начале чеков.
После регистрации ФН ККТ в процессе работы печатает *фискальные* документы, за исключением нефискальных документов (RecType.Unfiscal),
документов внесения/изъятия (RecType.PayIn/PayOut) и X-отчётов (PrintXReport).
Если ККТ зарегистрирована в неавтономном режиме (отсутствует флаг OperatingMode.Autonomous),
фискальные документы будут отправляться в ОФД по настроенному каналу связи (валидный сервер и порт ОФД,
выход в интернет по Wifi или через мобильную сеть).
Для регистрации фискального накопителя(ФН) нужно следующее:
а) ФН подключен и в состоянии "готов к регистрации" ("FNGetState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#acccf308edeb4fe120f682cbc3a4b739c/ == "FnState.ReadyToFiscalization":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a48a9c84bbd4107e159399f00ad85fa78).
б) смена должна быть закрыта ("GetDayState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a75178af4fb3f53fec8ff0a2c5cc14edd == "DayState.DayClosed":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac954685f2b9cd2e40ef72d39f68de124)
в) не должно быть открыто ни одного документа ("GetRecState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5f6942bdd312c5a8a52bdd2c4ebd3d7b == "RecState.Closed":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a23cd3e5ca25f473990493575a9c2f11c)
после этого можно начинать процедуру регстрации.
h2. Q8:
h2. *Как зарегистрировать ФН / включить фискальный режим ККТ?*
h2. A8:
Процедура регистрации, в зависимости от желаемых параметров регистрации, может отличаться.
Основные операции при регистрации:
1) установка опций: см. блок "Запрос и установка параметров"
2) сохранение опций (см. "SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e )
3) регистрация (см. "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245 ).
при каждой регистрации %{color:red}обязательными% для установки на шаге 1 являются:
"SetOrgName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad771825ea775e76666cc09772279767a
"SetOrgAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac6650f56de207c2664b8a16f3b63fd32
"SetPhysicalAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ae09721153004af1fcd47c8dd900666c6
"SetFnsServerAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac35b9fefb435f5ade6d337e174fe6190
Если при регистрации в битовом поле "режим работы" (op_mode) %{color:red}не% установлен бит "OperatingMode.Autonomous":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#af79f7ba66a9ad6fe8763a6f58952a5d2a6aec1991f208e2948db5e4eee6e1ccff (0x02), %{color:red}обязательными на шаге 1 также являются%:
"SetSenderEmail":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47a8880a2cdec8dff31067adc172d161
"SetOfdHost":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab616fe44a2bade57e5f11010e277bf11
"SetOfdPort":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a3cd2cb3aac6f6a36989aa099e3ca7a2e
"SetOfdName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8f1fb2f7c7eb90a984c5d8fb5bc223bb
"SetOfdTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a31a1421e3bd6418411e1602765d13b9d
Если при регистрации в битовом поле "режим работы" (op_mode) установлен бит "OperatingMode.Automatic":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af79f7ba66a9ad6fe8763a6f58952a5d2 (0x04), %{color:red}на шаге 1 должен быть установлен номер автомата%:
"SetVendingSerial":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a9f854e01cb5b4f40a1b97b2f19c41cae
В зависимости от того, является ли пользователь платёжным агентом (параметр agent в функции Register отличен от 0), %{color:red}на шаге 1 должны быть установлены следующие опции%:
"SetTransferOperatorName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#abc45417de2caada0426148d08c2f01ab
"SetTransferOperatorTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a40533b38d11cf5703856b46cd68408a3
"SetTransferOperatorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47846d05cebe797b4c5ee59c097eb2fa
"SetTransferOperatorAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a70a8d8ed1e4f1b1b49f6b21860f4d3df
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetPaymentAgentOperation":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad489cb74534c3c0091eac73f8312c7a2
"SetCommissionAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a537b038aab4c42ed63107e96cd423321
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
Точный список требуемых параметров в зависимости от аргументов функции (пере)регистрации указан в "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25
h2. Q9:
h2. *Какие особенности работы с несколькими СНО?*
h2. A9:
Пользователь может иметь несколько систем налогообложения (СНО). Запросить СНО, указанную при регистрации, можно функцией "GetTaxation":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a3634272503b0484eae22365fbf21a4a0
При этом в чеках должна быть указана только одна из зарегистированных СНО.
Если пользователь зарегистрировал кассу с несколькими СНО, то перед каждым открытием документа ("OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e )
*текущая СНО* должна быть установлена функцией "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4 , в параметрах которой передаётся одна из зарегистрированных СНО.
h2. Q10:
h2. *Для чего нужна перерегистрация?*
h2. A10:
Если параметры кассы и/или реквизитов пользователя изменились, об этом нужно уведомить Федеральную налоговую службу (ФНС)
посредством отправки оператору фискальных данных (ОФД) отчёта о перерегистрации в электронной форме.
Отчёт о перерегистрации формируется функцией "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a24fb9f4f043bd3ec5fed05cb9213db42.
Её параметры аналогичны функции "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245, но нужно установить дополнительный - причину перерегистрации.
Причин перерегистрации может быть 4: замена ФН, смена ОФД, смена реквизитов пользователя и смена настроек ККТ.
h2. Q11:
h2. *Как выполнить перерегистрацию?*
h2. A11:
Выполняется аналогично "регистрации":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q8 за исключением пункта 0):
0) убедиться, что в очереди на отправку в ОФД нет документов ("OFDGetFirstQueuedDocNumber":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a973998cafa852d49f1dfa351f336d069 == 0), иначе перерегистрация не будет выполнена.
1) установка опций, которые необходимо изменить, в связи с причиной перерегистрации: см. блок "Запрос и установка параметров"
Точный список требуемых параметров в зависимости от аргументов функции (пере)регистрации указан в "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25
2) сохранение опций (см. "SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e )
3) перерегистрация(см. "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a24fb9f4f043bd3ec5fed05cb9213db42 ).
В связи с ограничениями ФН %{color:red}нельзя выполнить 1 перерегистрацию с несколькими причинами одновременно%.
Например, нельзя поменять настройки ОФД и реквизиты пользователя одновременно,
нужно выполнить последовательно 2 перерегистрации в связи с этими причинами, выполняя шаги 1-3.
При этом устанавливаются и сохраняются только те параметры, которые соответствуют причине данной перерегистрации (при условии, что все остальные присутствуют).
h2. Q11.1:
h2. *Какую причину перерегистрации выбрать при переключении режима между онлайн и оффдайн?*
h2. A11.1:
Правильный подход: при перерегистрации выбрать "смена настроек ккт" "CorrectionReason.ChangeKKTSettings":http://doc.multisoft.ru/doc/MSPOS/html/a00017.html#accde9d8d9055948548d04b24debc5200.
Однако, некоторые ФН не позволяют это сделать.
В таком случае нужно отменить документ и перерегистрировать с причиной "смена параметров ОФД" "CorrectionReason.ChangeOFD":http://doc.multisoft.ru/doc/MSPOS/html/a00017.html#accde9d8d9055948548d04b24debc5200.
Перед началом перерегистрации необходимо убедиться, что все необходимые параметры(опции) установлены "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25.
h2. Q12:
h2. *Как напечатать чек?/ Как сформировать фискальный документ? / Как сформировать нефискальный документ?*
h2. A12:
В общем случае печать документа состоит из открытия "OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e, наполнения документа и закрытия "CloseRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad324f3c6dcabcfa6801fc4c166b24244.
Пока документ не закрыт, его можно отменить функцией "RecVoid":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5654f1a1b77435e97bf8e788df271873
*Если ФН зарегистрирован с несколькими системами налогообложения (СНО),
перед открытием фискального документа с типом Sell/SellRefund/Buy/BuyRefund, либо чека коррекции,
необходимо из зарегистрированных СНО выбрать одну и установить её* функцией "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4.
Настраивать СНО не обязательно для каждого документа.
Установленная после соединения с ядром СНО действует до следующей выгрузки ядра из оперативной памяти либо до следующей вызванной "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4.
Наполнение *нефискального документа (RecType.Unfiscal)* выполняется командами печати:
"PrintLine":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#afd8854e97d653a91a41735c7750447a9
"PrintLineAligned":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#aeb49685abe791c713497873bd8fbea8a
"PrintQRCode":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8d298288c9d1497dfee2151155749185
"PrintBarCode":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ae19113179a5ddc1b386c1a71dc089dca
"SetFont":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a3ec8a35cbbe9f62245e392285087c9e1
"PrintRaster":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#ac36e19f4cc12db659084eb337916f294
Наполнение *фискальных документов с типом Sell/SellRefund/Buy/BuyRefund, а также нефискальных с типом PayIn/PayOut* выполняется командами:
"PrintRecItem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 - добавление позиции, можно вызывать сколь угодно много раз.
"PrintRecTotal":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#addeeaada4bbd7913f57030efba8662fe - подведение итога. разрешено вызывать не более 1 раза на документ. После итога добавление позиций запрещено, можно вызывать только команды оплаты:
"PrintRecItemPay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7ca2d5fc505ce74e47ffe6ff77f6ec70 - добавление оплаты, можно вызывать сколь угодно много раз, рекомендуется не более 6 раз на документ (с учётом сдачи).
Только *для Sell/SellRefund/Buy/BuyRefund*:
*Перед "PrintRecItem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 необходимо установить налоги* функцией "SetItemTaxes":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac3ba54dd76e7efe29870e3117eae41de.
В некоторых случаях требуется передать телефон или электронный адрес покупателя (тег 1008), об этом в "Q13":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA/edit#Q13, "Q14":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA/edit#Q14.
h2. Q12_1:
h2. *Как сформировать чек коррекции?*
h2. A12_1:
*Чек коррекции* отличается от остальных чеков наполнением: оно происходит единственной командой "FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5, повтор которой недопустим.
Для формирования суммовых налогов в чеке коррекции перед FNMakeCorrectionRec нужно вызвать "SetSumTaxes":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a79d22ae4a8cd4fc35e077659c58e6aa3.
*В этом случае параметр taxNum (порядоковый номер используемого налога) функции FNMakeCorrectionRec игнорируется*.
Резюмируя: для формирования чека коррекции нужно последовательно и без повторов вызывать:
(если несколько СНО) "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4
"OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e
(если нужны суммовые налоги)"SetSumTaxes":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a79d22ae4a8cd4fc35e077659c58e6aa3
"FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5
"CloseRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad324f3c6dcabcfa6801fc4c166b24244
h2. Q13:
h2. *Как передать телефон или электронный адрес покупателя (тег 1008)?*
h2. A13:
Для передачи этого тега необходимо использовать функцию "SendClientAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5672fc24a0e68cf06e13a8e73698cb12
Она выполняется один раз на весь документ в любой момент после открытия и до закрытия. %{color:red}Повторная передача ведёт к нарушению ФФД%.
Установка одновременно электронного адреса и телефона покупателя не предусмотрена ФФД 1.05 от 21.03.2017.
Точно так же покупатель не может иметь нескольких телефонов и/или email одновременно.
h2. Q14:
h2. *В каком формате передавать телефон или электронный адрес покупателя (тег 1008) в функции "SendClientAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5672fc24a0e68cf06e13a8e73698cb12 ?*
h2. A14:
Телефон или электронный адрес покупатеся следует передавать в соответствии с ФФД 1.05 от 21.03.2017 Таблица 5, тег 1008:
Формат: %{color:red}+{Ц}% или %{color:red}{С}@{C}%,
где Ц - "атрибут, обозначающий, что данные реквизита должны быть представлены в виде цифры",
С- "атрибут, обозначающий, что данные реквизита должны быть представлены в виде символа".
Символы и цифры должны быть представлены в электронной форме %{color:red}"в соответствии с кодовой таблицей CP866"%.
h2. Q15:
h2. *Как изменить параметры автоинкассации при закрытии смены?*
h2. A15:
Включение или отключение автоинкассации выполняется функцией "SetDayCloseAutoPayOut":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7412c0fe3ae61fc5a2d54d850e8d0c97
Если необходимо сохранить значение параметра для применения его во всех следующих функциях закрытия смены ("CloseDay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a45709f692bbe83ec0852e0569b512a01 ),
в т.ч. после перезагрузки, нужно сохранить опции ("SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e ).
h2. Q16, Q17:
h2. *Какие типы документа доступны для чека коррекции в аргументе "operation" функции "FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5 ?*
h2. *Почему в чеке коррекции не работает "OperationType.SellRefund":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac61434a729deda0ddd0e8cf6b1bd7123 и "OperationType.BuyRefund":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac61434a729deda0ddd0e8cf6b1bd7123 )?*
h2. A16, A17:
В соответствии с ФФД 1.05 от 21.03.2017 Таблица 25 "Реквизит «Признак расчета» (тег 1054) для кассового чека коррекции (БСО коррекции)
может принимать одно из следующих значений: «1» – приход, «3» – расход."
Поэтому чек коррекции на возврат прихода и возват расхода возвращает ошибку.
h2. Q18:
h2. *Как передать признак предмета расчета и признак способа расчета (теги 1212 и 1214)?*
h2. A18:
Для передачи свободных тегов используется функция "SetTagAttribute":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bce3c5e91220db3f59b0f7491775393 (начиная с 1.8.28).
Её нужно вызывать перед добавлением позиции ("PrintRecitem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 ), в которой необходимо установить соответствующий тег.
h2. Q19:
h2. *Какие значения передать при установке тегов 1212 и 1214?*
h2. A19:
Значения реквизита «признак способа расчета» (тег 1214) в соответствии с ФФД 1.05 от 21.03.2017 Таблица 28:
|1|ПРЕДОПЛАТА 100%|
|2|ПРЕДОПЛАТА|
|3|АВАНС|
|4|ПОЛНЫЙ РАСЧЕТ|
|5|ЧАСТИЧНЫЙ РАСЧЕТ И КРЕДИТ|
|6|ПЕРЕДАЧА В КРЕДИТ|
|7|ОПЛАТА КРЕДИТА|
Значения реквизита «признак предмета расчета» (тег 1212) в соответствии с ФФД 1.05 от 21.03.2017 в ред. Приказа ФНС России от 09.04.2018 Таблица 29:
|1|ТОВАР|
|2|ПОДАКЦИЗНЫЙ ТОВАР|
|3|РАБОТА|
|4|УСЛУГА|
|5|СТАВКА АЗАРТНОЙ ИГРЫ|
|6|ВЫИГРЫШ АЗАРТНОЙ ИГРЫ|
|7|ЛОТЕРЕЙНЫЙ БИЛЕТ|
|8|ВЫИГРЫШ ЛОТЕРЕИ|
|9|ПРЕДОСТАВЛЕНИЕ РИД|
|10|ПЛАТЕЖ|
|11|АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ|
|12|СОСТАВНОЙ ПРЕДМЕТ РАСЧЕТА|
|13|ИНОЙ ПРЕДМЕТ РАСЧЕТА|
|14|ИМУЩЕСТВЕННОЕ ПРАВО (с 1.12.37+)|
|15|ВНЕРЕАЛИЗАЦИОННЫЙ ДОХОД (с 1.12.37+)|
|16|СТРАХОВЫЕ ВЗНОСЫ (с 1.12.37+)|
|17|ТОРГОВЫЙ СБОР (с 1.12.37+)|
|18|КУРОРТНЫЙ СБОР (с 1.12.37+)|
|19|ЗАЛОГ (с 1.12.37+)|
h2. Q20:
h2. *Как пробить сдачу?*
h2. A20:
Сначала пробейте оплату наличными, сумму, которую передал клиент, например, 100р.
<pre><code class="cpp">
IFiscalCore.PrintRecItemPay((int)PayType.Cash, "100.00", "ПРИНЯТО ОТ КЛИЕНТА НАЛИЧНЫМИ:",callback);
</code></pre>
После этого выполните вызов "PrintRecItemPay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7ca2d5fc505ce74e47ffe6ff77f6ec70 с параметрами PayType.Cash, в total передайте сумму со знаком "минус".
Например, сдача в 15 рублей 1 копейку оформляется вызовом:
<pre><code class="cpp">
IFiscalCore.PrintRecItemPay((int)PayType.Cash, "-15.01", "СДАЧА:",callback);
</code></pre>
В предыдущих двух командах параметр itemText может быть любым.
В результате после закрытия документ, если "принято" - "сдача" == сумме стоимости всех позиций по документу, на чеке появится 2 последовательные надписи:
"ПРИНЯТО ОТ КЛИЕНТА НАЛИЧНЫМИ: 100.00"
"СДАЧА: 15.01"
и ниже, в соответствии с ФФД:
"НАЛИЧНЫМИ 84.99"
h2. Q21:
h2. *Как работать по старому законотадельству в режиме ЧПМ ?*
h2. A21:
Если клиент по закону имеет право пользоваться ЧПМ, переход в режим ЧПМ осуществляется при соблюдении следующих условий:
1. ККТ не зарегистрирована
2. К ККТ не подключен (зарегистрированный) ФН
3. ПО умеет работать в режиме ЧПМ без обращений к ФН.
4. ПО умеет определять текущий режим работы через вызов функции "DirectIO":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad332340d4b162fd5a0fd9a56a364a457
*%{color:red}Внимание!%* Режим работы ККТ, определяемый перечислением "Mode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159 *отличается* от режима работы ФН, описанного в "OperatingMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af79f7ba66a9ad6fe8763a6f58952a5d2
Численные значения перечислений лежат в начале "страницы":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html
Запрос текущего режима работы ККТ (Mode) выполняется следующим образом:
1. Создаётся экземпляр "IAuth":http://doc.multisoft.ru/doc/MSPOS/IAuth.aidl, который реализует все функции интерфейса.
2. Создаётся экземпляр "IExceptionCallback":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl по аналогии с любым другим коллбеком об ошибке
3. Выполняется команда DirectIO с параметрами "DirectIOCmd.GetMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#aa03c06b35cfd3f44c06206014cb9d40c,
в качестве второго параметра необходимо передать идентификатор пользовательского ПО, либо package приложения, из которого функция вызвыается.
4.1 Если команда выполнена успешно, ядро вызовет auth.Result(currentMode) с параметром currentMode, равном текущему режиму работы ККТ (Mode).
4.2 Пользовательское ПО сохраняет это число и сравнивает с "Mode.OFD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159 и "Mode.ENVD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159, определяя текущий режим работы.
5.1 Если команда завершилась с ошибкой, коллбек об ошибке передаётся стандартно, через "IExceptionCallback":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl
Переход в режим ЧПМ осуществляется через программный вызов DirectIO при выполнении условий 1-3 аналогично запросу текущего режима работы ККТ (Mode).
В качестве первого параметра необходимо использовать константу "DirectIOCmd.ChangeMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#aa03c06b35cfd3f44c06206014cb9d40c
При смене режима в auth.Result возвращается *новый режим работы*. Был режим: "Mode.OFD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159. Сменили режим => в auth.Result возвращается "Mode.ENVD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159
h2. Q22:
h2. *Какие особенности у режима ЧПМ ?*
h2. A22:
В режиме ЧПМ все обращения к ФН отключены и будут возвращать "ErrCode.Hardware":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af7d268ea5021cfa159aa82b7004da530, "ExtHardwareErr.Nack":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a4db5bb9a1e904a00eeee445ac3aa45cc кроме "FNGetNumber":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8b2c94673f98ad05e485adc28f0bf95d.
Функции, начинающиеся с *FN, OFD, FDI, QueryOFD, OfdOut, QueryFiscal* созданы для работы в режиме ОФД,
обращаются к ФН и будут возвращать указанную выше ошибку в режиме ЧПМ.
В любой момент из режима ЧПМ можно перейти обратно в режим ОФД с потерей всех счётчиков и состояний по вызову команды DirectIO с параметрами для смены режима работы.
Для корректной работы устройства в режиме ЧПМ его необходимо зарегистрировать.
Перед регистрацией необходимо установить и сохранить следующие опции:
"SetOrgName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad771825ea775e76666cc09772279767a
"SetOrgAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac6650f56de207c2664b8a16f3b63fd32
Регистрация выполняется стандартной функцией "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245
В качестве параметров необходимо передать: reg_num, равный "00000", а также корректный ИНН и имя кассира. Остальные параметры не влияют на результат выполнения.
h2. Q23:
h2. *Как проверить, к какому магазину привязано устройство?*
h2. A23:
Откройте App Store или Магазин приложений. Нажмите иконку пользователя справа вверху.
Открывшееся меню прокрутите вниз.
В поле "Service provider" или "поставщик услуг" показывается текущий магазин, к которому привязано устройство. По умолчанию это Multisoft.
h2. Q24:
h2. *На устройстве не применяются настройки магазина, что делать?*
h2. A24:
Проверьте "A23":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#A23 ^. Если наименование магазина соответствует ожидаемому, убедитесь, что устройство подключено по Wifi к интернет,
и выполните перезагрузку. Допускается подключение через сеть sim-карты с доступом в интернет, но предпочтительнее пользоваться Wifi.
Если перезагрузка не помогла, зайдите в *POS Steward -> network -> network test -> start testing*.
Тест пройден успешно, если все три галочки - зелёные.
Если хотя бы одна из них красная, рекомендуется подключиться к другой Wifi сети, где тест пройдёт успешно,
т.к. корректное применение всех параметров магазина гарантируется только при полностью исправном соединении с интернет.
h2. Q25:
h2. *Как работать с признаком агента? Что делать, если пользователь - агент/поверенный/комиссионер?*
h2. A25:
Если пользователь - агент/поверенный/комиссионер, соответствующий признак агента указывается в параметрах "регистрации":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245.
После регистрации можно установить *текущий признак агента* функцией "SetAgentTagUsing":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a7f0d91ebd3472d213e6be47e4afda0c2 (аналогично установке СНО, выполняется *перед открытием чека*).
Установка признака агента может быть нужна в случае, если необходимо сформировать документ с одним(несколькими) из зарегистрированных признаков агента, к примеру:
при регистрации указан *PayAgent* и *BankPaySubAgent*, а предмет расчёта в чеке относится только к *PayAgent*).
*Текущий признак агента* распространяется на все предметы расчёта (товары, услуги, ...) в чеке.
*По умолчанию* текущий признак агента равен указанному при регистрации.
Запросить признак агента в ФН (указывается при регистрации) можно функцией "GetAgentTag":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a5e918f55014acc144ed14fa618e6ffab
В зависимости от выбранного *текущего признака агента* в чеке должны быть установлены следующие параметры:
если пользователь - платёжный агент или платёжный субагент (установлены биты "AgentTag.PayAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b и/или "AgentTag.PaySubAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b)
"SetCommissionAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a537b038aab4c42ed63107e96cd423321
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
если пользователь - банковский платёжный агент или банковскиий платёжный субагент (установлены биты "AgentTag.BankPayAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b и/или "AgentTag.BankPaySubAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b)
"SetTransferOperatorName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#abc45417de2caada0426148d08c2f01ab
"SetTransferOperatorTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a40533b38d11cf5703856b46cd68408a3
"SetTransferOperatorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47846d05cebe797b4c5ee59c097eb2fa
"SetTransferOperatorAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a70a8d8ed1e4f1b1b49f6b21860f4d3df
"SetPaymentAgentOperation":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad489cb74534c3c0091eac73f8312c7a2
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
если пользователь - поверенный, комиссионер и/или иной агент (установлен любой из бит "AgentTag.Attorney":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b, "AgentTag.CommissionAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b, "AgentTag.Agent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
h2. Q26:
h2. *Когда необходимо менять ФН?*
h2. A26:
Самый действенный способ - периодически проверять "FNGetWarningFlags":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a0edf8ac570a448c11ccf95d6ec6632a4
Если "WarningFlag":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#ad042cfb3dda00bd78f8a393ef16133b9 содержит *FNMemoryOverflow* или *UrgentCSReplace* -> пора менять.
Если в ответе на фискальную операцию (открытие/закрытие смены/документа) в "коллбеке об ошибке":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl возвращается "ErrCode.Hardware и ExtHardwareErr.Fatal":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#af7d268ea5021cfa159aa82b7004da530,
а также установлены эти флаги -> пора менять уже прямо сейчас.
h2. Q27:
h2. *Как менять ФН?*
h2. A27:
1. Закрыть смену, если была открыта
2. Если ккт находится в неавтономном режиме, нужно дождаться отправки всех документов в ОФД ("OFDGetQueuedMessagesCount":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a8043b80c203d843f72cf4f29deef2050 равно нулю)
3. Закрыть архив ФН "CloseFiscalMode":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#af416b8ca943c669a630763d66edfa085
4. Если ккт в неавтономном режиме - дождаться отправки отчёта о закрытии архива в ОФД (аналогично п.2)
5. Вставить новый ФН.
6. Выполнить перерегистрацию "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a24fb9f4f043bd3ec5fed05cb9213db42 в связи с заменой ФН
h2. Q28:
h2. *Где посмотреть логи MSPOS-Expert? как выгрузить логи?*
h2. A28:
Откройте MSPOS-Expert, перейдите на страницу "статус", внизу нажмите кнопку "выгрузка лога".
Если выпадет диалог с запросом разрешений, подтвердите их.
После этого логи появятся в корне карты памяти в папке "mspos"
Далее их можно будет выгрузить, подключив устройство к ПК, либо по teamviewer (более быстрый способ).
h2. Q29:
h2. *Как будет происходить переход на НДС 20% в 2019 году?*
h2. A29:
Ниже при упоминании НДС 18% имеются ввиду ставки 18 и 18/118, которым соответствуют коды налогов TaxNum._18 (0) и TaxNum._18_118(2).
*В соответствии с ФФД, 01.01.2019 НДС 18% должен быть заменён на НДС 20%*. При этом номера ставок не изменились.
Мы сделали соответствующие изменения, согласно которым индексы останутся прежними, но в чеках, открытых после 1го января 2019 года включительно,
сумма НДС вместо 18% будет *рассчитываться* по ставке 20%.
Чеки, открытые до полуночи с 31 декабря на 1е января закрываются по времени открытия, т.е. ставка в них будет 18%.
Печатные формы будут также соответствовать ФФД, при условии, что MSPOS-Expert обновлён.
*Для перехода с 18% на 20% от пользовательского ПО не требуется изменений в части общения с ФЯ*, т.к. установка ставки НДС ведётся по её индексу.
Рекомендуется с 1го января контролировать версию ФЯ через GetAidlVersion, чтобы пользователь обновил mspos-expert.
h2. Q30:
h2. *Как выполнить возврат с НДС 18% в 2019 году?*
h2. A30:
Ниже при упоминании ставки 18% имеется ввиду ставка НДС 18% или 18/118%.
До 2019 года кодам налогов TaxNum._18 (0) и TaxNum._18_118(2) соответствуют ставки НДС 18% и 18/118%.
После полуночи с 31.12.2018 на 1.01.2019 этим кодами будут соответствовать ставки 20% и 20/120%.
Для возвратов мы расширили ставки налогов TaxNum: добавлены индексы _REFUND_18 = 6 и _REFUND_18_118 = 7.
Чтобы после 01.01.2019 сделать возврат со ставкой 18%, необходимо использовать коды _REFUND_18 или _REFUND_18_118.
Добавлена блокировка установки ставок налогов _REFUND_18 и _REFUND_18_118 в чеках Sell и Buy. Чеки коррекции можно формировать с любой доступной ставкой.
В сформированном чеке *сумма* налогов по ставке будет рассчитана корректно.
h2. Q31:
h2. *При закрытии чека (CloseRec) получаем ошибку errCode 1 (ErrCode.WrongArgument), extErrCode 9, message "Некорректное значение параметров команды ФН", хотя параметры заведомо корректные. В логах BadArgument. Что делать?*
h2. A31:
Согласно документации на ФН, так он сигнализирует о переполнении итогов смены. Необходимо аннулировать чек и закрыть смену.
h2. Q32:
h2. Как программно посмотреть системную информацию об устройстве (номер сборки, firmware version и т.д.)?
h2. A32:
Программный доступ к системной информации сайте "SUNMI Developers":https://docs.sunmi.com/htmls/index.html?lang=en##Special%20Codes%20Description
Документация к встроенному сканеру лежит "здесь":https://docs.sunmi.com/htmls/index.html?lang=en##Camera%20Code%20Scanning
Программно "открыть App store со страницей определённого приложения":https://docs.sunmi.com/htmls/index.html?lang=en##How%20does%20the%20APP%20call%20the%20score%20box, "ещё ссылка":https://docs.sunmi.com/htmls/index.html?lang=en##Jump%20to%20the%20app%20store%20app%20details.
Настройка "пользовательских действий по нажатию на кнопки громкости":https://docs.sunmi.com/htmls/Volume%20keys%20custom.html.
h2. Q33
h2. Как открыть денежный ящик на MSPOS-Т-Ф?
h2. A33:
Воспользуйтесь функцией aidl "OpenDrawer":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a887ea971d2ec2b4940bea20b835be60a (добавлена в 1.13.39)
h2. Q34
h2. Какая распиновка разъёма денежного ящика на MSPOS-Т-Ф? Куда подключать считыватель карт в MSPOS-Т-Ф ?
h2. A34:
Ответы на эти вопросы, а также полный перечень разъёмов доступны по "ссылке":https://docs.sunmi.com/htmls/index.html?lang=en##External%20USB%20Serial%20Devices
h2. Ссылки на документацию: "aidl":http://doc.multisoft.ru/doc/MSPOS/, "примеры":http://doc.multisoft.ru/doc/MSPOS/Examples/, "описания функций":http://doc.multisoft.ru/doc/MSPOS/html/
h2. Перед началом работы: какие модели поддерживаются?
В настоящий момент Фискальное ядро установлено на следующие модели ККТ: *MSPOS-K, MSPOS-T-Ф, MSPOS-Е-Ф*.
Им соответствуют строковые константы моделей (Build.MODEL) устройств:
* MSPOS-K: "V1S-G", "V1S", "V2"
* MSPOS-T-Ф: "T1MINI-G", "T1MINI"
* MSPOS-Е-Ф: "P1_4G", "P1_4G-G", "P1_4G-EU"
h2. Q0:
h2. *Любые обращения по поводу конерктного устройства/ККТ. Вопросы по переводу устройств между ТК и ОК, а также между субаккаунтами внутри ТК и ОК.*
h2. A0:
При обращении по любым вопросам, которые касаются конкретного устройства, в чаты ТП и разработки
нужно указывать *SN* устройства (см. наклейку со штрих-кодами на обратной стороне аппарата).
Если вопрос связан с переводом устройства в тестовый контур или обратно в основной,
*нужно прикладывать фото задней части устройства либо скриншот первой страницы mspos-expert %{color:red}с читаемым SN%*.
Перенос устройств между ТК и ОК, а также между их субаккаунтами осуществляется только после подтверждения права собственности на устройство.
%{color:red}Переводы клиентского оборудования из *кастомного магазина в основной* делаются *по заявке с подписью ответственного лица и печатью организации*%.
Заявки на перевод принимаются *только от той организации, к кастомному магазину которой устройство было привязано при отгрузке*.
Перенос устройств между ТК и ОК после *13-00 МСК* выполняется с большой вероятностью только *на следующий день*.
h2. {{collapse(где найти SN)
!1.png!
}}
Фото не обязательно, если девайс уже привязан к Вашему личному кабинету. Предоставление фото позволяет избежать ошибок при переводе.
{{collapse(Так делать не надо)
!2.png!
}}
h2. Q1:
h2. *Как добавить IFiscalCore.aidl в Android Studio?*
h2. A1:
0. Скачать IFiscalCore.aidl, IAuth.aidl, IExceptionCallback.aidl с "сервера":http://doc.multisoft.ru/doc/MSPOS/
1. В корневой папке проекта создать папку aidl
2. Внутри папки aidl создать папку с именем, соответствуюим package (com.multisoft.drivers.fiscalcore).
3. Правый клик по папке с именем package -> New -> AIDL -> AIDL File
4. Во всплывающем окне ввести имя интерфейса (например, IFiscalCore). Подтвердить выбор.
5. Скопировать содержимое скачанного файла в текстовом виде в созданный без(!) замены файлов.
6. Повторить операции 3-5 для IAuth.aidl и IExceptionCallback.aidl
h2. Q2:
h2. *У меня ошибка вида %{color:red}Execution failed for task ':app:compileDebugAidl'%. Либо %{color:red}*.aidl:1: syntax error don't know what to do with "?"%*
h2. A2:
Вероятно файлы содержат "BOM":https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%80%D0%BA%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2.
Выполните инструкции, описанные в "Q1":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q1.
h2. Q3:
h2. *Как зарегистрироваться в программе Sunmi Partners?*
h2. A3:
После подписания партнёрского соглашения на указанную в нём почту придёт приглашение на регистрацию в "Sunmi Partners":https://partner.sunmi.com/login. Регистрироваться без инвайта не нужно.
Откройте присланную ссылку с персонального компьютера (ПК) в "Google Chrome":https://www.google.ru/chrome/browser/desktop/index.html. Рекомендуется использовать его и в дальнейшем для любых действий в "личном кабинете (ЛК)":https://partner.sunmi.com/login.
Первая загрузка сайта может занять некоторое время, подождите полной загрузки и не обновляйте страницу, пока она не будет полностью загружена.
Если страница загрузилась, но открывается пустой список для выбора страны и/или кода телефона - очистите кеш браузера и обновите страницу.
Не обновляйте страницу повторно, пока она не загрузится полностью.
Следуйте шагам реристрации. *Оформлять смс подтверждение не нужно*.
По окончании дождитесь верификации аккаута. Она выполняется автоматически в течение 1 рабочего дня.
В процессе регистрации будет предложено загрузить Company Registration Certification. Подробнее в "Q5":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q5.
*После регистрации и успешной верификации нужно добавить фискальное ядро в свой магазин.
Для этого выполните пункты "A3_1":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#A3_1*
При настройке личного кабинета (ЛК) разработчика установите триггеры в соответствии с картинкой.
Debugger access control рекомендуется установить в положение "выкл", иначе придётся периодически вводить в устройство временный пароль,
который присылается на почту, указанную в ЛК в Development -> Debugger.
*Не включайте Google Play. В основном контуре Google Play выключен* в целях безопасности.
h3. {{collapse(Настройки ТК)
!tk_setttings1.png!
}}
h2. Q3_1:
h2. На устройстве нет MSPOS-Expert. Что делать?
На устройстве нет прилоения <notextile>%</notextile>AppName<notextile>%</notextile>. Как его добавить?
h2. A3_1:
Зайдите в "личный кабинет":https://partner.sunmi.com/login на вкладку *App Store -> App List*,
найдите *MSPOS-Expert* (или <notextile>%</notextile>AppName<notextile>%</notextile>) справа в *"No apps added"*, выделите его галку и нажмите кнопку *"Added apps"*.
После этого приложение появится в *"Apps Selected"*.
Если приложения нет в списке справа, проверьте список слева.
Для добавления приложения, отсутствующего в обоих списках напишите разработчикам этого приложения.
Также рекомендуем добавить *TeamViewerQS* и *TeamViewerQS —APPX*.
В дальнейшем *не удаляйте MSPOS-Expert из магазина*.
h3. {{collapse(Как добавить приложение в ЛК разработчика)
!add_mspos.png!
}}
h2. Q4:
h2. *Как подготовить устройство MSPOS-K к отладке?*
h2. A4:
В тестовом контуре возможность отладки автоматически включена для всех устройств, привязанных к тестовому аккаунту.
На своём устройстве *в "Настройки"->"Безопасность" разрешите установку приложений из неизвестных источников*.
Сообщите серийный номер устройств(а) (SN) сотрудникам Multisoft/Альфа-Проект, которые занимаются интеграцией.
Они привяжут его к вашему аккаунту по завершении регистрации в Sunmi Partners.
Для упрощения *разработки в ТК* в Вашем "личном кабинете":https://partner.sunmi.com/login *device configuration* -> *common* -> *debugger access control* должен быть *выключен*.
В этом случае способ, описанный "здесь":https://docs.sunmi.com/htmls/index.html?lang=en##Debug%20device , не имеет смысла и его не нужно использовать.
Подключите устройство к сети WiFi с открытым доступом и интернет.
Подключите включенное устройство по USB к компьютеру с установленным Android SDK.
Дождитесь установки драйверов (если используется Windows) и появления уведомления "Отладка по USB разрешена" на устройстве
В *%AndroidSDKInstallDir%\android-sdk\platform-tools\* выполните *"adb devices"* из консоли,
на экран должны будут выведены серийный номер аппарата и *device*, что означает, устройство готово к отладке.
Если эта команда показывает *"unauthorized"*, проверьте подключение к интернет и перезагрузите аппарат.
Если после перезагрузки *adb devices* всё равно возвращает *unauthorized*, либо при отладке возникают ошибки доступа,
попробуйте включить режим разработчика вручную стандартным для android устройств способом:
многократными тапами по *Build.Number (Номер сборки)* в меню *"о телефоне".*
Также попробуйте отключить (если была включена) и включить снова опцию *"Отладка по USB"* в меню *"Для разработчиков"*.
h2. Q5:
h2. *Что делать с Company Registration Certification при регистрации аккаунта в sunmi partners?*
h2. A5:
Прикрепите пустую картинку. Эта опция нужна китайским компаниям.
h2. Q6:
h2. *Как загрузить приложение в магазин Sunmi?*
h2. A6:
Воспользуйтесь "инструкцией по загрузке":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/AddAppSunmi
При загрузке укажите правильные модели(Terminals): *приложение будет доступно только на указанных моделях*.
Поле *price* выставлять в соответствии с партнёрским соглашением.
После загрузки каждой версии в магазин требуется около 1 рабочего дня на автоматический аудит.
Если приложение было загружено в магазин в режиме пре-релиза (gray release),
аудит выполняется при первой загрузке и не распространяется на *Change to official version*.
Кнопка *Change to official version* нужна, чтобы применить грей релиз на все аппараты.
Изменение списка устройств для пре-релиза (в т.ч. применение пре-релизана все устройства - change to official version) не сопровождается аудитом.
Изменение атрибутов приложения, таких как скриншоты, описание, поддерживаемые модели и др. вызывает повторный аудит при применении этих свойств (кнопка Save внизу).
*"ТРЕБОВАНИЯ МАГАЗИНА ПРИЛОЖЕНИЙ К ПО":https://docs.sunmi.com/htmls/index.html?lang=en##App%20Test%20Specifications*
Для *обновления* приложения в магазине мы подготовили "другую инструкцию":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/UpdAppSunmi
h2. Q7:
h2. *Что нужно знать о регистрации фискального накопителя (ФН)?*
h2. A7:
Процедура регистрации выполняется один раз за время жизни ФН.
Регистрация ФН - часть процесса включения фискального режима работы ККТ.
Пока ККТ не зарегистрирована с ФН, она находится в учебном режиме. Об этом свидетельствует надпись * *учебный режим* * в начале чеков.
После регистрации ФН ККТ в процессе работы печатает *фискальные* документы, за исключением нефискальных документов (RecType.Unfiscal),
документов внесения/изъятия (RecType.PayIn/PayOut) и X-отчётов (PrintXReport).
Если ККТ зарегистрирована в неавтономном режиме (отсутствует флаг OperatingMode.Autonomous),
фискальные документы будут отправляться в ОФД по настроенному каналу связи (валидный сервер и порт ОФД,
выход в интернет по Wifi или через мобильную сеть).
Для регистрации фискального накопителя(ФН) нужно следующее:
а) ФН подключен и в состоянии "готов к регистрации" ("FNGetState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#acccf308edeb4fe120f682cbc3a4b739c/ == "FnState.ReadyToFiscalization":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a48a9c84bbd4107e159399f00ad85fa78).
б) смена должна быть закрыта ("GetDayState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a75178af4fb3f53fec8ff0a2c5cc14edd == "DayState.DayClosed":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac954685f2b9cd2e40ef72d39f68de124)
в) не должно быть открыто ни одного документа ("GetRecState":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5f6942bdd312c5a8a52bdd2c4ebd3d7b == "RecState.Closed":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a23cd3e5ca25f473990493575a9c2f11c)
после этого можно начинать процедуру регстрации.
h2. Q8:
h2. *Как зарегистрировать ФН / включить фискальный режим ККТ?*
h2. A8:
Процедура регистрации, в зависимости от желаемых параметров регистрации, может отличаться.
Основные операции при регистрации:
1) установка опций: см. блок "Запрос и установка параметров"
2) сохранение опций (см. "SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e )
3) регистрация (см. "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245 ).
при каждой регистрации %{color:red}обязательными% для установки на шаге 1 являются:
"SetOrgName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad771825ea775e76666cc09772279767a
"SetOrgAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac6650f56de207c2664b8a16f3b63fd32
"SetPhysicalAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ae09721153004af1fcd47c8dd900666c6
"SetFnsServerAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac35b9fefb435f5ade6d337e174fe6190
Если при регистрации в битовом поле "режим работы" (op_mode) %{color:red}не% установлен бит "OperatingMode.Autonomous":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#af79f7ba66a9ad6fe8763a6f58952a5d2a6aec1991f208e2948db5e4eee6e1ccff (0x02), %{color:red}обязательными на шаге 1 также являются%:
"SetSenderEmail":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47a8880a2cdec8dff31067adc172d161
"SetOfdHost":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab616fe44a2bade57e5f11010e277bf11
"SetOfdPort":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a3cd2cb3aac6f6a36989aa099e3ca7a2e
"SetOfdName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8f1fb2f7c7eb90a984c5d8fb5bc223bb
"SetOfdTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a31a1421e3bd6418411e1602765d13b9d
Если при регистрации в битовом поле "режим работы" (op_mode) установлен бит "OperatingMode.Automatic":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af79f7ba66a9ad6fe8763a6f58952a5d2 (0x04), %{color:red}на шаге 1 должен быть установлен номер автомата%:
"SetVendingSerial":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a9f854e01cb5b4f40a1b97b2f19c41cae
В зависимости от того, является ли пользователь платёжным агентом (параметр agent в функции Register отличен от 0), %{color:red}на шаге 1 должны быть установлены следующие опции%:
"SetTransferOperatorName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#abc45417de2caada0426148d08c2f01ab
"SetTransferOperatorTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a40533b38d11cf5703856b46cd68408a3
"SetTransferOperatorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47846d05cebe797b4c5ee59c097eb2fa
"SetTransferOperatorAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a70a8d8ed1e4f1b1b49f6b21860f4d3df
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetPaymentAgentOperation":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad489cb74534c3c0091eac73f8312c7a2
"SetCommissionAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a537b038aab4c42ed63107e96cd423321
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
Точный список требуемых параметров в зависимости от аргументов функции (пере)регистрации указан в "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25
h2. Q9:
h2. *Какие особенности работы с несколькими СНО?*
h2. A9:
Пользователь может иметь несколько систем налогообложения (СНО). Запросить СНО, указанную при регистрации, можно функцией "GetTaxation":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a3634272503b0484eae22365fbf21a4a0
При этом в чеках должна быть указана только одна из зарегистированных СНО.
Если пользователь зарегистрировал кассу с несколькими СНО, то перед каждым открытием документа ("OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e )
*текущая СНО* должна быть установлена функцией "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4 , в параметрах которой передаётся одна из зарегистрированных СНО.
h2. Q10:
h2. *Для чего нужна перерегистрация?*
h2. A10:
Если параметры кассы и/или реквизитов пользователя изменились, об этом нужно уведомить Федеральную налоговую службу (ФНС)
посредством отправки оператору фискальных данных (ОФД) отчёта о перерегистрации в электронной форме.
Отчёт о перерегистрации формируется функцией "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a24fb9f4f043bd3ec5fed05cb9213db42.
Её параметры аналогичны функции "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245, но нужно установить дополнительный - причину перерегистрации.
Причин перерегистрации может быть 4: замена ФН, смена ОФД, смена реквизитов пользователя и смена настроек ККТ.
h2. Q11:
h2. *Как выполнить перерегистрацию?*
h2. A11:
Выполняется аналогично "регистрации":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q8 за исключением пункта 0):
0) убедиться, что в очереди на отправку в ОФД нет документов ("OFDGetFirstQueuedDocNumber":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a973998cafa852d49f1dfa351f336d069 == 0), иначе перерегистрация не будет выполнена.
1) установка опций, которые необходимо изменить, в связи с причиной перерегистрации: см. блок "Запрос и установка параметров"
Точный список требуемых параметров в зависимости от аргументов функции (пере)регистрации указан в "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25
2) сохранение опций (см. "SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e )
3) перерегистрация(см. "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a24fb9f4f043bd3ec5fed05cb9213db42 ).
В связи с ограничениями ФН %{color:red}нельзя выполнить 1 перерегистрацию с несколькими причинами одновременно%.
Например, нельзя поменять настройки ОФД и реквизиты пользователя одновременно,
нужно выполнить последовательно 2 перерегистрации в связи с этими причинами, выполняя шаги 1-3.
При этом устанавливаются и сохраняются только те параметры, которые соответствуют причине данной перерегистрации (при условии, что все остальные присутствуют).
h2. Q11.1:
h2. *Какую причину перерегистрации выбрать при переключении режима между онлайн и оффдайн?*
h2. A11.1:
Правильный подход: при перерегистрации выбрать "смена настроек ккт" "CorrectionReason.ChangeKKTSettings":http://doc.multisoft.ru/doc/MSPOS/html/a00017.html#accde9d8d9055948548d04b24debc5200.
Однако, некоторые ФН не позволяют это сделать.
В таком случае нужно отменить документ и перерегистрировать с причиной "смена параметров ОФД" "CorrectionReason.ChangeOFD":http://doc.multisoft.ru/doc/MSPOS/html/a00017.html#accde9d8d9055948548d04b24debc5200.
Перед началом перерегистрации необходимо убедиться, что все необходимые параметры(опции) установлены "Q25":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#Q25.
h2. Q12:
h2. *Как напечатать чек?/ Как сформировать фискальный документ? / Как сформировать нефискальный документ?*
h2. A12:
В общем случае печать документа состоит из открытия "OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e, наполнения документа и закрытия "CloseRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad324f3c6dcabcfa6801fc4c166b24244.
Пока документ не закрыт, его можно отменить функцией "RecVoid":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5654f1a1b77435e97bf8e788df271873
*Если ФН зарегистрирован с несколькими системами налогообложения (СНО),
перед открытием фискального документа с типом Sell/SellRefund/Buy/BuyRefund, либо чека коррекции,
необходимо из зарегистрированных СНО выбрать одну и установить её* функцией "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4.
Настраивать СНО не обязательно для каждого документа.
Установленная после соединения с ядром СНО действует до следующей выгрузки ядра из оперативной памяти либо до следующей вызванной "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4.
Наполнение *нефискального документа (RecType.Unfiscal)* выполняется командами печати:
"PrintLine":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#afd8854e97d653a91a41735c7750447a9
"PrintLineAligned":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#aeb49685abe791c713497873bd8fbea8a
"PrintQRCode":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8d298288c9d1497dfee2151155749185
"PrintBarCode":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ae19113179a5ddc1b386c1a71dc089dca
"SetFont":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a3ec8a35cbbe9f62245e392285087c9e1
"PrintRaster":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#ac36e19f4cc12db659084eb337916f294
Наполнение *фискальных документов с типом Sell/SellRefund/Buy/BuyRefund, а также нефискальных с типом PayIn/PayOut* выполняется командами:
"PrintRecItem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 - добавление позиции, можно вызывать сколь угодно много раз.
"PrintRecTotal":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#addeeaada4bbd7913f57030efba8662fe - подведение итога. разрешено вызывать не более 1 раза на документ. После итога добавление позиций запрещено, можно вызывать только команды оплаты:
"PrintRecItemPay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7ca2d5fc505ce74e47ffe6ff77f6ec70 - добавление оплаты, можно вызывать сколь угодно много раз, рекомендуется не более 6 раз на документ (с учётом сдачи).
Только *для Sell/SellRefund/Buy/BuyRefund*:
*Перед "PrintRecItem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 необходимо установить налоги* функцией "SetItemTaxes":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac3ba54dd76e7efe29870e3117eae41de.
В некоторых случаях требуется передать телефон или электронный адрес покупателя (тег 1008), об этом в "Q13":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA/edit#Q13, "Q14":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA/edit#Q14.
h2. Q12_1:
h2. *Как сформировать чек коррекции?*
h2. A12_1:
*Чек коррекции* отличается от остальных чеков наполнением: оно происходит единственной командой "FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5, повтор которой недопустим.
Для формирования суммовых налогов в чеке коррекции перед FNMakeCorrectionRec нужно вызвать "SetSumTaxes":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a79d22ae4a8cd4fc35e077659c58e6aa3.
*В этом случае параметр taxNum (порядоковый номер используемого налога) функции FNMakeCorrectionRec игнорируется*.
Резюмируя: для формирования чека коррекции нужно последовательно и без повторов вызывать:
(если несколько СНО) "SetTaxationUsing":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab2f0202725597f348727647d33eedaf4
"OpenRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a0652bf6ebf8d2e3147bf45905daa1f1e
(если нужны суммовые налоги)"SetSumTaxes":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a79d22ae4a8cd4fc35e077659c58e6aa3
"FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5
"CloseRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad324f3c6dcabcfa6801fc4c166b24244
h2. Q13:
h2. *Как передать телефон или электронный адрес покупателя (тег 1008)?*
h2. A13:
Для передачи этого тега необходимо использовать функцию "SendClientAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5672fc24a0e68cf06e13a8e73698cb12
Она выполняется один раз на весь документ в любой момент после открытия и до закрытия. %{color:red}Повторная передача ведёт к нарушению ФФД%.
Установка одновременно электронного адреса и телефона покупателя не предусмотрена ФФД 1.05 от 21.03.2017.
Точно так же покупатель не может иметь нескольких телефонов и/или email одновременно.
h2. Q14:
h2. *В каком формате передавать телефон или электронный адрес покупателя (тег 1008) в функции "SendClientAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a5672fc24a0e68cf06e13a8e73698cb12 ?*
h2. A14:
Телефон или электронный адрес покупатеся следует передавать в соответствии с ФФД 1.05 от 21.03.2017 Таблица 5, тег 1008:
Формат: %{color:red}+{Ц}% или %{color:red}{С}@{C}%,
где Ц - "атрибут, обозначающий, что данные реквизита должны быть представлены в виде цифры",
С- "атрибут, обозначающий, что данные реквизита должны быть представлены в виде символа".
Символы и цифры должны быть представлены в электронной форме %{color:red}"в соответствии с кодовой таблицей CP866"%.
h2. Q15:
h2. *Как изменить параметры автоинкассации при закрытии смены?*
h2. A15:
Включение или отключение автоинкассации выполняется функцией "SetDayCloseAutoPayOut":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7412c0fe3ae61fc5a2d54d850e8d0c97
Если необходимо сохранить значение параметра для применения его во всех следующих функциях закрытия смены ("CloseDay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a45709f692bbe83ec0852e0569b512a01 ),
в т.ч. после перезагрузки, нужно сохранить опции ("SaveOptions":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bf297561df86b0c5e62b8b0adcf670e ).
h2. Q16, Q17:
h2. *Какие типы документа доступны для чека коррекции в аргументе "operation" функции "FNMakeCorrectionRec":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a4f682ac24587eb357468ab574fa5c7f5 ?*
h2. *Почему в чеке коррекции не работает "OperationType.SellRefund":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac61434a729deda0ddd0e8cf6b1bd7123 и "OperationType.BuyRefund":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#ac61434a729deda0ddd0e8cf6b1bd7123 )?*
h2. A16, A17:
В соответствии с ФФД 1.05 от 21.03.2017 Таблица 25 "Реквизит «Признак расчета» (тег 1054) для кассового чека коррекции (БСО коррекции)
может принимать одно из следующих значений: «1» – приход, «3» – расход."
Поэтому чек коррекции на возврат прихода и возват расхода возвращает ошибку.
h2. Q18:
h2. *Как передать признак предмета расчета и признак способа расчета (теги 1212 и 1214)?*
h2. A18:
Для передачи свободных тегов используется функция "SetTagAttribute":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8bce3c5e91220db3f59b0f7491775393 (начиная с 1.8.28).
Её нужно вызывать перед добавлением позиции ("PrintRecitem":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a33a66c34f73f25247d84a51623516d55 ), в которой необходимо установить соответствующий тег.
h2. Q19:
h2. *Какие значения передать при установке тегов 1212 и 1214?*
h2. A19:
Значения реквизита «признак способа расчета» (тег 1214) в соответствии с ФФД 1.05 от 21.03.2017 Таблица 28:
|1|ПРЕДОПЛАТА 100%|
|2|ПРЕДОПЛАТА|
|3|АВАНС|
|4|ПОЛНЫЙ РАСЧЕТ|
|5|ЧАСТИЧНЫЙ РАСЧЕТ И КРЕДИТ|
|6|ПЕРЕДАЧА В КРЕДИТ|
|7|ОПЛАТА КРЕДИТА|
Значения реквизита «признак предмета расчета» (тег 1212) в соответствии с ФФД 1.05 от 21.03.2017 в ред. Приказа ФНС России от 09.04.2018 Таблица 29:
|1|ТОВАР|
|2|ПОДАКЦИЗНЫЙ ТОВАР|
|3|РАБОТА|
|4|УСЛУГА|
|5|СТАВКА АЗАРТНОЙ ИГРЫ|
|6|ВЫИГРЫШ АЗАРТНОЙ ИГРЫ|
|7|ЛОТЕРЕЙНЫЙ БИЛЕТ|
|8|ВЫИГРЫШ ЛОТЕРЕИ|
|9|ПРЕДОСТАВЛЕНИЕ РИД|
|10|ПЛАТЕЖ|
|11|АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ|
|12|СОСТАВНОЙ ПРЕДМЕТ РАСЧЕТА|
|13|ИНОЙ ПРЕДМЕТ РАСЧЕТА|
|14|ИМУЩЕСТВЕННОЕ ПРАВО (с 1.12.37+)|
|15|ВНЕРЕАЛИЗАЦИОННЫЙ ДОХОД (с 1.12.37+)|
|16|СТРАХОВЫЕ ВЗНОСЫ (с 1.12.37+)|
|17|ТОРГОВЫЙ СБОР (с 1.12.37+)|
|18|КУРОРТНЫЙ СБОР (с 1.12.37+)|
|19|ЗАЛОГ (с 1.12.37+)|
h2. Q20:
h2. *Как пробить сдачу?*
h2. A20:
Сначала пробейте оплату наличными, сумму, которую передал клиент, например, 100р.
<pre><code class="cpp">
IFiscalCore.PrintRecItemPay((int)PayType.Cash, "100.00", "ПРИНЯТО ОТ КЛИЕНТА НАЛИЧНЫМИ:",callback);
</code></pre>
После этого выполните вызов "PrintRecItemPay":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a7ca2d5fc505ce74e47ffe6ff77f6ec70 с параметрами PayType.Cash, в total передайте сумму со знаком "минус".
Например, сдача в 15 рублей 1 копейку оформляется вызовом:
<pre><code class="cpp">
IFiscalCore.PrintRecItemPay((int)PayType.Cash, "-15.01", "СДАЧА:",callback);
</code></pre>
В предыдущих двух командах параметр itemText может быть любым.
В результате после закрытия документ, если "принято" - "сдача" == сумме стоимости всех позиций по документу, на чеке появится 2 последовательные надписи:
"ПРИНЯТО ОТ КЛИЕНТА НАЛИЧНЫМИ: 100.00"
"СДАЧА: 15.01"
и ниже, в соответствии с ФФД:
"НАЛИЧНЫМИ 84.99"
h2. Q21:
h2. *Как работать по старому законотадельству в режиме ЧПМ ?*
h2. A21:
Если клиент по закону имеет право пользоваться ЧПМ, переход в режим ЧПМ осуществляется при соблюдении следующих условий:
1. ККТ не зарегистрирована
2. К ККТ не подключен (зарегистрированный) ФН
3. ПО умеет работать в режиме ЧПМ без обращений к ФН.
4. ПО умеет определять текущий режим работы через вызов функции "DirectIO":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad332340d4b162fd5a0fd9a56a364a457
*%{color:red}Внимание!%* Режим работы ККТ, определяемый перечислением "Mode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159 *отличается* от режима работы ФН, описанного в "OperatingMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af79f7ba66a9ad6fe8763a6f58952a5d2
Численные значения перечислений лежат в начале "страницы":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html
Запрос текущего режима работы ККТ (Mode) выполняется следующим образом:
1. Создаётся экземпляр "IAuth":http://doc.multisoft.ru/doc/MSPOS/IAuth.aidl, который реализует все функции интерфейса.
2. Создаётся экземпляр "IExceptionCallback":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl по аналогии с любым другим коллбеком об ошибке
3. Выполняется команда DirectIO с параметрами "DirectIOCmd.GetMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#aa03c06b35cfd3f44c06206014cb9d40c,
в качестве второго параметра необходимо передать идентификатор пользовательского ПО, либо package приложения, из которого функция вызвыается.
4.1 Если команда выполнена успешно, ядро вызовет auth.Result(currentMode) с параметром currentMode, равном текущему режиму работы ККТ (Mode).
4.2 Пользовательское ПО сохраняет это число и сравнивает с "Mode.OFD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159 и "Mode.ENVD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159, определяя текущий режим работы.
5.1 Если команда завершилась с ошибкой, коллбек об ошибке передаётся стандартно, через "IExceptionCallback":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl
Переход в режим ЧПМ осуществляется через программный вызов DirectIO при выполнении условий 1-3 аналогично запросу текущего режима работы ККТ (Mode).
В качестве первого параметра необходимо использовать константу "DirectIOCmd.ChangeMode":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#aa03c06b35cfd3f44c06206014cb9d40c
При смене режима в auth.Result возвращается *новый режим работы*. Был режим: "Mode.OFD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159. Сменили режим => в auth.Result возвращается "Mode.ENVD":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a6133311b80ad2d8ed53f0a9766094159
h2. Q22:
h2. *Какие особенности у режима ЧПМ ?*
h2. A22:
В режиме ЧПМ все обращения к ФН отключены и будут возвращать "ErrCode.Hardware":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#af7d268ea5021cfa159aa82b7004da530, "ExtHardwareErr.Nack":http://doc.multisoft.ru/doc/MSPOS/html/namespacecom_1_1multisoft_1_1drivers_1_1fiscalcore.html#a4db5bb9a1e904a00eeee445ac3aa45cc кроме "FNGetNumber":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a8b2c94673f98ad05e485adc28f0bf95d.
Функции, начинающиеся с *FN, OFD, FDI, QueryOFD, OfdOut, QueryFiscal* созданы для работы в режиме ОФД,
обращаются к ФН и будут возвращать указанную выше ошибку в режиме ЧПМ.
В любой момент из режима ЧПМ можно перейти обратно в режим ОФД с потерей всех счётчиков и состояний по вызову команды DirectIO с параметрами для смены режима работы.
Для корректной работы устройства в режиме ЧПМ его необходимо зарегистрировать.
Перед регистрацией необходимо установить и сохранить следующие опции:
"SetOrgName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad771825ea775e76666cc09772279767a
"SetOrgAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ac6650f56de207c2664b8a16f3b63fd32
Регистрация выполняется стандартной функцией "Register":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245
В качестве параметров необходимо передать: reg_num, равный "00000", а также корректный ИНН и имя кассира. Остальные параметры не влияют на результат выполнения.
h2. Q23:
h2. *Как проверить, к какому магазину привязано устройство?*
h2. A23:
Откройте App Store или Магазин приложений. Нажмите иконку пользователя справа вверху.
Открывшееся меню прокрутите вниз.
В поле "Service provider" или "поставщик услуг" показывается текущий магазин, к которому привязано устройство. По умолчанию это Multisoft.
h2. Q24:
h2. *На устройстве не применяются настройки магазина, что делать?*
h2. A24:
Проверьте "A23":http://77.243.109.96:8881/redmine/projects/mspos-k/wiki/QA#A23 ^. Если наименование магазина соответствует ожидаемому, убедитесь, что устройство подключено по Wifi к интернет,
и выполните перезагрузку. Допускается подключение через сеть sim-карты с доступом в интернет, но предпочтительнее пользоваться Wifi.
Если перезагрузка не помогла, зайдите в *POS Steward -> network -> network test -> start testing*.
Тест пройден успешно, если все три галочки - зелёные.
Если хотя бы одна из них красная, рекомендуется подключиться к другой Wifi сети, где тест пройдёт успешно,
т.к. корректное применение всех параметров магазина гарантируется только при полностью исправном соединении с интернет.
h2. Q25:
h2. *Как работать с признаком агента? Что делать, если пользователь - агент/поверенный/комиссионер?*
h2. A25:
Если пользователь - агент/поверенный/комиссионер, соответствующий признак агента указывается в параметрах "регистрации":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a278fd49eca702ca03b239f65f098a245.
После регистрации можно установить *текущий признак агента* функцией "SetAgentTagUsing":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a7f0d91ebd3472d213e6be47e4afda0c2 (аналогично установке СНО, выполняется *перед открытием чека*).
Установка признака агента может быть нужна в случае, если необходимо сформировать документ с одним(несколькими) из зарегистрированных признаков агента, к примеру:
при регистрации указан *PayAgent* и *BankPaySubAgent*, а предмет расчёта в чеке относится только к *PayAgent*).
*Текущий признак агента* распространяется на все предметы расчёта (товары, услуги, ...) в чеке.
*По умолчанию* текущий признак агента равен указанному при регистрации.
Запросить признак агента в ФН (указывается при регистрации) можно функцией "GetAgentTag":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a5e918f55014acc144ed14fa618e6ffab
В зависимости от выбранного *текущего признака агента* в чеке должны быть установлены следующие параметры:
если пользователь - платёжный агент или платёжный субагент (установлены биты "AgentTag.PayAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b и/или "AgentTag.PaySubAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b)
"SetCommissionAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a537b038aab4c42ed63107e96cd423321
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
если пользователь - банковский платёжный агент или банковскиий платёжный субагент (установлены биты "AgentTag.BankPayAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b и/или "AgentTag.BankPaySubAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b)
"SetTransferOperatorName":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#abc45417de2caada0426148d08c2f01ab
"SetTransferOperatorTaxId":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a40533b38d11cf5703856b46cd68408a3
"SetTransferOperatorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a47846d05cebe797b4c5ee59c097eb2fa
"SetTransferOperatorAddress":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#a70a8d8ed1e4f1b1b49f6b21860f4d3df
"SetPaymentAgentOperation":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad489cb74534c3c0091eac73f8312c7a2
"SetPaymentAgentTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ad9db608d873cd7e60e936ae9fd552e2c
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
если пользователь - поверенный, комиссионер и/или иной агент (установлен любой из бит "AgentTag.Attorney":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b, "AgentTag.CommissionAgent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b, "AgentTag.Agent":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#a2116155dfaf66d98ad57fa6e59e4550b
"SetContractorTelNum":http://doc.multisoft.ru/doc/MSPOS/html/interface_i_fiscal_core.html#ab93c7d4caebe3cccbe37cafe525d1dad
h2. Q26:
h2. *Когда необходимо менять ФН?*
h2. A26:
Самый действенный способ - периодически проверять "FNGetWarningFlags":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a0edf8ac570a448c11ccf95d6ec6632a4
Если "WarningFlag":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#ad042cfb3dda00bd78f8a393ef16133b9 содержит *FNMemoryOverflow* или *UrgentCSReplace* -> пора менять.
Если в ответе на фискальную операцию (открытие/закрытие смены/документа) в "коллбеке об ошибке":http://doc.multisoft.ru/doc/MSPOS/IExceptionCallback.aidl возвращается "ErrCode.Hardware и ExtHardwareErr.Fatal":http://doc.multisoft.ru/doc/MSPOS/html/a00014.html#af7d268ea5021cfa159aa82b7004da530,
а также установлены эти флаги -> пора менять уже прямо сейчас.
h2. Q27:
h2. *Как менять ФН?*
h2. A27:
1. Закрыть смену, если была открыта
2. Если ккт находится в неавтономном режиме, нужно дождаться отправки всех документов в ОФД ("OFDGetQueuedMessagesCount":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a8043b80c203d843f72cf4f29deef2050 равно нулю)
3. Закрыть архив ФН "CloseFiscalMode":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#af416b8ca943c669a630763d66edfa085
4. Если ккт в неавтономном режиме - дождаться отправки отчёта о закрытии архива в ОФД (аналогично п.2)
5. Вставить новый ФН.
6. Выполнить перерегистрацию "CorrectRegistration":http://doc.multisoft.ru/doc/MSPOS/html/a00031.html#a24fb9f4f043bd3ec5fed05cb9213db42 в связи с заменой ФН
h2. Q28:
h2. *Где посмотреть логи MSPOS-Expert? как выгрузить логи?*
h2. A28:
Откройте MSPOS-Expert, перейдите на страницу "статус", внизу нажмите кнопку "выгрузка лога".
Если выпадет диалог с запросом разрешений, подтвердите их.
После этого логи появятся в корне карты памяти в папке "mspos"
Далее их можно будет выгрузить, подключив устройство к ПК, либо по teamviewer (более быстрый способ).
h2. Q29:
h2. *Как будет происходить переход на НДС 20% в 2019 году?*
h2. A29:
Ниже при упоминании НДС 18% имеются ввиду ставки 18 и 18/118, которым соответствуют коды налогов TaxNum._18 (0) и TaxNum._18_118(2).
*В соответствии с ФФД, 01.01.2019 НДС 18% должен быть заменён на НДС 20%*. При этом номера ставок не изменились.
Мы сделали соответствующие изменения, согласно которым индексы останутся прежними, но в чеках, открытых после 1го января 2019 года включительно,
сумма НДС вместо 18% будет *рассчитываться* по ставке 20%.
Чеки, открытые до полуночи с 31 декабря на 1е января закрываются по времени открытия, т.е. ставка в них будет 18%.
Печатные формы будут также соответствовать ФФД, при условии, что MSPOS-Expert обновлён.
*Для перехода с 18% на 20% от пользовательского ПО не требуется изменений в части общения с ФЯ*, т.к. установка ставки НДС ведётся по её индексу.
Рекомендуется с 1го января контролировать версию ФЯ через GetAidlVersion, чтобы пользователь обновил mspos-expert.
h2. Q30:
h2. *Как выполнить возврат с НДС 18% в 2019 году?*
h2. A30:
Ниже при упоминании ставки 18% имеется ввиду ставка НДС 18% или 18/118%.
До 2019 года кодам налогов TaxNum._18 (0) и TaxNum._18_118(2) соответствуют ставки НДС 18% и 18/118%.
После полуночи с 31.12.2018 на 1.01.2019 этим кодами будут соответствовать ставки 20% и 20/120%.
Для возвратов мы расширили ставки налогов TaxNum: добавлены индексы _REFUND_18 = 6 и _REFUND_18_118 = 7.
Чтобы после 01.01.2019 сделать возврат со ставкой 18%, необходимо использовать коды _REFUND_18 или _REFUND_18_118.
Добавлена блокировка установки ставок налогов _REFUND_18 и _REFUND_18_118 в чеках Sell и Buy. Чеки коррекции можно формировать с любой доступной ставкой.
В сформированном чеке *сумма* налогов по ставке будет рассчитана корректно.
h2. Q31:
h2. *При закрытии чека (CloseRec) получаем ошибку errCode 1 (ErrCode.WrongArgument), extErrCode 9, message "Некорректное значение параметров команды ФН", хотя параметры заведомо корректные. В логах BadArgument. Что делать?*
h2. A31:
Согласно документации на ФН, так он сигнализирует о переполнении итогов смены. Необходимо аннулировать чек и закрыть смену.
h2. Q32:
h2. Как программно посмотреть системную информацию об устройстве (номер сборки, firmware version и т.д.)?
h2. A32:
Программный доступ к системной информации сайте "SUNMI Developers":https://docs.sunmi.com/htmls/index.html?lang=en##Special%20Codes%20Description
Документация к встроенному сканеру лежит "здесь":https://docs.sunmi.com/htmls/index.html?lang=en##Camera%20Code%20Scanning
Программно "открыть App store со страницей определённого приложения":https://docs.sunmi.com/htmls/index.html?lang=en##How%20does%20the%20APP%20call%20the%20score%20box, "ещё ссылка":https://docs.sunmi.com/htmls/index.html?lang=en##Jump%20to%20the%20app%20store%20app%20details.
Настройка "пользовательских действий по нажатию на кнопки громкости":https://docs.sunmi.com/htmls/Volume%20keys%20custom.html.
h2. Q33
h2. Как открыть денежный ящик на MSPOS-Т-Ф?
h2. A33:
Воспользуйтесь функцией aidl "OpenDrawer":http://doc.multisoft.ru/doc/MSPOS/html/a00034.html#a887ea971d2ec2b4940bea20b835be60a (добавлена в 1.13.39)
h2. Q34
h2. Какая распиновка разъёма денежного ящика на MSPOS-Т-Ф? Куда подключать считыватель карт в MSPOS-Т-Ф ?
h2. A34:
Ответы на эти вопросы, а также полный перечень разъёмов доступны по "ссылке":https://docs.sunmi.com/htmls/index.html?lang=en##External%20USB%20Serial%20Devices