DataMatrix o cómo etiquetar correctamente los zapatos

Desde el 1 de julio de 2019, se introdujo en Rusia el etiquetado obligatorio de un grupo de productos. A partir del 1 de marzo de 2020, los zapatos debían estar sujetos a esta ley. No todos tuvieron tiempo de prepararse y, como resultado, el lanzamiento se pospuso hasta el 1 de julio. Lamoda está entre los que lograron hacerlo.

Por eso, queremos compartir nuestra experiencia con aquellos que todavía tienen que etiquetar ropa, neumáticos, perfumes, etc. El artículo describe una serie de estándares de la industria, alguna documentación reglamentaria y experiencia personal. El artículo está destinado principalmente a integradores y desarrolladores que aún no han entendido este proyecto.

DataMatrix o cómo etiquetar correctamente los zapatos

Tenga en cuenta que el marco regulatorio cambia con frecuencia y el autor no tiene la oportunidad de actualizar constantemente el material. Por lo tanto, en el momento de la lectura, es posible que parte de la información ya esté desactualizada.

El autor adquirió experiencia personal tanto en el marco del proyecto Datamatrix en Lamoda como en el desarrollo de su propia aplicación gratuita para marcar BarCodesFx.

Desde el 1 de julio de 2019, está en vigor en Rusia una ley sobre el etiquetado obligatorio. La ley no se aplica a todos los grupos de productos, y el momento de la entrada en vigor del etiquetado obligatorio para los grupos de productos varía. Ahora el tabaco, los abrigos de piel, los zapatos y los medicamentos están sujetos a un etiquetado obligatorio. En un futuro próximo se introducirá para neumáticos, ropa, perfumes y bicicletas. Cada grupo de bienes está regulado por un decreto gubernamental (GPR) por separado. Por lo tanto, algunas afirmaciones que son correctas para los zapatos pueden no serlo para otros grupos de productos. Pero podemos esperar que el componente técnico no varíe mucho para los diferentes grupos de productos.

marcadoLa idea principal del etiquetado es que a cada unidad de mercancía se le asigne un número individual. Con este número, puede rastrear el historial de un artículo en particular desde el momento de la producción o importación al país, hasta el momento de la eliminación en la caja. Suena bien, pero en la práctica es extremadamente difícil de implementar.El concepto se describe con más detalle en el sitio web oficial de honest sign.

Términos y conceptos comunes

UOT - participante en la circulación de mercancías.
ODM es un centro para el desarrollo de tecnologías avanzadas. Empresa privada, única estatal. contratista del proyecto de marcado. Opera bajo el esquema de asociación público privada (PPP). Desafortunadamente, no hay información sobre otros participantes en la licitación del proyecto, así como sobre la licitación en sí.
TG - grupo de productos básicos. Zapatos, ropa, llantas, etc.
GTIN - de hecho, el artículo, teniendo en cuenta el color y el tamaño. Emitido en GS1 o catálogo nacional de cada importador o fabricante de su producto. El fabricante o importador primero debe describir este producto.
Apagón - Decreto del Gobierno de la Federación Rusa. Para zapatos - 860.
KM - código de marcado. Un conjunto único de caracteres asignados a un elemento en particular. Para los zapatos, consta de GTIN, número de serie, código de verificación y cola criptográfica.
GS1 es una organización internacional que emite GTIN. También compiladores de una serie de normas para el etiquetado.
catálogo nacional - análogo de GS1, desarrollado por CRPT.
criptocola - un análogo de una firma digital, que confirma la legalidad del CM. Debe estar en la matriz de datos del sello. El almacenamiento en forma de texto está prohibido. Después de la impresión, el sello debe ser retirado de acuerdo con el acuerdo con la CRPT. No se conocen casos de uso reales.
CPS - Estación de gestión de pedidos. El sistema en el que se ordenan los KM para el artículo.
EDO - gestión de documentos electrónicos.
UKEP — firma electrónica cualificada mejorada.

Términos y conceptos dentro del alcance de este artículo

ЧЗ - una señal honesta.
LK - Área personal.
Marque - código de marcado impreso.

