Hi everyone. Brand new here and have spent the past couple of weeks configuring a scenario that I originally expected to be mostly “plug-and-play” based on advertising but quickly learned I needed to dust off my long-retired developer skills and dive into the deep end (the QuickBooks sales receipt module having a number of un- or mis-mapped fields didn’t help).
Anyway, I’m using an off-the-shelf Make trigger module to monitor order status changes in our ecommerce store.
First I have to contend with the fact that the webhook triggers on all order status changes even though I only want want to work with records that have changed to a specific status (shipped) so they aren’t processed through the scenario to QB until they are final and complete. (Most orders go through 2-3 status changes before actually being shipped.)
There is no alternate webhook available that is status-specific so I have to accept it will trigger multiple times for every order which is fine until it’s not.
I have a filter after the module that only allows orders with a shipped status number to be processed by the scenario, but that doesn’t stop records with all of the other unwanted order statuses from clogging up the queue.
Instinctively I would have expected to have a router that either allows the record to continue on through the scenario, or simply discards it pending future status changes until eventually it is in shipped status and can be posted, but apparently it’s not that simple…
My question is if there is an easy way to “discard” a record that’s just been created via webhook and is still “in” the scenario but doesn’t meet the requirements for further processing? I haven’t been able to find anything built-in to accomplish this (likely because it doesn’t exist).
I realize that I could create an entire router branch, sub-scenario or standalone scenario to go through all the records in the queue one-by-one and figure out which ones to delete and which ones to keep, but that seems rather clunky and operation-inefficient. I also don’t want to just delete everything in the queue since records with the correct status code will not trigger the webhook again unless we manually change statuses back and forth which is not a practical solution.
Curious to hear any thoughts and suggestions, especially if I’m being naïve or unreasonable to think that there should be a built-in way to discard individual records that are active in a scenario in real time. Thanks!