We are having webhook duplicates logged on square side too, can you fix it?

But @Bryan-Square, you are not addressing the issue, the purpose of the webhooks it to notify our CRM about changes in the Orders using the API. But this is impossible if Square is sending more than 10 webhooks notifications at the same time and even when the customer did no changes at all. We understand there are different event types and versions, and we are looking at it, but still, if they are received at the same time there is no way to react upon the ones before because there is no before if all are thrown away at the same time.

So, when you say "When… " it’s none sense because Square is triggering version 2 and 3 fulfillment.order.updated notifications at the same time as shown before.

fulfillment.order.updated Version 1 id: BTQFsU7kwgJCu00974Dz12QyCSjlahgjJHnHUv5mvMI
Triggered at: 2023-11-16 23:24:36 GMT-5
Sent at: 2023-11-16 23:24:39 GMT-5

fulfillment.order.updated Version 3 id: hCvDesLdBpmQ/LRgQprfSbz6MByJ1xTAd7KdT4iXkVc=
Triggered at: 2023-11-16 23:24:36 GMT-5
Sent at: 2023-11-16 23:24:40 GMT-5

By the way, the event id you sent f436059d-e28a-32f2-ae58-c43f221d4734 corresponds to a order.update notification and we got it twice, 1st for Version 2 and 2nd for Version 3 of the order.update. So, as you can see, there is no Version 2 for the order.fulfillment.updated event. And those 2 Versions for the order.update you mentioned where sent with less than 1 second difference, which clearly indicates it was not a customer change, none sense:

f436059d-e28a-32f2-ae58-c43f221d4734 Version 2 order.update:
{“event_id”:“f436059d-e28a-32f2-ae58-c43f221d4734”,“created_at”:“2023-11-17T04:24:34Z”,“version”:2}

f436059d-e28a-32f2-ae58-c43f221d4734 Version 3 order.update:
{“event_id”:“f436059d-e28a-32f2-ae58-c43f221d4734”,“created_at”:“2023-11-17T04:24:34Z”,“version”:3}

Just to be clear, this issue is about getting the fulfillment.order.updated duplicated, without the customer doing any changes, at the same time, which ends producing duplicates in our system, because there is no way for our CRM to create one before the other because both notifications arrive at the same time. We save the order.id as unique field precisely to avoid duplicates, if an order is created and the order.id is already in the system an error stops the duplicate, but because both fulfillment.order.updated events arrive at the same time there is no time for one to be created the technically both duplicates are created at the same time.

Can you stop Square from sending different order.fulfillment.updated notifications when there are no changes in the order? or at least add some time between the different versions for 3rd party systems to have time to act when 1 version arrives and recognize something happened before?

Just to make sure the issue is explained, no 3rd party system can react to different notifications if received at the same time, it’s none sense. There has to be some time between to allow it to find those sent before and then avoid duplicates, is it clear?