El proceso es el siguiente: primero, el participante (UOT) emite una firma electrónica (ECES), se registra en un letrero honesto (CHZ), describe el producto en el catálogo nacional o GS1 y recibe los GTIN del producto. En el sitio web del signo honesto, estos pasos se describen en detalle, por lo que no nos detendremos en ellos.

Ordenar y recibir códigos

Después de recibir los GTIN, el participante (UOT) realiza un pedido de códigos (KM) en el sistema CPS.
Importante, pero no obvio.

  1. Puede solicitar códigos de hasta 10 GTIN por pedido. En principio, una limitación incomprensible. Un importador con 14 GTIN tiene que crear 000 pedidos.
  2. Se pueden solicitar un máximo de 150 códigos en un pedido.
  3. Hay un límite de 100 órdenes en el trabajo. Es decir, no se pueden procesar más de 100 pedidos al mismo tiempo. Si hay más de 100, la API comenzará a devolver un error en lugar de una lista de pedidos. La única forma de corregir este error es cerrar algunos de los pedidos a través de la interfaz web. La API no proporciona un parámetro para mostrar parcialmente los pedidos.
  4. Hay un límite en el número de solicitudes: no más de 10 solicitudes por segundo. Según mis datos, esta restricción no aparece en los documentos, pero existe.

De la experiencia personal con los pedidos de códigos de marcado de KM a través de la API de CMS.

  1. La solicitud (json en sí) debe estar firmada con una firma GOST. Esto es trabajo con cryptopro. Debemos vigilar cuidadosamente que el framework o librería utilizada no cambie el json original ni por un solo byte. De lo contrario, la firma deja de ser válida inmediatamente.
  2. Firma del pedido. El pedido puede ser firmado por cualquier firma de cualquier cliente. Si la firma es válida, el sistema KMS la aceptará. Durante la integración, fue posible firmar la solicitud con la firma de otra persona emitida en la CA de prueba. El circuito de combate de la CPS procesó la orden y liberó los códigos. En mi opinión, esto es un agujero de seguridad. Los desarrolladores reaccionaron al informe de error "ya veremos". Espero que se haya arreglado.

    Por lo tanto, tenga mucho cuidado si más de una entidad legal trabaja en un lugar de trabajo. caras. Hoy, el CPS aceptará estas solicitudes, y mañana se volverán a verificar las solicitudes y se retirará la mitad de los códigos debido a la firma de otra persona. Y en principio, formalmente tendrán razón.

  3. La firma automática de pedidos es una funcionalidad que ya no está disponible en el CMS. Para su funcionamiento se requería cargar la parte privada de la clave en la cuenta personal del signo honesto. Este es un compromiso clave. Y de acuerdo con la legislación vigente, en caso de compromiso de una firma electrónica cualificada mejorada, el titular debe informar a su centro de certificación (CA) y revocar la UKES. Si se devuelve esta funcionalidad, asegúrese cuidadosamente de que la parte privada de la clave no salga de la computadora.
  4. En febrero, el Centro para el Desarrollo de Tecnologías Avanzadas (CRPT) introdujo silenciosamente un límite en la cantidad de solicitudes a la API de KMS. No más de una solicitud por segundo. Luego, de forma igualmente inesperada y silenciosa, levantó esta restricción. Por lo tanto, recomiendo poner en el sistema la capacidad de limitar la cantidad de solicitudes a la API CRPT en caso de una recaída. Ahora hay información sobre el límite de 10 solicitudes por segundo.
  5. También en febrero, sin previo aviso, el comportamiento de la API de KMS cambió significativamente. La API tiene una solicitud para obtener el estado de los pedidos. El estado indicaba los búferes y su estado. Un GTIN = un búfer. También indicó cuántos códigos están disponibles para recibir del búfer. Un buen día, todos los búfer tenían un recuento de -1. Tuve que consultar el estado de cada búfer por separado a través de un método separado. En lugar de una solicitud, tuve que hacer once.

Estructura de códigos

Así, los códigos se ordenan y generan. Se pueden recoger a través de api en forma de texto, en pdf como etiquetas para imprimir y como archivo csv con texto.

