Codificación de ubicaciones en almacén: cómo diseñar el código

Ha decidido codificar el almacén. Puede que se mude a una nave nueva, o que haya comprado lectores y el proveedor le haya dicho que primero deben existir las ubicaciones. Entonces busca información y encuentra dos cosas: proveedores de estanterías explicando materiales de etiqueta y consultas en foros sobre cómo montar la codificación que nadie respondió. Del código en sí no habla nadie. Y ahí está el trabajo: cuántos segmentos, cuántos dígitos lleva cada uno, qué caracteres no va a usar y si el esquema aguanta el día en que aparezca un pasillo nuevo. Este artículo va decisión por decisión.

La tesis en una línea: un código de ubicación no es una cuestión de gusto al nombrar, es una herramienta con dos trabajos: ordenarse correctamente en una pantalla y poder decirse en voz alta entre dos personas sin que se entienda mal. El criterio también cabe en una frase: si alguien que nunca ha pisado el almacén lee el código y no sabe adónde ir, el código ha fallado.

Qué resuelve una ubicación: no “dónde está el producto” sino “adónde voy”

Su registro de existencias ya responde a una pregunta: cuánto tiene. La ubicación responde a otra: dónde está físicamente esa mercancía. No son lo mismo y ninguna sustituye a la otra. Es perfectamente posible un almacén con la cantidad correcta en el sistema y en el que nadie encuentra el material; ese hueco es justo la razón de ser de las ubicaciones.

Por eso el verdadero cliente de un esquema de ubicaciones no es una pantalla de informes, sino la persona que camina por el almacén. Para ella el código es una indicación de ruta: hacia dónde ir, en qué pasillo girar y a qué altura levantar la vista. Para juzgar si un código es bueno hay que mirar ese recorrido, no la base de datos.

La segunda distinción importa aún más: la ubicación identifica el sitio, no la mercancía. La mercancía se mueve; el hueco se queda. Un hueco conserva su código con independencia de lo que haya hoy dentro, y cuando se vacía el código no se borra: pasa a ser una ubicación vacía. Esto sostiene todo lo que viene después, porque si el código pertenece al sitio, cambiarlo no es reetiquetar existencias sino reetiquetar el edificio. Cómo se usa esa indicación de ruta en el paso siguiente, es decir, el documento que dice qué mercancía sacar de dónde, lo tratamos aparte: la lista de preparación.

Anatomía del código: zona, pasillo, estantería, nivel y hueco

Un código de ubicación se compone de segmentos y sobre su orden hay una sola regla: de lo general a lo concreto. Primero la zona, luego el pasillo, luego la estantería, luego el nivel y al final el hueco. La razón no es estética: un código construido de lo general a lo concreto, ordenado alfanuméricamente, cae en el mismo orden que la nave física. Una lista ordenada es el orden de recorrido. Constrúyalo al revés —el nivel antes que el pasillo— y el orden deja de parecerse al almacén, con lo que cada pantalla tiene que reordenar la lista otra vez.

Cuántos segmentos necesita depende de la nave. En un almacén pequeño de una sola sala, pasillo–estantería–nivel suele bastar; el segmento de zona solo se gana su sitio cuando hay más de una sala, un altillo o una cámara aparte. Ojo con la tentación: montar cinco segmentos desde el principio “por si acaso” alarga el código, complica decirlo por radio y carga más caracteres en cada etiqueta. Pero lo contrario tampoco sale gratis: añadir un segmento después casi nunca es indoloro, porque las direcciones antiguas y las nuevas conviven en la misma lista. Decida pensando en el almacén más grande al que pueda crecer sin mudarse, no en el de hoy.

El separador también se decide aquí: ¿va un guion entre segmentos, un punto o nada? Las tres opciones funcionan y las tres tienen defensa; lo único que es regla es la coherencia. Si elige separador, tiene que ser el mismo en cada dirección, en cada etiqueta y en cada exportación. El motivo es práctico: el texto tecleado en un buscador y el texto que llega en un fichero de importación se comparan carácter a carácter, así que un guion aquí y un espacio allá producen dos direcciones que significan el mismo hueco y que, para el sistema, son distintas.

Los segmentos de un código de ubicación de lo general a lo concreto: zona, pasillo, estantería, nivel y hueco, cada uno con ancho fijo de dígitos
Los segmentos van de lo general a lo concreto, de modo que una lista ordenada coincide con el orden de recorrido.

¿Existe una norma para esto? Qué es el GLN y si le hace falta

La respuesta directa: el código de hueco dentro de su almacén es suyo. Ninguna norma obligatoria dicta cómo construirlo; no hay que solicitar números ni registrarlo en ninguna parte. La confusión suele venir del GLN de GS1 (Global Location Number), pero el GLN resuelve otro problema: identifica un sitio ante sus socios comerciales. Es una clave que habla hacia fuera, no un esquema para nombrar sus propias estanterías.

