Knowband Blog | Ecommerce Modules

Erro Spring Global (Spring Omni): Obtenção de resposta em branco ao buscar o rótulo

Estávamos enfrentando um problema enquanto tentávamos criar uma remessa (Usando / shipments API) e depois disso fomos buscar o rótulo (Usando / shipments / {shipment_id} / files API). O problema foi que obtivemos resposta em branco. Quando verificamos as remessas no back office, parecia a imagem abaixo:

Quando clicamos na remessa (com status = "conceito"), recebemos uma mensagem como "A remessa foi criada, mas ainda não foi registrada na transportadora.

Quando entendemos o conceito desse novo processo de criação de remessas no Spring Omni, ficamos sabendo que, na Spring Global, precisamos registrar uma remessa em vez de apenas criar a remessa antes de buscar a etiqueta correspondente à remessa. Existem dois cenários possíveis para registrar uma remessa:

  1. Crie o envio e registre-se ao mesmo tempo
  2. Crie a remessa, mas registre-a em um horário específico, ou seja, no futuro

1. Para registrar uma remessa instantaneamente

Ao enviar a solicitação de envio de criação, precisamos enviar o "register_at"valor do parâmetro como 0 ou tempo passado (timestamp do UNIX) nos dados da solicitação. Por favor, consulte o código abaixo para o mesmo:

{
  "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 enviarmos o valor register_at como timestamp atual, poderemos ter algum atraso no registro da remessa, a So Spring Global sugeriu que enviássemos o valor register_at como 0 para que a hora fosse considerada no passado e a remessa fosse registrada assim que que possível. Como o envio será registrado agora, não poderemos excluir / editar o mesmo.

2. Registre uma remessa no futuro

Se quisermos editar / excluir a remessa depois de criar a remessa, só precisaremos registrar a remessa no futuro ou em um horário específico. Para registrar uma remessa no futuro, digamos que após 5 horas de criação da remessa, simplesmente passe o valor "register_at" como data e hora futura de cinco horas com base na hora atual. Agora poderemos editar / excluir a remessa até 5 horas, mas não poderemos buscar o rótulo e a fatura comercial. No momento, a remessa será registrada automaticamente e poderemos buscar o rótulo e a fatura comercial após o tempo determinado.

Então, essas são as duas maneiras de registrar a remessa. Nós podemos usar ambos com base em nossa exigência

Por favor, visite aqui para informações relacionadas:

Erro Spring Global (Spring Omni): A propriedade phone_number é necessária

Manifestação Omni da Primavera

Erro Spring Global (Spring Omni): O envio não está sendo registrado

Spring Global (Spring Omni): Conceito de Faturamento

Erro de Spring Global (Spring Omni): recurso não encontrado