Unexpected Order ID parameter from Stape FB CAPI Server Tag

Hi all,
we just started to send purchase data to Facebook.
Data flows correctly, but we have noticed a small difference in the data sent from the server.

When we download an event sample from Facebook Event Manager, we can distinguish between events generated by the client and those sent from the server.

Here is an example of the dataJSON parameter:

From Browser
{“content_type”:“product”,“content_ids”:“["20XXXXX","71XXXX"]”,“value”:“205.0”,“currency”:“GBP”}

From Server
{“currency”:“GBP”,“order_id”:“EII1|AQAATS8AAAXXXXXX”,“value”:“225”,“content_ids”:“["70XXXXX","201XXXX"]”,“content_type”:“product”}

As you can see the data sent from the server includes the order_id.

In the client container we are using the Stape Data Tag in which we enabled the “Send all from DataLayer” & “Send common data” options.
In the event data we are also sending the transaction_id because we need it for other server tags.

In the server, we are using the Stape.io Facebook Conversion API tag, with Event Name Setup Method set to Inherit from client. We also add the Event Id parameter in the Server Override Data Override to manage the deduplication in Facebook.

Do you know if this difference between client and server data could have an impact on the event deduplication in Facebook. Running a few test event in FB everything looks ok but I want to confirm with you.
My second question is, why the server tag is sending the order_id automatically?

I hope it makes sense.

Hello,

  • Sending identical event name and event ID should be enough for Facebook to deduplicate such events.
  • Order_id is sent automatically from the server because you are sending it from the web (as part of “send all from datalayer”) and then FB CAPI tag is able to find this info in the event data and sends it automatically in the request payload. You may add the same info to your client side tag so that payload sent from these two sources would match.

Hi @Vlad_Kononov ,
that makes completely sense. We don’t have deduplication info in event manger yet. We will check in a few days.
One thing I forgot to mention in the original post is that the order_id is not the real one, it looks like “encoded”.
If we want to add the order ID in the client tag, do we need to send it the same format or the “encoding” is managed by the FB tag?
Thank you for you help

This “encoded” id you see in Events Manager is the expected behavior - it’s ok.
You may pass plain order_id value to the tag, the rest will be handled by FB.

1 Like