Woocommerce Order Meta Data Mapping

I am newer to Make and really enjoying the power of this product - prior I was very familiar with being “zapped”.

As I have been re-building all of my processes here, one item I initially struggled with was various modules I use with wordpress and woocommerce, being able to get the resulting data from those fields. A different topic is why some show up laid out under “additional fields” while other inputs don’t, but what is consistent is the data will always show up under Meta Data.

What was not clear to me initially and maybe not to others, or even new users in the future, is how easily you can grab that data for your various modules.

In this example I have about 25 Meta Data values that pulled during this “get” order.

Any of these data points can be used simply by calling for them using “key” with a get command. The key will be the slug (which can typically be found in the specific module you used to build the custom field in woocommerce).

So in this example if I wanted to use the _shipping_store_number, the _billing_store_number, _billing_delivery_contact_name, phone, and email, to fill in data in a google sheet row, or a database entry such as Knack, I can get those values using the following “get” command.

please note my “metaData” in my instance is 6. - the numeric value displaying for you would be different - you can find your value by typing the commands out and dragging the metaData into the field.

{{get(map(6.metaData; ‘value’; ‘key’; ‘_shipping_store_number’); 1)}}

{{get(map(6.metaData; ‘value’; ‘key’; ‘_billing_store_number’); 1)}}

Here is what it looks like being written into a field in Knack.

Hope this helps others more quickly get to the results you need when creating scenarios using wocommerce or any other systems where the data is written in an array and you are not needing to parse it through an iteration for use.


Hello there @Ward_McMillen welcome to the community :wave:

I just wanted to quickly jump in and say thank you for sharing what you’ve figured out with us. This might totally come in super handy to many users in the future. Thanks for thinking about the community :purple_heart:

Hello Ward_McMillen,

Thanks for this showcase, it’s helpful for me.

But in my own case, the Meta Data I want to extract from a Woocommerce order is not directly available, it is located in a collection :

I can’t find an easy way to get for example the code & name in the “value” collection.

Someone has an idea ?
Thanks for your help.

I haven’t ran into that deep of a collection “yet”… I would have to “tinker” with it to see if you could create an array for that and then try to extract? Not sure, but no to this point I have not yet came across or needed to deal with this. But I am glad you exposed the possibility.