Location (ubicazione organizzativa)
La Location è un contenitore generico nell’area organizzazione/geografia: modella un punto operativo dell’azienda la cui natura concreta è indicata da kind. Non sostituisce il documento Country (livello nazionale e regole macro) né l’Address (dettaglio stradale); li compone tramite riferimenti (countryId, addressId) e attributi operativi (codice, fuso orario, stato, tag).
Ruolo rispetto a siti, uffici e magazzini
Lo stesso schema JSON serve per più concetti di business, discriminati da kind:
Valore tipico di kind | Ruolo |
|---|---|
site | Sito produttivo, stabilimento o campus: spesso con struttura gerarchica (parentLocationId) |
office | Sede amministrativa o commerciale: fatturazione, presenza locale, orari d’ufficio |
warehouse | Magazzino o hub logistico: inventario, spedizioni, ricezioni (come nel campione) |
Altri valori (store, datacenter, branch, …) possono essere introdotti per convenzione del tenant o del connettore, purché la mappatura verso il sistema di destinazione sia coerente.
In sintesi: una Location è il record “dove lavoriamo / dove stocchiamo”; Site, Office e Warehouse sono tipi di location, non tre entità JSON separate.
Esempio JSON completo
{
"id": "loc_wh_MIL01",
"channel": "demoipaas",
"createdAt": "2026-01-03T08:00:00+00:00",
"updatedAt": "2026-02-10T14:30:00+00:00",
"kind": "warehouse",
"code": "MIL01",
"name": "Magazzino Milano Nord",
"description": "Hub logistico regione nord",
"organizationId": "org_acme_holding",
"parentLocationId": null,
"addressId": "addr_9Qw2Rt5Yu8Za1",
"countryId": "country_IT",
"timezone": "Europe/Rome",
"status": "active",
"tags": ["primary-fulfillment", "b2b"],
"attributes": {
"dockDoors": 6,
"surfaceSqm": 4200
}
}
Note
organizationIdlega la location a un contesto aziendale (holding, società, tenant); il formato dipende dal prodotto integrato.parentLocationIdsupporta alberi (es. paese → regione → stabilimento → linea) dove il connettore lo prevede;nullper radice.attributesè un oggetto estensibile per metriche specifiche (metri quadri, banchine, orari); evitare di mescolare qui dati che sono già campi di prima classe in ERP/WMS se il connettore li espone separatamente.