Capitulo 3: GLN y SSCC — Identificar Lugares y Unidades Logisticas
GLN — Global Location Number
El GLN es un numero de 13 digitos que identifica de forma unica una ubicacion fisica o una entidad legal dentro de la cadena de suministro.
Estructura
┌─────────────────────┬───────────────────────┬─────────────┐
│ Prefijo empresa GS1 │ Ref. de localizacion │ Digito ctrl │
│ 7-10 digitos │ 2-5 digitos │ 1 digito │
└─────────────────────┴───────────────────────┴─────────────┘
Total: 13 digitos
El digito de control se calcula con el mismo algoritmo Modulo-10 del GTIN.
Que puede identificar un GLN
Un GLN no solo identifica edificios. Puede representar distintos niveles de granularidad:
| Nivel | Ejemplo | GLN |
|---|---|---|
| Entidad legal | Empresa “Distribuidora ABC S.A.” | 0614141000001 |
| Ubicacion fisica | Deposito central en Madrid | 0614141073467 |
| Sub-ubicacion | Muelle de carga #3 del deposito | 0614141073474 |
| Punto de funcion | Linea de produccion A | 0614141073481 |
URN del GLN (formato EPC)
En sistemas EPCIS, el GLN se expresa como URN:
urn:epc:id:sgln:0614141.07346.0
Donde:
0614141es el prefijo de empresa GS107346es la referencia de localizacion0es la extension (0 para la ubicacion principal, otros valores para sub-ubicaciones)
Usos del GLN
- Ship From / Ship To: en documentos EDI y etiquetas logisticas, el GLN indica origen y destino
- AI (410): GLN del destinatario en codigos GS1-128
- AI (414): GLN de ubicacion fisica
- Maestro de ubicaciones: los WMS (Warehouse Management Systems) usan GLN como clave primaria de cada ubicacion
- EPCIS: cada evento requiere un
bizLocation(donde ocurrio) expresado como GLN
SSCC — Serial Shipping Container Code
El SSCC es un numero de 18 digitos que identifica de forma unica cada unidad logistica individual: un pallet, una caja de transporte, un contenedor.
La diferencia clave con el GTIN es que el SSCC identifica una instancia fisica especifica, no un tipo de producto. Dos pallets identicos con el mismo contenido tienen SSCCs diferentes.
Estructura
┌───────────┬─────────────────────┬──────────────────────┬─────────────┐
│ Extension │ Prefijo empresa GS1 │ Ref. de contenedor │ Digito ctrl │
│ 1 digito │ 7-10 digitos │ 6-9 digitos │ 1 digito │
└───────────┴─────────────────────┴──────────────────────┴─────────────┘
Total: 18 digitos
- Digito de extension (1 digito): valor de 0 a 9, permite al fabricante ampliar el rango de SSCCs disponibles
- Prefijo empresa GS1: mismo prefijo usado para GTINs y GLNs
- Referencia de contenedor: numero secuencial asignado por la empresa
- Digito de control: Modulo-10
Ejemplo desglosado
SSCC: 306141410000000012
3 → Digito de extension
0614141 → Prefijo empresa GS1
000000001→ Referencia de contenedor (secuencial)
2 → Digito de control
URN del SSCC (formato EPC)
urn:epc:id:sscc:0614141.3000000001
Ciclo de vida de un SSCC
- Creacion: el fabricante arma un pallet, le asigna un SSCC unico y lo imprime en una etiqueta GS1-128
- Despacho: al salir del deposito, se escanea el SSCC y se registra un evento EPCIS de tipo
shipping - Transporte: el transportista puede escanear el SSCC en cada punto de control
- Recepcion: el destinatario escanea el SSCC al recibirlo y lo valida contra el aviso de despacho (ASN)
- Desconsolidacion: cuando se desarma el pallet, el SSCC deja de ser relevante
Un SSCC nunca debe reutilizarse. Cada unidad logistica nueva recibe un SSCC nuevo.
SSCC en la etiqueta logistica
El SSCC aparece en la zona inferior de la etiqueta logistica GS1, codificado con AI (00):
(00)306141410000000012
GLN vs SSCC: la diferencia clave
| Aspecto | GLN | SSCC |
|---|---|---|
| Identifica | Ubicaciones y entidades | Unidades logisticas individuales |
| Digitos | 13 | 18 |
| Permanencia | Fijo (mientras exista la ubicacion) | Temporal (vida util del pallet) |
| Pregunta que responde | DONDE esta algo | QUE se esta moviendo |
| Ejemplo | ”Deposito central Madrid" | "Pallet #000000001 armado hoy” |
| Application Identifier | (410), (414) | (00) |
Codigo: generar un SSCC
function generarSSCC(
extension: number,
prefijoEmpresa: string,
secuencial: number
): string {
const refLength = 16 - prefijoEmpresa.length;
const ref = secuencial.toString().padStart(refLength, '0');
const sinControl = `${extension}${prefijoEmpresa}${ref}`;
// Modulo-10 (misma funcion del capitulo anterior)
const nums = sinControl.split('').map(Number);
const sum = nums.reduce((acc, d, i) => {
const weight = (18 - i) % 2 === 0 ? 1 : 3;
return acc + d * weight;
}, 0);
const checkDigit = (10 - (sum % 10)) % 10;
return `${sinControl}${checkDigit}`;
}
console.log(generarSSCC(3, '0614141', 1));
// "306141410000000012"
Ya sabemos identificar productos (GTIN), lugares (GLN) y unidades logisticas (SSCC). En el siguiente capitulo veremos como estos identificadores se combinan dentro de un codigo de barras usando Application Identifiers.