GS1 lo dice en su propio material de soporte: “A GLN can be physically marked with a barcode at a location, for example on a dock door or on a storage location”, es decir, un GLN puede marcarse físicamente con un código de barras en un sitio, por ejemplo en una puerta de muelle o en una ubicación de almacenamiento. El identificador de aplicación que se usa para eso es el AI (414), y el AI (414) es libre solo para el marcado de lugares (portal de soporte de GS1). Para una sububicación dentro de un lugar existe otro identificador: el AI (254), GLN Extension Component, con formato n3+x..20, que se usa siempre junto con el AI (414) (GS1 Dinamarca, lista de identificadores de aplicación).

Consecuencia práctica: monte su código dentro, sin pedir permiso a nadie. Al GLN se mira solo cuando hay que hablar hacia fuera, por ejemplo cuando un cliente pide identificar los puntos de entrega con un número que su sistema ya conoce. Y ese día su esquema interno no tiene por qué cambiar: el GLN es una capa aparte que mira hacia fuera.

Ancho de dígitos y ceros a la izquierda: la decisión que rompe el orden

Aquí es donde el artículo se paga solo. La mayoría del software ordena una dirección como texto, no como número, y la comparación de texto va de izquierda a derecha, carácter a carácter. La consecuencia: A10 va antes que A2, porque en el segundo carácter se compara 1 con 2 y gana el 1. El día en que sus pasillos pasen de nueve, la lista ordenada deja de ser el orden del almacén, y nadie lo anuncia: la lista simplemente se vuelve silenciosamente incorrecta.

El ancho fijo de dígitos lo resuelve por sí solo. Como A02 y A10 tienen la misma longitud, el orden de texto coincide con el numérico. Cuántos dígitos hacen falta es aritmética: dos dígitos dan el rango 0199 y tres dígitos el rango 001999. La regla es simple y se aplica una sola vez: el ancho de cada segmento se elige al principio y no vuelve a cambiar.

¿Por qué nunca más? Porque añadir un dígito cambia la dirección en sí: A02 y A002 son dos cadenas distintas. El cambio no afecta solo a las etiquetas, sino a todos los registros que llevan esa dirección, a los ficheros ya exportados y a cualquier correspondencia de integración construida encima. Por eso el criterio no es el número de pasillos de hoy sino su margen: use dos dígitos aunque tenga seis pasillos, porque el coste del segundo dígito es un carácter y el coste de una tercera fila de pasillos más adelante es reetiquetar la nave.

Caracteres ambiguos: el código se dice por radio y se escribe a mano

Un código de ubicación tiene dos legibilidades y ambas condicionan el diseño. La primera es visual: impresos y a mano, 0 y O, 1 e I y l, 5 y S, 8 y B, 2 y Z se parecen. La segunda es oral: dicho por radio o a voces en una nave, la B no se distingue de la P ni de la D, ni la M de la N.

La consecuencia práctica llega en dos pasos. Primero, saque de la lista uno de cada par confundible: si va a usar dígitos, no use nunca las letras O, I, S y B. Segundo, confine las letras a un solo segmento: normalmente la zona o el pasillo llevan letra y todo lo demás va en cifras. Así la superficie confundible baja de todo el código a un único carácter, y para ese carácter puede dejar un alfabeto oral corto colgado en la pared.

Dos conjuntos de caracteres se quedan fuera del código por completo. El primero son las tildes y la eñe. El motivo no es lingüístico sino el fallo silencioso: un cambio de distribución de teclado convierte una letra en otra, las simbologías de código de barras no siempre transportan esos caracteres y un fichero abierto con la codificación equivocada deja la dirección ilegible, sin mensaje de error en ninguna fase. El segundo son los espacios y la puntuación: espacio, barra, contrabarra y almohadilla pertenecen a la misma clase de problema, cada uno con su efecto secundario en búsquedas, nombres de fichero e importaciones. Limite el código a mayúsculas, cifras y el único separador que haya elegido.

Mayúsculas, minúsculas y la trampa de copiar y pegar

¿Es a01 la misma dirección que A01? Dentro de su sistema probablemente se comporte así, porque la mayoría de las búsquedas ignora las mayúsculas. En el intercambio de ficheros esa garantía desaparece: allí donde una de las partes distingue mayúsculas, las dos direcciones se separan y la coincidencia falla en silencio. La solución no merece debate: elija una sola forma —mayúsculas— e imprímala así en la etiqueta, guárdela así en el registro y expórtela así.

