Set Lowest Shipping Quote
Automatically check available shipping quotes for selected Linnworks orders, apply the most suitable shipping service, and flag orders that need manual review when no valid quote is found.
Selecting shipping services manually can take time and may lead to inconsistent service choices across orders. The Set Lowest Shipping Quote macro helps automate this process by checking available shipping integrations, retrieving live shipping quotes, and applying the most suitable service to each selected order.
This macro reviews each selected order, requests available shipping quotes, applies defined service-selection logic, and updates the order with the selected shipping method. If no suitable quote is found, the macro adds the order to a review list and assigns a Check Order identifier so the team can investigate it manually.
With this automated approach, your team can reduce manual shipping checks, improve order processing speed, and keep a clear record of old and new shipping service details.
Keep shipping selection consistent by automatically applying the most suitable available quote and flagging orders that require review.
Configure the Macro
Once the app is installed, you need to create a macro configuration so the system knows which macro to run when the rule is triggered.
This setup can be adjusted anytime based on your operational requirements.
Steps to Configure
Go to Apps > Macro Configuration and click + Add new configuration.

Select the GetCheapestShippingandAssignService macro and click Create Configuration

This creates a new configuration where you can define the configuration name. The selected order IDs are passed to the macro when it runs from the rule.
In the Macro Configuration screen, add the configuration name.

Example configuration name:
Get Cheapest Shipping and Assign Service
This macro does not require additional user-entered parameter values. The OrderIds value is provided automatically by the selected orders or rule context.
Make sure to enable the macro to continue with the Rule Engine configuration.

Note: If the macro is not enabled, it will not appear in the Action value list when setting up the rule.
Go to Orders > Rules engine and click + Add new rule.

Key Benefits
Enter the rule name and click Create.

Click Add new, select Condition, set the condition as required, and save it.


Add the macro action and click Save.


In the Add action window, enter the Action name, for example:
Get Cheapest Shipping and Assign Service
-
Set Action type to:
Execute a macro
In Action value, select:
Get Cheapest Shipping and Assign Service
- Click Save
Note: If the macro is not enabled, it will not appear in the Action value list when setting up the rule.
Review the saved rule setup.

