Hey there, Would you mind describing the workflow in the following format so I can see how it breaks down, and where your utility might be failing:
App 1 > App 2 > App 1 > App 2
If it’s currently (as I understand it)
Stripe > Zapier Utility > Xero
Paths would work here - So if the item exists, you would do something, and if it doesn’t you would do something else
Zapier Utility = Pass > Update Xero
Zapier Utility = Fail > Create thing in Xero
Thanks Saastronomical for the response. You are correct about the flow, however I have given a more detailed flow to explain:
Check for Stripe Charge → Find the contact in Xero → Translate Item Code using Zapier Utility → Translate Revenue Category using Zapier Utility → Create an invoice in Xero against the contact.
The problem is in the Zapier Utility where if no match is found, the process continues. The Item Codes in Xero are manually created since they map to a GL code (for accounting purposes) & thats a manual decision.
My issue with Zapier Utility is that it is treated as success (even if there is no match found). Then it fails in a future step. When I see the failure, I would manually create the item in Xero but now I cannot replay this Zap since it would replay only the failed step. So it never replays the Utility task again. I end up deleting this Zap Run & creating the invoice manually. Sometimes its a lot of manual work & I cannot find a way to make the utility fail - which is very inconvenient.
Thanks
I missed mentioning that Paths would still not resolve the issue of “replaying Zapier Utility” which is what I need to re-run the Utility. I do fix the utility (for mapping the new item code) apart from creating an item code in Xero. But there doesnt seem to be a way to re-run the utility on the failed zap.
Hey - When you say “translate” what do you mean exactly?
Is there any way you can check if your item exists before running the utility?
What I meant was that an item may have description like “Course for learning guitar” and I am translating into an item code “COURSE-GUITAR”. Thats what I am doing through utilities. I dont know how I can check for item exists? but even if I find a way, the zap would go through else and complete the Zap. I cannot stop it in between - isnt it?
Ok. That makes sense. Is there a logic to this? I’m hesitant to suggest it without knowing exactly what’s happening, but…..
you might just want to take this lookup/translation functionality out of Zapier, and bring it into a database like Airtable. If you use Airtable as the source of truth for what your tags are, you can keep them in sync, and create them before then creating it in Xero.
So - If you export all of your values into Airtable and have that as the source of truth, you can then use the “Find value” in Airtable action (and then automatically create it if it doesn’t exist)
THEN - You will have the output value either way, and can be happy that you
- Don’t have any edge case dependencies
- Have a source of truth for your translations
- Can use these translations elsewhere (e.g in your Marketing)
I really hope this helps, and I’m also really sorry if it can be done another way that doesn’t involve you using another app
Thanks Saastronomical. It makes the utility with a lookup kind of a bummer & yes, I can use third party tool. The primary gripe that I have is with the way failures are handled & replay is permitted within Zapier.
It is not a good design for Zapier to decide what is a failure & then force the user to accept that meaning of failure during replay. Something like lookup is very common & lack of a lookup should be a failure IMHO.
I would look at Airtable & check if a missing lookup in Airtable can be made to fail somehow.
Thanks for your help.