Integration with Stuart Webhook, the value task="pickup" is not coming

Hi Stuart Team,

We are experiencing an issue with the Stuart Webhook integration, specifically with the “Courier waiting” webhook. The property task is returning as null or “dropOff” instead of “pickup”. Below are the details for our pickup and dropoff locations.

Could you please assist in resolving this issue? or We need to know why.

DropOff

{"contactName": "Talal Daoud", "contactNumber": "+442079476731", "location": {"address1": "line1: 32 Coombe Ln, building:floor-2307towerone, flatNumber-2307, street: Raynes Park, city: London, deliveryArea: SW20 0LA, deliveryAreaPostCode: ,", "address2": "", "area": "", "city": "London", "country": "England", "coordinates": {"latitude": "51.40979", "longitude": "-0.230159"}}, "notes": "Other,2307,AmayaTowers;Nocutlery.\nAdditional discounts by Talabat: 2.5"}

pickUp

{"contactName": "London Store - Coffee House", "contactNumber": "+442038835900", "locationId": "664b2b4651182840c30c23c5", "location": {"address1": "1 Lambton Rd, Raynes Park", "address2": "", "area": "", "city": "London", "country": "England", "coordinates": {"latitude": "51.410211035517484", "longitude": "-0.23067414361170932"}}, "items": [{"name": "Chocolate Croissant", "quantity": new NumberInt("2")}], "notes": "099991096"}

Hello @datnguyen ,

I have reviewed a few packages associated with one of your accounts.

For these packages, whenever the courier had to wait at the pickup location, we did send the “courier_waiting” webhook. The “task” field value was always “pickup”.

For example, for the package with client_reference 1110363788189077504, the following event was sent:

{
  "version": "v3",
  "occurred_at": "2024-05-22T02:30:42.940+02:00",
  "event_id": "e06e433f-08e9-42a0-b18d-c0ef4f617b76",
  "webhook_id": 3279,
  "topic": "courier_waiting",
  "details": {
    "account": {
      "id": 456197
    },
    "package": {
      "id": "100775231",
      "reference": "1110363788189077504",
      "tracking_url": "https://stuart.sandbox.followmy.delivery/100775231/27731dbfadc88382dc7f77f8f15376ce"
    },
    "task": "pickup"
  }
}

Please feel free to share the client_reference of the package you are referring to, this way we’ll be able to check all the webhook events that were sent for this specific package.

Thank you :smiley:

Hi Adrien,

I agree that for reference:“1110363788189077504,” the task “pickup” is appearing. However, is there any scenario where the task “pickup” might not appear? We need to handle such exceptions if they occur.

You can refer to reference: “1110092308919717888,” where the task “dropoff” appears but not the “pickup.”, it not coming to our system.

Hello @datnguyen ,

Indeed, for the pickup of package 1110092308919717888, the “courier_waiting” webhook was never sent, which is expected behavior.

This webhook is only triggered when the courier has to wait at either the pickup or dropoff locations before completing their task (for example, if the package is not ready when the courier arrives).

For this delivery, the courier only had to wait at the dropoff location, not at the pickup.

Cheers :grin:

Hi Adrien,

Thank you for your response. We are trying to map the webhook to ensure the driver has arrived at the exact pickup location. Based on the provided webhook documentation, we are facing some challenges. We cannot rely on courier_waiting because, as you mentioned, the driver might not have to wait. Similarly, courier_arriving is not suitable as it indicates the driver is still en route.

Is there any webhook that reliably triggers when the driver has arrived at the pickup location? We need a webhook that consistently notifies us of the driver’s arrival at the pickup location.

Hi @datnguyen,

We have three webhooks related to pickup events:

  • courier_arriving (task = “pickup”): This webhooks informs you that the courier is getting close to the pickup location.

  • courier_waiting (task = “pickup”): This webhook informs you that the courier is waiting at the pickup location. As explained before, this webhook is not sent if the handover occurs quickly and the courier does not have to wait at the pickup.

  • package_delivering: This webhook informs you that the package has just been picked up and the courier is now heading to the drop-off location. Receiving this webhook ensures that the driver has arrived at the pickup location and is on his way to the drop-off location.

Do you think you can rely on the package_delivering webhook to achieve what you are trying to do?

Thank you in advance!

Hi Adrien,
Thank you a lot, your help help us clear and solve the problem correctly now.

1 Like