El segundo aviso de esta sección es una trampa de formato: si pega una lista de ubicaciones en una hoja de cálculo sin marcar la columna como texto, 01 se convierte en 1 sin avisar, el cero a la izquierda desaparece y el ancho fijo que acaba de diseñar se rompe en media lista.

Sentido de numeración: por qué extremo empezar y cómo usar pares e impares

Las tres decisiones de esta sección son preferencias, no reglas. Nadie puede decirle dónde debe empezar la numeración de pasillos; lo único que se puede afirmar es que la decisión tiene que estar tomada y tiene que poder explicarse.

  • Por qué extremo empieza la numeración. El planteamiento habitual es anclarla en el muelle de expedición, porque es la referencia que todo el mundo comparte: decirle a alguien nuevo que se ponga de espaldas al muelle es más fácil que describirle el norte.
  • Los dos lados del pasillo. Un planteamiento habitual es dar impares a un lado y pares al otro, de modo que el número de estantería ya diga a qué lado se está mirando. No es una norma, es una costumbre que se asentó porque funciona: marcar un lado como A y el otro como B hace lo mismo.
  • Sentido entre pasillos. Dos opciones: todos los pasillos empiezan por el mismo extremo, o la numeración va en serpentina, un pasillo en un sentido y el siguiente al revés. Se usan las dos y la elección depende de la geometría de la nave; aquí no hay ninguna fuente que diga que una sea más rápida, solo preferencias.

Para cerrar: el valor de la decisión de sentido no está en la velocidad sino en que se pueda explicar. El criterio para defender cualquiera de estas opciones es este: ¿alguien que está por primera vez en la puerta puede leer el código que lleva en la mano y deducir hacia dónde girar? Si sí, la decisión es correcta; si no, da igual qué disposición haya elegido.

La etiqueta de ubicación: qué pone, qué código y dónde va

Primera decisión: el código se imprime también en forma legible por una persona. Una etiqueta de ubicación que sea solo código de barras detiene el almacén el día en que un lector se rompe o se queda sin batería; la forma legible a simple vista es el único respaldo que sigue funcionando cuando el sistema no. Por el mismo motivo, si el símbolo queda en un ángulo al que el lector no llega, el texto tiene que seguir siendo legible.

Segunda decisión: la simbología del código de barras. Un código de ubicación es corto —unas letras y unas cifras—, así que la capacidad de datos no es lo que decide; lo que decide es el juego de caracteres de su código y qué admiten sus lectores. La discusión sobre capacidad corresponde al lado de la etiqueta de caja y la tratamos aparte: qué campos lleva la etiqueta de caja.

Las dos simbologías que más se ven en un almacén tienen cada una su norma publicada, y eso se comprueba en una ficha de catálogo, no en un folleto comercial. Code 128 está especificado por ISO/IEC 15417 —“Code 128 bar code symbology specification”—, que fija las características de la simbología, la codificación de datos, las dimensiones y el algoritmo de decodificación; la edición nacional vigente es SS-ISO/IEC 15417:2024 (ficha de catálogo). Code 39 está especificado por ISO/IEC 16388:2023 —“Code 39 bar code symbology specification”—, que cubre características de la simbología, codificación de datos, dimensiones y tolerancias y el algoritmo de decodificación (ficha de catálogo).

La tercera decisión tiene que ver con la altura y la distancia. Las etiquetas de los niveles bajos se leen a la distancia del brazo; las de los niveles altos casi siempre hay que leerlas desde abajo, desde el asiento de la carretilla o desde el suelo. La relación es sencilla y no necesita cifras: a mayor distancia de lectura, mayor tiene que ser el módulo del código, y cuanto mayor es el módulo, mayor es la etiqueta. Las etiquetas de los niveles altos no pueden ser iguales que las de los bajos. El tamaño correcto se encuentra probando con su propio lector a la altura real, no leyendo un catálogo.

Dónde va la etiqueta se deduce de la propia definición de ubicación: la etiqueta pertenece al sitio que nombra, no a la mercancía. Cuando la mercancía sale, la etiqueta se queda. Parece obvio, pero el error más frecuente en la práctica es pegar la etiqueta en el palé o en la caja, con lo que la ubicación se marcha junto con el material.

La etiqueta de ubicación no es la placa de carga de la estantería

En una estantería cuelgan dos cosas distintas y no conviene confundirlas. La etiqueta de ubicación es una identidad: responde a “dónde estoy”, se corresponde con un registro del sistema y es de lo que trata este artículo. La placa de carga es información de seguridad: pertenece a la propia estantería, viene del proveedor de la estantería y se coloca con otra finalidad. Ninguna sustituye a la otra; imprimir su dirección sobre la placa de carga, o fundir ambas en una sola etiqueta, debilita las dos.

