Spring Global (Spring Omni) Errore: ottenere una risposta vuota durante il recupero dell'etichetta

Stavamo affrontando un problema mentre tentavamo di creare una spedizione (Utilizzo dell'API / spedizioni) e dopo che stavamo recuperando l'etichetta (Utilizzo di / spedizioni / {shipment_id} / file API). Il problema era che avevamo una risposta vuota. Quando abbiamo controllato Spedizioni nel back office, sembrava che sotto lo screenshot:

Risposta vuota

Quando abbiamo cliccato sulla spedizione (con status = "concetto"), abbiamo ricevuto un messaggio come "La spedizione è stata creata, ma non è ancora stata registrata con il corriere.“

Quando abbiamo capito il concetto di questo nuovo processo di creazione delle spedizioni in Spring Omni, veniamo a sapere che in Spring Global, abbiamo bisogno di registrare una spedizione invece di creare la spedizione prima di recuperare l'etichetta corrispondente alla spedizione. Esistono due possibili scenari per la registrazione di una spedizione:

  1. Crea la spedizione e registrati allo stesso tempo
  2. Crea la spedizione ma registrala in un dato momento specifico, ad esempio in futuro

1. Per registrare una spedizione istantaneamente

Durante l'invio della richiesta di spedizione, è necessario inviare il messaggio "register_at"valore parametro come 0 o tempo passato (timestamp UNIX) nei dati della richiesta. Si prega di riferirsi al codice sottostante per lo stesso:

{
  "data": {
    "type": "shipments",
    "attributes": {
      "recipient_address": {
        "street_1": "Baker Street",
        "street_2": "Marylebone",
        "street_number": 221,
        "street_number_suffix": "B",
        "postal_code": "NW1 6XE",
        "city": "London",
        "region_code": "ENG",
        "country_code": "GB",
        "first_name": "Sherlock",
        "last_name": "Holmes",
        "company": "Holmes Investigations",
        "email": "s.holmes@holmesinvestigations.com",
        "phone_number": "+31 234 567 890"
      },
      "return_address": {
        "street_1": "Baker Street",
        "street_2": "Marylebone",
        "street_number": 221,
        "street_number_suffix": "B",
        "postal_code": "NW1 6XE",
        "city": "London",
        "region_code": "ENG",
        "country_code": "GB",
        "first_name": "Sherlock",
        "last_name": "Holmes",
        "company": "Holmes Investigations",
        "email": "s.holmes@holmesinvestigations.com",
        "phone_number": "+31 234 567 890"
      },
      "sender_address": {
        "street_1": "Baker Street",
        "street_2": "Marylebone",
        "street_number": 221,
        "street_number_suffix": "B",
        "postal_code": "NW1 6XE",
        "city": "London",
        "region_code": "ENG",
        "country_code": "GB",
        "first_name": "Sherlock",
        "last_name": "Holmes",
        "company": "Holmes Investigations",
        "email": "s.holmes@holmesinvestigations.com",
        "phone_number": "+31 234 567 890"
      },
      "pickup_location": {
        "code": "205604",
        "address": {
          "street_1": "Baker Street",
          "street_2": "Marylebone",
          "street_number": 221,
          "street_number_suffix": "B",
          "postal_code": "NW1 6XE",
          "city": "London",
          "region_code": "ENG",
          "country_code": "GB",
          "first_name": "Sherlock",
          "last_name": "Holmes",
          "company": "Holmes Investigations",
          "email": "s.holmes@holmesinvestigations.com",
          "phone_number": "+31 234 567 890"
        }
      },
      "description": "Order #8008135",
      "physical_properties": {
        "height": 150,
        "width": 300,
        "length": 500,
        "volume": 22.5,
        "weight": 5000
      },
      "items": [
        {
          "sku": "123456789",
          "description": "OnePlus X",
          "item_value": {
            "amount": 995,
            "currency": "EUR"
          },
          "quantity": 2,
          "hs_code": "8517.12.00",
          "origin_country_code": "GB",
          "item_weight": 135
        }
      ],
      "customs": {
        "content_type": "merchandise",
        "invoice_number": "9000",
        "non_delivery": "return",
        "incoterm": "DAP",
        "license_number": "218532158",
        "certificate_number": "12122121"
      },
      "register_at": 0
    },
    "relationships": {
      "service_options": {
        "data": [
          {
            "type": "service-options",
            "id": "4c675b1a-516c-4410-abff-d237fd45bcd0"
          }
        ]
      },
      "shop": {
        "data": {
          "type": "shops",
          "id": "35eddf50-1d84-47a3-8479-6bfda729cd99"
        }
      },
      "service": {
        "data": {
          "type": "services",
          "id": "175a235f-aff5-4e44-87b5-3657b75c1deb"
        }
      },
      "contract": {
        "data": {
          "type": "contracts",
          "id": "2cb32706-5762-4b96-9212-327e6afaeeff"
        }
      }
    }
  }
}

Se inviamo il valore register_at come timestamp corrente, potremmo ritenere che la registrazione della spedizione sia ritardata, quindi Spring Global ci ha suggerito di inviare il valore register_at come 0 in modo che l'orario sia considerato in passato e la spedizione sarà registrata al più presto il più possibile Dal momento che la spedizione sarà registrata ora, non saremo in grado di cancellare / modificare lo stesso.

2. Registra una spedizione in futuro

Se vogliamo modificare / eliminare la spedizione dopo aver creato quello, allora abbiamo solo bisogno di registrare la spedizione in futuro o in un dato momento specifico. Per registrare una spedizione in futuro, diciamo dopo ore 5 di creazione della spedizione, è sufficiente passare il valore "register_at" come timestamp futuro di cinque ore sulla base dell'ora corrente. Ora saremo in grado di modificare / cancellare la spedizione fino alle ore 5 ma non sarà possibile recuperare l'etichetta e la fattura commerciale. Alla data e ora, la spedizione verrà registrata automaticamente e potremo ritirare l'etichetta e la fattura commerciale dopo il tempo stabilito.

Quindi questi sono i due modi per registrare la spedizione. Possiamo usare entrambi in base al nostro requisito.

Si prega di visitare qui per informazioni correlate:

Spring Global (Spring Omni) Errore: è richiesta la proprietà phone_number

Spring Omni Manifest

Spring Global (Spring Omni) Errore: la spedizione non è stata registrata

Spring Global (Spring Omni): concetto di fatturazione

Spring Global (Spring Omni) Error: Resource Not Found


Problema DHL: la posizione di destinazione non è valida. Si prega di controllare i dati

Durante la prenotazione della spedizione su DHL utilizzando l’API (nel nostro caso, il paese di consegna era “Irlanda”), abbiamo ricevuto un errore nella risposta alla richiesta di capacità. L’errore era “La posizione di destinazione non è valida. Si prega di controllare i dati“.

Soluzione: �

Per questo problema, abbiamo sollevato un ticket su DHL e, in risposta, hanno risposto come di seguito:

Quando si richiedono funzionalità, è importante fornire dati di indirizzo completi e di qualità. È necessario determinare informazioni e capacità di instradamento accurate per l’origine e la destinazione. Il motivo dell’errore potrebbe essere il seguente:

  1. Potrebbe essere possibile che ci siano più città con lo stesso nome in diverse periferie. Quindi, per ottenere una risposta di successo, dobbiamo aggiungere i sobborghi nell’indirizzo di destinazione in modo speciale, per il paese di consegna “Irlanda”.
  2. Per i paesi di destinazione, che non hanno codici postali, il nome della città deve essere digitato correttamente. Ad esempio, non esiste una città chiamata NORTH ROAD in IE, la città effettiva si chiama M50 NORTH ROAD.

Da questa risposta, non siamo stati chiari sulla convalida dell’indirizzo significa come facciamo a sapere se l’indirizzo è corretto o meno o il nome della città è corretto o meno. Ad esempio, se stiamo inviando il nome della città come “Co. Dublino” nella richiesta di creazione della spedizione, riceviamo un errore di Posizione non valida. Quindi abbiamo sollevato di nuovo un biglietto per sapere come possiamo convalidare l’indirizzo e in risposta, DHL ha suggerito uno strumento chiamato DHL Capability Tool (https://dct.dhl.com/). Basta inserire il mittente e l’indirizzo di destinazione nel modulo e fare clic sul pulsante di ricerca come mostrato nella schermata seguente:

Questo strumento darà il risultato se l’indirizzo è valido o meno. Pertanto, se ricevi un errore relativo alla posizione, puoi convalidare l’indirizzo utilizzando questo strumento di funzionalità.