La API ya se ha escrito anteriormente. En cuanto a las otras dos formas. Inicialmente, el CPS permitía recoger los códigos una sola vez. Y si se tomó un archivo pdf, entonces fue posible obtener los códigos en forma de texto solo volviendo a escanear todas las matrices de datos del pdf. Afortunadamente, agregaron la capacidad de recoger códigos varias veces y este problema se resolvió. Dentro de dos días, los códigos todavía están disponibles para volver a descargarlos.

Si recoge en formato csv, nunca, bajo ninguna circunstancia, lo abra en Excel. Y no dejes que nadie. Excel tiene una función de guardado automático. A la hora de guardar, Excel puede modificar tus códigos de la forma más impredecible. Recomiendo usar notepad++ para ver los códigos.

Si abre un archivo desde el CMS en el bloc de notas ++, puede ver líneas como esta. El tercer código no es válido (no tiene delimitadores GS).

DataMatrix o cómo etiquetar correctamente los zapatos

Los socios nos dieron códigos para marcar sus productos. A simple vista, puede ver qué archivos se generaron con Excel: hasta el 5 % de los códigos no eran válidos.

Recomiendo encarecidamente leer sobre normas GS1. La descripción del estándar contiene respuestas a muchas preguntas sobre la formación de DataMatrix.

El código de identificación consta del GTIN y el número de serie. Según el estándar GS1, corresponden a los identificadores de aplicación (UI) 01 y 21. Tenga en cuenta que los identificadores de aplicación no forman parte del GTIN ni del número de serie. Indican que el Identificador de aplicación (UI) va seguido del GTIN o número de serie. Esto es especialmente importante al programar el software POS. Para completar la etiqueta 1162, necesita exactamente el GTIN y el número de serie, sin identificadores de aplicación.

Para UTD (documento de transferencia universal) y otros documentos, por el contrario, la mayoría de las veces se necesita un registro completo con identificadores de la aplicación.

DataMatrix o cómo etiquetar correctamente los zapatos

El estándar GS1 establece que el GTIN tiene una longitud fija de 14 caracteres y solo puede consistir en números. El número de serie es de longitud variable y se describe en la página 155 de la norma. También hay un enlace a una tabla con símbolos que se pueden encontrar en el número de serie.

Dado que el número de serie tiene una longitud variable, el separador GS indica su terminación. En la tabla ASCII, tiene el código 29. Sin este separador, ningún programa entenderá en qué punto terminó el número de serie y comenzaron otros grupos de datos.

Se pueden encontrar más detalles sobre el código de marcado (KM) en documentación oficial.

Para los zapatos, el número de serie se fija en 13 caracteres, sin embargo, su tamaño se puede cambiar en cualquier momento. Para otros grupos de productos (TG), la longitud del número de serie puede variar.

Generación de matriz de datos

DataMatrix o cómo etiquetar correctamente los zapatos

El siguiente paso es convertir los datos en código DataMatrix. El Decreto del Gobierno de la Federación Rusa 860 especifica GOST, según el cual es necesario formar un DataMatrix. Además, PPR 860 especifica el uso obligatorio de identificadores de aplicación. Tenga en cuenta que no existe el concepto de "identificadores de aplicación" en el estándar DataMatrix. Solo están en el estándar GS-1 DataMatrix. Resulta que PPR 860 requiere implícitamente el uso de GS-1 DataMatrix. Afortunadamente, los estándares son similares. Diferencia principal: en GS-1 DataMatrix, el primer carácter debe ser FNC1. El símbolo GS no tiene que aparecer primero en DataMatrix, solo FNC1.

FNC1 no puede simplemente tomarse y agregarse a la línea como GS. Debe ser agregado por el programa que genera el DataMatrix. Varios aplicaciones móviles, con el que puede comprobar la corrección de los códigos DataMatrix generados.

Importante. La aplicación de signo honesto acepta DataMatrix no válido. Incluso códigos QR. El hecho de que se reconozca la marca y se muestre información del producto no significa que el DataMatrix esté formado correctamente. Incluso cuando se reemplazó la cola criptográfica, la aplicación CZ reconoció la marca y mostró los datos del producto.

Más tarde CZ lanzado explicacióncómo generar códigos correctamente. Debido a la gran cantidad de códigos de error, reconocieron como válidos los códigos sin FNC1, pero, sin embargo, recomiendan generar un GS-1 DataMatrix.