-
Verify the condition and action are connected correctly
-
Click Save in the bottom-right corner to save the rule
Manual shipping service selection can slow down order processing, especially when orders need to be checked against multiple enabled shipping integrations. This macro helps reduce that effort by automatically checking quotes and applying the most suitable shipping service where possible.
Reduce Manual Shipping Checks
Eliminates the need to manually open each selected order and compare available shipping quote options.
Improve Shipping Selection
Applies a suitable shipping service based on available quotes and defined service-selection logic.
Flag Orders for Review
Assigns a review identifier to orders where no suitable quote is found, making exceptions easier to locate.
Maintain Shipping Audit Data
Saves old and new shipping service details as order extended properties for easier review.
Save Operational Time
Allows teams to process shipping service updates across multiple selected orders instead of updating each order manually.
Update Only When Quote Exists
The macro updates the shipping method only when a suitable quote is available.
How It Works
The macro checks each selected order, requests available shipping quotes from configured shipping integrations, and applies the most suitable quote based on the defined logic.
Step 1
The macro starts processing the selected orders passed through the OrderIds parameter.
Step 2
It loops through each selected order ID and retrieves the order details from Linnworks.
Step 3
For each order, the macro retrieves the enabled shipping integration list from the Linnworks Shipping Service API.
Step 4
It requests live shipping quotes for the order using the available shipping integration accounts.
Step 5
The macro applies defined quote-selection logic. For a defined sub-source or preferred service group, it prioritizes the matching service rules. Otherwise, it selects the quote with the lowest total cost.
Step 6
If a suitable quote is found, the macro updates the order shipping method using the selected quote.
Step 7
The macro saves extended properties on the order to record the old shipping service, new shipping service, old shipping cost, and new shipping cost.
Step 8
If no suitable quote is found, the order is added to a review list.
Step 9
After all selected orders are checked, any orders without a suitable quote are assigned the Check Order identifier.
Usage of App
This macro is designed to update selected orders automatically once it is configured and triggered from the Rule Engine. It is useful before dispatch, during shipping validation, or when orders need shipping services assigned based on available quote data.
OrderIds
Defines the Linnworks order IDs that should be processed. Only these selected orders are checked and updated.
Shipping Integration List
The macro retrieves the enabled shipping integrations and uses them to request available quotes for each selected order.
Quote Selection Behaviour
The macro applies defined service-selection logic first where applicable. If no special rule is matched, it selects the quote with the lowest total cost.
Shipping Method Update
When a suitable quote is found, the macro updates the order shipping method using the selected quote details.
Review Identifier
Orders with no suitable quote are assigned the Check Order identifier so they can be reviewed manually.
Extended Properties
The macro stores the previous and new shipping service details on the order for audit and review purposes.
Execution Logging
The macro records order checks, selected service details, shipping quote responses, and any errors using the macro logger.
Key Points to Remember
-
The macro processes only the order IDs provided in OrderIds
-
The macro uses configured shipping integrations to request quotes
-
A defined sub-source or preferred service group can follow special quote-selection logic
-
If no special rule applies, the quote with the lowest total cost is selected
-
The shipping method is updated only when a suitable quote is found
-
Orders with no suitable quote are assigned the Check Order identifier
-
The macro creates the Check Order identifier if it does not already exist
-
Old and new shipping service information is saved as order extended properties
Once the macro is running, it helps ensure selected orders have a suitable shipping service applied before dispatch processing continues.
What You Can Expect
-
Shipping quotes are automatically checked
The macro retrieves available quote options from configured shipping integrations for each selected order -
Suitable shipping services are applied
Orders with valid quotes are updated with the selected shipping service -
Lowest-cost selection is used when no special rule applies
If the order does not match defined priority rules, the macro selects the quote with the lowest total cost -
Orders needing review are clearly marked
Orders where no suitable quote is found receive the Check Order identifier -
Shipping changes are recorded
The macro stores old and new shipping service details and costs as extended properties -
Execution is logged
The macro records order checks, quote activity, selected shipping details, and errors
Overall Impact
This macro improves shipping assignment efficiency, reduces manual quote comparison, and helps teams identify orders that require manual shipping review.
What To Do After the Macro Runs
After the macro has completed, review the selected orders if needed to confirm that the shipping service was updated correctly or that any unresolved orders were marked for review.
Steps to Follow
Step 1
Open Linnworks and locate the orders included in the OrderIds parameter.
Step 2
Review the shipping service on the affected orders.
Step 3
Confirm that orders with available quotes were updated with the selected shipping service.
Step 4
Check the order extended properties to review the old and new shipping service details.
Step 5
Review any orders marked with the Check Order identifier and resolve them manually if required.
Step 6
Continue with normal order validation, label generation, packing, or dispatch processing.
Why This Matters
Keeping shipping services accurate helps:
-
Reduce manual shipping quote comparison
-
Improve dispatch preparation
-
Prevent orders from progressing without a valid shipping service
-
Make unresolved quote issues easier to identify
-
Keep shipping changes visible through order extended properties
Best Practices
To get the most value from this macro, make sure your shipping integrations are configured correctly and use the macro before dispatch processing begins.
Recommended Guidelines
-
Confirm shipping integrations are active
Make sure the required shipping integrations are enabled and able to return quotes -
Run before label generation
Use the macro before printing labels so the correct shipping service is applied first -
Review selected orders carefully
Ensure the correct order IDs are passed into the macro before running it -
Monitor orders marked for review
Check orders assigned the Check Order identifier and resolve quote issues manually -
Use defined service rules carefully
Keep any preferred service-selection logic aligned with your operational requirements -
Check logs after execution
Review macro logs to confirm successful quote checks, service updates, or errors
Accurate shipping service selection helps keep dispatch processing smooth and reduces avoidable manual work.
Example Scenario
To better understand how this works, here’s a simple example:
Configured setup:
-
Shipping integrations are enabled in Linnworks
-
The macro is configured in Macro Configuration
-
The Rule Engine triggers the macro for selected open orders
Selected orders:
-
Order A has multiple available quotes → The macro selects the lowest total cost quote and updates the shipping service
-
Order B matches a defined service-selection rule → The macro applies the suitable preferred service based on the configured logic
-
Order C has no valid quote returned → The macro does not update the shipping service and assigns the Check Order identifier
-
Order D has a quote returned, but no defined priority rule applies → The macro selects the lowest total cost quote
What This Means
-
Orders with valid quotes are automatically updated
-
Orders without valid quotes are clearly marked for review
-
Old and new shipping details are stored for visibility
-
Your team can focus on resolving exceptions instead of manually checking every order
Final Summary
The Set Lowest Shipping Quote macro helps selected Linnworks orders receive a suitable shipping service automatically by checking available shipping quotes and applying defined selection rules.
By reducing manual quote comparison, recording shipping changes, and marking unresolved orders with the Check Order identifier, this macro supports faster dispatch preparation and more reliable shipping service assignment.