Automatic Merge
Automatic Merge - OrderMerger
Overview
Configure rules and settings for automatic order merging. The app monitors new orders and automatically merges them based on your criteria.
Merging Rules
Define when orders should be automatically merged by creating custom rule groups.
Built-in Rules (always active):
- Customer ID is identical
- Shipping address is identical
Creating Custom Rules:
- Click "Add Rule Group" to create new conditions
- Set field conditions (customer tags, order properties, etc.)
- Choose logical operators (AND/OR)
- Save and test your rules
Common Rule Examples:
- Orders placed within 1 hour of each other
- Customer has specific tags
- Orders from same shipping method
- Items from same warehouse location
Merge Delay Time
Set how long OrderMerger waits before checking if an order is eligible for merging. This allows other apps and services to process orders first.
Delay Options:
- Seconds: For testing (0-59)
- Minutes: Standard setting (0-59)
- Hours: For complex workflows (0-23)
- Days: For special cases (0-7)
Recommended Settings:
- Simple stores: 0-5 minutes
- Standard stores with apps: 15-30 minutes
- Complex stores with ERP: 1-2 hours
Conflict Handling
Tell Order Merger how to resolve differences when merging orders with conflicting information.
Shipping Rate to Keep:
- Purpose: When orders have different shipping costs, this determines which shipping amount appears on the merged order
Options:
- Keep Oldest Order Rate: Use shipping cost from the first order placed
- Keep Most Recent Order Rate: Use shipping cost from the latest order
- Keep Cheapest Rate: Use the lowest shipping cost among all orders
- Keep Most Expensive Rate: Use the highest shipping cost among all orders
- Combine Rates: Average all shipping costs together
- Set to Zero: Remove all shipping costs (used when setting order value to zero)
- Example: If Order A has $5 shipping and Order B has $12 shipping, "Keep Most Expensive" would set the merged order's shipping to $12
Refund Settings:
Refund Unused Shipping:
- What it means: When orders are merged, only one shipping charge is needed. This setting automatically refunds the unused shipping costs from the original orders back to the customer.
- Example: If Order A has $5 shipping and Order B has $8 shipping, after merging with $8 shipping kept, the $5 from Order A gets refunded.
Refund All Shipping:
- What it means: Refund ALL shipping costs if the combined order subtotal meets or exceeds your set threshold amount.
- How it works: The system calculates the total subtotal price of all orders being merged and compares it to your threshold. If the total subtotal is greater than or equal to your threshold, ALL shipping costs get refunded.
- Subtotal calculation: Each order's subtotal is the total value of all products in that order, after applying any product-level discounts (like buy-one-get-one or percentage discounts), but before adding shipping charges, taxes, or other fees. The system then adds up all individual order subtotals to get the combined total.
- When to use: When you want to offer free shipping on merged orders above a certain purchase amount.
- Example: If your threshold is $75 and orders have subtotals of $40 + $50 = $90 total with shipping costs of $5 and $8, ALL shipping costs ($5 + $8 = $13) get refunded.
- Important: - This setting can result in larger refund amounts. Monitor your shipping costs carefully and set appropriate thresholds based on your order subtotals.
Shipping Method Name Options:
- Purpose: Controls the shipping method name that appears on the merged order (e.g., "Standard Shipping", "Express Delivery")
Options:
- Keep Oldest Order: Use shipping method name from the first order placed
- Keep Most Recent Order: Use shipping method name from the latest order
- Keep Cheapest: Use the shipping method name from the order with lowest shipping cost
- Keep Most Expensive: Use the shipping method name from the order with highest shipping cost
- Combine Names: Combine all shipping method names together
- Example: If Order A uses "Standard Shipping" and Order B uses "Express Delivery", "Combine Names" would create "Standard Shipping_Express Delivery"
When Order Tags Exist:
- Purpose: Determines how to handle order tags when merging orders that have different tags
Options:
- Discard All Tags: Remove all tags from the merged order
- Keep Oldest Order Tags: Use only the tags from the first order placed
- Keep Most Recent Order Tags: Use only the tags from the latest order
- Keep All Order Tags: Combine all unique tags from all orders (removes duplicates)
- Example: If Order A has tags "VIP, Rush" and Order B has tags "VIP, Wholesale", "Keep All Tags" would result in "VIP, Rush, Wholesale" on the merged order
When Refunded Items Exist:
- Purpose: Handles items that were previously refunded in the original orders during the merge process
Options:
- Discard Refunded Items: Completely remove refunded items from the merged order and adjust subtotal, taxes, and discounts accordingly
- Keep Items as Unfulfilled: Include all refunded items in merged order as unfulfilled line items (they won't be shipped again, but appear in order history)
- Keep Items as Unfulfilled and Take Off Refunded Sum: Include refunded items as unfulfilled AND add the refunded amount as a discount to account for money already returned
- Keep Items as Fulfilled and Take Off Refunded Sum: Include refunded items as fulfilled AND add both item refunds and general refunds as discounts
Control new order name
- Purpose: Determines how the merged order will be named in your Shopify admin
Options:
- Ascending Order: Let Shopify automatically assign the next available order number (e.g., #1004 if last order was #1003)
- Combine Merged Orders Name: Combines original order names with "_OM" suffix for easy identification.
- Custom Order Name: Create your own naming pattern using dynamic variables
Combine Merged Orders Name:
- Format: Original order names joined with underscores, plus "_OM" suffix
- Example: Orders #1001 & #1003 → "#1001_#1003_OM"
- Use case: Perfect for tracking which specific orders were merged together
Custom Order Name:
Available variables:
{oldest-order-name}
: Name of the first order (e.g., #1001){most-recent-order-name}
: Name of the latest order (e.g., #1003){ascending-order-names}
: All order names joined with underscore (#1001_#1003){descending-order-names}
: All order names in reverse order (#1003_#1001)
Examples:
- "MERGED_{oldest-order-name}" → "MERGED_#1001"
- "COMBINED_{ascending-order-names}" → "COMBINED_#1001_#1003"
Custom Tax Name:
Purpose: Control how tax line items appear in the merged order
Available variables:
{original-orders-names}
: Names of all merged orders (#1001_#1003){original-tax-names}
: Names of tax lines from original orders{original-tax-values}
: Tax amounts from original orders (formatted with currency)
Examples:
- "Tax from {original-orders-names}" → "Tax from #1001_#1003"
- "Combined Tax: {original-tax-values}" → "Combined Tax: $2.50_$3.75"
Custom Discount Name:
Purpose: Control how discount line items appear in the merged order
Available variables:
{original-discount-names}
: Discount codes from all orders{original-discount-values}
: Discount amounts from all orders{highest-value-discount-name}
: Name of the highest value discount{lowest-value-discount-name}
: Name of the lowest value discount{most-recent-order-discount-name}
: Discount from latest order{oldest-order-discount-name}
: Discount from first order
Examples:
- "Discounts: {original-discount-names}" → "Discounts: SAVE10_WELCOME20"
- "Best Deal: {highest-value-discount-name}" → "Best Deal: WELCOME20"
Order Actions
Configure what happens to new merged orders and original orders.
New Orders (Merged Orders):
Add Tags:
- Purpose: Tag the merged order for identification, tracking, and reporting
Dynamic Variables: Use placeholders that get replaced with actual values:
{new-order-id}
: ID of the merged order{new-order-name}
: Name of the merged order (e.g., #1004){tracking-numbers}
: Tracking numbers from fulfillments{original-orders-names}
: Names of all original orders (#1001-#1002){original-orders-ids}
: IDs of all original orders{merge-date}
: Date and time when merge occurred- Tag Limit: Shopify limits tags to 40 characters - longer tags automatically move to order notes
Examples:
- "merged-{merge-date}"
- "auto-{original-orders-names}"
Add Notes**
- Purpose: Add internal notes to the merged order for staff reference
Dynamic Variables: Same variables as tags (listed above)
- Character Limit: 255 characters maximum
- Example: "Merged from orders {original-orders-names} on {merge-date}"
Set New Order Value to Zero:
- Purpose: Sets the merged order's total value to $0 to prevent double-counting revenue in analytics
- Financial Impact: This ensures accurate reporting - original orders retain their values while the merged order shows $0
- Automatic Effects: When enabled, shipping rate is automatically set to $0 as well
- Important: This prevents inflated revenue numbers in your store analytics and financial reports
Original Orders:
Add Tags:
- Purpose: Tag original orders to track which were merged
- Dynamic Variables: Same options as new order tags
- Use Case: Create audit trail for merged orders
Add Notes:
- Purpose: Add notes to original orders documenting the merge
- Dynamic Variables: Same options as new order notes
- Use Case: Reference which new order these were merged into
Archive Original Orders:**
- What it does: Moves original orders to archived state after merge
- Effect: Orders are hidden from main order list but remain accessible
- Use Case: Clean up order list while maintaining order history
Cancel Original Orders:
- What it does: Cancels the original orders after merge
- Important Limitations:
- Canceling orders is permanent - no way to reverse
- For fulfilled orders: Order Merger will try to unfulfill first (required by Shopify). Unfulfillment process will only succeed if the fulfillment order has not been accepted by a fulfillment Service - This is possible if the fulfillment order is still in an open or unsubmitted state and hasn't been accepted by a third-party fulfillment service.
- No refunds are automatically given to customers
- Conflicts: Cannot be used together with "Fulfill Original Orders"
Restock Items:
- What it does: Returns inventory from cancelled orders back to available stock
- Requirements: Only works when "Cancel Original Orders" is enabled
- Use Case: Prevent inventory from being tied up in cancelled orders
Fulfill Original Orders:
- Purpose: Ensure proper fulfillment tracking across all sales channels, particularly helpful for platforms like Facebook Commerce due to their fulfillment policies
- Multi-Channel Benefit: This feature prevents issues with sales platforms that automatically cancel orders and refund customers when orders remain unfulfilled after shipping
- How it Works: Some platforms require orders to be marked as shipped within specific timeframes, or they automatically cancel and refund customers as a protection measure
Options:
- No Fulfill: Leave fulfillment status unchanged (suitable for single-channel stores)
- Fulfill Immediately After Merge: Mark original orders as fulfilled right after merge, keeping the new merged order unfulfilled for your processing
- Fulfill After Merged Order is Fulfilled: Automatically fulfill original orders when you fulfill the merged order (recommended for multi-channel sellers)
- Multi-Channel Advantage: Maintains accurate fulfillment status across all connected sales channels and platforms
- Conflicts: Cannot be used together with "Cancel Original Orders"
Important Notes:
- These order action settings directly affect inventory, fulfillment workflows, and financial reporting
- "Cancel original orders" have irreversible effects
- Test thoroughly with small orders before applying to your entire store
- "Cancel orders" and "Fulfill orders" cannot be used together - they are mutually exclusive
Updated on: 08/08/2025
Thank you!