Desafortunadamente, un porcentaje bastante grande de las matrices de datos de los socios venía con errores. Gracias a las aclaraciones de CZ, la pregunta "¿Es posible comercializar dicho producto después del 1 de julio o no?" se resolvió por completo. Spoiler: puedes.

impresión

Preste atención a la forma en que se imprimen los sellos. Cuando se imprime en una impresora térmica, el sello se desvanece rápidamente y este producto ya no se puede vender. Un sello ilegible es una violación de PPR 860. Lo que conduce a la incautación de bienes, multas y responsabilidad penal.

Utiliza la impresión por transferencia térmica. En este caso, el sello no es tan propenso a desvanecerse. El material de la etiqueta también determina qué tan susceptible es la marca al daño mecánico. Si el código no es legible debido a daños mecánicos, esto equivale a la ausencia de una marca con todas las consecuencias que ello conlleva.

DataMatrix o cómo etiquetar correctamente los zapatos

Elija una impresora de los volúmenes de impresión planificados. Las impresoras de escritorio no están diseñadas para imprimir 100 000 etiquetas al día.

Detener e iniciar la impresión aumenta el desgaste de la impresora. Algunos programas envían el trabajo de impresión una etiqueta a la vez. Es mejor no usar tales programas.

Trabajar con documentos

Después de imprimir y pegar los sellos, todas las operaciones posteriores con ellos se realizan a través de documentos o una cuenta personal de una marca honesta.

Cuando trabaje con una gran cantidad de códigos, puede crear archivos xml que contengan los códigos necesarios y cargar estos archivos a través de la API o la interfaz web de su cuenta personal.

El esquema XSD se puede descargar en la sección de "ayuda" de LC CZ.

Presta atención a los siguientes puntos.

  1. Los esquemas Xsd en la LC CZ contienen errores en la validación del TIN y restricciones en la longitud de la línea. Solo corrigiendo errores, puede usar los esquemas. Afortunadamente, los errores son obvios, por lo que no es difícil hacerlo.
  2. El esquema generalmente consta de dos partes: común para todos los tipos de documentos y separada para un tipo específico. El esquema general se añade vía import al específico. Ambos esquemas se encuentran en la sección de ayuda en el LC ChZ.
  3. Las reglas de escape para CM difieren de las generalmente aceptadas para XML, esto está escrito en la documentación oficial de CZ, preste atención a esto. Aquí aquí en la página 4 todas las reglas.
  4. No debe intentar ingresar 150 códigos en circulación en un archivo. Según testigos presenciales, normalmente se tramitan más de 000 expedientes.
  5. Un archivo Xml se puede empaquetar con un error "error de validación xml", y cinco minutos después se acepta el mismo archivo sin problemas.
  6. Si el archivo contiene un código que ya se ha puesto en circulación, lo más probable es que no se acepte el archivo puesto en circulación.
  7. Los documentos de envío y recepción se utilizan como una solución temporal. En el futuro, planean abolirlos y cambiar a UPD de acuerdo con PPR 860.
  8. Mito sobre los 60 días. Existe la opinión de que los códigos que no se ponen en circulación se "queman" después de 60 días. Esto es un mito, fuente desconocida. Los códigos se "queman" solo si no los ha recopilado del CPS dentro de los 60 días. La vida útil de los códigos recopilados no está limitada.

Conclusión

Al desarrollar mi aplicación de etiquetado gratuita BarCodesFX, inicialmente se realizó la integración con la API de KMS. Cuando una señal honesta por segunda vez cambió inesperadamente la lógica de la API, se tuvo que abandonar la integración. Espero que en el futuro la CZ pueda estabilizar el desarrollo y la API, porque. para un producto no comercial, es muy costoso para mí verificar dos veces todos los días si ha habido cambios en la API y refinarla rápidamente.

Al implementar la marca, lea atentamente la documentación reglamentaria para su grupo de productos TG, imprima correctamente el GS1-DataMatrix y esté preparado para cualquier cambio imprevisto de la marca CZ justa.

Fort Alliance ha creado un espacio de información (wiki, chats telegram, seminarios, webinars), donde podrá encontrar información útil y actualizada sobre el etiquetado en todas las industrias.

Fuente: habr.com

Añadir un comentario