Spedizioni
In questa sezione viene illustrato come creare e gestire ordini di spedizione sulla piattaforma.
Gli ordini di spedizione su GEL Proximity sono spedizioni che hanno come punto di partenza un magazzino del Merchant e come punto di destinazione un Punto di Ritiro appartenente ad una Rete o al Merchant stesso. È possibile gestire e monitorare gli ordini di spedizione associati al Merchant in qualsiasi momento accedendo al pannello di amministrazione.
Per utilizzare le API presenti in questa guida è necessario essere autenticati alla piattaforma. Per maggiori informazioni consultare la sezione Autenticazione.
Permette di creare un nuovo ordine di spedizione associato al Merchant autenticato sulla piattaforma GEL Proximity.
La richiesta di creazione di un ordine di spedizione è asincrona: prima dell’avvenuta importazione dell’ordine non sarà possibile effettuare azioni sull’ordine creato. Per maggiori informazioni sul funzionamento visitare la sezione Caratteristiche di Sistema.
Endpoint | gel-api-server/api/merchant/shipment/create |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
customer |
string |
Si | – | Nome completo dell’utente |
customerEmail |
string |
Si | – | Email dell’utente |
customerPhone |
string |
Si | – | Numero di telefono dell’utente |
orderNumber |
string |
Si | – | Numero dell’ordine |
orderNumberRif |
string |
Si | – | Valorizzare come il parametro orderNumber |
reference |
string |
Si | – | Riferimento univoco dell’ordine |
orderDate |
string |
Si | – | Data dell’ordine in formato yyyyMMdd |
description |
string |
Si | – | Descrizione dell’ordine |
notes |
string |
No | – | Note dell’ordine |
codePickupPoint |
string |
Si | – | Codice del Punto di Ritiro a cui spedire il pacco |
codePickingPoint |
string |
No | – | Codice del magazzino del Merchant da cui ritirare il pacco |
width |
number |
No | – | Larghezza del pacco in cm |
height |
number |
No | – | Altezza del pacco in cm |
depth |
number |
No | – | Profondità del pacco in cm |
grossWeight |
number |
No | – | Peso lordo del pacco in Kg |
netWeight |
number |
No | – | Peso netto del pacco in Kg |
volume |
number |
No | – | Volume del pacco in cm³ |
goodsValue |
number |
No | – | Valore dell’ordine |
insured |
boolean |
No | false |
Indica se l’ordine deve essere assicurato: per funzionare è necessario che il Merchant abbia abilitato il servizio di assicurazione per le spedizioni. |
labelType |
LabelType |
No | Indica la tipologia di etichetta da generare per la spedizione | |
proximityPrice |
number |
Si | – | Prezzo di spedizione definito dal Merchant |
currencyGoodsValue |
string |
No | – | Codice valuta del valore ordine in formato ISO4217 |
orderCountInCurrentYear |
number |
Si | – | Numero totale di ordini di spedizione dell’eCommerce confermati nell’anno solare corrente |
rows |
OrderItem |
Si | – | Lista di prodotti contenuti nell’ordine |
OrderItem
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
productCode |
string |
No | – | Codice del prodotto |
typeProduct |
string |
No | – | Tipologia del prodotto |
description |
string |
Si | – | Descrizione del prodotto |
notes |
string |
No | – | Note del prodotto |
width |
number |
No | – | Larghezza del prodotto in cm |
height |
number |
No | – | Altezza del prodotto in cm |
depth |
number |
No | – | Profondità del prodotto in cm |
grossWeight |
number |
No | – | Peso lordo del prodotto in Kg |
netWeight |
number |
No | – | Peso netto del prodotto in Kg |
volume |
string |
No | – | Volume del prodotto in cm³ |
{
"customer": "Mario Rossi",
"customerEmail": "mario.rossi@email.com",
"customerPhone": "3331535985",
"orderNumber": "19664",
"orderNumberRif": "19664",
"reference": "orderReference-19664",
"orderDate": "20221201",
"description": "Descrizione dell'ordine",
"codePickupPoint": "PUP_325389",
"proximityPrice": 4.99,
"orderCountInCurrentYear": 5344,
"rows": [
{
"description": "Giacca di pelle nera",
},
...
]
}
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
data |
OrderIdentifier |
Dati restituiti |
OrderIdentifier
Nome | Tipo | Descrizione |
---|---|---|
orderReferenceCode |
string |
Codice di riferimento dell’ordine |
pickupPointPublicCode |
string |
Codice pubblico del Punto di Ritiro associato all’ordine |
{
"success": true,
"message": "Operazione completata",
"data": {
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
"pickupPointPublicCode": "965512"
}
}
Permette di annullare un ordine di spedizione associato al Merchant.
Un ordine di spedizione può essere annullato solo nel caso non sia già stata generata l’etichetta. Una volta che per un ordine di spedizione verrà generata l’etichetta non sarà più possibile annullarlo.
Endpoint | gel-api-server/api/merchant/shipment/cancel |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
notes |
string |
No | – | Note di annullamento |
{
"orderReferenceCode
": "4a48926aarv76430e776e3w11pomuua2", "notes": "" }
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
{
"success": true,
"message": "Ordine annullato",
}
Permette il ottenere il codice di riferimento di un ordine di spedizione, utile per effettuare successive operazioni sull’ordine tramite API.
Endpoint | gel-api-server/api/merchant/shipment/getIdentifier |
Metodo | GET |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderNumber |
string |
Si | – | Numero dell’ordine |
https://platform.gelproximity.com/gel-api-server/api/merchant/shipment/getIdentifier?
&orderNumber
=19664
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
data |
OrderIdentifier |
Dati restituiti |
OrderIdentifier
Nome | Tipo | Descrizione |
---|---|---|
orderReferenceCode |
string |
Codice di riferimento dell’ordine |
{
"success": true,
"message": "Operazione completata",
"data": {
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
}
}
}
Permette il generare l’etichetta associata ad un ordine di spedizione nel caso di merchant di tipo DELIVERY o di confermare l’ordine per la spedizione nel caso di merchant di tipo STORAGE.
In caso di merchant di tipo DELIVERY l’etichetta verrà restituita nella response in formato base64.
In caso di merchant di tipo STORAGE non verrà restituita nessuna etichetta ma verrà confermata la spedizione e comunicata al Punto di Ritiro per permettergli di gestire il ritiro e la consegna.
Le performance di generazione dell’etichetta dipendono direttamente dallo stato dei sistemi delle Reti relative.
Endpoint | gel-api-server/api/merchant/shipment/generateLabel |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
{
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
}
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
data |
LabelInfo |
Dati restituiti |
LabelInfo
Nome | Tipo | Descrizione |
---|---|---|
customer |
LabelCustomer |
Dati dell’utente associato all’ordine |
order |
LabelOrder |
Dati dell’ordine |
pickupPoint |
LabelPickupPoint |
Dati del Punto di Ritiro associato all’ordine |
network |
LabelNetwork |
Dati della Rete associata all’ordine |
warehouse |
LabelWarehouse |
Dati del magazzino associato all’ordine |
label |
LabelData |
Dati dell’evento verificato |
metadata |
LabelMetadata |
Metadata associati all’ordine |
LabelCustomer
Nome | Tipo | Descrizione |
---|---|---|
name |
string |
Nome dell’utente associato all’ordine |
email |
string |
Email dell’utente associato all’ordine |
phone |
string |
Telefono dell’utente associato all’ordine |
LabelOrder
Nome | Tipo | Descrizione |
---|---|---|
orderReferenceCode |
string |
Codice di riferimento univoco dell’ordine |
orderNumber |
string |
Numero dell’ordine |
orderDate |
string |
Data dell’ordine in formato dd/MM/yyyy |
serviceCode |
ServiceCode |
Codice del servizio |
LabelPickupPoint
Nome | Tipo | Descrizione |
---|---|---|
code |
string |
Codice del Punto di Ritiro associato all’ordine |
name |
string |
Nome del Punto di Ritiro associato all’ordine |
address |
string |
Indirizzo del Punto di Ritiro associato all’ordine |
city |
string |
Città del Punto di Ritiro associato all’ordine |
zipcode |
string |
CAP del Punto di Ritiro associato all’ordine |
department |
string |
Provincia del Punto di Ritiro associato all’ordine |
country |
string |
Nazione del Punto di Ritiro associato all’ordine |
LabelNetwork
Nome | Tipo | Descrizione |
---|---|---|
code |
NetworkCode |
Codice della Rete associata all’ordine |
name |
string |
Nome della Rete associata all’ordine |
LabelWarehouse
Nome | Tipo | Descrizione |
---|---|---|
code |
string |
Codice del magazzino associato all’ordine |
name |
string |
Nome del magazzino associato all’ordine |
address |
string |
Indirizzo del magazzino associato all’ordine |
city |
string |
Città del magazzino associato all’ordine |
zipcode |
string |
CAP del magazzino associato all’ordine |
department |
string |
Provincia del magazzino associato all’ordine |
country |
string |
Nazione del magazzino associato all’ordine |
LabelData
</tr
Nome | Tipo | Descrizione |
---|---|---|
format |
string |
Formato dell’etichetta |
trackingNumber |
string |
Numero di tracking dell’etichetta |
data |
string |
Dati dell’etichetta in formato base64 |
LabelMetadata
Nome | Tipo | Descrizione |
---|---|---|
parcelId |
string |
Codice parcelId restituito dalla Rete (solo per spedizioni aventi come Rete “BRT Fermopoint”) |
{
"success": true,
"message": "Operazione completata",
"data": {
"customer": {
"name": "Mario Rossi",
"email": "mario.rossi@email.com",
"phone": "3331535985",
},
"order": {
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
"orderNumber": "19664",
"orderDate": "01/01/2022",
"serviceCode": "001",
},
"pickupPoint": {
"code": "PUP_325389",
"name": "TNT Point",
"address": "Via Rossi 10",
"city": "Milano",
"zipcode": "20019",
"department": "Milano",
"country": "IT",
},
"network": {
"code": "NET_000042",
"name": "TNT Point",
},
"warehouse": {
"code": "PIN_543881",
"description": "Magazzino principale",
"address": "Via Rossi 10",
"city": "Milano",
"zipcode": "20019",
"department": "Milano",
"country": "IT",
},
"label": {
"trackingNumber": "056010930020137843",
"format": "PDF",
"data": "...",
},
"metadata": {
"parcelId": "155321943321451115"
}
}
}
Permette il ottenere l’etichetta associata ad un ordine di spedizione.
Questo metodo funziona solo se l’etichetta è già stata precedentemente generata dalla piattaforma GEL Proximity. Per maggiori informazioni sul funzionamento visitare la sezione Caratteristiche di Sistema.
In caso la chiamata vada a buon fine verrà restituito il PDF dell’etichetta sotto forma di File
.
Endpoint | gel-api-server/api/merchant/shipment/downloadLabel |
Metodo | GET |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
https://platform.gelproximity.com/gel-api-server/api/merchant/shipment/downloadLabel?
&orderReferenceCode=4a48926aarv76430e776e3w11pomuua2
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
{
"success": true,
"message": "Operazione completata"
}
Permette il ricevere lo stato di uno o più ordini di spedizione.
Endpoint | gel-api-server/api/merchant/shipment/status |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
request |
OrderIdentifier[] |
Si | – | Lista di identificativi dell’ordine |
OrderIdentifier
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
orderNumber |
string |
Si | – | Numero dell’ordine |
Almeno uno tra i parametri orderReferenceCode
e orderNumber
deve essere valorizzato nella request.
{
"request": [
{
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2"
},
...
]
}
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della request |
message |
string |
Messaggio di risposta |
total |
number |
Numero di record restituiti |
items |
OrderInfo[] |
Dati restituiti |
OrderInfo
Nome | Tipo | Descrizione |
---|---|---|
success |
string |
Esito della richiesta |
message |
string |
Messaggio di risposta |
order |
OrderDetails |
Dettagli dell’ordine inviati in fase di creazione |
tracking |
OrderTracking |
Dettagli ricevuti del tracking dell’ordine |
metadata |
OrderMetadata |
Metadata associati all’ordine |
OrderDetails
Nome | Tipo | Descrizione |
---|---|---|
orderReferenceCode |
string |
Codice di riferimento univoco dell’ordine |
orderNumber |
string |
Numero dell’ordine |
orderDate |
string |
Data dell’ordine in formato dd/MM/yyyy |
reference |
string |
Riferimento univoco dell’ordine |
OrderTracking
Nome | Tipo | Descrizione |
---|---|---|
number |
string |
Numero di tracking |
status |
number |
Codice dello stato di tracking |
externalStatusCode |
string |
Codice di stato personalizzato |
externalStatusDescription |
string |
Descrizione di stato personalizzata |
lastUpdateDate |
string |
Data di aggiornamento del tracking in formato dd/MM/YYYY |
lastUpdateTime |
string |
Orario di aggiornamento del tracking in formato HH:mm |
deliveryDate |
string |
Data di consegna in formato dd/MM/YYYY |
deliveryTime |
string |
Orario di consegna in formato HH:mm |
OrderMetadata
Nome | Tipo | Descrizione |
---|---|---|
parcelId |
string |
Codice parcelId restituito dalla Rete (solo per spedizioni aventi come Rete “BRT Fermopoint”) |
{
"success": true,
"message": "Operazione completata",
"total": 1,
"items": [
{
"success": true,
"message": "Ordine estratto"
"order": {
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
"orderNumber": "19664",
"orderDate": "20221201",
"reference": "orderReference-19664",
},
"tracking": {
"number": "056010930020137843",
"status": "ST0006",
"statusDescription": "Errore: verificare tracking",
"externalStatusCode": "RECIPIENT_MISSING",
"externalStatusDescription": "Il destinatario era assente",
"lastUpdateDate": "01/01/2022",
"lastUpdateTime": "15:30",
"deliveryDate": null,
"deliveryTime": null,
},
"metadata": {
"parcelId": "155321943321451115"
}
},
...
]
}
Permette di aggiornare lo stato del tracking di un ordine di spedizione.
In caso di spedizione diretta ad un Punto di Ritiro che richiede un codice di verifica per effettuare la consegna all’utente finale, se si intende aggiornare lo stato con statusCode
ST_0007
, il parametro verificationCode
risulterà obbligatorio.
Endpoint | gel-api-server/api/merchant/shipment/updateTracking |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
statusCode |
ShipmentStatusCode |
Si | – | Codice GEL dello stato spedizione |
statusDescription |
string |
Si | – | Descrizione del cambio di stato |
lastUpdateDate |
string |
No | – | Data di aggiornamento dello stato in formato dd/MM/yyyy |
lastUpdateTime |
string |
No | – | Data di aggiornamento dello stato in formato hh:mm |
networkStatusCode |
string |
No | – | Codice di stato della Rete |
networkStatusReason |
string |
No | – | Descrizione di stato della Rete |
trackingCode |
string |
No | – | Codice tracking del corriere incaricato per la spedizione |
verificationCode |
string |
No | – | Codice PIN di conferma ritiro inviato all’utente finale |
{
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2",
"statusCode": "ST_0001",
"statusDescription": "Descrizione del cambio di stato"
}
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
{
"success": true,
"message": "Tracking aggiornato",
}
Permette di inviare il codice di verifica richiesto dai Punti di Ritiro per consegnare il pacco all’utente finale.
Il codice di verifica verrà inviato via email all’indirizzo email associato alla spedizione
Endpoint | gel-api-server/api/merchant/shipment/sendVerificationCode |
Metodo | POST |
Nome | Tipo | Obbl. | Default | Descrizione |
---|---|---|---|---|
orderReferenceCode |
string |
Si | – | Codice di riferimento dell’ordine |
{
"orderReferenceCode": "4a48926aarv76430e776e3w11pomuua2"
}
Nome | Tipo | Descrizione |
---|---|---|
success |
boolean |
Esito della richiesta |
message |
string |
Messaggio di risposta |
{
"success": true,
"message": "Codice inviato correttamente",
}