Shipment Update triggers for other 3PL shipments

Hi,

We have the Shipment Update webhook set up. We’ve been testing it for the last few days and noticed an issue.

Background: we’re a 3PL. Once of our clients uses us and another 3PL that’s also on Shiphero. So the other 3PL fulfills some orders while we fulfill others.

We noticed today that the Shipment Update webhook gets triggered when shipments are made by the other 3PL as well. That sounds like bad design as we only need the shipments our 3PL makes. I’m guessing this happens because we are forced to register the webhook on the customer account rather than our 3PL account.

Since we’re unable to use register the webhook on our 3PL account, how can we distinguish between our shipments and the other 3PL’s shipments on the Shipment Update trigger?

Hi @afroznissar!
I see what you mean, it is not common to have the same customers with two 3PLs, so that is why it was probably not a concern in the past.

You could use the warehouse_id that is being sent on the Webhook to distinguish which 3PL is shipping the order.
Let me know if that still doesn’t help!
Thanks,
Tom

Hi @tomasw ,

Ok, thanks, we’ll try that.

Here’s a related issue though - the Shipment Update webhook gets triggered for:

  1. Dropship Only products, and
  2. Orders that are fulfilled from elsewhere (not in Shiphero). For example, the client account might ship an order from their EU warehouse instead of us. Doing so updates the order in Shiphero to fulfilled but we didn’t ship it so no shipment is created. But the webhook still gets triggered.

In both these situations, no actual shipments are created in Shiphero. So why does the Shipment Update webhook get triggered? How do we stop this from happening? The webhook shouldn’t be sending over any shipments/orders for which shipment records are not created. Or am I misunderstanding something?

Thanks,
Afroz

Hi @afroznissar!
That is correct it will trigger for those as well, not only “outbound” shipments but other shipments as well like drop shipments and shipments created outside of ShipHero.
Maybe you are looking for a shipping label? those ones won’t appear if its a drop shipment, and for shipments created outside of ShipHero there should be a field on the shipments query called shipped_off_shiphero that should reflect that value

Let us know if that still doesn’t help,
Thanks again!
Tom

Hi @tomasw ,

How do I get a shipping label from the data I receive from the Shipment Update webhook?

Thanks!

Hi @tomasw ,

Following up here. What I need to do is determine definitively if a shipment has been shipped outside of Shiphero or not.

  1. You mentioned shipping labels. How do I get that from the data that we receive from the Shipment Update webhook? I don’t see anything in the graphql documentation for shipping labels.
  2. We’re not seeing the “shipped_off_shiphero” field on the shipments query. Where can we find that?

Thanks!

Hi @afroznissar !

You can use this shipment query:

query {
  shipment(id: "the_shipment_id_from_the_webhook") {
    request_id
    complexity
    data {
      id
      shipped_off_shiphero
      shipping_labels {
        label {
          pdf_location
        }
      }
    }
  }
}

That one will also return you if it was shipped outside of ShipHero:true

Thanks again!
Tom

Got it, thanks Tomas!

1 Like