Applying a Rule to Existing Orders
After you create a rule with the Ablestar Automatic Order Tags app you can run that rule against existing orders in your store. The backfill process will re-process the orders and apply tags to them as necessary so that your all the orders in your store are in a consistent state. This feature is not available on the free plan.
In this article we'll show how to apply rules to existing and discuss some things to keep in mind while re-processing them.
Create and Save a Rule
In order to apply a rule to previous orders the rule must be saved. If you have any unsaved changes to the rule you'll need to save them first before continuing:
Open up the Apply Rule Window
On the right side of the page in the 'Apply Rule to Previous Orders' box click on the Apply Rule button. This will open up a window that allows you to select which orders you want to apply the rule to:
Here you can choose different statuses and dates for the orders to process.
The 'Start Date' and 'End Date' input boxes allow you to enter optional start and end dates for the orders you want to backfill. Several things to keep in mind are:
- The dates should be in the format YYYY-MM-DD. For example, October 2, 2021 would be written as 2021-10-02.
- The fields can be left blank. If the start date is blank all orders from your first order will be processed. If the end date is blank orders through your more recent order will be processed
- The dates are inclusive, is the start date is 2021-01-01 and the end date is 2021-01-03, all orders placed on January 1, 2 and 3 will be processed
- The timezone for the dates is the same as your Shopify store
After you've selected the filters click on the Preview Results button. Depending on the number of orders in your store this may take a few seconds but then you'll be shown the number of orders that will be reprocessed:
If this looks correct click on the button again and the orders will start processing in the background.
You can see which orders have been processed by clicking on the Activity Log link in the left menu.
Notes about Applying a Rule to Existing Orders
There's a few things to keep in mind while reprocessing existing orders. We recommend you read this section carefully to understand how the processed works.
Waiting for the Initial Order Analysis to Complete
When you first install the app we analyze all the orders on your Shopify store. We do this so we can calculate things like the number of orders a customer placed on a certain date and all data is deleted 48 hours after you uninstall the app.
In order to apply a rule to existing orders, we will need to have completed this analysis. If you've just installed the app and have a large number of orders you might need to wait for the analysis to complete before reprocessing them.
Order Status and Rule Triggers
When you create a rule you specify a trigger to determine when the rule is run. This can be something like when an 'Order is Created' or when an 'Order is Fulfilled'. When you apply a rule to existing orders, the trigger will be compared to the current state of the order to see if the rule should be applied to that order (at which time the rule conditions will be checked to see if the tags need to be added or removed).
A few examples might help make this more clear:
- If you have a rule that has the trigger "Order is Created" it would match against all orders
- A rule with the trigger "Order is Cancelled" will only be checked against orders in the cancelled state
- The "Order is Partially Fulfilled" trigger will only check orders that are currently in the partially fulfilled state. If an order was in the partially fulfilled state, but now it complete fulfilled, it would be skipped
Updating the Tags
If a rule's trigger matches the order (as we discussed above) and all the rule's conditions match the order, the app will apply or remove any tags from that rule to the order and/or customer. As with the normal process, the app will query the Shopify API directly to retrieve the current tags and then just update the tags of the order or customer. This process usually takes a fraction of a second and will not overwrite any other customer or order attributes.
We recommend testing the backfill process against a small set of orders first to make sure it works as expected.
If you have any questions about applying a rule to existing orders please let us know and we can help explain things further.