Error global de Spring (Omni de primavera): obtener una respuesta en blanco al recuperar la etiqueta

Nos enfrentamos a un problema mientras intentábamos crear un envío (Usando / envíos API) y después de eso íbamos a buscar la etiqueta (Usando / tomatoes / {shipping_id} / files API). El problema fue que obtuvimos una respuesta en blanco. Cuando verificamos los envíos en la oficina administrativa, se veía como en la siguiente captura de pantalla:

Respuesta en blanco

Cuando hicimos clic en el envío (con status = "concepto"), recibimos un mensaje como "El envío se creó, pero no se ha registrado con el transportista (todavía).

Cuando comprendimos el concepto de este nuevo proceso de creación de envíos en Spring Omni, nos damos cuenta de que en Spring Global, debemos registrar un envío en lugar de solo crear el envío antes de buscar la etiqueta correspondiente al envío. Hay dos escenarios posibles para registrar un envío:

  1. Crea el envío y regístrate también al mismo tiempo.
  2. Cree el envío pero regístrelo en un momento específico dado, es decir, en el futuro

1. Para registrar un envío al instante

Al enviar la solicitud de creación de envío, debemos enviar el "registrarse_at"el valor del parámetro como 0 o tiempo pasado (marca de tiempo UNIX) en los datos de solicitud. Consulte el siguiente código para conocer el mismo:

{
  "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"
        }
      }
    }
  }
}

Si enviamos el valor de register_at como marca de tiempo actual, es posible que obtengamos cierta demora en el registro del envío, por lo que Spring Global nos ha sugerido que enviemos el valor de register_at como 0 para que el tiempo sea considerado en el pasado y el envío se registrará tan pronto como sea posible. como sea posible. Dado que el envío se registrará ahora, no podremos eliminar / editar el mismo.

2. Registrar un envío en tiempo futuro.

Si queremos editar / eliminar el envío después de crear uno, solo tenemos que registrar el envío en el futuro o en un momento determinado. Para registrar un envío en el futuro, digamos que después de 5 horas de creación del envío, simplemente pase el valor "register_at" como marca de tiempo futura de cinco horas sobre la base del tiempo actual. Ahora podremos editar / eliminar el envío hasta las horas 5, pero no podremos recuperar la etiqueta y la factura comercial. A la hora indicada, el envío se registrará automáticamente y podremos recuperar la etiqueta y la factura comercial después de la hora indicada.

Así que estas son las dos formas de registrar el envío. Podemos utilizar ambos sobre la base de nuestro requisito.

Por favor visite aquí para información relacionada:

Error de Spring Global (Spring Omni): la propiedad phone_number es obligatoria

Manifiesto de primavera omni

Error de Spring Global (Spring Omni): el envío no se está registrando

Spring Global (Spring Omni): concepto de facturación

Error global de primavera (Omni de primavera): recurso no encontrado


Aparajita Singh

Aparajita Singh

Aparajita Singh is an experienced Software engineer in PHP. She also has knowledge of C, JAVA and database design. She has been working in the IT Industry from the last 2yrs and still looking forward to achieving more in the IT industry. She lives in New Delhi and her hobby is to write the technical writeups.

Leave a Reply

Your email address will not be published. Required fields are marked *