Реквизиты тестового стенда
По этим реквизитам можно тестировать проверку кодов маркировки через эмулятор ТС ПИоТ.
URL = https://fiscalization-test.evotor.ru
login = 'zFHQmlpRQA'
pass = 'dOIFPAuUvZZvLFQ'
group_code = 'c9819680-601c-4861-bc50-49859f6982d3'
Для тестирования функционала формиро вания фискальных чеков используйте другой тестовый стенд.
Тестовые коды маркировки
Проверять работу через эмулятор можно только с помощью специальных тестовых кодов маркировки. Полный набор список тестовых кодов кодов маркировки доступен на официальном сайте эмулятора. Основные сценарии можно проверить с использованием кодов из таблицы ниже.
| Код маркировки (base64) | Результат |
|---|---|
MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg== | Продажа разрешена; "code": 200 |
MDEwNDY3MDU0MDE3NjA5OTIxNU5OKmNNHTkzZEdWeg== | Продажа запрещена; "code": 200 |
MDEwNDY3MDU0MDE3NjA5OTIxNTxwR0t5HTkzREdWeg== | Продажа запрещена; Некорректный криптохвост; "code": 200 |
MDEwNDY3MDU0MDE3NjA5OTIxNSFwR0t5HTkzZEdWeg== | Не удалось установить соединение с Честным знаком; "code": 514 |
Два любых одинаковых кода, например ["1", "1"] | Некорректный запрос — запрос содержит дубли кодов (Mark code forbidden, details: Marks contains duplicates); "code": 400 |
Сценарии тестирования
Явная проверка + формирование чека
Сценарий позволяет протестировать целевую схему работы: сначала клиент выполняет проверку кода маркировки, например в момент сборки заказа на складе, и получает факт проверки, затем отправляет запрос на формирование чека, когда заказ доставлен покупателю.
- Получите токен
curl -X POST "https://fiscalization-test.evotor.ru/possystem/v5/getToken" \
-H "Content-type: application/json; charset=utf-8" \
-d '{
"login": "zFHQmlpRQA",
"pass": "dOIFPAuUvZZvLFQ"
}'
Токен действует 24 часа. Его можно использовать для всех запросов к группе касс c9819680-601c-4861-bc50-49859f6982d3.
- Отправьте запрос на проверку кода маркировки
Используйте тестовую КМ MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg== — ТС ПИоТ должен разрешить ее продажу. Вы можете использовать другие тестовые КМ, чтобы проверять неуспешные сценарии.
curl -X POST "https://fiscalization-test.evotor.ru/tspiot/v1/c9819680-601c-4861-bc50-49859f6982d3/check-codes" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: token123" \
-d '{
"codes": [
"MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg=="
]
}'
При отсутствии ошибок сервис вернет пакет, содержащий уникальный идентификатор проверки uuid, присвоенный сервисом, и статус обработки. В среднем запрос обрабатывается 1-2 секунды.
- Запросите результат обработки
Запросите результат проверки КМ. Значения параметров reqId и reqTimestamp из ответа потребуется передать в запросе на формирование чека.
Описание API — Получение результата проверки
curl -X GET "https://fiscalization-test.evotor.ru/tspiot/v1/c9819680-601c-4861-bc50-49859f6982d3/report/93ffec76-37d5-4232-be50-9d39010aa770" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: token123"
Значение параметра allowed: true обозначает, что товар разрешен к продаже, можно формировать чек на Полный расчет.
- Сформируйте чек на полный расчет
Используйте API для формирования чеков. В позицию с маркированным товаром необходимо добавить объект sectoral_item_props, в его параметр value передайте reqId и reqTimestamp из результата проверки КМ — UUID=\{reqId\}&Time=\{reqTimestamp\}. Для каждой позиции с маркированным товаром sectoral_item_props заполняется отдельно. Обновляйте external_id перед каждым тестом.
curl -X POST "https://fiscalization-test.evotor.ru/possystem/v5/c9819680-601c-4861-bc50-49859f6982d3/sell" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: token123" \
-d '{
"timestamp": " 03.04.2026 12:05:31",
"external_id": "REPLACE_WITH_RANDOM_STRING_OR_UUID",
"receipt":
{
"client":
{
"email": "client@client.ru",
"phone": "+70002410085",
"name": "Иванов Иван Иванович",
"inn": "516974792202"
},
"company":
{
"email": "email@shop-url.ru",
"sno": "osn",
"inn": "5010051677",
"payment_address": "shop-url.ru"
},
"items":
[
{
"name": "Маркированный товар",
"price": 122,
"quantity": 1.0,
"measure": 0,
"sum": 122,
"payment_method": "full_payment",
"payment_object": 1,
"vat":
{
"type": "vat22",
"sum": 22.0
},
"mark_processing_mode": "0",
"mark_code":
{
"gs1m": "MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg=="
},
"sectoral_item_props":
[
{
"federal_id": "030",
"date": "21.11.2023",
"number": "1944",
"value": "UUID=5231bbb2-a5b8-408d-8464-57043d3596b6&Time=1759965114765"
}
]
}
],
"payments":
[
{
"type": 1,
"sum": 122.0
}
],
"total": 122.0
}
}'
- Проверьте чек
Получите результат обработки документа, откройте чек по ссылке, проверьте его состав.
curl -X GET "https://fiscalization-test.evotor.ru/possystem/v5/c9819680-601c-4861-bc50-49859f6982d3/report/0459d6f9-afb6-41ab-860b-11c0544175ea" \
-H "Token: token123" \
-H "Content-Type: application/json; charset=utf-8"
Формирование чека с автоматической проверкой КМ
Цифровая касса может проверить КМ автоматически — описание автоматической проверки
- Сформируйте чек полного расчета
Используйте API для формирования чеков. Не добавляйте объект sectoral_item_props в позиции, чтобы была запущена автоматическая проверка.
curl -X POST "https://fiscalization-test.evotor.ru/possystem/v5/c9819680-601c-4861-bc50-49859f6982d3/sell" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: token123" \
-d '{
"timestamp": " 03.04.2026 12:05:31",
"external_id": "REPLACE_WITH_RANDOM_STRING_OR_UUID",
"receipt":
{
"client":
{
"email": "client@client.ru",
"phone": "+70002410085",
"name": "Иванов Иван Иванович",
"inn": "516974792202"
},
"company":
{
"email": "email@shop-url.ru",
"sno": "osn",
"inn": "5010051677",
"payment_address": "shop-url.ru"
},
"items":
[
{
"name": "Маркированный товар",
"price": 122,
"quantity": 1.0,
"measure": 0,
"sum": 122,
"payment_method": "full_payment",
"payment_object": 1,
"vat":
{
"type": "vat22",
"sum": 22.0
},
"mark_processing_mode": "0",
"mark_code":
{
"gs1m": "MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg=="
}
}
],
"payments":
[
{
"type": 1,
"sum": 122.0
}
],
"total": 122.0
}
}'
- Проверьте чек
Получите результат обработки документа, откройте чек по ссылке, проверьте его состав.
curl -X GET "https://fiscalization-test.evotor.ru/possystem/v5/c9819680-601c-4861-bc50-49859f6982d3/report/0459d6f9-afb6-41ab-860b-11c0544175ea" \
-H "Token: token123" \
-H "Content-Type: application/json; charset=utf-8"
Если в запросе на формирование чека вы передавали невалидные или запрещенные КМ, то в ответ будет возвращена соответствующая ошибка, и чек не будет сформирован.
Аварийный режим
В нештатных ситуациях Честный знак может ввести аварийный режим, во время которого допускается продажа маркированного товара без проверки по РР. ТС ПИоТ автоматически получит информацию о введении режима от Честного знака и уведомит пользователя о нем в результате запроса на проверку КМ.
Для тестирования Аварийного режима используйте отдельный тестовый стенд. Любые запросы на проверку КМ будут возвращать ошибку аварийного режима.
login = 'partnerTest1.2'
pass = 'partnerTest1.2Pass'
group_code = 'cf0a2212-2e39-463f-9bff-30874b570f75'
- Получите токен
curl -X POST "https://fiscalization-test.evotor.ru/possystem/v5/getToken" \
-H "Content-type: application/json; charset=utf-8" \
-d '{
"login": "partnerTest1.2",
"pass": "partnerTest1.2Pass"
}'
Токен действует 24 часа. Его можно использовать для всех запросов к группе касс cf0a2212-2e39-463f-9bff-30874b570f75.
- Отправьте запрос на проверку кода маркировки
Запрос проверки любого КМ к группе касс cf0a2212-2e39-463f-9bff-30874b570f75 завершится ошибкой Аварийного режима.
curl -X POST "https://fiscalization-test.evotor.ru/tspiot/v1/cf0a2212-2e39-463f-9bff-30874b570f75/check-codes" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: 456token" \
-d '{
"codes": [
"MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg=="
]
}'
- Запросите результат обработки
Запросите результат проверки КМ — вернется ошибка аварийного режима.
Описание API — Получение результата проверки
curl -X GET "https://fiscalization-test.evotor.ru/tspiot/v1/cf0a2212-2e39-463f-9bff-30874b570f75/report/93ffec76-37d5-4232-be50-9d39010aa770" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: token123"
{
"uuid": "93ffec76-37d5-4232-be50-9d39010aa770",
"status": "fail",
"error": {
"text": "Продажа товара разрешена без проверки, действуют ограничения аварийного режима",
"type": "tspiot",
"code": 203,
"error_id": "69e5e1328e64320996cc9b37ed3f165f"
}
}
- Сформируйте чек полного расчета
Используйте API для формирования чеков. Не добавляйте объект sectoral_item_props в позиции, чтобы была запущена автоматическая проверка — она тоже завершится ошибкой аварийного режима, но чек будет сформирован.
curl -X POST "https://fiscalization-test.evotor.ru/possystem/v5/cf0a2212-2e39-463f-9bff-30874b570f75/sell" \
-H "Content-Type: application/json; charset=utf-8" \
-H "token: 456token" \
-d '{
"timestamp": " 03.04.2026 12:05:31",
"external_id": "REPLACE_WITH_RANDOM_STRING_OR_UUID",
"receipt":
{
"client":
{
"email": "client@client.ru",
"phone": "+70002410085",
"name": "Иванов Иван Иванович",
"inn": "516974792202"
},
"company":
{
"email": "email@shop-url.ru",
"sno": "osn",
"inn": "5010051677",
"payment_address": "shop-url.ru"
},
"items":
[
{
"name": "Маркированный товар",
"price": 122,
"quantity": 1.0,
"measure": 0,
"sum": 122,
"payment_method": "full_payment",
"payment_object": 1,
"vat":
{
"type": "vat22",
"sum": 22.0
},
"mark_processing_mode": "0",
"mark_code":
{
"gs1m": "MDEwNDYyOTMwODg3NzA0NDIxRHprY1l0Mh04MDA1MDkwMDAwHTkzZEdWeg=="
}
}
],
"payments":
[
{
"type": 1,
"sum": 122.0
}
],
"total": 122.0
}
}'
- Проверьте чек
Получите результат обработки документа, откройте чек по ссылке, проверьте его состав.
curl -X GET "https://fiscalization-test.evotor.ru/possystem/v5/cf0a2212-2e39-463f-9bff-30874b570f75/report/0459d6f9-afb6-41ab-860b-11c0544175ea" \
-H "Token: 456token" \
-H "Content-Type: application/json; charset=utf-8"
Убедитесь, что в чеке не появились теги 1260-1265.