What Is Meta Data?
WordPress has a facility to store unstructured data against most of its managed content. These include posts, pages, media, users, the list goes on.
WooCommerce is using this meta data feature for its content types such as Orders, Products, Coupons, Customers and more. It is a powerful concept with which plugin or theme developers can use to easily add new functionality and data without the need to modify how WooCommerce stores data internally.
How is WooCommerce Zapier Handling Meta Data?
WooCommerce Zapier has always supported access to WooCommerce Meta Data.
In WooCommerce Zapier version 1.x every individual meta data record was stored as a simple individual field with the corresponding value.
Back in April 2020, when we released version 2, we decided to change our data structure. We switched over to the WooCommerce REST API, which enabled us to always be in sync with the current WooCommerce version features and opened the possibilities to allow incoming connections (Actions) such as Search, Create and Update.
The most visible part of our data structure changes in version 2 was the Meta Data. The individual fields in version 1 were changed to a complex object in version 2, because this is the format that the WooCommerce REST API uses.
What Is the Problem With an Object?
Since releasing version 2 six months ago, we have learned that these new meta data objects are difficult to use, and it required a complex Code by Zapier in order for users to use meta data in their Zaps. This also meant that users now needed a paid Zapier plan because multi-step Zaps were required when using meta data.
We needed to come up with a simpler solution to let our users use meta data in their Zaps, while also keeping the WooCommerce REST API’s internal structure for meta data.
There is also a limitation in version 2 that meant that in a single Action step (Create or Update), users were able only to add one meta data record at a time. Adding multiple meta data records required a create action, followed by one or more update actions.
What Is the Solution?
On 12 November 2020, we released a new version of WooCommerce Zapier which adds the ability to access those individual meta data fields in Zaps without needing a Code by Zapier step and a paid Zapier plan.
How Does It work?
Next time when you create a new WooCommerce Zap or edit an existing one, you will have access to the new fields. WooCommerce meta data is expanded into individual fields to make them more accessible and usable in subsequent steps in your Zaps without needing a multi-step Zap and a Code by Zapier step:
Furthermore, during a WooCommerce Create step, you now have a new Meta Data List field which can be used to add multiple meta data records when creating new coupons, customers, products and orders.
Where Can I Make Use of This New Feature?
This new functionality is most apparent for Triggers and Searches, but there is an excellent reason to use it in Create actions as well – in a Zapier Zap, you can add multiple Steps so any step output can be an input for subsequent steps.
Are There Any Limitations?
Meta Data fields typically vary from one resource to another.
For example, if multiple payment gateways are used, one order may contain a specific meta data field (key), however, another order may not. This means that a meta data field(s) can be missing or can be different in each Zapier task.
WooCommerce meta data records can store multiple values for the same field (single key). In this case, the last value for a key is used.1
Some plugins are not consistently using meta keys. For Example, the Product Add-Ons extension stores addon price information in the meta key, which can result in a different key from order to order, making the meta data field name unpredictable and difficult to use in Zap actions.
What about Examples?
Accessing Stripe payment information: When Stripe is used as a payment gateway, the WooCommerce Order has a
stripe_fee meta data key, and you can access it using the Meta Data Stripe Fee field in Zaps.
Subscription renewal information: If the WooCommerce Subscriptions plugin is installed and the order a renewal order for a subscription, you can access the corresponding Subscription Id via the Meta Data Subscription Renewal field.
Additional checkout fields: For example, with the WooCommerce Checkout Field Editor plugin, you can create a custom field in your checkout, named “Delivery Date”, and the data will be accessible in the Meta Data Delivery Date field in your Zap.
Is there any further information?
- Based on the creation date ↩︎