La aplicación y el mantenimiento de los sistemas de almacenaje metálicos son objeto de una norma europea aparte: EN 15635 — “Steel static storage systems — Application and maintenance of storage equipment” (ficha de catálogo). Aquí decimos que la norma existe y cómo se titula, y paramos ahí: no trasladamos su contenido, porque el texto es de pago y los resúmenes que circulan por internet no coinciden entre sí. Para seguridad de estanterías, inspecciones y responsabilidades, los interlocutores correctos son su proveedor de estanterías y sus propias obligaciones de prevención, no este artículo.

Cuando cambia el almacén: pasillos nuevos, estanterías desmontadas y crecer sin romper el código

La pregunta con la que se topa todo el mundo al montar un esquema por primera vez: si añado un pasillo en medio, ¿tengo que reetiquetarlo todo? La respuesta depende de tres decisiones que se toman al diseñar el código, y se toman al principio, no después.

  1. Deje huecos desde el principio. Numerar los pasillos 02, 04, 06 en lugar de 01, 02, 03 deja un número libre para cada pasillo que pueda intercalarse más adelante. Un número sin usar no cuesta nada, y llamar 03 a un pasillo intercalado tampoco, comparado con desplazar todos los pasillos posteriores.
  2. Margen de dígitos. La decisión de ancho de dígitos de más arriba se cobra justo aquí: una serie de pasillos abierta con dos dígitos crece hasta el noventa y nueve sin romperse. Abierta con un dígito, en el pasillo diez pierde a la vez el orden y las etiquetas.
  3. No reutilice un hueco desmontado. Cuando se desmonta un tramo de estantería resulta tentador dar su código a otro sitio: el número está libre. Pero ese código sigue apuntando al sitio antiguo en un año de recuentos, de historial de movimientos y de ficheros exportados. Reciclarlo no reescribe el pasado, solo lo convierte en mentira.

El tercer punto merece énfasis, porque es el que más se salta: un código de ubicación también es un dato histórico. No basta con que sea correcto para la lista de hoy: un recuento de ayer, un ajuste del mes pasado y un fichero exportado hace un año tienen que leer ese código como el mismo sitio. Retirar un código que ha quedado vacío no es desperdiciar un número, es la forma de mantener honesto el registro.

Seis decisiones que rompen un código de ubicación: ancho de dígitos, caracteres ambiguos, tildes y eñes, sentido de numeración, margen de crecimiento y reutilización del código
Las seis se deciden al principio; ninguna sale barata una vez montada la estantería.

¿Dónde vive la ubicación: en la etiqueta o en el registro?

Diseñó el código, lo imprimió y lo colgó. ¿Y después? La tesis de esta sección: una ubicación impresa en una etiqueta y sin contrapartida en ningún registro no es una ubicación, es una palabra escrita en la pared. Para que una ubicación sirva de algo, tres cosas tienen que estar en el mismo sitio: el código, qué hay en él y cuándo y quién lo actualizó por última vez. Sin las tres no ha montado un almacén con ubicaciones, solo ha puesto nombre a las estanterías.

Por qué una hoja de cálculo no puede sostener esas tres cosas a la vez lo tratamos en otro artículo: por qué Excel se queda corto para el seguimiento de envíos.

Aquí toca ser honestos, porque este artículo no tiene ningún módulo que vender: Smartifie Logistic no tiene módulo de estanterías ni de ubicaciones. No hay campo de código de ubicación, ni impresión de etiquetas de ubicación, ni stock por ubicación, ni paso de colocación, ni definición de pasillos o estanterías. El registro de Sucursal de la aplicación es una sucursal de la empresa, no una ubicación de almacén: intentar usarlo como hueco o como estantería rompe todo lo que explica este artículo.

El eslabón que sí cubre la aplicación está más adelante: pedido → orden de envío → lectura durante la carga → etiqueta de caja → lista de embalaje y documento de expedición. Un esquema de ubicaciones va antes de esa cadena y se monta en su ERP o en su sistema de gestión de almacén. La intención de este artículo nunca fue tomar esa decisión por usted, solo facilitar el diseño del código. Si quiere ver el siguiente eslabón de la cadena: el control de carga con lectura de códigos.

El cierre vuelve al criterio con el que empezó el artículo. Cuando termine su código, póngalo a prueba: dele una sola dirección a alguien que nunca haya pisado el almacén y pregúntele adónde iría. Si no sabe responder, los segmentos están en el orden equivocado, los anchos de dígitos son incoherentes o el código es demasiado ambiguo para decirlo en voz alta. Si sabe responder, el código está listo, y lo que queda es asegurarse de que esa dirección vive de verdad en un registro.

Descubra Smartifie Logistic