Работа с документами с прослеживаемыми товарами

Примечание

Подробную информацию о cистеме прослеживаемости можно почитать на сайте Диадока.

Прослеживаемость товаров

С 8 июля 2021 года действуют правила прослеживаемости, регулируемые Федеральным законом № 371-ФЗ. С помощью системы прослеживаемости государство контролирует движение партии товара от производителя к конечному покупателю. Перечень товаров, подлежащих прослеживаемости, утвержден постановлением Правительства РФ № 1110.

Движение партии товаров отслеживается с помощью реквизитов: РНПТ — регистрационного номера партии товаров, единицы измерения и количества прослеживаемых товаров. Эти реквизиты нужно указывать в счетах-фактурах и УПД. Документы с прослеживаемыми товарами нужно отправлять в электронном виде через оператора ЭДО. Оператор ЭДО автоматически передает первичные документы, содержащие информацию о прослеживаемых товарах, в приемный комплекс (ПК) ФНС после подписания обеими сторонами. Документы должны соответствовать следующим условиям:

  • документ формата №820 или №736;

  • документ с функциями СЧФДОП, ДОП, КСЧФДИС, ДИС;

  • имя документа соответствует шаблону ON_**********PROS_.

Порядок действий участников документооборота:

Продавец:
  • генерирует титул продавца с прослеживаемыми товарами,

  • отправляет его покупателю.

Покупатель:
  • получает титул продавца с прослеживаемыми товарами,

  • генерирует титул покупателя,

  • отправляет его продавцу.

Оператор ЭДО:
  • отправляет документ с прослеживаемыми товарами в ПК ФНС,

  • получает статусы обработки документа.

Продавец и покупатель:
  • узнают статус обработки документа.

Получение статусов документов с прослеживаемыми товарами

Получить статусы документов можно следующими способами:

  • С помощью методов работы с событиями, документами и сообщениями.

Методы могут вернуть один или все статусы по документу:

Информация о статусе документа с прослеживаемыми товарами содержится в структуре OuterDocflowInfo.

Пример структуры OuterDocflowInfo:

"LastOuterDocflows": [
    {
        "ParentEntityId": "94a3c3cf-3346-456b-9713-533d1f37400e",
        "OuterDocflow": {
            "DocflowNamedId": "PkFns",
            "DocflowFriendlyName": "Прослеживаемость",
            "Status": {
                "NamedId": "SendingError",
                "FriendlyName": "Возникла ошибка при проверке документа ПК ФНС",
                "Type": "Warning",
                "Details": [
                    {
                        "Code": "204004001",
                        "Text": "Сертификат не действителен на момент проверки. УЦ не является доверенным"
                    }
                ]
            }
        }
    }
]

Статусы можно получить с помощью методов GetDocflows (версия 3), GetDocflowsByPacketId (версия 3), SearchDocflows (версия 3) и GetDocflowEvents (версия 3). Методы возвращают следующие структуры:

  • OuterDocflow содержит информацию о последнем полученном статусе,

  • OuterDocflowEntities содержит информацию обо всех полученных статусах.

Пример структур OuterDocflow и OuterDocflowEntities:

"OuterDocflows": [
    {
        "DocflowNamedId": "PkFns",
        "ParentEntityId": "94a3c3cf-3346-456b-9713-533d1f37400e",
        "OuterDocflowEntityId": "fb7f4120-41bb-4522-9d4c-273439d4025d"
    }
],
"OuterDocflowEntities": [
    {
        "DocflowNamedId": "PkFns",
        "DocflowFriendlyName": "Прослеживаемость",
        "StatusEntities": [
            {
                "Attachment": {
                    "Attachment": {
                        "Entity": {
                            "EntityId": "fe2a6ea6-e145-4ea3-9fe0-d679cc57e49a",
                            "CreationTimestamp": {
                                "Ticks": 638439293343323627
                            }
                        },
                        "DisplayFilename": ""
                    },
                    "ContentTypeId": ""
                },
                "Status": {
                    "NamedId": "Sending",
                    "FriendlyName": "Документ с прослеживаемым товаром был отправлен в ПК ФНС",
                    "Type": "Normal",
                    "Details": []
                }
            },
            {
                "Attachment": {
                    "Attachment": {
                        "Entity": {
                            "EntityId": "fb7f4120-41bb-4522-9d4c-273439d4025d",
                            "CreationTimestamp": {
                                "Ticks": 638439299095013730
                            }
                        },
                        "DisplayFilename": ""
                    },
                    "ContentTypeId": ""
                },
                "Status": {
                    "NamedId": "SendingError",
                    "FriendlyName": "Возникла ошибка при проверке документа ПК ФНС",
                    "Type": "Warning",
                    "Details": [
                        {
                            "Code": "204004001",
                            "Text": "Сертификат не действителен на момент проверки. УЦ не является доверенным"
                        },
                        {
                            "Code": "204001001",
                            "Text": "ЭП не принадлежит отправителю документа. Корректная ЭП для проверки не обнаружена"
                        }
                    ]
                }
            }
        ]
    }
]

Структуры OuterDocflowInfo, OuterDocflow и OuterDocflowEntities могут содержать информацию о других внешних документооборотах. Определить статусы ПК ФНС можно по идентификатору DocflowNamedId = PkFns.

Статусы документов с прослеживаемыми товарами

Статусы, возвращаемые в структурах OuterDocflowInfo, OuterDocflow и OuterDocflowEntities, описаны в таблице.

Описание статусов ПК ФНС

DocflowNamedId

Status.NamedId

Status.FriendlyName

Status.Type

PkFnsstatus

Sending

Документ с прослеживаемым товаром был отправлен в ПК ФНС

Normal

PkFnsstatus

SuccessSending

Документ с прослеживаемым товаром был успешно принят в ПК ФНС

Success

PkFnsstatus

SendingError

Возникла ошибка при проверке документа ПК ФНС

Warning

Если на стороне ФНС возникла ошибка при проверке документа, то в поле Status.Details вернется список ошибок. ФНС принимает документы с ошибками, но вы можете исправить их и отправить исправленный УПД.