eTIMS — фискализация счетов и чеков в KRA (Кения)
Что это
eTIMS — система налоговой службы Кении (KRA), в которой регистрируется каждый документ продажи. Зарегистрированный документ получает квитанцию KRA: номер CU-инвойса, идентификатор устройства (SCU ID), подпись и QR-код для проверки. ERPJS отправляет в eTIMS счета, кредит-ноты и кассовые чеки сам — сразу после проведения — через сервис-посредник eTIMS. Всё это есть только в версии ERPJS для Кении; в украинской версии модуля eTIMS нет.
Обзор модуля и его объектов — на странице eTIMS (KRA, Кения).
Предусловия: что получить у посредника eTIMS
- Адрес сервиса-посредника (начинается с
https://). - Ключ API — посредник выдаёт его для вашего устройства KRA (OSCU/VSCU).
- Справочник KRA: коды классификации товаров, коды упаковки и единиц — их выдаёт KRA или посредник.
Шаг 1. Учётная запись eTIMS
Откройте Модули → eTIMS → Регистры → Учетные записи eTIMS и создайте запись.
- Заполните «Адрес eTIMS» и «Ключ API eTIMS». Ключ хранится зашифрованным: после сохранения поле показывает маску. Не трогайте его — ключ останется; наберите новый — он заменит старый; очистите поле — ключ сотрётся при сохранении. Сменили адрес — введите ключ ещё раз.
- Отметьте «По умолчанию для компании» — эта учётная запись будет отправлять счета компании. Такая запись в компании может быть только одна.
- На вкладке «Сопоставление НДС eTIMS» укажите для каждого кода НДС тип налога KRA: A — освобождено, B — 16 %, C — нулевая ставка, D — не плательщик НДС, E — 8 %. Ставка кода НДС должна совпадать со ставкой типа: код 20 % на типе B сохранится, но документ с этим кодом в eTIMS не уйдёт — ошибка назовёт строку и код.
- Нажмите «Проверить соединение» в меню окна.
Поля и проверки — на странице регистра Учетные записи eTIMS.
Шаг 2. Коды KRA для товаров
KRA требует у каждого товара код классификации, тип товара, коды упаковки и единицы и страну происхождения. В карточке товара ERPJS большей части этих данных нет, поэтому они задаются отдельно:
- Коды eTIMS групп товаров — для группы целиком; так удобнее начинать.
- Коды eTIMS товаров — для товара, который отличается от своей группы.
Чего нет ни у товара, ни у группы, берётся из вкладки «Коды товаров eTIMS» учётной записи (значения по умолчанию).
Раньше этих умолчаний коды упаковки и единицы берутся из вкладки «Сопоставление единиц eTIMS» (единица измерения товара
→ коды KRA), страна — из поля «Страна происхожд.» карточки товара, если там двухбуквенный код ISO, а тип товара — из
карточки (услуга — 3, остальное — 2). Если кода не нашлось нигде, документ не уйдёт, а в записи фискализации будет
сказано, у какого товара чего не хватает.
Шаг 3. Тип оплаты и касса
Счёт бэк-офиса уходит с типом оплаты 01 (наличные), если он оплачен при продаже: кассовый счёт или счёт с
условием оплаты типа «Наличные» — учёт тоже проводит его сразу в кассу. Кредит-нота так
не уходит никогда. Иначе — с «Типом оплаты по умолчанию» учётной записи, а если он пуст — 02 (в кредит).
Чек кассы уходит с типом того способа оплаты, которым оплачена большая часть суммы:
- в настройке Способ оплаты заполните колонку «Тип оплаты eTIMS» (наличные, карта, мобильные деньги…);
- где колонка пуста, тип берётся из слота кассы: наличные —
01, терминал —05, чек —04. Слот «прочее» работает только через колонку.
Чек, который касса закрыла оплаченным лишь частично (условие оплаты не наличное), уходит с типом 03, а вовсе не
оплаченный — с типом 02.
Учётная запись кассы. Если у магазина своё устройство KRA, заполните поле «Учетная запись eTIMS» в POS Способы оплаты (для кассы) или в POS Настройка (для всех касс). Иначе чек уходит учётной записью по умолчанию. Указанная, но закрытая или удалённая учётная запись кассы — ошибка, а не переход на запись по умолчанию.
Шаг 4. Проведение и отправка
Проведите счёт. После проведения ERPJS отправляет его в eTIMS: сначала регистрирует товары, затем продажу. Обычно квитанция приходит через секунду, и человек не видит ничего лишнего.
Результат — в регистре Фискализация eTIMS: по записи на документ, со статусом, числом попыток, последней ошибкой и квитанцией KRA.
| Что видит человек | Что произошло | Что делать |
|---|---|---|
| ничего | документ в eTIMS, квитанция записана | ничего |
«Сервер eTIMS занят — счёт 77 будет проверен позже» |
eTIMS не ответил или ответил ошибкой сервера | ничего: система повторит сама, пауза растёт от 1 минуты до часа |
«eTIMS: счёт 77 не фискализирован: …» |
документ не ушёл из-за данных или настроек (нет кодов товара, нет типа налога для кода НДС) | исправить то, что названо в тексте, и нажать «Отправить повторно» в записи фискализации |
«eTIMS не принял счёт 77: …» |
посредник отказал | текст отказа — от eTIMS; исправить и отправить повторно |
«eTIMS: кредит-нота 78 будет отправлена, как только исходный счёт будет фискализирован» |
исходный счёт ещё в очереди eTIMS | ничего: нота уйдёт за ним сама |
Ошибки пишутся на языке того, кто провёл документ, — и в уведомлении, и в поле «Последняя ошибка». Если повтор, который система делает сама, закончился ошибкой, тот, кто провёл документ, получает то же уведомление, что в таблице выше.
Шаг 5. Кредит-нота
Кредит-нота (возврат по счёту) уходит в eTIMS так же, после проведения, с номером CU исходного счёта и той же учётной записью. Поэтому в кредит-ноте должен быть указан исходный счёт, иначе она получит ошибку.
- Пока исходный счёт в очереди eTIMS (ждёт или отправляется), нота ждёт и уйдёт за ним сама.
- Если исходного счёта в eTIMS нет (его запись с ошибкой, проведение снято, счёт проведён до подключения eTIMS), нота получит ошибку. Сначала фискализируйте счёт, потом нажмите «Отправить повторно» в записи ноты.
- Сумма нот по счёту не может превысить то, что от счёта осталось в eTIMS: такая нота получит ошибку и не уйдёт.
Возврат на кассе
Для KRA возврат на кассе — тоже кредит-нота, и тоже к исходному чеку. Поэтому на кассе, где работает eTIMS, кнопка возврата (в POS Кнопках — действие «возврат счета-фактуры») не делает чек возвратом сразу, а спрашивает, какой чек возвращают:
- Начните с нового пустого чека. Если в чеке уже идёт продажа, касса откажет: «Возврат начинается с нового пустого чека» — закройте или удалите текущий чек.
- Откроется окно «Возвращаемый чек»: закрытые продажи этой кассы за последние 30 дней, без возвратов и кредит-нот, колонки «Чек №», «Дата и сумма», «Клиент». Набранные цифры номера только сужают список — чек выбирается строкой.
- Новый чек становится чеком возврата к выбранному, с клиентом исходного чека. На печатном чеке — строка «Возврат по чеку» с номером исходного.
- Добавьте возвращаемые товары и закройте чек.
При закрытии касса проверяет чек возврата и откажет, если:
- товара нет в исходном чеке или его больше, чем можно вернуть: «Товар
A1: продано чеком77—2, уже возвращено —1, можно вернуть —1». Уже возвращённым считается всё по этому чеку из проведённых чеков возврата и кредит-нот; - клиент сменён: «Чек возврата
80: клиент должен быть тот же, что в чеке77(C1)»; - исходный чек не выбран: «В eTIMS возврат — это кредит-нота к исходному чеку: нажмите на кассе кнопку возврата и выберите чек».
В eTIMS чек возврата уходит кредит-нотой с номером CU исходного чека, с той же учётной записью и с тем PIN покупателя, с которым ушёл исходный. Дальше всё как у кредит-ноты выше: ждёт исходный чек, пока тот в очереди, и получает ошибку, если исходного в eTIMS нет (например, чек продан до подключения eTIMS).
Снять проведение исходного чека, пока к нему проведён чек возврата, нельзя: «К этому чеку проведён чек возврата 80 —
сначала снимите проведение возврата».
На кассе без eTIMS кнопка возврата работает как раньше.
Шаг 6. Печать квитанции KRA
Кассовый чек печатает блок KRA и QR сам. Пока квитанции нет, вместо них — пометка «Проверка eTIMS ещё идёт — чек будет проверен позже» или «Не принято eTIMS»; повторная печать после отправки даст QR.
Счёт и кредит-нота — через печатную форму документа (Печатные формы). В шаблон добавьте переменные:
| Переменная | Что печатает |
|---|---|
{Etims_SCU_Date} |
дата и время устройства KRA (ДД/ММ/ГГГГ чч:мм:сс) |
{Etims_SCU_ID} |
идентификатор устройства KRA |
{Etims_CU_Invoice_No} |
номер CU-инвойса вместе с идентификатором устройства: SCU ID/номер |
{Etims_Internal_Data} |
внутренние данные квитанции |
{Etims_Signature} |
подпись квитанции |
{Etims_Note} |
пометка, если квитанции ещё нет: «Проверка eTIMS ожидается — документ будет проверен позже» или «Не принято eTIMS» |
{Etims_Customer_PIN} |
PIN KRA покупателя, с которым документ ушёл в eTIMS (не нынешний из карточки) |
{QR_Etims} |
QR-код квитанции картинкой (около 3 × 3 см) |
Переменная, имя которой начинается с QR_, печатается картинкой QR, а не текстом. Документ, которого нет в eTIMS, печатает
блок пустым.
Когда что-то пошло не так
Документ не ушёл, и причина исправлена. Откройте его запись в Фискализации eTIMS и нажмите «Отправить повторно» в меню окна. Результат — сразу, на вашем языке. Это действие и «Выяснить неизвестный результат» доступны тому, у кого есть право изменять регистр «Фискализация eTIMS».
Ответ eTIMS потерялся. Если связь оборвалась во время отправки продажи, неизвестно, есть ли документ в KRA. Такая запись отмечена «Возможно, уже в eTIMS»: снять счёт с проведения нельзя, а повтор уйдёт тем же запросом (с той же суммой и тем же PIN покупателя). Если повторы не помогают, проверьте документ на портале KRA и нажмите «Выяснить неизвестный результат»: «Есть в eTIMS» с номером CU с портала или «Нет в eTIMS» — тогда документ уйдёт заново.
Покупатель без PIN. Если «ИНН» в карточке контакта пуст, продажа уходит без PIN покупателя — как продажа частному лицу.
Ограничения
- Чек, проданный до подключения eTIMS, вернуть на кассе можно, но в eTIMS возврат не уйдёт: у KRA нет номера CU исходного чека, и запись фискализации возврата получит ошибку.
- Лимит возврата считает количество, а не сумму. Сумму кредит-нот сверх того, что от чека осталось в eTIMS, не пропустит сама очередь eTIMS (см. шаг 5).
- Без открытой учётной записи «По умолчанию для компании» счета бэк-офиса в eTIMS не уходят вовсе — без записи фискализации и без предупреждения (чеки кассы со своей учётной записью уходят ею). Снимая флажок или закрывая запись, поставьте флажок другой открытой записи.