Set a variable in a path to continue zap with that variable
Hi
I’ve just upgraded my yearly subscription so I can use paths. But they seem to behave different then expected.
What I want to achieve:
Step 1: run every month Step 2: get a list of orders from woocommerce (API call) Step 3: depending on the month, store a unique ID (which is a variation ID from one a product in woocommerce) Example: January → 123 February → 124 … and so on Step 4: Loop the woocommerce orders (from step 2) Step 5: Only continue if ID = the stored ID (stored at step 3) Step 6: subscribe the specific woocommerce customer into a webinar series
I manage to achieve all the steps individually, but I can’t seem to be able to put them into one big ZAP. It seems that after a path, I can’t add any other steps? I only see 2 possible solutions:
1) Add step 4, 5 and 6 to each path-action (which means, 12 times in total, no duplicate option and when I want to change something, I need to apply it 12 times)
2) I wanted to create a sub-zap which stored the unique ID’s depending on the month. But apparently you can’t use Paths in a sub-zap.
Anyone out here who can help me with this? If not I’ll have to contact zapier to ask for a refund :-P
Thanks in advance!
EDIT: somehow I suddently can create a sub-zap containing a path and I don’t get an error. So i’ll try this tomorrow. If someone got a better idea: feel free to share it anyway
Page 1 / 1
Hey @Hexmans!
That’s an awesome workflow you’ve got there! I’m impressed at the complexity and thought you’ve put into it :) Thanks for all of the details you provided.
I think I understand what you’re trying to do but I’m not 100% clear on Step 3.
Step 3: depending on the month, store a unique ID (which is a variation ID from one a product in woocommerce) Example: January → 123 February → 124 … and so on
A couple of questions:
Where are you storing this unique ID (Storage by Zapier? Somewhere else?)
You said that depending on the month, you store one of the variation IDs from a product in WooCommerce. What’s the reason for this? I’m trying to connect how the list of WooCommerce orders connect to the month and to the webinar series.
I think with that information I can help you out better. Thanks!
Hey @Hexmans!
That’s an awesome workflow you’ve got there! I’m impressed at the complexity and thought you’ve put into it 🙂 Thanks for all of the details you provided.
I think I understand what you’re trying to do but I’m not 100% clear on Step 3.
Step 3: depending on the month, store a unique ID (which is a variation ID from one a product in woocommerce) Example: January → 123 February → 124 … and so on
A couple of questions:
Where are you storing this unique ID (Storage by Zapier? Somewhere else?)
You said that depending on the month, you store one of the variation IDs from a product in WooCommerce. What’s the reason for this? I’m trying to connect how the list of WooCommerce orders connect to the month and to the webinar series.
I think with that information I can help you out better. Thanks!
First of all: thanks for the reply @nicksimard I’ve got a history in IT (so maybe the habit of making things too complicated) and currently I’m managing some automations like this via a raspberry PI (and NodeRed) but it takes too much maintenance and/or bug fixing and/or monitoring the online time. So I wanted to try to simplify it by using zapier. It’s also easier to have everything at one place.
Customers can buy/register themselves for a specific start date of the program and make a choice of three different course tracks (= DIY, Met Begeleiding, VIP)
Each first day of the month, a new program starts. For example 1st of august as shown in the screenshot
Depending on the chosen course track (only Met Begeleiding and VIP), the customer gets access to 5 webinars, each at a specific airtime. Subscribing for the 1st of august means: broadcasts on 29 july, 07 august, 14 august, 21 august and 28 august. I want them to be subscribed automatically to these broadcasts.
My Conlusion/experience for now of trying to put it all together in Zapier:
I want this Zap to run each 28th of the month so my customers automatically get access to the webinar series. Which means I need to collect the correct customer email/name from my woocommerce orders.
The API from woocommerce can only filter on a specific product ID, not on a variation ID. Which means my API call looks like this:
==> This way I get a list of all the completed orders that bought the main product (in my case, product ID 2111). But I need to know in Zapier which customer bought the specific variation ID’s combined with the subscibed month (So: 1 august → DIY/Met Begeleiding/VIP). Because not all tracks need to be subscribed on the webinars (only Met begeleding and VIP) plus I only need the customers for a specific start date.
Answers on your questions:
yes, I’m using the storage by Zapier. So I can set the specific variation ID’s for each month. Let’s say the Zap runs on 28 july → I need to get all the customers subscribed for the start on 1 august (= variation ID combinations of startDate/Track which means everyone subscribed for start date 1 august AND VIP or Met begeleiding track. Which translates in woocommerce Variation ID’s: 3574 and 3575:
So, when it’s 28the of july, the zap runs and I need all the customers subscribed for 1 August with the track VIP or met begeleiding. Which means, all orders with variation ID 3574 or 3575.
My flow would be:
step 1: start at 28th of each month (ex: 28 july) step 2: +1 on the current month (ex: month 7 becomes number 8) step 3: get a list of all the woocommerce orders for product id 2111 of the past year step 4: pass the value from step 2 (ex: 😎 to a sub zap. This sub zap contains the mapping of the month/variation ID’s. So, when passed 8 it will store in Storage by Zapier myStorage.VIP = 3575 and in myStorage.Begeleiding. 3574 step 5: continue when step 4 is finished. Loop the line items (woocommerce orders) from step 3. step 6: in the loop: only continue for those line items where variation_id = myStorage.VIP or variation_id = myStorage.begeleiding (normally mapped with the correct ID’s in step 4) step 7: when continued, and thus I’ve got a customer subscribed for the program starts on 1 august with track VIP or met begeleiding => subscribe to the specific webinar series
Maybe I’m stretching out the functionality of Zapier? Although what I want isn’t really that special in my honest opinion :-)
But maybe I’m overlooking something. If only I could pass the variation ID to the woocommerce API call; It would have been much simpeler :-D
EDIT: I don’t really need to use the storage by Zapier since a sub-zap can return values by itself apparently.
Thanks for all the extra info @Hexmans!
Let me work through this and see if we can get something going for ya :) Stay tuned.
Thanks for looking into it. I’m curious to see what you come up with. Here’s my solution that I assume it works (final test: the trigger will fire up the 28th at 5pm)
Main Zap:
Some more details of the steps:
The sub-zap:
In detail:
Maybe a bit strange that I solved my own question 😛 But I’m always open to a better approach since I’m still learning how to use the paths.
Another way I just came up with; would be to just do a API call to woocommerce and retrieve the variation ID’s in that way 🤔 That’s actually easier. Then I don’t have to manually define the mapping of the variation ID’s.
@Hexmans that’s awesome! Thanks for coming back with that. My apologies for not responding sooner.
I’ll take a closer look at it and see if I can come up with any improvements. Great job :)
@Hexmans that’s awesome! Thanks for coming back with that. My apologies for not responding sooner.
I’ll take a closer look at it and see if I can come up with any improvements. Great job :)
The only thing I changed from the solution above is that I don’t use a subzap anymore with the storage. I just added 2 extra webhooks to get the specific variation ID from each program for the specific month. In woocommerce I’ve added a SKU identifier to each variation. So the SKU for the variations from august are Begeleiding8 and VIP8. This way I can easily get the 2 ID’s via a basic webhook.