Shopify: Limit on maximum number of results to be worked with

Hi all,

I have a fairly simple scenario that I know is working. It runs hourly, watches for new orders in Shopify and based on filters that identify certain orders containing specific products, creates a purchase order in Xero and adds the order to a Google sheet. The basic flow is below…

The issue I’m having is that the scenario is only working on a single order, even if multiple orders are received.

Let’s say I have two orders that are received within 1 hour which match the filters. Let’s say those order numbers are 42430 and 42450.

I would expect both these orders to be processed by Make. The two matching Shopify orders should trigger the scenario twice, creating two separate purchase orders in Xero and 2 orders should be added to the Google sheet.

Currently, the scenario will only pick up the first order, 42430. It never picks up the second order 42450, even if I manually run the scenario a second time. When the scenario automatically runs at its set time an hour later it still doesn’t pick up 42450.

However, if I choose manually to set the scenario to start from order 42450 (as shown below) and then manually run it, it picks up order 42450 and processes it as expected.

I’m guessing this is due to the limit setting below which is currently set to 1? The thing is, I don’t know what the upper limit should be. We may receive anything from 50 to 500 orders each hour, and perhaps 5 - 10 of these will validate the filters and that trigger the scenario. These numbers vary depending on season, however.

Is there a way I can simply tell the module to run through all new orders that have been received since the last time it checked, rather than defining an arbitrary fixed number that might not be high enough? Or could I set it to 100000000000 as an example?

Have you considered using the Shopify New Event module? That should fire whenever there is any event (which includes orders, products, customers, etc…). I don’t know if that will end up using too many Ops for you though.

Otherwise, you would just need to set the limit to what you think would be the most in any given hour ever. If that happens to be 500 then at most it will process 500 an hour. If it happens to go over then it will take a couple hours or more for it to catch itself up.

3 Likes

Hey @Donald_Mitchell, thank you for the reply.

I have not, I’ll take a look into this. Thanks for highlighting it.

Got it, thanks for explaining. Maybe you know… let’s say I set the limit to 100 and the scenario runs every hour. I ensure the “Choose where to start” setting is configured to “From now on”.

What happens if we only receive 10 orders that hour? Will Make only look at those last 10 orders since the scenario last ran? Or will it go back over order data it has already looked at during the previous scenario run?

I ask because while testing the limit setting a some time ago, it looked like Make was going back through the previous 100 orders each and every time.

E.g. if we receive just 10 orders in the last hour, Make was checking these 10 orders plus 90 orders it had already looked at 1 hour previously. This was leading to duplicate purchase orders and Google sheet data.

Is this the expected functionality? Or does Make know not to look at Shopify order data it has already processed?

From what I understand, Make should keep track internally.
It shouldn’t go back and get orders that were previously processed, unless you’ve messed with the “Choose where to start” settings OR if it’s an entirely new module.

4 Likes

Thanks @Donald_Mitchell, appreciate the clarification!

2 Likes