Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
The section details how various jobs contribute to the overall system, from order allocation to inventory management, and offers resolutions into troubleshooting and performance.
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Checkout workflows involved in Order Management. Gaining an understanding of these processes will give you an overview of how orders are handled from start to end.
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Jobs are categorized based on their operations, ensuring that related operations are grouped together for efficient configuration.
Webhooks can be subscribed to from the category pages within the Job Manager app for specific categories.
Automated messages sent from eCommerce (Shopify) to OMS whenever an event occurs. They contain data about the event and are received in OMS, allowing real time communication between eCommerce and OMS.
Subscribe to Shopify eCommerce Webhooks from OMS for:
The Launchpad serves as the central hub for all HotWax Commerce apps, providing easy access to development, user acceptance testing (UAT), and production versions of the applications all in one place.
This document outlines key pages and functions within the Launchpad.
Key items:
Home page
Application categories
Application instances
Allows accessing all HotWax Commerce applications.
Characteristics:
Single Sign-On (SSO): Enables users to log in applications using their credentials. After the initial login in the Launchpad, they gain automatic access to all associated applications without the need to enter their login details again.
Shows how apps are categorized on basis of their characteristics.
This category revolves around managing the orders using the three apps: BOPIS, Pre-Order Management and Fulfillment.
BOPIS (Buy Online, Pickup In-Store) HotWax Commerce’s BOPIS app enables users to handover store pick-up orders to customers.
Pre-Order Management HotWax Commerce’s Pre-Order Management app enables users to manage pre-orders and backorders, with planned future inventory to fulfill the orders.
Fulfillment HotWax Commerce's Fulfillment app enables users to pick, pack, and ship orders brokered to the stores from the OMS.
This category revolves around managing the workflow using the three apps: Threshold Management, Job Manager and Import.
Threshold Management HotWax Commerce’s Threshold Management app enables merchandisers to set inventory thresholds for a group of products.
Job Manager HotWax Commerce’s Job Manager app helps the operations teams to manage jobs by scheduling new jobs, skipping or canceling scheduled jobs and finding failed jobs that need attention.
Import HotWax Commerce’s Import app enables users to import inventory and purchase orders.
This category revolves around managing the inventory using the three apps: Receiving, Cycle Count and Picking.
Receiving HotWax Commerce’s Receiving app enables users to manage incoming shipments, purchase orders, and return orders.
Cycle Count HotWax Commerce’s Cycle Count app enables stock associates to count the store’s inventory, and reconcile systematic and physical inventory.
Picking HotWax Commerce’s Picking app enables the fulfillment team to efficiently pick order items during order fulfillment.
This category revolves around managing users and facilities using the two apps: User Management, and Facilities.
User Management HotWax Commerce’s User Management app allows businesses to create and manage users within the HotWax Commerce OMS.
Facilities HotWax Commerce’s Facilities app assists businesses in overseeing multiple facilities like stores and warehouses, and managing attributes like facility details and fulfillment options for each facility.
Users can access specific instances of the HotWax apps.
Instances:
1. Production Instance: To access the production instance of an app, users can click on the respective app card.
2. UAT (User Acceptance Testing) Instance: Users can access the UAT instance of an app by clicking on the bottom right icon of the respective app card.
3. Dev (Development) Instance: Users can access the dev instance of an app by clicking on the bottom left icon of the respective app card.
Related flows:
Manage pre-configured job automation from Job Details page to streamline operations within the Order Management System.
Every automation task is organized within a dedicated Job Details page, providing a clear overview of job information and actions. This centralized approach ensures quick access to job configurations and facilitates job management.
Clearly identifies the job for easy recognition.
Provides a concise explanation of the job's purpose.
Access a comprehensive job history, including the date, runtime, and status of past runs. The history will display the last 10 records.
Temporarily postpone a job's execution for the upcoming runtime without affecting future scheduled runs.
Permanently stop a job from running further.
Trigger a job to run immediately and resume its scheduled execution pattern afterward.
Set the job's execution time, helping users manage when their scheduled automation.
Set how often the job runs.
Make changes to the job's parameters, settings, or execution details as necessary, allowing users to set up workflows specific to their scenarios. Custom parameters have to be configured before a scheduled job and cannot be changed while a job is pending execution.
Things to remember:
Custom parameters can be incorporated into jobs, with access controlled by specific permissions, ensuring a customized and secure configuration.
Navigate to the required job category and find the job you want to schedule.
Click on the job to view Job Details.
Set the run time.
Set the frequency.
Add custom parameters if required.
Save the changes to see the schedule job on the Pipeline page.
Quickly share the important job related information such as job's ID, name, description, and runtime for debugging.
Learn how to troubleshoot job stuck issues in the HotWax Commerce Job Manager app for seamless job processing.
A scheduled job has been running for a longer duration than expected (more than 15 minutes).
Go to .
Navigate to the status field and click on "Pending."
If there are no jobs in the pending state, it's an unusual situation. Contact HotWax support.
If there are many jobs in the pending state, it indicates a potential backlog in the job queue.
Wait for an hour and then check again if the jobs have run or not.
After waiting, recheck the running tab on the pipeline page. If the jobs have not run, proceed to the next step.
If there are still jobs in the pending state after waiting, contact HotWax support.
Provide details about the extended duration and the number of jobs in the pending state.
By following these steps, you can identify and address issues related to jobs running for an extended duration. If you need further assistance or have additional questions, reach out to the HotWax support team for prompt support.
Explore essential terms in Omnichannel Order Management. Clarify your understanding with our comprehensive glossary.
An Advance Shipment Notification (ASN) is a notification sent by a supplier to a recipient detailing the contents and expected arrival of a shipment, often sent in advance of the physical delivery. For example, if a store anticipates receiving 100 shirts in an incoming shipment, the ASN will detail this expected inventory count.
In the context of Hotwax Commerce, store associates receive ASNs in relation to Transfer Orders (TOs). Generally, a Transfer Order is created in an ERP system, and when the TO is fulfilled in the ERP or WMS (Warehouse Management System), an ASN is generated in HC. Store associates then perform the receiving based on this ASN using the HC Receiving App. In the context of Purchase orders, the ASN receiving is done in ERP/WMS.
Upon the shipment's arrival, store associates can use the Inventory Receiving App to locate the ASN by scanning the ASN barcode or manually inputting the ASN ID. They can then view the ASN details, including SKUs, names, SKU codes, images, and expected inventory counts.
Appeasement refers to refunds, discounts, or other forms of compensation provided to resolve disputes, improve customer satisfaction, and maintain positive relationships. HotWax Commerce does not allow the creation of appeasements. Instead, CSR teams can create appeasements in e-commerce platforms like Shopify, either by offering another product or issuing a refund without a return. HotWax Commerce downloads these appeasements for reporting purposes and posts them to the ERP for financial record keeping without tracking order line item details.
The arrival date is the date when the inventory of the purchase order items is expected to arrive at the destination. Merchandisers can view the arrival date on the Find Purchase Orders page.
ATP (Available to Promise) represents the physical quantity of a product at stores or warehouses after deducting the reserved inventory, that is, inventory that has been allocated to online orders from the Quantity on Hand (QOH). ATP = QOH - Reserved quantities
Backorders are orders taken for products that are temporarily out of stock. These orders are referred to as “backorders” because they were previously in stock and will be available again soon but are currently unavailable due to high demand, inaccurate sales forecasting, or operational discrepancies. For example, Brand ABC has an amazing season and sells all its inventory. Some regular items were bought frequently, so the merchandisers have already sent POs for these goods and know the approximate date of arrival. The brand utilizes this time for sales and starts taking orders for these products. To learn more about Backorders .
In Hotwax Commerce, brokering refers to the process of matching and routing orders to the most suitable fulfillment center or location based on factors like inventory availability, proximity to the customer, and delivery speed requirements. This ensures that orders are processed and shipped efficiently to meet delivery expectations.
Brokering History refers to the record of past brokering activities in HotWax Commerce. It logs when orders were routed to fulfillment centers based on inventory, proximity, and delivery speed.
The Brokering Queue serves as a waiting area for orders awaiting processing in the order brokering process. It ensures that orders are handled efficiently by analyzing order priority and determining the optimal fulfillment location based on proximity and inventory availability. Orders in Approved status waiting to be brokered are parked in the Brokering Queue until the brokering engine runs at frequent intervals.
For example, if the brokering engine runs every three hours starting at 9:00 A.M., orders placed and approved at 10:00 A.M. will remain in the Brokering Queue until the next brokering engine runs at 12:00 P.M. Similarly, orders placed and approved at 11:30 A.M. will also be processed at 12:00 P.M.
A Bundle Product refers to a product that consists of multiple components. These components are integrated to form a cohesive product offering. For example, a computer bundle might include a CPU, motherboard, RAM, and a hard drive.
The Import Bundle Product Components job ensures that these components are accurately reflected in the Order Management System (OMS). The availability of a bundle product is determined by the lowest common denominator of component inventory available at each facility. This means that the bundle product's availability is constrained by the facility with the least available inventory of its components. The computed inventory of each bundle product at every facility is then aggregated to determine the final sellable inventory number across the entire network.
A Customer Service Representative (CSR) is the first point of contact for any customer who has a question or an issue with a product or service the company sells. CSRs are responsible for handling customer requests regarding order fulfillment, order cancellations, and returns.
Customer Service Representatives (CSRs) can utilize HotWax Commerce to get detailed visibility about the orders and perform actions accordingly as per the customer’s requests.
Digital gift cards, or e-gift cards, are virtual equivalents of physical gift cards. Customers receive them via email or text message along with a unique serial number that they can use to redeem the value stored in the card. When customers order a digital gift card on Shopify, the order is immediately auto-fulfilled, a serial number is assigned, and the value is loaded to activate the gift card. Consequently, when HotWax Commerce downloads that order from Shopify, it is automatically marked as "Completed".
The Estimated Delivery Date (EDD) is the predicted date on which a customer can expect to receive their order. Displaying the EDD prominently on Product Display Pages (PDP) is crucial for managing customer expectations, as it provides clear and honest delivery information, enhancing the overall customer experience. With HotWax Commerce, retailers can display the EDD on Shopify, empowering customers with essential information about when they can anticipate their order's arrival.
Excluded ATP refers to the inventory at fulfillment locations that are not participating in online selling. This inventory is not considered available for online orders and is excluded from the Online ATP calculation.
Excluded Facilities are facilities that are either not participating in online order fulfillment or temporarily unable to participate due to reasons like insufficient labor, natural disasters, or holidays. Inventory becomes available again when these scenarios change. Retailers can turn off fulfillment if they want to temporarily disable a facility from participation.
Expedited orders are those prioritized for faster processing and shipping to ensure delivery within a shorter timeframe, typically within one to three business days. These orders are given precedence over standard orders to meet the high expectations of consumers for quick delivery. Expedited orders often involve additional costs for the customer or the merchant to facilitate the faster shipping and handling process.
In HotWax Commerce, a facility is a physical location such as a warehouse, distribution center, or store where inventory is stored, managed, and processed.
Facility groups are used to define the scope and functionality of facilities for omnichannel order management. For example, including a facility in the Pickup and Same Day Shipping groups indicates that the facility accommodates both Buy Online, Pickup In-Store (BOPIS), and same-day shipping orders.
In HotWax Commerce, Facility type refers to different locations used for fulfillment, including:
Retail Store: Physical stores that fulfill online orders and facilitate in-store pickups.
Warehouse: Centralized storage locations for fulfilling online orders and restocking stores.
Outlet Store: Discount retail locations that fulfill orders and offer in-store pickups.
Outlet Warehouse: Storage for outlet inventory, supporting fulfillment for outlet stores, and direct customer shipments.
Retailers can prioritize their brokering rules according to the facility types
Future Inventory refers to stock that is not currently available but is expected to be in stock at a later date. With HotWax Commerce, retailers can maximize sales at full price by offering customers early access to future inventory through pre-orders, thereby reducing the need for end-of-season markdowns. This strategy helps retailers maintain higher profit margins and better manage inventory levels.
Inventory Allocation in HotWax Commerce involves routing online orders to fulfillment locations using configurable rules. These rules consider factors such as shipping method, customer loyalty, proximity to the shipping address, inventory levels, store fulfillment capacity, and splitting configurations. This comprehensive approach ensures efficient and accurate fulfillment, optimizing inventory distribution and enhancing customer satisfaction.
Inventory variance refers to discrepancies between expected and actual inventory levels. It can be caused by factors such as damaged goods, discrepancies in shipment, or theft.
Item Fulfillment Status in HotWax Commerce tracks the current stage of an item within the order fulfillment process. This status helps in monitoring and managing orders, indicating whether an item is Reserved, Picked, Packed, Shipped, or Delivered.
The Maximum Order Limit is a predefined limit set by a store, indicating the maximum number of orders it can fulfill in a day. When this limit is reached, the brokering engine automatically routes additional orders to alternative facilities that have capacity available. Setting a maximum order limit helps the store manage its resources effectively. It ensures that orders can be fulfilled within operational constraints and prevents overcommitment of resources. By leveraging the brokering engine to redirect orders to other facilities as needed, retailer maintains their ability to meet customer demand without delay.
A Mispack refers to an error in the packing process where items are incorrectly packed, resulting in incorrect or incomplete orders being shipped to customers. Mispacks can lead to customer dissatisfaction and increased return rates. In HotWax Commerce, retailers can enforce scanning during the packing process to minimize mispacking incidents. This ensures that each item is accurately scanned and verified before being packed and shipped, thereby reducing errors and improving order accuracy and customer satisfaction.
A Mixed Cart order allows customers to combine items for store pick-up and direct home delivery into a single order, streamlining the shopping experience by eliminating the need for separate transactions and potentially increasing Average Order Value (AOV). Notably, Shopify does not inherently support a Mixed Cart feature. With HotWax Commerce, Shopify merchants can leverage this functionality to offer a more flexible and convenient shopping experience, enhancing customer satisfaction and sales potential.
Order Fulfillment Status in HotWax Commerce tracks the current stage of an overall order within the order fulfillment process. This status helps in monitoring and managing orders, indicating whether an Order is created, approved, picked, packed, or shipped.
Pickers are tasked with fulfilling orders by picking items from the store’s location according to a printed or digital picklist. This role can be created and assigned to a user in HotWax Commerce, ensuring efficient management of picking operations. Once a digital or printed picklist is created, it can be assigned to a user in the Picker role, to streamline the order fulfillment process.
A picklist provides details such as inventory SKUs, quantities, and locations. It serves as a guide for pickers to pick items for orders fulfillment. To improve the picking process, store or fulfillment managers often organize inventory based on criteria such as Product Name, Bin ID, or Location Sequence ID. Structuring picklists to align with these strategies ensures an optimized route for pickers, minimizing time spent on picking and improving both speed and accuracy.
A product variant in HotWax Commerce refers to individual variations of a product, which can include different sizes, colors, or other features. The Find Product page displays these variants along with the product category, product name, product ID, and product features such as size and colors.
In HotWax Commerce, the promise date refers to the estimated date by which an order is expected to be fulfilled and shipped to the customer. It represents the commitment made by the seller regarding the delivery timeline for each order in the system.
In the context of HotWax Commerce, proximity refers to the distance or closeness of a particular location or fulfillment center to the customer's shipping address. It is a key factor in determining the most efficient and cost-effective way to fulfill orders, as closer proximity may result in shorter shipping times and lower shipping costs.
QOH represents the total physical quantity of a product available at stores or warehouses. HotWax Commerce receives daily inventory feeds from the ERP system to update and maintain inventory data. Additionally, in the absence of ERP systems, HotWax Commerce also receives inventory feeds from Warehouse Management Systems (WMS) and Point of Sale (POS) systems.
Rejected orders are orders brokered for fulfillment but rejected by a warehouse or store due to physical inventory unavailability, often caused by damaged, lost, or stolen items. Rejected orders return to the brokering queue for reassignment. Rejected orders are managed by routing them back to the brokering queue for reassignment. The OMS will then route the order to another facility based on product availability, customer shipping preferences, and routing rules.
Reserved inventories refer to inventory, whether in a store or warehouse, that has already been allocated to fulfill orders. Reserved quantities are not included in the "available to promise" (ATP) and are not eligible to be sold.
Return Merchandise Authorization (RMA) is a process that allows customers to return products for a refund, replacement, or repair. With HotWax Commerce, store managers can create RMAs for products sold online, facilitating the Buy Online, Return In-Store (BORIS) process. This feature streamlines returns management, improving customer satisfaction and operational efficiency.
Send Sale orders in HotWax Commerce refer to orders captured through the Shopify POS App. These orders are taken in the store by store associates on behalf of customers for items that are not in stock in the store. The items are then shipped to customers at their preferred shipping location. In HotWax Commerce, these orders are downloaded and processed just like online orders. However, the channel tagged for the order in HotWax Commerce is Point of Sale (POS).
A shipping label is a document used by shipping carriers to deliver a package to the customer's address. It includes essential information such as the destination address, return address, and tracking barcode. HotWax Commerce integrates with third-party shipping carriers like FedEx and shipping aggregators like ShipStation to obtain shipping rates and generate labels. The fulfillment team can create packages and generate labels directly within HotWax Commerce, without needing to move to a separate system.
This is a unique identifier assigned by Shopify to each order. It serves as a reference point for tracking and managing orders within the Shopify platform. Additionally, users can conveniently view the order details directly on Shopify by clicking on the provided link associated with the Shopify order ID on the view order detail page.
The order name in Shopify typically refers to a customizable name or title assigned to an order on Shopify for further order identification.
Shopify assigns a distinct numerical identifier to each order. It acts as another unique reference for orders, often used in communication and documentation.
Split shipment, also known as order splitting, is a fulfillment strategy where a single customer order is divided into multiple shipments to ensure faster delivery of available items. This approach is used when different items in an order are located at different fulfillment centers or when some items are out of stock and need to be shipped separately once they become available. In HotWax Commerce (HC), this capability is a configurable setting. Retailers have the option to choose whether they want orders to be split for shipment or not. This global setting applies to all orders by default but can be overridden for specific orders as needed. When configuring brokering rules in HC, administrators can specify conditions for when orders should be split and when they should not. For instance, the brokering engine can prioritize shipping all items from one location to avoid splitting orders. However, if necessary, it can split an order and ship items from multiple locations as a last resort to fulfill the customer's requirements efficiently.
A Stock Keeping Unit (SKU) is a unique identifier assigned to each product and its variants, used for inventory tracking and management. In HotWax Commerce, retailers can choose their preferred product identifier, such as an SKU, to map products between Shopify and HotWax Commerce, ensuring accurate and efficient inventory synchronization and management across platforms.
To mitigate the risk of overselling caused by inventory inaccuracies, merchandisers allocate buffer stock on a company-wide basis before committing inventory to online sales channels. This buffer inventory is referred to as the Inventory Threshold. Unlike safety stock, which is managed at the store level, the Inventory Threshold ensures that reported inventory levels across all products are adjusted to account for potential inaccuracies before allocating stock to online channels.
For example, let’s say Brand ABC sets the threshold of 10 units for red socks in Stores X and Y. This will impact these stores’ inventory levels, in the following manner:
Store X Inventory: 100 Units Store Y Inventory: 100 Units Threshold: 10 Units Inventory Available for Online Orders: 200 Units - 10 Units (threshold) = 190 Units
A Transfer Order is crucial for maintaining inventory balance, minimizing stockouts, and optimizing allocation across stores or warehouses. Effective management enhances operational efficiency, reduces excess inventory costs, and improves customer satisfaction. Types include:
Warehouse to Store: Replenishes retail inventory from the central warehouse.
Store to Warehouse: Returns excess or unsold inventory for redistribution.
Store to Store: Transfers inventory between stores to optimize stock levels.
When inventory is unavailable for orders at any location, the order routing engine moves them from the Brokering Queue to the Unfillable Parking. A dedicated brokering run is performed to check the orders in the Unfillable Parking and allocate inventory to them.
Learn how to troubleshoot failed job issues in the HotWax Commerce Job Manager app.
A scheduled job might fail in HotWax Commerce due to various reasons, such as incorrect parameter settings, outdated information, or conflicts within the system.
Users can swiftly identify the reasons for a failed job from the pipeline
page of the Job Manager
app. This feature allows user to pinpoint the reasons behind failed jobs, facilitating easy troubleshooting of errors. Here's how you can find out the reason behind the failed jobs:
Navigate to the Pipeline page in the job manager.
Within the pipeline page, click on the History tab.
Apply a filter by clicking the checkbox against the Failed option to display only failed jobs.
Click on the Failed badge to view the reason for the failed job.
Common Reasons for Job Failure:
Scheduled jobs can fail due to incorrect parameter settings. If users are facing any issues regarding job configuration, they can follow these steps to rectify the problem:
Step 1: Verify Configuration Data
Search for the job on the pending page in the Job Manager.
You will find the job card with all scheduled job instances.
Pick any instance and open its details.
In the details, find the Custom Parameters
option and click on it to view all custom parameters.
Step 2: Verify Custom Parameters
Verify the custom parameters against the expected values for the service.
You can find the expected custom values in the setup manual for the process you are troubleshooting.
If the parameters are incorrect, proceed to the next step.
Step 3: Disable the Job
Find the job in the category pages and open its detail page.
Disable the job. The custom parameters of a job cannot be edited while it’s running.
Step 4: Correct Incorrect Parameters
Click on "Custom Parameters" and correct the parameters.
Schedule the job again.
Step 5: Check Job Status
After the scheduled time, check the job to see if it has successfully completed. If the job fails, contact the HotWax support team for further assistance.
By following these steps, you can address configuration data issues that may lead to a scheduled job failure. If the problem persists or if you have additional questions, reach out to the HotWax support team for prompt assistance.
Shopify integration issues may arise if Shopify experiences downtime during the day, leading to job failures reliant on accessing its API calls. These failures can be attributed to internal errors within the Shopify platform.
If you encounter any issues with Shopify integration, you can manually run the job by clicking on the Run Now
button or wait for the next scheduled job to resolve the problem.
In job scheduling systems, a semaphore could be used to manage the allocation of resources (like CPU time, memory, or disk space) among competing processes or jobs. This ensures that resources are efficiently utilized and that no single job monopolizes Semaphore issues in job scheduling can lead to various consequences when a job fails. These include resource starvation, deadlocks, performance degradation, job abandonment, and system instability. These issues can result in failed or incomplete tasks, resource contention, and system-wide slowdowns, emphasizing the importance of proper monitoring and mitigation strategies. If you encounter any issues with semaphore, you can manually run the job by clicking on the Run Now
button or wait for the next scheduled job.
Backorder parking refers to the area that holds the orders for Backorder items. These orders are stored in the backorder parking area until they are restocked and prepared for fulfillment. To learn more about Backorder Parking .
To Know more about Brokering .
To know more about Bundle Products .
To Know more about Gift cards .
To learn more about excluded facilities .
Multi-channel Inventory refers to inventory available for sale across various sales channels, including online stores, social media platforms, physical retail outlets, and third-party marketplaces. Managing inventory effectively across these channels is critical for retail brands to prevent overselling and ensure efficient order fulfillment. HotWax Commerce addresses this challenge by enabling the management of multiple Available-to-Promise (ATP) inventories for each sales channel. This feature allows brands to allocate distinct inventories to different channels, reducing the risk of delayed fulfillment or overselling penalties. Read our user manual to learn more.
Online ATP represents the unified inventory pool of actual sellable inventory count that is published on eCommerce platforms and can be promised to customers. To calculate Online ATP, HotWax Commerce deducts inventory that is not available for sale from the ATP. This includes items such as safety stock, threshold quantities, orders in the brokering queue, and inventory from locations that are not participating in online selling. HotWax Commerce calculates Online Available to Promise (ATP) Online ATP = QOH - (Reserved quantities + Safety stock + Threshold + Orders in brokering queue + Excluded facilities’ ATP) To Know more about Online ATP .
When a customer places multiple orders that can be fulfilled from the same location. Instead of treating them as separate orders, retailers prefer to merge them into a single shipment, ensuring a smoother and more cost-effective delivery process. Hotwax commerce enables order merging so that orders coming from the same location are fulfilled together. To Know more about Order Merging
A packing slip is a document included with a shipment that lists the contents of the package. It typically includes details such as item names, quantities, and sometimes prices. This document assists both customers and senders in confirming that the correct items have been packed and shipped. In HotWax Commerce, store associates can choose whether they want to print the packing slip when packing orders To know more about Packing Slip .
Pre-orders are simply advance orders taken for future inventory. These products have not yet been released in the market and are still in planning or production, and thus not in stock. A pre-order is an order placed for a product that is not yet available for purchase or delivery. Customers can reserve the item in advance, and the order will be fulfilled once the product becomes available in stock. To Know more about Pre-Orders
Pre-order parking in HotWax Commerce is a holding area where pre-ordered items are kept until their inventory becomes available. Orders in this queue are not yet ready for fulfillment and wait until the specified stock arrives before being moved to the brokering queue for processing and shipping. This ensures efficient and timely handling of pre-orders based on inventory availability. To Know more about Pre-Order Parking
A purchase order (PO) is a document created by a retailer and sent to their supplier to order items. It is typically generated in the retailer's ERP system. POs are synchronized from the ERP to HotWax Commerce to track ordered items and anticipate future inventory arrivals. This synchronization helps in calculating future inventory and managing pre-orders and back-orders. HotWax Commerce also syncs future inventory data to eCommerce platforms like Shopify, ensuring accurate pre-order management without overpromising or underpromising. To learn more
Safety stock helps retailers control how much inventory they promise to online channels. Once a store’s inventory count falls below the designated safety stock quantity, the remaining inventory will be reserved for in-store sales. Retailers often face inventory discrepancies, where a system’s inventory does not match the actual inventory in stores. Keeping safety stock also helps retailers mitigate the risk of taking orders that cannot be fulfilled due to inventory discrepancies. A robust omnichannel order management system helps retailers easily manage safety stock for each store. To Know more about Safety Stock
Soft Allocation is a feature in HotWax Commerce that performs real-time eligibility checks for items in a customer's shopping cart. By evaluating the cart items alongside the destination zip code, Soft Allocation ensures compliance with predefined criteria set by retailers, such as verifying if all items can be shipped from a single location. This process guarantees efficient validation of shipping eligibility, aligning with the requirements of various specialty shipping carriers. Read to learn more about soft allocation.
To know more about Split Shipment
The HotWax Commerce Store Fulfillment App streamlines transfer order fulfillment, managing inventory movement and ensuring accurate tracking. Additionally, the receiving app facilitates inventory receipt in stores after transfers. Read to learn more.
This document provides a detailed guide to diagnose and resolve the exceptions caused by duplicated jobs in HotWax Commerce, which can lead to data duplication, data redundancy, and system performance issues. The goal is to ensure smooth job execution and accurate data management.
Overlapping jobs causing system performance issues.
Data duplication or redundancy due to duplicated jobs.
Interrupted job flow affecting the order life cycle.
For example, In the Job Manager app, we have two jobs: Approve Order
, which means, approves the orders that are in in created
status after checking the requisite criteria, and Approve Sales Order
, which acts as the same as Approve Order
but has a different attribute (field) values. Let’s suppose we have scheduled the approve orders
job every 5 minutes and approve sales orders
every 15 minutes This collectively means we have two jobs: one is ready to run 5 minutes after the previous run, whereas the other is ready to run from now every 15 minutes. These two jobs will overlap every 15 minutes and may result in system performance issues. Additionally, the collision of these jobs may interrupt the job flow.
Track the Exception:
Identify where the exception occurs or which step of the order life cycle is affected.
Analyze Job Pattern:
Determine if a process is running more than once within its scheduled frequency, indicating a duplicated job.
Access Job Manager:
Open the Job Manager app in HotWax Commerce.
Navigate to the Job Manager > Order
page (for the example provided). For example, If the duplicacy arises in another area like Brokering, navigate to the corresponding section, such as Job Manager
> Brokering.
Identify Duplicated Jobs:
Traverse all jobs and identify those with overlapping schedules. For example, Approve Order
is scheduled every 5 minutes, and Approve Sales Order
is scheduled every 15 minutes.
Duplicated jobs can also be identified by disabling the job with the exception. If the job is disabled once and it is still visible as scheduled after refreshing the page, then the job was duplicated.
Compare Jobs:
Compare both jobs to understand their functionality and attributes.
Disable Duplicated Job:
Terminate or remove the duplicated job causing the exception and the one that is outdated.
Click on the job to open its details.
Click the Disable
button to deactivate the job.
Verify Job Termination:
Navigate to the pipeline
page and search for the disabled job to ensure the problematic job is successfully disabled.
By following these detailed steps, you can effectively troubleshoot and ensure a smooth job execution process, minimize system performance issues, and maintain accurate data management.
If you observe that a process is not functioning correctly in Hotwax Commerce, for example, if orders are not being synchronized, this issue often stems from either the job not being scheduled at all or being incorrectly scheduled. Ensuring proper job scheduling is crucial to maintaining the smooth operation of processes like order synchronization within Hotwax Commerce. This document aims to provide a structured approach for identifying and resolving synchronization issues between HotWax Commerce and external systems due to job scheduling errors.
A job is not scheduled or is disabled, preventing expected data synchronization. For example, the operation team often forgets to schedule the Process Bulk Imported Files
and expects the Import Orders
Job will fetch all the orders from Shopify and start showing them in HotWax Commerce.
A job is not scheduled correctly, causing delays or affecting synchronization. For example, If you schedule a job with a frequency to run with a run-time value(date) of two days later when the job was supposed to run 15 minutes from now, then the job won’t start running in every 15 minutes until 2 days.
Identify the Exception:
Check if a process is not working as expected by looking at the results. If you don't get your desired result within a specified time frame, it indicates an exception.
Backtrack the Exception:
Look into the results in HotWax Commerce OMS to identify the step or task that is not performed.
Access Job Manager:
Open Job Manager using your user credentials.
Navigate to the job causing the issue. For example, if the issue is related to order import(as we see in the above example), go to Job Manager
> Miscellaneous
> Process bulk import files
.
Analyze the Job:
Check if the job is scheduled correctly.
Identify if the job is disabled or configured incorrectly.
Read here to learn more about jobs in HotWax Commerce that can be scheduled as per the retailer’s preference.
Schedule or Configure the Job:
If the job is Disabled
, schedule it by adding the runtime value and the frequency in which the job should run
If the job is configured incorrectly, update it as per your preference. Read here to learn more about how to schedule a job in HotWax Commerce.
Save the Changes:
Make the necessary changes to the job.
Click on the Save Changes
button to ensure they take effect.
Verify Job Schedule:
Check the job schedule on the pipeline
page to ensure the job is scheduled and running at the desired frequency and time.
Monitor Job Execution:
After scheduling or reconfiguring the job, monitor its execution to ensure it runs as expected.
By following these detailed steps, you can effectively troubleshoot and resolve synchronization issues between HotWax Commerce and Shopify caused by jobs not being scheduled or incorrectly scheduled. This ensures smooth job execution, minimizes system performance issues, and maintains accurate data management.
Learn about the Import New Products job in HotWax Commerce. Keep your product catalog updated for accurate representation on your platform.
All Pre-order jobs have a defined frequency of 15 minutes by default which can be modified and adjusted at any point of time as per the requirement. The user may have various options to modify the job, such as altering the run time, adjusting the frequency, and adding custom parameters if required, or can also cancel the job to reduce system load. Users can follow the given steps to execute any changes in the existing jobs to update the runtime and the scheduled frequency of the job whenever required.
Runtime: Time at which a job is scheduled particularly. Scheduled Frequency: A time duration for repeated occurrence.
Go to the Pipeline and search for the Job, by job name or related keyword.
Click on the Job Card to refer to the job detailed view.
Select the runtime function dropdown to change the run time from the dropdown or make custom changes.
Or change the scheduled frequency by choosing it from the dropdown or make a custom requirement.
Ensure to save the changes.
Users can add custom parameters to the jobs and schedule them accordingly.
Users can also “Skip” or “Cancel” the jobs from the same job detailed card.
Job ID: JOB_REL_PREODR_CAT Job Name: Reset Preorder catalog Items
Description: The Pre-sell Catalog job automatically manages the addition or removal of pre-sell products from the HotWax Pre-order/Backorder category. This job checks for new products eligible for pre-order/backorder in the received feeds from ERP and adds them to the pre-order backorder catalog in HotWax Commerce based on specific eligibility criteria for product inventory, purchase orders, and order queues.
Issue 1: New or existing products do not appear as pre-orders or backorders.
Possible Causes:
Item does not exist in the system
PO status is canceled
Item has Inventory in the system
Resolution Steps:
Status of PO items must be created or approved, ensuring canceled PO items are not considered for Pre-Order.
The promise date of a PO item must be in the future, guaranteeing that purchase order items will arrive in the future, not from an old PO.
The current inventory of the item must be 0, indicating it's out of stock and qualified for Pre-Order or backorder.
If the 'isNewProduct' field of a PO is marked as “yes”, it’s identified as a Pre-Order product; if marked “no”, it's categorized as a backorder product.
Products from purchase orders that don't meet these criteria won't be listed in HotWax Commerce's pre-order catalog. It's important to ensure that purchase order items adhere to these criteria for accurate listing.
Issue 2: Products are not removed from the pre-order or backorder category.
Resolution Steps:
Ensure all future inventory of pre-orders is received.
Ensure the Purchase Order status changes to “Canceled” or “Completed”.
Ensure the Purchase Order arrival date (promised fulfillment date) has passed.
There is no Return for any pre-order or backorder.
Job ID: JOB_PREORDER_CAT_SYC Job Name: Preorder catalog sync
Job ID: JOB_ADD_PREORD_VRT Job Name: Bulk Upload to add preorder tags to products
Description These jobs facilitate updates to the Presell catalog on Shopify, encapsulating all pre-order-related changes, including promised delivery dates, product categories, and statuses. This file is placed on a dedicated SFTP location. These jobs set the pre-order or backorder category in the meta fields to add the suitable tag to the parent product on Shopify.
Tagging as HC:Pre-order or HC:Backorder can be easily managed by enabling the checkbox for the Add pre-order tags and Add backorder tags jobs, which helps to employ tags and meta fields to modify the Add to Cart button and display the expected delivery date on Shopify PDP.
It is essential to click checkboxes to schedule the Remove Pre-order tags and Remove Backorder tags jobs to eliminate the HC: Pre-order and HC: Backorder tags when a product is removed from the pre-order catalog.
Add Promise Date check box is also to be selected to enable setting the expected delivery dates on the product on Shopify PDP
Issue 1: The product is not updated as a pre-order or a backorder at Shopify and PDP
Possible Causes:
PO status is canceled
PO has a past expected delivery date.
Items have available inventory in the system.
The generated file is not processed by Shopify and is lying unread at the specified SFTP location
Resolution Steps:
Status of PO items must be created or approved, ensuring canceled PO items are not considered for Pre-Order.
The promise date of a PO item must be in the future, guaranteeing that the purchase order item will arrive in the future, not from an old PO.
The current inventory of the item must be 0, indicating it's out of stock and qualified for Pre-Order or backorder.
If the 'isNewProduct' field of a PO is marked as “yes”, it’s identified as a Pre-Order product; if marked “no”, it's categorized as a backorder product.
Item is associated with the pre-order or backorder category.
Ensure the file is read and processed from the SFTP location.
Products from purchase orders that don't meet these criteria won't be listed in Shopify’s pre-order catalog. Contact the Shopify team if your product is still not listed on Shopify.
Job ID: JOB_UL_PRMS_DTE Job Name: Update promise dates for pre-order products.
When there are any changes in the arrival dates of the multiple items in the purchase orders, the promise dates need to be first updated in the HotWax Commerce pre-sell category. The Sync Variant Details job ensures that the expected date changes in the purchase order arrival date, and the promise dates of the product are also updated on Shopify. These changes happen through the Update Pre-Order Category Item Arrival Date job which creates a file and processes all the updated date changes in the HotWax Commerce category, after this, the Sync Variant Details updates the changes on Shopify.
Troubleshooting Use Case
Issue 1: The promise date of the Product is not updated on Shopify PDP.
Possible Causes:
PO status is canceled
Item does not exist anymore in the pre-order or backorder category.
Item has Inventory in the system.
The generated file is not processed by Shopify and is lying unread at specified SFTP location
Resolution Steps:
Status of PO items must be created or approved.
The promise date of a PO item must be in the future.
Ensure the current inventory of the item must be 0.
Ensure that the file is processed by Shopify from the SFTP location
To ensure accurate representation of pre-order information when pre-orders are downloaded alongside regular orders, specific notes or tags are included in incoming sales orders for easy identification of pre-orders. The job is scheduled by selecting the respective checkboxes while configuring the Pre-sell on the Shopify job from the Job Manager application.
Users are allowed to select multiple checkboxes to schedule various jobs in HotWax Commerce for managing sales orders with pre-order items more efficiently.
Description: These jobs assign pre-order/backorder tags to orders containing pre-selling items. This simplifies identification for the operations team. The job is scheduled by selecting the respective checkbox against the Add Pre-Order Tag or Add Backorder Tag. By default, the frequency will be scheduled just as specified for the Pre-sell on the Shopify job.
Description: These jobs will assign promise dates to sales orders, mirroring the dates provided to customers upon order placement for pre-order or backorder items. This job, when activated via checkbox, appends promise date notes to sales orders. By default, the frequency will be scheduled just as specified for the Pre-sell on the Shopify job.
Description: There might be multiple purchase Orders uploaded in HotWax Commerce. Once the active PO is exhausted, the subsequent PO gets active with a new arrival date. Sometimes, a new PO is introduced with an early arrival date, while the Item already has a specified promise date at Shopify PDP. In cases where promise dates change due to shifts in the arrival date of purchase orders, updates to the promise dates in sales orders are necessary. The Update promise date job updates the promise date notes of the sales orders. This job, when activated via checkbox, adds notes to the impacted order items on Shopify for changes in promise dates. By default, the frequency will be scheduled just as specified for the Pre-sell on the Shopify job.
Description: The ATP available on the purchase orders needs to be handled when exhausted or shifted from one PO to the other PO. Merchandisers frequently handle multiple Purchase Orders for identical SKUs. Sometimes, they might upload a new Purchase Order with an earlier promised date, even if there's an existing Purchase Order for the same SKU in the system. In such cases, re-allocating sales orders from the initial Purchase Order to the latest one with an earlier date becomes vital. This ensures that customers who place pre-orders first are given priority, guaranteeing timely delivery. The task automatically adjusts Purchase Order ATP allocations and reallocates pre-orders accordingly. To schedule this, users need to enable and set up the Adjust ATP on Early PO in Bulk by selecting the checkbox available in the More Jobs section.
Description: Merchants can change the promise dates in sales orders if there are any changes in the promise date due to arrival date changes in Purchase orders through this job. This job can be scheduled by checking the box against the job name Auto Sync Date to order, available in the job card Promise Date Changes. The frequency can be set as required from the available dropdown or can be customized.
Description: To efficiently manage customer expectations regarding changes in promised dates, activating the Email customers checkbox initiates a job that triggers automatic emails to customers. This action ensures customers are informed whenever there's a modification in the promised date since the job notifies customers of any changed promise dates for their orders.
Description: HotWax Commerce facilitates users to automatically handle the release and brokering of Shopify Pre-Orders, ensuring fulfillment from the most suitable location without requiring manual intervention. HC strategically organizes all pre-orders in a dedicated queue until their physical inventory is received. This approach ensures that brokering processes are not initiated for orders lacking available inventory. Once the pre-order inventory arrives, HotWax Commerce transfers all orders from the pre-order queue to the brokering queue. This allows the system's engine to efficiently match the most suitable inventory with specific orders for fulfillment.
Daily Job
Description: Merchandisers can schedule this job through the Job Manager Application from the Pre Order Page by enabling the Run Daily checkbox in the auto-releasing card. This automated process releases pre-orders where the shipping date has arrived and inventory is available in HotWax Commerce for release.
Schedule jobs responsible for importing all products and orders into the system for the initial deployment and instance configuration from the Initial Load category.
Displays the jobs for initial OMS setup to import all products and orders.
Characteristics
One time ExecutionThese jobs are executed only once during the initial setup and rarely during instance redeployments.
Product and Order Importation
Facilitate the importation of all products and orders from the eCommerce platform for the initial instance setup.
Scheduling Functionality
Empower users to schedule the import process, enabling them to select the desired execution time.
Things to remember:
Products should be imported before any order is imported into the system.
By default only open and unshipped orders will be imported.
The Last Shopify Order ID serves as a reference point for HotWax Commerce to determine the starting point for order downloads.
Go to the Initial Load category.
Initiate the Import Products in Bulk
job.
Choose the desired runtime from the dropdown menu.
Confirm the selected runtime.
Go to Miscellaneous Jobs page.
Initiate the Process bulk imported files
job.
Once product importation is complete, proceed to the Import Orders in Bulk
job.
Select the preferred runtime from the dropdown menu.
Verify the order and fulfillment status.
Input the Last Shopify ID from which order numbers should be imported into HotWax Commerce OMS.
Execute the import process.
Go to Miscellaneous Jobs page.
Initiate the Process bulk imported files
job.
Manage all pending, running, and completed jobs from the Pipeline page. With intuitive controls and detailed job information, you can effectively monitor and manage job execution.
Pipeline page
Provides a holistic view of all jobs, including their status, scheduled time, and execution details.
Characteristics
Chronological sequence for prioritized execution
Jobs are displayed in chronological sequence, ensuring that jobs with the closest expiration time are prioritized for execution.
Timeline Visualization for Clear Execution Scheduling
A highlighted time frame clearly depicts the job's runtime and scheduled frequency, providing a visual representation of the job's execution timeline.
On-the-fly Editing for Dynamic Job Management
Users can seamlessly skip, cancel, edit, or reschedule any pending jobs before they start running. This flexibility allows users to adapt to changing requirements and optimize job execution based on real-time needs.
Customized Job Configurations for Tailored Execution
Scheduled job parameters can be modified directly from the Job Pipeline page, enabling users to tailor job execution to specific needs. This flexibility allows for optimization of job performance and resource utilization.
Detailed Job History for Analysis and Troubleshooting
Comprehensive historical job data is readily accessible for analysis and troubleshooting purposes. Users can identify patterns, optimize job performance, and resolve recurring issues by examining historical job execution details.
Displays all the jobs queued for execution.
Displays all the jobs running in the system.
Displays all the historical jobs. Historical jobs can be filtered by their status.
Easily locate specific jobs by name or category.
Quickly find jobs by applying filters based on category and status.
Keep frequently accessed jobs readily available for quick access. Pinned jobs will be visible in the footer.
Displays the number of counts the job is retried once failed.
Effortlessly schedule and manage bulk jobs with ease. Configure, select, and streamline workflows seamlessly.
Displays configurations to schedule jobs in bulk.
Manage Jobs
Easily search and select the jobs you want to execute or configure. You can also schedule jobs and set their run times.
Schedule Jobs
Conveniently configure and schedule all selected jobs simultaneously to streamline your workflow.
Product store
If your OMS is connected to multiple eCommerce stores selling different collections of products, you may have multiple Product Stores set up in HotWax Commerce.
eCom stores (Shopify Configs)
If your OMS is connected to multiple eCommerce stores selling the same catalog operating as one Company, you may have multiple Shop Configs for the selected Product Store.
Select jobs
Search Jobs and use the Add function to select jobs to be scheduled.
Scheduler
Configure and schedule all selected jobs simultaneously.
Scheduled run time and frequency, set on bulk scheduler, will be applied to all the selected jobs.
Choose the Product store.
Select the relevant Shopify configurations.
Click Select Jobs
function to proceed to locate and add the jobs you wish to schedule.
Adjust the scheduled run time and frequency according to your requirements.
Learn about the Fulfillment jobs in HotWax Commerce.
Job name: Ship packed orders Job Enum ID: JOB_SHIP_ORD_PKD
Description
The Ship Packed Orders Job is activated in the Job Manager App, orders will be automatically marked as shipped. Ensure to enable the isTrackingRequired
setting on shipping methods to prevent automatic shipment for methods without tracking codes. However, note that this setting does not directly apply to the orders being shipped. To streamline order shipping in HotWax Commerce, navigate to the Completed tab and select the Ship Orders function to bulk mark them as shipped.
No custom parameters for this job
Job Name: Order Fulfillment History
Job Enum ID: JOB_ORD_FLMNT_HST
Description
The order fulfillment history job within HotWax Commerce is a crucial component of the system's functionality. It involves the creation or updating of records related to order fulfillment, which typically includes tasks such as processing orders, tracking inventory, and managing shipping and delivery. This job ensures that accurate and up-to-date information regarding order fulfillment is maintained within the system, enabling efficient handling of customer orders and timely delivery of products. By integrating with FTP (File Transfer Protocol), the job can securely access and exchange data, enhancing the automation and reliability of the order fulfillment process. Overall, this job plays a vital role in optimizing the operational efficiency and customer satisfaction of HotWax Commerce-powered businesses.
Custom Parameters
Parameter | Type | Description | Default Value |
---|
Job Name: Open BOPIS Order Notification
Job Enum ID: JOB_OPN_BOPIS_ORD_NT
To send an Open BOPIS order notification HotWax Commerce sends a notification for open and ready-to-pickup orders. In the Job Manager app, navigate to the fulfillment page, and click on the Open BOPIS order notification button. An extended menu will appear on the right allowing selection of the run time and scheduling preferences. Save the settings to regulate the frequency of the notifications.
No custom parameter for this job
Job Name: Ready to Pick BOPIS Order Notification
Job Enum ID: JOB_RP_BOPIS_ORD_NT
The Ready to Pick BOPIS Order Notification
job sends a notification to the customer once their Buy Online, Pick Up In Store (BOPIS) order is packed and ready for pickup, ensuring timely communication about the order's availability for collection.
Custom Parameters
Job Name: Open Shipping Order Notification
Job Enum ID: JOB_OPEN_SHIP_ORD_NT
Description The Open Shipping Order Notification
job notifies store associates whenever an open order is received. This ensures that store associates are promptly alerted to new orders, enabling them to begin the fulfillment process without delay.
Custom Parameters
Job Name: Auto Cancellations
Description
Orders that remain unfulfilled beyond their auto-cancellation date will be automatically canceled within HotWax Commerce. Additionally, if the upload for canceled orders is enabled, these orders will also be canceled in Shopify.
No custom parameters for this job
Job Name: Notification using communication events
Job Enum ID: JOB_SND_ML_COMM
Description The Notification Using Communication Events
job enables retailers to communicate to internal users by the help of the communication event feature on the view order page. This job ensures that internal teams are promptly alerted to important events for that particular order, facilitating efficient communication within the organization.
No custom parameters for this job
Job Name: Packed BOPIS Order Reminder Notification
Description The Packed BOPIS Order Reminder Notification
job sends a reminder notification to customers informing them that their Buy Online, Pick Up In Store (BOPIS) order has been packed and is ready for pickup. This reminder is sent every 7 days, up to 3 times, ensuring the customer is informed and reminded to collect their order.
Custom Parameters
Learn about the Orders jobs in HotWax Commerce.
Job Name: Import Orders
Job Enum ID: JOB_IMP_ORD
Description
The Import Orders
job is designed to import new orders recently created on eCommerce platforms into HotWax Commerce. New orders are identified by checking those created since the last time the job was executed. If the job is run for the first time, it defaults to orders created in the last 15 minutes from the execution time. This default duration can be adjusted using the "frequency" custom parameter.
Recommended Frequency Importing new orders every 15 minutes is generally sufficient to ensure customers have a grace period for order cancellations and to process expedited orders on time. However:
Low Order Volume: For instances with lower order volume and more demanding fulfillment SLAs, consider increasing the frequency to every five minutes.
High Order Volume: During periods of higher order volume, importing orders every 15 minutes is recommended to leverage HotWax Commerce's bulk import capabilities fully.
Job Name: Approve Orders
Job Enum ID: JOB_APR_ORD
Description
In HotWax Commerce, all orders are initially marked as Created
after downloading. Orders can be auto-approved using a scheduled job called Approve Orders
, which checks the approval status of Shopify orders based on parameters set by Shopify merchants. The job runs at a default frequency and approves orders once all necessary details and required references are established.
Custom Parameters
Job Name: Import Order Updates from Shopify
Job Enum ID: JOB_IMP_ORD_UPD
Description
The Import Order Updates from Shopify
job is specifically designed to handle the import of order updates from the eCommerce platform into HotWax Commerce. This job caters to a variety of order modifications, including the addition of new items, changes in item quantities, and the cancellation of items or entire orders.
Recommended Frequency The job is configured to run every 60 minutes, ensuring frequent updates and maintaining synchronization between Shopify and HotWax Commerce.
Job Name: Import Canceled Order
Job Enum ID: JOB_IMP_CAN_ORD
Description
The Import Canceled Orders
job synchronizes order cancellations between the eCommerce platform and HotWax Commerce. It identifies orders marked as canceled in the eCommerce system and updates their status in HotWax Commerce, ensuring alignment and preventing further processing of canceled orders.
Job Name: Import Canceled Items
Job Enum ID: JOB_IMP_ITM_CNCL
Description
The Import Canceled Items
job is designed to actively monitor eCommerce platforms for order items that have been canceled. Unlike canceling the entire order, this job specifically targets canceled items and ensures their corresponding status is updated within HotWax Commerce.
This job is crucial for maintaining accurate inventory records and order status in HotWax Commerce. By identifying and canceling individual items that have been canceled on the eCommerce platform, it prevents discrepancies and ensures that the system reflects the most up-to-date order information.
Recommended Frequency The job is configured to run every 15 minutes, ensuring a regular check for canceled items and prompt updates within HotWax Commerce.
Job Name: Import Order Returns
Job Enum ID: JOB_IMP_RTN
Description
The Import Order Returns
job plays a crucial role in managing returned orders seamlessly between eCommerce platforms and HotWax Commerce. This job actively monitors eCommerce platforms to identify orders that have been returned. Subsequently, it initiates the creation of return transactions within HotWax Commerce. In cases where inventory is damaged, the job ensures accurate logging of Damaged variances in HotWax.
Return Creation: The primary function of the job is to create return transactions in HotWax Commerce for orders identified as returned on the eCommerce platform.
Restocking: If the inventory is damaged and marked as returnable, the job ensures that returned items are restocked appropriately.
Recommended Frequency The job is configured to run every 15 minutes, ensuring a regular check for returned orders and facilitating swift updates within HotWax Commerce.
Webhooks can be subscribed to from the category pages within the Job Manager app for specific categories.
Automated messages sent from eCommerce (Shopify) to OMS whenever an event occurs. They contain data about the event and are received in OMS, allowing real time communication between eCommerce and OMS.
Subscribe to Shopify eCommerce Webhooks from OMS for:
Upload Completed Orders
JOB_UL_CMPLT_ORD
Description
The Upload Completed Orders
job synchronizes all orders marked as "Completed" in HotWax Commerce with Shopify. This ensures that orders in Shopify are updated to a "Fulfilled" status, maintaining accurate and consistent order tracking across both systems.
Recommended Frequency
The job is configured to run at a frequency that suits the needs of your business, ensuring timely updates for fulfilled orders.
Parameters
Upload Canceled Orders
JOB_UL_CNCLD_ORD
Description
The Upload Canceled Orders
job is used to upload canceled orders from HotWax Commerce to Shopify. HotWax Commerce allows retailers to set an auto-cancel date for each order, which defaults to 7 days. If an order is not fulfilled within this time frame, it is automatically canceled in HotWax Commerce and requires updating on Shopify to ensure both systems stay in sync. This bulk operation helps streamline the cancellation process, reducing manual effort and minimizing discrepancies between HotWax Commerce and Shopify.
Custom Parameters
Job Name: Party Identification
Job Enum ID: JOB_PARTY_IDENT
Description The Party Identification job is designed to create or update Party Identification records within the system. This job ensures accurate and up-to-date identification of parties involved.
Recommended frequency The job is configured to run at a frequency that aligns with the business needs for regular updates of party identification records.
Custom Parameters
Job Name: Update Order Tags
Job Enum ID: JOB_UPD_TAG_ORD
Description The Update Order Tags job, identified by Job Enum ID UPDATE_ORDER_TAGS, is designed to perform bulk updates to order tags on the eCommerce platform. This job facilitates efficient and large-scale modifications to order tags, ensuring synchronization with the latest data.
Recommended Frequency The job frequency can be configured based on the business needs and the desired frequency of updating order tags in bulk.
No custom parameters for this job
Job Name: Complete order items from Shopify
Job Enum ID: IMP_COMPL_ORD_ITM
Description
The Complete Order Items from Shopify
job ensures that order statuses remain synchronized between Shopify and HotWax Commerce. When items in an order are marked as completed in Shopify, this job automatically updates the corresponding items in HotWax to reflect their completed status. This synchronization helps maintain accurate order tracking, reduces manual updates, and ensures consistency across both platforms.
No custom parameters for this job
Job Name: Approve Sales Order
Job Enum ID: JOB_APR_SALES_ORD
Description The Approve Sales Order job is designed to facilitate the approval of sales orders within the system. This ensures that sales orders are processed and approved promptly.
Recommended frequency The job is configured to run at a frequency that aligns with the business needs for timely approval of sales orders.
Custom Parameters
Job Name: Bulk Process Refund for Received Return
Job Enum ID: BLK_PROCESS_RTN_RFND
Description The Bulk Process Refund for Received Returns job is designed to efficiently process returns in bulk and push them to the Shopify platform. This job specifically handles returns that are associated with a sales channel set to POS. It is particularly useful for retailers who do not use Shopify's POS system, enabling them to manage returns and process refunds in bulk for smoother operations and accurate financial records.
Custom Parameters
Job Name: Import Create Exchange Order
Job Enum ID: JOB_CRT_SALES_ORD
Description
The Create Exchange Order
job processes orders for which an exchange has been initiated in Shopify and synchronizes these exchange details into HotWax Commerce. This ensures accurate tracking and management of exchange orders within the OMS.
Custom Parameters
Job Name: Import Create Return Order
Job Enum ID: JOB_CRT_RETURN
Description This job imports all return requests created in Shopify into HotWax Commerce. It ensures that return data, including returned items and customer details, is automatically synced for processing. This job helps keep records up to date, supporting accurate inventory adjustments and streamlined return management across both platforms.
Custom Parameters
Job Name: Create Shipment for Incoming Returns
Job EnumID: INCOMING_SHPMNT_RETN
Description
The Create Shipment for incoming returns
job serves to manage the reception of return shipments efficiently. When a return is initiated through Shopify, the return item details are added into the receiving app of HotWax Commerce.
Custom parameters
Job Name: Import last day orders from Shopify
Job Enum ID: JOB_IMP_MISS_ORD
Description
The Import Last Day Orders from Shopify
job imports all orders received on Shopify from the previous day into HotWax Commerce. This job ensures that no orders are missed, keeping the order data synchronized between Shopify and HotWax Commerce for accurate processing and inventory management. It helps maintain consistency across both platforms by ensuring all recent orders are promptly imported and recorded.
Custom Parameters
Job Name: Order Item Attribute
Job Enum ID: JOB_ORDER_ITM_ATTR
Description The Order Item Attribute job is designed to create or update Order Item Attribute records. This job ensures the accurate maintenance of order item attributes within the system.
Recommended frequency The job is configured to run at a frequency that suits the needs of your business, ensuring timely updates for order item attributes.
Custom parameters
Job Name: Order Item Rejected
Job Enum ID: JOB_ORDER_ITM_RJCT
Description
The Order Item Rejected
job records items that cannot be fulfilled, creating a rejection record in HotWax Commerce. This job ensures that order items, that are rejected from the fulfillment location where they were first allocated, are recorded for tracking purposes. It helps improve inventory management by keeping accurate records of items that could not be fulfilled from their original location.
Custom Parameters
Job Name: Import Transfer Order
Job Enum ID: JOB_ORDER_ITM_TO
Description
The Import Transfer Order
job brings transfer order details into the order management system from the ERP system to ensure consistency and accuracy in the inventory transfers. This process supports inventory accuracy by facilitating the fulfillment and receipt of inventory transfers.
Custom parameters
Job Name: Order Identification
Job Enum ID: JOB_ORDER_IDENT
Description
The Order Identification
job is designed to create or update Order Identification records within the OMS. This job ensures accurate and up-to-date identification of orders.
Recommended frequency The job is configured to run at a frequency that aligns with the business needs for regular updates of order identification records.
Custom parameters
Job Name: Import Order Metafield
Job Enum ID: IMP_ORD_META_FLD
Description
The Import Order Metafield
job is designed to schedule a job for downloading order metafields. This job ensures the timely synchronization of order metafields from the specified namespace.
Recommended frequency The job is configured to run at a frequency that aligns with the business needs for regular updates of order metafields.
Custom parameters
Job Name: Import Customers from Shopify Job Enum ID: JOB_IMP_CSTMR
Description The Import Customer job imports customer data from Shopify into HotWax Commerce. This job ensures that customer information, including contact details and order history, is accurately synced between the two platforms, supporting smooth order processing and customer management in HotWax Commerce.
Custom Parameters
Job Name: Approve Transfer Orders Job Enum ID: JOB_APR_TO
Description The Approve Transfer Order job approves all transfer orders imported into HotWax Commerce from Shopify. This job ensures that the transfer orders are validated and ready for fulfillment, allowing the processing and shipping of items to proceed smoothly. It helps streamline the order fulfillment process by automating the approval of transferred orders.
Custom Parameters
Job Name: Import order attribute
Job Enum ID: JOB_ORDER_ITM_ATTR
Description Order attributes are additional details associated with an order that provides essential information for processing. For example, order attributes are used to move an order from the "created" state to the approved state, among other functions. The Import Order Attribute job imports these attributes, ensuring they are available for fulfillment once the order reaches the approved state.
Custom Parameters
Job Name: Order Item Fulfillment
Job Enum ID: JOB_ODR_ITM_FLFLMNT
Description The Order Item Fulfillment job is designed to complete order items using a JSON file in MDM (Master Data Management). This job ensures the fulfillment of order items and synchronization with the provided JSON file.
Recommended frequency The job is configured to run at a frequency that aligns with the business needs for completing order items using the MDM JSON file.
Custom Parameters
Learn how to troubleshoot issues with scheduling jobs in the HotWax Commerce Job Manager application for seamless job management.
If you are unable to schedule a job in the Job Manager application, and the job data is not appearing, it could be due to missing job draft data, missing job runtime data, or issues with the service in the OMS.
Access the instance web tools using this URL: .
In the JobSandbox form, find the Job Name
field.
Enter the job name you are attempting to schedule.
Move to the "Status Id" field and enter SERVICE_DRAFT
.
Click the search button.
If the job data is not found, it means it's missing, and you need to add it. Refer to the for guidance on how to create and input job data.
In cases where the job draft data is available but scheduling issues persist, follow these steps:
Locate the service name field in the job draft data.
Check if there is data in the service name field.
If not found, contact the HotWax Support team for assistance.
Extract runtime ID
from the job draft data.
Search for the Runtime Data
entity and input the runtime ID in the "Runtime ID" field.
Click the search button.
If runtime data is available, and the job is still not executing, the data is incorrect.
Edit the runtime record, scroll down to find runtimeInfo
, and copy the text.
Remove rich text using tools like ChatGPT.
Replace the cleaned data in runtime info and update it.
Retry the job to check if the issue is resolved.
If the problem persists, contact support for further assistance.
By following these steps, you can ensure that the necessary job data is available, allowing you to schedule the job successfully in the Job Manager application.
Learn about the Products job in HotWax Commerce.
Job Name: Import New Products
Job Enum ID: JOB\_IMP\_PROD\_NEW
Description
The Import New Products job is designed to import new products from eCommerce or Product Information Management systems. This job is crucial for keeping your product catalog updated with the latest additions and ensuring accurate representation on your platform.
Recommended Frequency
The job frequency is set to run every 15 minutes by default. You may adjust this frequency based on the frequency of new product additions and the desired update interval for your product catalog.
Custom Parameters
Job Name: Import Product Updates
Job Enum ID: JOB\_IMP\_PROD\_UPD
Description
The Import Product Updates job is designed to update existing products from eCommerce or Product Information Management (PIM) systems. This job ensures that your product information stays current and reflects any changes made in the source system.
Recommended Frequency
The job frequency is set to run every 15 minutes by default. Adjust the frequency based on the update frequency of your product data in the eCommerce or PIM system.
Custom Parameters
Webhooks can be subscribed to from the category pages within the Job Manager app for specific categories.
Automated messages sent from eCommerce (Shopify) to OMS whenever an event occurs. They contain data about the event and are received in OMS, allowing real time communication between eCommerce and OMS.
Subscribe to Shopify eCommerce Webhooks from OMS for:
Job Name: Import kit components
Job Enum ID: IMP\_KIT\_METAFIELD
Description
The Import Kit Product Components
job is specifically designed to import components of kit products from an external system. This job ensures that kit product components are accurately reflected in the Order Management System (OMS).
Recommended Frequency
The frequency of running this job depends on the frequency of updates or changes to kit product components. It is recommended to run this job as needed based on changes in the external system.
Custom Parameters
Job Name: Import Promo Code
Job Enum ID: JOB\_IMP\_PRMO\_CODE
Description
The Import Promo Code
job is designed to import promotional codes into the system. This job is essential for managing and updating promotional offers on your platform.
Recommended Frequency
The frequency for running this job depends on the frequency of updates to your promotional codes. Adjust the frequency accordingly to ensure timely and accurate updates.
Custom Parameters
Job Name: Product Identification
Job Enum ID: JOB\_PROD\_IDENT
Description
The Product Identification
job, identified by Job ID JOB_PROD_IDENT, is designed to create or update GoodIdentification records for products. This job is crucial for maintaining accurate identification and synchronization of product information across systems.
Recommended Frequency
The frequency for running this job depends on the frequency of updates to product identifications. Adjust the frequency accordingly to ensure timely and accurate updates.
Custom Parameters
Job Name: Activate products on Shopify
Job Enum ID: JOB_ACT_PROD_SHPFY
Description
The Activate Products on Shopify
job synchronizes activated products, such as gift cards, from HotWax Commerce to Shopify. Gift cards, as stored-value products, must be activated to ensure customers can redeem them upon receipt. This job ensures that once gift cards are activated in HotWax Commerce, the activation codes are automatically synced to Shopify, making them immediately redeemable for customers.
Custom Parameters
Job Name: Associate products with sub catalog
Job Enum ID: JOB\_UPD\_PROD\_ASSOC
Description
The job identified by Job ID JOB_UPD_PROD_ASSOC
is specifically crafted to link products within a child product catalog (typically a non-master catalog) with those in the master product catalog in OMS. This process is vital for ensuring accurate product associations across multiple Shopify stores utilizing the same product catalog, thereby enhancing consistency in the system.
Recommended Frequency
The recommended frequency for running this job is every 60 minutes. Adjust the frequency based on the frequency of updates or changes to product associations.
Custom Parameters
Job Name: Remove Promo Code
Job Enum ID: JOB\_RMV\_PRMO\_CODE
Description
The Remove Promo Code job, identified by Job ID JOB_RMV_PRMO_CODE, is designed to remove promotional codes from the system. This job is crucial for maintaining an accurate and up-to-date list of active promotional offers on your platform.
Recommended Frequency
The frequency for running this job depends on the removal frequency of your promotional codes. Adjust the frequency accordingly to ensure timely and accurate removals.
Custom Parameters
The Find Sales Order
page in HotWax Commerce offers users a comprehensive listing of all orders, accompanied by essential order details including order items, order ID, order date, and customer information. Additionally, users can easily ascertain the current status of each order and identify the facility to which it is allocated. For enhanced order management, the page also displays promise dates and auto-cancel dates, ensuring timely fulfillment.
To streamline the search process, users have the option to search for orders using product identifiers on the search page. Moreover, filters such as product store, facility, and sales channel are available to further refine and manage the order list.
For seamless integration with external systems, users can export order data in CSV format, facilitating efficient order fulfillment processes across platforms.
HotWax Commerce offers the following features on the Sales Order Page:
The Search Sales Order
feature on the Sales Order
page provides users with quick access to information regarding a specific Order Information. Users can search for Orders based on various identifiers such as Order ID, Customer name, SKU, etc. to get an instant overview of the order.
Step-by-Step Usage Instructions:
Navigate to the HotWax Commerce platform and log in with your credentials. The first page that opens up upon logging in is the Sales Order page.
Within the Sales Order Page
, you'll find a search bar.
In the search bar, you can enter the identifier of the desired order you wish to locate.
Press the Enter
key to initiate the search process after entering the search criteria.
The platform will display the search results based on the provided SKU or order ID.
You can now view all pertinent details related to the order, including customer information, order items, and status. Click on the order to access the detailed information.
HotWax Commerce allows users to sort through numerous orders based on different filter criteria. Enabling users to focus on specific subsets of orders, making it particularly valuable for those dealing with high order volume.
You can apply these filters to Sales Orders:
You can save the search filters using the disc icon and view the saved search filter by clicking on the three horizontal eclipses on the right.
HotWax Commerce has different queues that act as a virtual facility to park the orders that are awaiting fulfillment. Users can view the orders in the queue to identify orders that currently do not have inventory allocated to them.
By filtering orders based on queues, users can focus on handling orders that require immediate attention or fall into the queue.
Users can also filter the orders that will be auto-canceled today to make sure such orders are prioritized.
Enables users to export all displayed sales orders into CSV using the Export CSV function. Once the filtered orders are displayed, Click on the Export CSV
option to initiate the export process.
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value | Example Value |
---|---|---|---|---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
Parameter | Type | Description | Default Value |
---|
If no runtime data is found, it is missing. Add runtime data from Webtools: Import/Export page using XML data. Refer to the for guidance on how to input runtime data.
Filter Name | Description |
---|
Queue Name | Description |
---|
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
Daily Once
11:30:00:00 AM
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc.
Daily Once
23:59:00:00 PM
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
15 Minutes
Every 15 minutes
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
15 Minutes
Every 15 Minutes
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
15 Minutes
Every 15 Minutes
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
Every Hour
Hourly
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
Every Hour
Hourly
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 1:15 PM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
15 Minutes
Every 15 Minutes
RunTime
String
Specifies the Runtime scheduled for a job, which can be customized.
null
April 17, 2024, 7:15 AM
Schedule Frequency
String
Schedules frequency from the dropdown as every 5 minutes, Hourly, Daily, Weekly, etc. which can be customized as required.
Daily Once
Every Day
| Required | Identifies the configuration for Order Item Attribute records. |
|
| Required | Specifies the property resource for configuration. |
|
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Specifies the SFTP location and path for importing the file into the system. | Not specified |
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Enabled |
| Required | This is used to represent a unique identifier for an enumerated value related to a topic or subject. |
|
| Required | This is used to represent a unique identifier for an enumerated value related to a topic or subject. |
|
| Optional | Number of days between each reminder | 7 |
| Optional | Maximum number of occurrences of the reminder | 3 |
| Optional | Specific type of email template to use for a notification |
|
Parameter | Type | Description | Default Value |
| Required | Defines the default duration for syncing orders if there is no Last Sync Time. | 15 minutes |
| Optional | Sets a limit on the order import job, restricting the number of orders fetched from eCommerce. | Not specified |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in eCommerce platforms. | 5 minutes |
| Optional | Skips Shopify orders created within the specified time interval. For example, if thruDateBuffer is set to 1, it implies that orders created in Shopify within the last 1 minute will be skipped during the import process. | 2 minutes |
| Optional | When importing files into the OMS, the system must pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Enabled |
Parameter | Type | Description | Default Value |
| Optional | The ID associated with the order is to be updated on the eCommerce platform. | Not specified |
Parameter | Type | Description | Default Value |
| Required | Defines the default duration for syncing orders if there is no Last Sync Time. | 60 minutes |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in Shopify. | Not specified |
Parameter | Type | Description | Default Value |
| Required | Defines the default duration for syncing orders if there is no Last Sync Time. | 15 minutes |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in eCommerce platforms. | Not Specified |
Parameter | Type | Description | Default Value |
| Required | Defines the default duration for syncing orders if there is no Last Sync Time. | 15 minutes |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in Shopify. | Not specified |
Parameter | Type | Description | Default Value |
| Required | Defines the default duration for syncing orders if there is no Last Sync Time. | 15 minutes |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in Shopify. | Not specified |
| Optional | Specifies the financial status of orders. | Not specified |
| Optional | Sets a limit on the order import job, restricting the number of orders fetched from eCommerce. | Not specified |
| Required | The ID associated with the shipment to track and update orders. | Not specified |
| Required | The ID associated with the order to be updated on the eCommerce platform. | Not specified |
| Required | The timestamp associated with the creation of shipments. | Not specified |
| Required | Defines the default duration of the last syncing of the canceled orders. | In an hour |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in eCommerce platforms. | Not specified |
| Optional | The ID associated with the order to be updated on the eCommerce platform. | Not specified |
| Optional | This parameter specifies the date an order was canceled in HotWax Commerce. | Not specified |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Required | Identifies the configuration for importing party identification records. | IMP_PARTY_IDENT |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Not specified |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Required | Identifies the configuration for Order Item Attribute records. | IMP_APR_SALES_ORD |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Enabled |
| Optional | It marks the beginning of the validity period for an entity or event, such as the defined period of the received returns. | Not Specified |
| Optional | Unique identifier for return transactions within the system. | Not Specified |
| Required | Identifies the configuration for Order Item Attribute records. | IMP_CRT_EXCHG_ORD |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
importpath | Optional | Specifies the SFTP location and path for importing the file into the system. | Not specified |
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Required | Identifies the configuration for Order Item Attribute records. | IMP_CRT_RTN_ORD |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
importpath | Optional | Specifies the SFTP location and path for importing the file into the system. | Not specified |
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Required | Identifies the configuration for Order Item Attribute records. | INCOMING_SHPMNT_RETN |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
importpath | Optional | Specifies the SFTP location and path for importing the file into the system. | Not specified |
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies the Interval for processing a file. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Required | Specifies the property resource for configuration. | IMP_ORDER_ITM_ATTR |
| Required | Identifies the configuration for Order Item Attribute records. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Enabled |
| Required | Identifies the configuration for Order Item Attribute records. | IMP_ORDER_ITM_RJCT |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Required | Identifies the configuration for Order Item Attribute records. | IMP_TRANSFER_ORD |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
importpath | Optional | Specifies the SFTP location and path for importing the file into the system. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Not specified |
| Optional | ID of the job that initiated this job. | Not specified |
| Required | Specifies the property resource for configuration. | FTP_CONFIG |
| Required | Identifies the configuration for importing order attributes. | IMP_ORDER_IDENT |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Enabled |
| Required | Specifies the namespace for order metafields. | HotwaxOrderDetails |
| Optional | Specifies the buffer time (in minutes) for scheduling job downloads. | 1 minute |
| Optional | Specifies the buffer time (in minutes) for processing orders after the through date. | Not specified |
| Optional | Specifies a filter query for more targeted metafield downloads. | Not specified |
| Optional | Specifies the frequency (in minutes) for running the job. | Not specified |
frequency | Required | Defines the default duration of the last syncing of the shipment status. | 15 |
| Optional | Specifies the buffer time (in minutes) for scheduling job. | Not Specified |
limit | Optional | Additional parameters for job customization. | Not Specified |
orderIds | Optional | The ID associated with the order to be updated on the eCommerce platform. | Not Specified |
| Optional | Specifies the buffer time (in minutes) for scheduling job. | Not Specified |
| required | Identifies the configuration for Order Item Attribute records. | MOD_ORD_ATTR |
| required | Specifies the property resource for configuration. | FTP_CONFIG |
| optional | Specifies the remote filename for processing. | Not specified |
| optional | Specifies a grouping parameter for the job. | Not specified |
| optional | Additional parameters for job customization. | Not specified |
| optional | Specifies a regular expression for filtering filenames. | Not specified |
| optional | Specifies the SFTP location and path for importing the file. | Not specified |
| optional | Forces the system to pick the file out of sequence for immediate processing. | Not specified |
| optional | ID of the job that initiated this job. | Not specified |
| Required | Specifies the property resource for configuration. | Not specified |
| Required | Identifies the configuration for importing order attributes. | IMP_ODR_ITM_FLFLMNT |
| Optional | Specifies the remote filename for processing. | Not specified |
| Optional | Specifies a grouping parameter for the job. | Not specified |
| Optional | Additional parameters for job customization. | Not specified |
| Optional | Specifies a regular expression for filtering filenames. | Not specified |
| Optional | Forces the system to pick the file out of sequence for immediate processing. | Enabled |
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the configuration ID for Shopify, if applicable. | null | SHOP_CONFIG_001 |
| Integer | Sets a limit on the number of products to import per job run. | 100 | 50 |
| Integer | Defines the default duration for syncing products if there is no | 15 minutes | 10 minutes |
| Integer | Specifies the buffer time (in minutes) for scheduling job downloads. | Not specified | 5 |
| Boolean | When set to true, forces the system to pick the file out of sequence for immediate processing. | false | true |
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the configuration ID for Shopify. | null | SHOPIFY_CONFIG_001 |
| String | Specifies the configuration ID for importing kit product components. | BULK_IMP_VARIANTS_MF | KIT_COMP_IMPORT_CONFIG |
| String | Specifies the query to identify kit products. | product_type: Kit | category: Bundle |
| String | Specifies the namespaces for kit product components. | bundles_app | kit_components |
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the property resource for the FTP configuration. | FTP_CONFIG | SFTP_CONFIG_001 |
| String | Specifies the configuration ID for importing promo codes. | IMP_PRMO_CODE | PROMO_CONFIG_001 |
| String | Specifies the regular expression for matching file names during synchronization. | *.csv | *.csv |
| String | Specifies the grouping parameter for multi-threading, such as | Not specified | location_id |
| Optional | Specifies additional parameters for customization. | Not specified | { "param1": "value1", "param2": "value2" } |
| Optional | Specifies the remote filename for the job. | Not specified | sample_file.txt |
| Optional | Specifies whether to schedule the job for immediate processing. | false | true |
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the property resource for the FTP configuration. | FTP_CONFIG | SFTP_CONFIG_001 |
| String | Specifies the configuration ID for importing product identifications. | IMP_PROD_IDENT | PROD_IDENT_CONFIG_001 |
| String | Specifies the type of identification used (e.g., SHOPIFY_PROD_ID). | Not specified | SHOPIFY_PROD_ID |
| String | Specifies the type of GoodIdentification (e.g., NETSUITE_PRODUCT_ID). | Not specified | NETSUITE_PRODUCT_ID |
| String | Specifies the grouping parameter for multi-threading, such as | Not specified | location_id |
| Optional | Specifies the remote filename for the job. | Not specified | sample_file.txt |
| String | Specifies the grouping parameter for multi-threading, such as | Not specified | location_id |
Parameter | Type | Description | Default Value |
| Optional | Identifies the configuration for Order Item Attribute records. |
|
| Optional | Specifies the property resource for configuration. |
|
| Optional | Specifies the remote filename for processing. |
|
| Optional | Specifies a grouping parameter for the job. |
|
| Optional | Additional parameters for job customization. |
|
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the configuration ID for updating product associations. | IMP_SHPFY_SHOP_PROD | ASSOC_PROD_CONFIG_001 |
| Integer | Specifies the frequency (in minutes) for running the job. | 60 | 30 |
| Optional | Sets a limit on the order import job, restricting the number of orders fetched from eCommerce. | Not specified | 100 |
| Optional | Ensures orders are not imported until they have aged past a desired duration, accommodating post-processing workflows in eCommerce platforms. | Not specified | 30 minutes |
| Optional | When importing files into the OMS, force the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. | Enabled | false |
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the property resource for the FTP configuration. | FTP_CONFIG | SFTP_CONFIG_001 |
| String | Specifies the configuration ID for removing promo codes. | IMP_RMV_PRMO_CODE | PROMO_CONFIG_002 |
| String | Specifies the regular expression for matching file names during synchronization. | *.csv | *.csv |
| String | Specifies the grouping parameter for multi-threading, such as | Not specified | location_id |
| Optional | Specifies additional parameters for customization. | Not specified | { "param1": "value1", "param2": "value2" } |
| Optional | Specifies the remote filename for the job. | Not specified | sample_file.txt |
| Optional | Specifies whether to schedule the job for immediate processing. | false | true |
Product Store | Choose the desired Product Store from the dropdown menu to filter by a specific store. |
Facility | Select the Facility to narrow down the results to a particular location. |
Order Status | Filter by Order Status to view orders in a specific stage (created, approved, completed, canceled). |
Item Status | Filter by Item Status to focus on specific stages of item fulfillment (Reserved, Picking, Packing, Shipped, Delivered). |
Sales Channel | Choose the desired Sales channel from the dropdown menu to filter by a specific channel such as Shopify, Amazon, etc. |
Order Date | This filter categorizes orders based on their order date, allowing users to filter them by predefined time intervals. |
Promised Date | This filter categorizes orders based on their promise date, allowing users to filter them by predefined time intervals. |
Auto Cancel Date | The auto-cancel date is the predetermined deadline by which an order will be automatically canceled if not fulfilled. |
Shipping Method | Filter by the shipping method such as delivery speed (standard, expedited, express), cost, or specific carriers. |
Pre-Orders | Orders that are placed in Pre-order parking (To hold pre-ordered items until released from HC) can be shown by clicking on the Pre-orders checkbox. |
Back Orders | Orders that are placed in Backorder parking (To hold back-ordered items until released from the HC) can be shown by clicking on the Back-orders checkbox. |
Brokering Queue | Orders that are placed in the Brokering Queue (To hold orders for in-stock items until the next brokering run) can be shown by clicking on the Brokering Queue checkbox. |
Unfillable Hold | Orders that are placed in the Unfillable Hold (To hold unfillable items from further brokering and auto-cancellation) can be shown by clicking on the Unfillable Hold checkbox. |
This guide provides solutions to diagnose and resolve problems associated with order management, ensuring smoother order processing and greater accuracy in order management.
This document provides a comprehensive guide to diagnose and resolve synchronization issues related to order import errors caused by special characters in notes and incorrectly formatted email fields.
Order import fails in HotWax Commerce OMS due to special characters in the "Note" field. Such as 🌟 👍 😊 or miscellaneous characters.
Order import fails in HotWax Commerce OMS due to incorrectly formatted email addresses. Such as name#example.com or name@#example.com, etc.
Common Error Messages:
"Rollback called in Entity Engine SQLProcessor java.lang.Exception"
"E-mail address not formatted correctly, must be like: name@domain"
Access OMS:
Navigate to HotWax Commerce OMS and log in with your user credentials.
Go to the MDM
page from the hamburger menu and click on EXIM
> MDM
> Shopify order mdm
.
Check the Import Results in the Shopify order mdm
page for any failed records.
Check Shopify Logs:
Review Shopify Plus logs or feeds for specific error messages related to the failed import.
Identify Failed Order:
Find the order that failed to import by looking at the error messages in OMS.
Download JSON File:
Append /json
to the order URL in Shopify to download the JSON file of the failed order.
Inspect "Note" and "Email" Fields:
Open the JSON file and locate the note key. Check for any special characters, emojis, or miscellaneous symbols.
Locate the email key and verify that the email address follows the standard format (e.g., name@domain).
Remove Special Characters and Correct Email Format:
Edit the JSON file to remove any special characters from the note field.
Correct the email address to adhere to the standard format.
Save Edited JSON:
Save
the changes made to the JSON file.
Re-import Order:
If an error is resolved within the job execution time (generally 15 minutes), the import order job should automatically import the order.
Otherwise, manually import the order by navigating to MDM / EXIM
> MDM
> Shopify orders mdm
, select Shopify Config, upload your JSON or CSV file using the Upload File field, and run the job.
Verify Successful Import:
Ensure the order is successfully imported without errors.
By following these detailed steps, you can effectively troubleshoot and resolve synchronization issues between HotWax Commerce and Shopify, ensuring a smooth and error-free order import process.
This issue is handled in [Release 5.9.0](https://docs.hotwax.co/integrate-with-hotwax/oms-release-versions/omsreleases)
Discover how sales orders are updated in HotWax Commerce OMS.
To perform the order allocation tasks, we first navigate to the View Sales Order page:
Go to the Hamburger Menu in the OMS > Order Management section > Sales Orders to open the Find Sales Order page.
Search for the order ID for which you want to update the order details.
Select the order ID to open the View Sales Order page.
Users can easily access and review the shipping details associated with orders. This includes shipping address, communication details, shipping method, estimated delivery date, and tracking details.
Edit function is available only for approved orders.
Details need to be updated for each shipgroup of an order.
Here's how you can update shipping address for the order:
Updating Shipping Address:
Click on the Edit
function available for the order.
Fill in the required shipping details that needs to be changed in the form provided.
Save the changes by clicking on the save
button
Updating Shipping Method:
Within the order, locate the shipping method section.
Click on the Edit
function next to the current shipping method.
Choose the desired shipping method from the provided list.
Save the changes.
Users only change the shipping method directly for orders in the brokering queue. If inventory has already been allocated to the order, users need to reject the item from the store, update the shipping method, and then broker the order again.
Orders can only be canceled in HotWax Commerce when they are in the created
state. Additionally, it's important to note that the sales orders canceled on HotWax Commerce are not automatically updated on Shopify. Therefore, it is recommended for users to cancel orders directly on Shopify for seamless synchronization and accurate order status across platforms. Cancelling a sales order will automatically cancel all other sales order items in the order.
Cancellation Process:
Select the required order to open the Sales Order Detail page.
Click the Status dropdown located at the top left of the page.
Select the Cancel function to cancel the entire sales order.
Once the View Sales Order
page is open, scroll down to locate the Item
section. This section displays all items included in the selected order.
Within the Item section, locate and click on the Edit Items
function. This action will enable editing options for the items within the order.
Identify the line item/s that need to be canceled due to inability to fulfill and click on the Delete
function next to each respective item.
After deleting the unwanted items, ensure to click on the Save
function to apply the changes to the order.
Refreshing sales order allows retailers to reimport a sales order from Shopify to HotWax Commerce. Refreshing is required if an order update in Shopify is not included in the sync order update job
.
HotWax Commerce can update the following details from Shopify:
Adding items to an order
Removing items from an order
Changing item quantities
Changing shipping addresses
Changing customer contact detail
Change in Order Fulfillment Status
Verification at Shopify:
Log in to the Shopify admin portal.
Locate the specific order that requires updates.
Review the order details to verify any changes or make necessary updates, such as adding/removing items, adjusting quantities, or modifying customer and shipping information.
Once verified or updated, ensure to save the changes within Shopify.
Refresh Order in HotWax Commerce:
Return to the HotWax Commerce platform and access the order view page for the corresponding order.
Locate and click on the "Refresh Order" button available in the header section of the order view page.
After refreshing, verify that the order status and item status are updated accordingly. This may involve checking for any cancellations or changes in item availability.
Go back to the Sales Order Find Page and select "Approved" and "Canceled" statuses from the order status filter dropdown.
Review the refreshed order details to ensure that the updates from Shopify have been successfully synchronized with HotWax Commerce.
The existing orders get canceled with the Old Version
tag. A new Order with the same order ID gets created with updated items in HotWax Commerce. The updated information will be reflected in the item section on the sales order detail page.
Splitting an order into separate shipments for fulfillment across multiple locations occurs when all items are not available at a single facility. The order splitting settings on the order view page is shown as per the product store settings. However, if the CSR team want to split a specific order, they can click on the checkbox against the allow splitting function.
CSR teams can manually input personalized messages on behalf of customers upon request. These gift messages can be added along with the order at the time of fulfillment by the store associates by clicking on the Add
Buttion against the gift message
Any special instructions or handling requirements associated with the items in the group can be added by clicking on the Add
button against Handling instruct. The handling instructions added here will be visible in the fulfillment app for store associates
Ship By specifies the date by which the items should be shipped to ensure timely delivery, while Ship After indicates the date after which the items need to be shipped. Both Ship By and Ship After details can only be added upon customers' requests.
Order cancellations are a common occurrence in online retail. If a merchant is using both Shopify and HotWax Commerce, cancellations can happen in two ways:
Cancellations made in Shopify and updated in HotWax Commerce.
Cancellations made in HotWax Commerce and updated in Shopify.
HotWax Commerce recommends canceling orders on Shopify and then updating them on HotWax Commerce, following the same process as used for order creation. This approach ensures that cancellations are handled consistently by both customers and the customer service team. In special cases, such as auto cancellations and mass pre-order cancellations, Shopify retailers can use HotWax Commerce to cancel orders and update them on Shopify.
HotWax Commerce can import cancellation updates in two cases:
When customers request order cancellations from Shopify or CSR teams cancel orders due to suspected fraudulent orders, they can cancel the entire order through the following steps:
Go to the order page on Shopify.
Select the desired order.
Click on More Actions
and choose Cancel Order
.
To sync cancellation updates from Shopify to HotWax Commerce, there are two options available: webhooks and batch jobs. By subscribing to the Canceled Order
webhook, customers can cancel orders in real-time. However, it should be noted that Shopify webhooks may only sometimes be reliable. Therefore, it is recommended to schedule the Canceled Order
Job. The canceled order job can be scheduled from the HotWax Commerce Job Manager App.
Navigate to the Order section in the job manager app.
Open the job card titled Canceled Order.
Select the order run time and schedule.
Save the Changes, this will schedule the job to import the canceled orders.
When customers request to remove any item from the order or the CSR team cancels the ordered item due to inventory variance, they can partially cancel the order through the following steps:
Access the order page on Shopify.
Choose the Edit
option.
Adjust the quantity or remove the specific item(s) to be canceled.
For partial cancellations, the order status in Shopify does not change, only the last updated date for the order changes. HotWax Commerce partially cancels the order through the following steps:
Navigate to the Order section in the job manager app.
Open the job card titled Canceled Item.
Select the order run time and schedule.
Save the Changes, this will schedule the job to import the canceled items.
For more details on how canceled orders are imported, refer to the Shopify-HotWax Commerce Integration document.
Cancellation of an order can have a different nature on OMS. If an order is not brokered, when it's still in the created
or approved
status but not brokered yet, the order will be marked as canceled on the sales order dashboard of HotWax Commerce. This ensures that the canceled order is properly measured and since the order is not allocated to any store, there would be no changes in the store ATP, only the brokering queue inventory is released.
If an order is brokered for fulfillment to the facility and gets canceled on Shopify, the Fulfillment app will show the impact regardless of whether the job is Open, In Progress, or Completed status. The canceled orders will be automatically removed from the Fulfillment app so that store associates can identify that no further operation needs to be done to fulfill the orders. The ATP of the canceled orders items will increase both for the store and online ATP computation.
If the order is packed, the CSR team should verify with the fulfillment team that the order needs to be unpacked and has been canceled. This ensures that the order is not shipped to the customer.
When Partial order cancellation happens in HotWax commerce, the order item is removed from the fulfillment app, and its inventory is corrected similarly to complete order cancellation. The order status will remain as per the other items, such as created, approved, or completed, only the order item status is changed to canceled which can be visible on the order details page against the line item which is canceled.
Discover the Soft Allocation Workflow for seamless order handling between Shopify and HotWax Commerce.
The Soft Allocation Workflow establishes a seamless integration between Shopify and HotWax Commerce, facilitating the efficient handling of orders with soft-allocated items. By configuring a customized Shopify Flow, triggered upon order creation, and tagged with specific criteria, this workflow ensures that orders are appropriately marked with the necessary identifiers before being imported into HotWax. This tag, denoted as HC_PRE_SELECTED_FAC
, serves as a key element in the subsequent fulfillment process. The OMS is configured to recognize this tag and automatically allocate the associated items to the pre-selected facility, streamlining the fulfillment of orders with soft-allocated items. Additionally, the workflow incorporates essential product store settings in both Shopify and the OMS to further enhance accuracy and ensure a smooth, automated fulfillment process.
To implement a Shopify Flow tailored to the specific requirement of tagging orders with soft-allocated items, follow this comprehensive guide:
1. Create a New Shopify Workflow:
Navigate to Settings > Apps and sales channels in your Shopify admin.
Select the Shopify Flow app.
Click "Open app."
Create a new workflow by clicking "Create workflow."
2. Set Trigger to Order Created
:
Choose the trigger "Order Created" to initiate the workflow when an order is created in Shopify.
Note: Shopify Flows may not run instantly after order creation. To ensure that orders are imported only after tags have been applied to a soft-allocated order, use the buffer
parameter in the import order job.
3. Add Tag on Orders with Soft Allocated Items:
Select Condition
to establish criteria that must be met before any actions can proceed.
Set the condition to:
Select orders > line items > Custom Attributes > Key.
Input hcShippingFacility
as the key.
Click Then
to specify the action to be taken if the condition is met.
Choose Actions
and select an action based on the condition's results.
Set the action to:
Choose 'Add Order Tags'.
Input HC_PRE_SELECTED_FAC
as the tag name.
By following these steps, you'll create a specialized workflow that seamlessly tags orders with soft-allocated items, ensuring a smooth integration with HotWax.
1. Set Product Store Settings:
Go to the Hamburger Menu in OMS.
Navigate to Settings > Store to open the Product Store page for your dedicated store > Store Settings section.
Click "Add" and select the setting from the dropdown: Preselected facility for same day shipping
. Input the value with the same tag added in Shopify HC_PRE_SELECTED_FAC
. This setting ensures that orders imported with this tag have their line items checked for pre-selected facilities to fulfill them.
Add one more setting named: Preselected facility tag
and add value hcShippingFacility
. This line item property on the item that needs to be read to determine the facility of the order.
By following these steps in both Shopify and OMS, you establish a seamless Soft Allocation flow, ensuring accurate fulfillment based on specified criteria.
The comprehensive Order View Page
within HotWax Commerce enhances user efficiency and facilitates streamlined order management. This page consolidates all essential information related to an order, providing users with a holistic view that encompasses key details such as billing and shipping information, order identification, payment terms, preferences, timelines, references, communications, and a detailed list of items. To access the order view page
, simply click on the order ID on the find sales order
page to view comprehensive details about the order.
HotWax Commerce offers the following features on the Order View Page
:
The overview section contains essential information related to billing and order processing. Here's a summary of each element:
Bill To (To-Customer): Indicates the customer who will be billed for the order.
Bill From (Company, Channel, Product Store): Specifies the origin details, including the company, sales channel, and product store associated with the transaction.
Status: Reflects the current status of the order, providing insights into its progress or completion.
Order Date: Records the date when the order was placed or initiated.
External ID: Identifier for external system.
Subtotal: Displays the total cost of items or services before additional adjustments.
Total: The overall cost of the order, which can be manually adjusted for discounts, promotions, replacements, and taxes.
This information provides a comprehensive overview of an order, facilitating effective management and customization of billing details.
The Order Identifications
section displays key information related to Shopify orders. The four main components of this section are:
Shopify Order ID:
This is a unique identifier assigned by Shopify to each order. It serves as a reference point for tracking and managing orders within the Shopify platform. Additionally, users can conveniently view the order details directly on Shopify by clicking on the provided link associated with the Shopify order ID.
Shopify Order Name:
The order name in Shopify typically refers to a customizable name or title assigned to an order on Shopify for further order identification.
Shopify Order Number:
Shopify assigns a distinct numerical identifier to each order. It acts as another unique reference for orders, often used in communication and documentation.
Order Attributes:
Shopify retailers can capture additional crucial order details through metafields. Once customer IDs are verified, they are stored as order metafields in Shopify. When HotWax Commerce enters a retailer’s Shopify ecosystem, it becomes the source of truth for all order-related information. HotWax Commerce downloads order details along with customers’ IDs as order attributes and shares this information with the retailer's accounting system. All downloaded order attributes are visible under this section.
Users can also add Order Attributes by clicking the Add Order Attribute +
button which will open up a new form. Add the attribute name, value and description and click on the Add button to save the order attribute. This function is vital if there are some issue in importing order attributes such as metafield being added after the order has been imported in HotWax Commerce.
In the Payments Section, users can easily view the payment method and total payment value made by customers on the e-commerce platform. This data is then transmitted to the ERP system. Particularly for cash on delivery orders, this information is vital as store associates need to collect payment during fulfillment.
The timeline illustrates the progression of events from the initial order decision to the completion of the transaction, including the involvement of a broker as an intermediary. Here's a brief description of each term:
Order Date:
The date and time when the customer made a purchase.
Entry Date:
The date and time when the order information was officially recorded into HotWax Commerce.
First Brokered:
The first brokered refers to the initial timestamp when an item is allocated to a specific facility. This timestamp remains unchanged even if the item is subsequently rejected by the facility and redirected elsewhere. It serves as a fixed reference point for tracking the item's movement history within the system.
Completed Date:
The date and time when the order was fulfilled, and the goods or services were delivered or made available to the buyer.
For Example:
In the HotWax Commerce platform, the Reference Section
offers a centralized hub for users to access critical information related to picklist status, packing details, shipment information, and returns details. This feature provides quick and easy access to essential data. Users can click on the relevant item such as return ID, picklist ID, etc. to access the order details. Users can see the following details in this section:
Click on the Picklist Status
link to view the current status of picklists associated with orders.
Click on the Packing Details
link to view information regarding the packing process for orders. This includes details such as items packed, and any special instructions.
Click on the Shipment Information
link to access data related to order shipments. This may include tracking numbers, carrier information, and expected delivery dates.
Click on the Returns Details
section to review information about product returns initiated by customers for this order and the status of the return.
The Communications
feature in the HotWax Commerce platform acts as a central hub for users to interact with both the internal team and customers, providing updates on orders. With the capability to add notes and send personalized emails directly from this interface, users can efficiently communicate important updates or notifications to internal teams or customers. Whether it's informing customers about order changes, cancellations, or backorder notifications, or adding notes for the fulfillment team, this feature simplifies communication processes, minimizing misunderstandings and improving overall order management efficiency.
Click on the communication and select either email or notes to start the communication.
Shopify retailers can capture additional crucial order details through metafields. When HotWax Commerce enters a retailer’s Shopify ecosystem, it becomes the source of truth for all order-related information.
HotWax Commerce stores these metafields as order attributes enabling Shopify retailers to conveniently provide necessary order information to accounting systems for accurate financial reporting. For example, customer identification CustomerID
and designated delivery location Municipio
are crucial attributes for one of our clients.
If orders do not have all valid order attributes, the orders remain in “created” status and these orders can not proceed with the fulfillment process. By using the missing order attribute report
, you can find out which orders have a missing order attribute.
To ensure consistency between HotWax Commerce and Shopify, verify if an order has the Order Metafields in Shopify. Typically, the attributes will sync automatically later.
If an order in Shopify has meta fields that are missing in OMS, it could be due to one of the following:
Import Order Metafield
Job Not Running: The job responsible for importing metafields might not be running. Ensure that this job is scheduled and operating correctly in HotWax Commerce
Check Job Scheduling in NiFi: Verify that the job responsible for importing metafields and placing them on SFTP is scheduled and functioning as expected in NiFi.
Verify SFTP Import in OMS: Ensure OMS is properly configured to import metafields from SFTP.
Manual addition of meta fields in OMS should be considered only if the above checks are confirmed and the issue persists.
Note: If manual addition is necessary, ensure correct spelling and format when adding tags in OMS.
If an order metafield is missing from Shopify and the OMS, it's crucial to investigate the root cause. This may involve identifying issues such as the metafield not being available due to order-related problems.
For example, if the Riskified
or Signified approved
tag is missing in Shopify, the order contains high or medium fraud risk. There is a high chance that you will receive a chargeback on this order.
In such cases, CSRs have to manually verify the orders and add the attribute in the Order Attribute section on the Order View page.
This troubleshooting guide aims to address issues where orders remain stuck in the fulfilment app even after completion or incorrectly appear as created on the find sales orders page when they are completed or approved.
HotWax Commerce utilizes Solr, an open-source enterprise-search platform, to index product orders and other data within its system. The order details page retrieves data directly from the database, while the find order detail page relies on Solr for rapid data retrieval. Solr inconsistencies can lead to discrepancies in displayed information across these pages and apps.
If an order remains in the created or approved status on the find sales orders page, while it's marked as completed
in the OMS:
Navigate to the order details page and click on the reindex button located near the top of the page, next to the refresh button. This action will index the order correctly.
If the issue persists, follow these steps:
Go to the settings section, scroll down in the hamburger menu, and select the search admin page.
Locate the index operations section at the bottom of the page, which includes the following four boxes:
Create order indexes
Create product indexes
Create user login indexes
Create OISGIR indexes
For more details, kindly refer to this documentation.
Navigate to the Find Order Details
page where you can manage order indexing.
Click the Create Order Index
button to initiate the indexing process.
A modal window will appear. Enter the order ID associated with the order you want to index.
After entering the order ID, click the Create Order Index
button within the modal window to accurately index the order.
If no values are entered in the field, all available data will still be indexed automatically.
Click the Create OISGIR Index
button if an order is encountering fulfillment difficulties.
In the modal window that appears, enter the order ID associated with the order facing fulfillment issues.
Once the order ID is entered, click the Create OISGIR Index
button. Providing only the order ID is sufficient to generate its index; filling out all fields is not necessary.
Troubleshooting guide for duplicate orders
This document aims to provide a clear, concise, and solution-focused guide to diagnose and resolve issues related to order import duplications in HotWax Commerce. The desired outcome is to ensure the successful and error-free import of orders, avoiding duplicate jobs and ensuring smooth operations.
HotWax Commerce can face order import duplication issues, particularly when the system goes down during scheduled import jobs. If the system is down for a period during which multiple import jobs are scheduled, all pending jobs might run simultaneously upon the system's recovery, leading to duplicate order imports. This document outlines the scenarios where this issue might occur and provides step-by-step processes to diagnose and resolve these issues.
System Downtime with Scheduled Order Import Jobs
The system goes down during scheduled order import jobs.
Upon recovery, all pending jobs run simultaneously.
Result: Duplicate orders are created.
Schedule Now
Parameter to FalseTo prevent simultaneous execution and duplicate orders, ensure the Schedule Now
parameter is set to False
when scheduling order import jobs. This setting ensures jobs run sequentially.
Verify if the Issue Exists
Check the system logs to identify any periods of downtime.
Verify if multiple import jobs were scheduled during the downtime.
Identify if duplicate orders have been created by checking order statuses and attributes.
If the job runs every 5 minutes and the system is down for 10 minutes, verify that all pending jobs did not run at the same time upon recovery.
Identify and Remove Duplicate Orders
Verify Duplicate Orders
If the system was down for a significant duration and meanwhile multiple jobs may run, retailers must manually identify duplicate orders by checking for identical Shopify IDs.
Identify orders stuck in the "Created" state, as only one order will have order attributes saved for approval.
Example
Move Duplicate Orders to General Ops Parking
Open the relevant duplicate orders
Navigate to the Items section and click on the Move items to parking
text.
Select general ops parking
and click on save
to move the item to general ops parking.
Cancel Orders
Navigate to the Sales Orders
page
Filter by Facility: General Ops Parking
.
Identify the duplicate orders and click to open the order details
page
Click on the Cancel
button on the top to cancel the orders
Ensure orders are not manually approved by the CSR and fulfillment is not started. If fulfillment of the order is started, manually reject the order before cancellation. { % endhint %}
Parameter | Type | Description | Default Value | Example Value |
| String | Specifies the configuration ID for Shopify, if applicable. | null | SHOP_CONFIG_001 |
| Integer | Sets a limit on the number of products to import per job run. | 100 | 50 |
| Integer | Defines the default duration for syncing products if there is no | 15 minutes | 10 minutes |
| Integer | Specifies the buffer time (in minutes) for scheduling job downloads. | Not specified | 5 |
| Boolean | When set to true, forces the system to pick the file out of sequence for immediate processing. | false | true |
The Find Product
page within HotWax Commerce serves as a centralized hub for managing products. This page offers a consolidated view of all the products with individual variant information, displaying product category, product name, product ID, and product features viz, size, colors, etc. It enables users to have a quick view of all existing products and carry out product management efficiently.
HotWax Commerce Find Product
page also empowers users to use multiple filter options to refine their product search. The prominent Pre-orders and Backorders filters help users to search out specific products, under these categories, enabling retailers to view the products currently on pre-order and backorder.
Step-by-Step Usage Instructions:
Log in to HotWax Commerce by entering your credentials on the login page.
Within the hamburger menu, find and select the PIM
(Product Information Management) option. This will open a submenu with various product-related functionalities.
From the PIM submenu, choose the Product
option. This action will direct you to the Find Product
page.
The Search Bar
on the Find Product
page provides users quick access to get information regarding any product. It streamlines the search process about various identifiers such as Product ID, Product name, SKU, UPC, Parent product, or any other related keywords. For a search with any keywords, all related products and variants are listed alphabetically as per the parent product name.
Enables users to search products, simultaneously using single
or “multiple filters'', and allows users to choose required options from the selected filter dropdowns to refine the search results. This feature is significant for looking up the required set of products to efficiently manage and monitor the specified products and their variants by “Category”, “Features”, “Tags”, and “Price”, or group search by Pre-orders and Backorders.
Generally, for a keyword search, all the related products appear and are displayed on the screen. To search for a specific product, users can either choose the options from available filters or enter a value set of product names and features or any other value together to excel the search. For example, if a product has different sizes and is available in multiple colors, and want to search “Checked Shirt, Size S, and Colour Black” users can put in the value in the search bar as “Check Shirt” and use Feature
Filter to get the specific product.
For having a quick view of a certain set of products, users can filter out the products and run the export function to download the CSV into their system.
Enables users to search selected products and export CSV by specifying safety stock value and uploading it back using EXIM for bulk products. Safety Stock will be established at all the associated facilities for the entire set of selected products. Users are allowed to manually create CSV, set safety stocks, and upload using EXIM for bulk products. Read more about safety stock in our complete document.
Enables users to search and create CSV of all displayed products. A threshold will be established for the entire set of selected products. Users can manually create CSV and upload using EXIM
for bulk products.
The comprehensive Product View
page within HotWax Commerce enhances user efficiency and facilitates streamlined product management. This page consolidates all essential information related to a specific product, providing users with a holistic view that encompasses key details of product identifications and product information such as product specifications
and associated sales channels
. To access the Product View
Page, search for the required product on the Find Product
Page and simply click on the Product ID to view extensive details about the product.
HotWax Commerce offers the following features on the Product View Page:
Overview Section
The overview section contains essential information related to “product specifications”, “features”, and “identifications”. Here's a summary of each element:
This information provides a comprehensive overview facilitating effective management and customization of a product and also empowers users to add and delete any product specifications.
Retailers who operate in multiple countries use Shopify shops in Hotwax commerce to manage the same product catalogs in different countries. A master catalog holds all products, while associations are formed to sync these products across different country-specific catalogs. These associations are automated through a job in HotWax Commerce that creates associations between products in the master catalog and the product catalog of other countries by matching the SKU codes. Retailers can view the product association with the different shops in the Shopify Shop section and Add new product associations with Shopify Shop by following these steps:
Click on the Add
button in the Shopify Shop
section, this will open a new module
Select the Shop
from the dropdown menu, for which you want to create the association.
Add Shopify Product ID
and Shopify Inventory ID
Click on the Add
button to save the product association
Discover how Inventory job works in HotWax Commerce.
Job Name: Upload Inventory
Job Enum ID: JOB\_UL\_INV
Description
The Upload Inventory
job is designed to facilitate the upload of new inventory levels to the eCommerce platform for all the products. This job is crucial for keeping product availability up-to-date and ensuring accurate inventory representation on the eCommerce platform.
Recommended Frequency
The job frequency can be configured based on the business needs and the desired frequency of updating inventory levels.
Custom Parameters
Webhooks can be subscribed to from the category pages within the Job Manager app for specific categories.
Automated messages sent from eCommerce (Shopify) to OMS whenever an event occurs. They contain data about the event and are received in OMS, allowing real time communication between eCommerce and OMS.
Subscribe to Shopify eCommerce Webhooks from OMS for:
Job Name: Import inventroy reset
Job Enum ID: JOB_IMP_INV
Description This job is useful in scenarios where there is a need to reset inventory levels to match actual physical counts. It is commonly used during inventory audits, adjustments, or when discrepancies are found in inventory records, ensuring the system's inventory matches the physical stock accurately.
Custom Parameters
Job Name: Import Item Receipt
Job Enum ID: JOB_ITM_RECEIPT
Description
The Import Item Receipt
job updates inventory levels based on a file provided by NetSuite. The file, placed on the SFTP server, contains inventory deltas and other data. This job processes the file, retrieves the product IDs from NetSuite, and updates the corresponding inventory in HotWax for the specified facility, ensuring accurate records across systems.
Custom Parameters
Job Name: Import Product Thresholds
Job Enum ID: IMP\_PROD\_THOLD
Description
The Import Product Thresholds
job, identified by Job ID IMP\_PROD\_THOLD
, is designed to import a list of product thresholds based on specified tags and categories. This job is essential for updating product stock levels and ensuring that inventory management aligns with defined thresholds.
Recommended Frequency
The job frequency can be configured based on the business needs and the frequency of updates required for product thresholds.
Custom Parameters
Job Name: Import product facility from FTP
Job Enum ID: JOB_IMP_PROD_FAC
Description
The Import Product Facility
job is used in scenarios where product data needs to be imported or updated for specific facilities. It is particularly useful for integrating or synchronizing product data from ERP or during system migrations.
Custom Parameters
Job Name: Export Product Thresholds
Job Enum ID: EXP\_PROD\_THOLD
Description
The Export Product Thresholds
job is designed to export a list of product thresholds based on specified tags and categories. This job is essential for obtaining insights into product stock levels and ensuring inventory management aligns with defined thresholds.
Recommended Frequency The job frequency can be configured based on the business needs and the frequency of updates required for product thresholds.
Custom Parameters
Job Name: Bulk Recent Kit Product Inventory Setup
Job Enum ID: BLK_RCNT_KIT_INV
Description
The Bulk Recent Kit Product Inventory Setup
job facilitates the configuration of inventory for newly added kit products in bulk. This job streamlines the setup process, ensuring that inventory levels for kit products are accurately computed in HotWax Commerce and synced with Shopify.
Custom Parameters
Job Name: Import Inventory Transfer
Job Enum ID: JOB_INV_TRANS
Description This job synchronizes inventory transfer deltas between warehouses and HotWax. Whenever a transfer is received in the warehouse, this job updates the inventory delta in HotWax, ensuring accurate and consistent inventory levels across both the ERP and OMS systems.
Custom Parameters
Job Name: Import Inbound Shipment
Job Enum ID: JOB\_IMP\_TO\_SHPMNT
Description
The Import Inbound Shipment
job is designed to import information about inbound shipments associated with fulfilled transfer orders. This job is crucial for maintaining accurate records of incoming shipments, facilitating efficient order fulfillment.
Recommended Frequency
The job frequency can be configured based on the business needs and the frequency of inbound shipments for fulfilled transfer orders.
Custom Parameters
Job Name: Scheduled Restock
Job Enum ID: JOB_SCHEDULED_RSTK
Description This job is particularly useful in scenarios where a business needs to manage inventory for incoming shipments and ensure that their eCommerce platform (Shopify) is updated accordingly. Some potential use cases include:
Warehouse Operations: When a warehouse receives a shipment from a supplier, this function can automate the process of updating inventory levels and ensuring that the online store reflects accurate stock availability.
Inventory Management: For businesses that manage inventory across multiple locations or platforms, this function helps maintain consistency between the internal inventory system and Shopify.
Order Fulfillment: By ensuring that inventory levels are accurately updated in Shopify, the function helps prevent overselling and ensures that customers have access to real-time stock information.
Custom Parameters
Job Enum ID: JOB\_IMP\_INV
Job Name: Import Inventory
Description
The Import Inventory
job is designed to import inventory from the ERP (Enterprise Resource Planning) system. This job plays a crucial role in keeping the inventory information synchronized between the ERP and the OMS.
Recommended Frequency
The job frequency can be configured based on the business needs and the frequency of updates from the ERP system.
Custom Parameters
Job Name: Sync Inventory From Shopify
Job Enum ID: JOB_SYNC_INV_FRM_SHPY
Description In the realm of inventory synchronization between HotWax Commerce and Shopify, typically, HotWax Commerce handles the updates to inventory data on Shopify. However, in specific scenarios, the Order Management System (OMS) sync inventory from Shopify. When there's a recent alteration in inventory, this task ensures that the inventory data is promptly updated from Shopify.
Custom Parameters
Job Enum ID: SYNC\_INV\_SHPF\_MLTTHD
Job Name: Sync Inventory From Shopify in Multi-Threading
Description
The Sync Inventory From Shopify in Multi-Threading
job is designed to synchronize inventory from Shopify, utilizing multi-threading for enhanced efficiency. This job is crucial for maintaining accurate inventory levels and ensuring seamless integration with the Shopify platform.
Recommended Frequency
The job frequency can be configured based on the business needs and the frequency of updates required for inventory synchronization.
Custom Parameters
Job ID: UL\_RCNT\_INV
Job Name: Upload Recent Inventory Changes
Description
The Upload recent inventory changes
job examines the inventory records of HotWax Commerce's products. It identifies products that have undergone inventory changes since the last synchronization.
To update inventory records, HotWax Commerce initiates an API call to retrieve information from Shopify about products that have undergone changes in HotWax Commerce. The inventory counts for these products in Shopify are then compared with the inventory counts that HotWax Commerce has on file.
After comparing inventory changes, the Upload recent inventory changes
job records the difference and generates a GraphQL file for the affected products. This file is then uploaded to Shopify, which reads it and updates the available adjustments
field to either add or deduct inventory based on the changes.
Recommended Frequency The recommended frequency for this job is 15 minutes, but it can be configured based on the business needs and the desired frequency of updating inventory levels.
Custom Parameters
Managing inventory and order fulfillment is a critical aspect of retail operations. However, sometimes items may be unavailable across all facilities. In such cases, retailers can use the Auto-Cancel Date Management feature, which provides them with the ability to automate the cancellation of orders that cannot be fulfilled due to inventory shortages within the desired frame. This feature helps retailers avoid operational delays and improve customer satisfaction by ensuring orders do not remain in limbo indefinitely. When an item is marked unfillable after a failed brokering attempt, users can set or modify an auto-cancel date, streamlining the process of handling these unfillable orders. For example, an e-commerce order can have a 5-day auto-cancel period, while SendSale orders may not have any auto-cancellations, allowing flexibility based on business rules.
Navigate to: Launchpad > Order Routing
App. This is where you configure brokering runs and set up auto-cancellation rules for unfillable orders. Inventory managers or fulfillment team members typically use this to manage order fulfillment and brokering logic.
Choose the brokering run for which you want to set an auto-cancellation date. Different brokering runs may handle various fulfillment strategies for example unfillable order brokering runs may be different from regular runs, so selecting the right run ensures the proper application of auto-cancellation rules.
Within the selected brokering run, choose the relevant order batch. Retailers may want to set different auto-cancellation rules for standard orders versus expedited orders. This step allows for customizing rules based on order priorities and fulfillment types.
Inside the chosen order batch, scroll down and select the last inventory rule. This rule is designed to handle scenarios where the item is unavailable across all facilities, triggering the need for auto-cancellation or alternative handling options.
Go to the "Unavailable Item" card and add the desired auto-cancel date in the Auto-Cancel Date
chip. This defines the time frame (e.g., 5 days) for holding the unfillable item before it is automatically canceled.
You can move the item to unfillable parking
for the item with unavailable inventory so that it can be easily differentiated with the regular orders.
If the inventory for an unfillable item is expected to arrive soon or if the order needs to be held longer, you can remove the auto-cancel date.
Navigate to the "Unavailable Item" Card in the relevant inventory rule within the Order Batch
Clear the Auto-Cancel Date: Use the Clear Auto-Cancel Date
toggle to remove the previously set date. This prevents the item from being automatically canceled.
Move the Order to Unfillable Hold Queue: Instead of canceling, you can send the order to the unfillable hold queue
if you anticipate the inventory arriving soon. This step ensures that the order is retained in the system until the item is back in stock, improving order fulfillment efficiency.
Using these options, you can control when and how unfillable orders are managed, ensuring better coordination and reduced chances of unnecessary order cancellations.
Regularly monitor the Unfillable Report, which highlights orders in unfillable parking with an auto-cancel date. This report helps ensure that unfillable items are correctly scheduled for cancellation and allows you to adjust or clear the auto-cancel date if needed.
When the auto-cancel date is reached, the system automatically runs the autocancelorderitems
job at midnight. This job cancels any unfillable items and logs the cancellation reason as "auto-cancellation," ensuring timely order resolution and preventing delays in the process.
Learn how the sales orders are allocated efficiently in different scenarios.
To perform the order allocation tasks, we first navigate to the View Sales Order page:
Go to the Hamburger Menu in the OMS > Order Management section > Sales Orders to open the Find Sales Order page.
Select the order ID to open the View Sales Order page.
For automated facility selection, the user can either wait for the next brokering run or use the Broker Now function to broker items immediately.
Select the line item and click Release function.
View the inventory and select any facility using the radio button.
Release the item to the selected facility.
Click the history function to view the changes.
The Reject Items
feature within the HotWax Commerce platform serves as a crucial tool for managing orders efficiently and maintaining customer satisfaction. It allows users to reject specific items from sales orders, providing valid reasons such as stock unavailability, damages, mismatches, or inactive stores. By enabling users to address issues promptly and accurately, this feature contributes significantly to workflow efficiency and customer service quality.
Identify the item(s) you wish to reject and click on the corresponding line item.
Look for the Reject
function and click on it to initiate the rejection process.
Choose the appropriate reason for rejection from the available options using radio buttons (e.g., Not in Stock, Damaged, Mismatch).
After selecting the rejection reason, save your changes to confirm the rejection.
Check the order item history by clicking on the radio button
Sometimes there are instances when customers may connect with CSR to receive the order urgently, in such cases CSR has the option to ship the order from the order details page without waiting for the fulfillment center to mark the order item shipped. Here's how users can mark the order items as shipped in the OMS:
Scenario 1: Marking Items as Shipped that is still Unassigned to a Facility
Locate the Order: Navigate to the desired order and open it to view details from the View Sales Order
page.
Release Item to Facility: Select the line item, click Release
, and choose the target facility for shipment.
Mark Items as Shipped: Scroll to the item section on the View Sales Order
page and click Ship Items
.
Select Line Items: Choose the items to be marked as shipped in the popup window.
Enter Tracking Details: Select the carrier party from the dropdown and input the tracking number.
Confirm Shipment: Verify the details and confirm the shipment to mark the selected item(s) as shipped.
Scenario 2: Marking Items as Shipped that are assigned to a different facility
Reject Line Item: Identify the line item on the View Order
page, click Reject
, choose No Variance
as the reason, and confirm the rejection.
Release Item to Facility: Select the rejected item, click Release
, and choose the necessary facility.
Mark Items as Shipped: Proceed to click Ship Items
, select line item(s), input tracking details, and confirm the shipment.
Scenario 3: Marking BOPIS Sales Order Items as Shipped
Modify Shipping Method: Scroll to the item section on the View Order
page, click Edit
, and modify the shipping method to Standard
.
Reject Line Item: Reject the line item, choosing No Variance
as the reason.
Release Item to Facility: Select the rejected item, click Release
, and choose the necessary facility.
Mark Items as Shipped: Click Ship Items
, select line item(s), input tracking details, and confirm the shipment.
Click the history function in the status column to view when the item is marked completed and the user who marked the item completed.
Managing orders is a complex process, and sometimes, items fail to be fulfilled due to inventory unavailability across facilities. When this occurs, it's crucial to set an auto-cancel date to streamline operations and ensure resource allocation is optimized.
This feature allows users to easily modify or remove auto-cancel dates from orders that are marked unfillable due to failed brokering attempts. By providing this functionality, HotWax Commerce empowers users to maintain control over their orders, preventing unnecessary delays and potential customer dissatisfaction.
Update the Auto-cancel Date on a single order:
Choose the specific order you want to manage and click on it to enter the Sales Order View page.
In the Item section of the Sales Order View page, locate the auto-cancel date and click on the edit function next to it.
From the Calendar that appears, select the new date for the auto-cancelation.
After updating the date, click on the Save
function to apply the changes.
Remove Auto-cancel Date from single order:
Choose the specific order you want to modify and enter the Sales Order View page.
In the Item section, locate the auto-cancel date and click on the edit function next to it.
Click on the delete icon next to the auto-cancel date to remove it from the order.
Confirm the changes by clicking on the Save
function.
HotWax Commerce features various parking areas serving as virtual facilities for storing orders awaiting fulfillment. Users frequently need to transfer orders between these parking areas to ensure accurate inventory allocation. For instance, if there are unfulfillable orders and retailers are aware of when will inventory arrive, they may opt not to run brokering for such orders until that day. In such scenarios, these orders can be moved from the brokering queue to the unfulfillable hold queue. Here's how you can relocate items to different parking areas:
In the items section, click the Move Items to Parking
function.
Choose the parking using the Radio
button and Save.
Confirm the Ship From column to view the selected parking.
Refer to the table below for parking description and purpose.
Troubleshooting Guide for orders stuck in created status
In HotWax Commerce, all orders are initially marked as "Created" after being downloaded. Orders can be auto-approved using a scheduled job called Approve Orders
, which checks the approval status of Shopify orders based on parameters set by Shopify merchants. The job runs at a default frequency of 30 minutes and approves orders once all necessary details and required references are established.
Clients may have varying approval processes, such as requiring customer IDs or payment verification tags. If the job is stuck in the "Created' status", it could be due to missing or incorrect order attributes.
Orders may not get approved if essential attributes are missing. For instance, some clients may require specific information such as a customer ID or Municipio ID. If these attributes are missing, the approval job cannot verify and approve the order, causing it to remain in the 'Created' status. For detailed instructions on how to add missing order attributes, refer to our troubleshooting documentation
Another common issue is the presence of incorrect order attributes. This could mean that the required information is either incomplete or inaccurately entered, which can prevent the order from being approved. For example, incorrect municipio ID can lead to approval failures.
This guide will help you understand how to manage and route orders efficiently using HotWax Commerce’s Order Routing App, optimizing order fulfillment strategies.
Retailers handling multiple sales channels and fulfillment locations need sophisticated order routing. It allows each order to be fulfilled from the most optimal location, considering factors such as shipping method, proximity to the customer, inventory levels, fulfillment capabilities, and the option to split orders across locations. Effective order routing helps retailers achieve faster delivery times, reduce shipping costs, and maintain balanced inventory across all locations.
Configurable order routing takes traditional routing a step further by allowing retailers to customize and fine-tune order routing across their fulfillment network. Instead of depending on a fixed set of rules, configurable routing uses a brokering algorithm that evaluates orders and fulfillment options against a series of sequential rule sets, each with specific conditions.
This high level of customization enables retailers to create order routing that aligns with their unique business needs, and adjust routing parameters in real time without requiring external support. Retailers can optimize factors such as fulfillment costs, inventory distribution, and workload across locations, offering a strategic approach to order management. For scenarios where an order doesn’t meet the criteria of any rule set, configurable routing allows retailers to define specific actions to manage all unfillable orders, making sure no order is left unresolved.
This dynamic approach to order routing also lets retailers quickly adapt to evolving market conditions and customer expectations.
HotWax Commerce's highly dynamic and configurable Order Routing App
provides a structured framework for managing order routing with flexibility. The app enables retailers to define how orders are routed across their fulfillment network.
Below is a brief overview of the brokering framework, we will understand each component in more detail in the following sections.
Order routing is organized into three hierarchical levels:
A brokering run is the highest level of organization in order routing and lets retailers control the routing frequency based on business needs. Each brokering run can have a different frequency, routing different batches of orders to meet varying fulfillment priorities. For example:
A brokering run scheduled every 5 minutes could prioritize high-priority orders, like same-day deliveries for fast routing and fulfillment.
For standard delivery orders with medium priority, a separate brokering run can be set to run every 6 hours, aligning with less urgent timelines.
Within each brokering run, there are multiple routings, or “routing rules.” Each routing defines a batch of orders by using filters and sorting criteria. For example, in a "High-Priority Run," routings might include:
Same-day delivery batch: Includes orders that need same-day delivery.
Next-day delivery batch: Includes orders on next-day delivery.
Two-day delivery batch: Includes orders on two-day delivery.
These routing rules help retailers prioritize routing for specific order batches with different fulfillment timelines and conditions.
Within each routing, multiple inventory rules define how inventory is allocated to the order batches. These rules allows for optimal facility look up based on factors such as proximity, stock availability, and other strategic criteria. For example:
Same-day delivery batch: Inventory rules can prioritize fulfillment from warehouses within a 100-mile radius of the customer to meet same-day delivery targets. If inventory is unavailable, a secondary rule could expand the range to 250 miles and include stores.
Next-day delivery batch: For next-day orders, inventory rules can prioritize fulfillment from warehouses within a 250-mile range, accommodating the one-day delivery SLA. Next inventory rules in sequence can apply if the first inventory rule doesn’t allocate inventory for all orders in the batch.
In the following sections, we’ll dive deeper into each level, to understand how brokering runs, routing rules, and inventory rules work together to optimize order routing.
Learn about Brokering Runs.
As discussed, brokering runs serve as the highest level of organization in order routing, defining when and how frequently order routing takes place. Each brokering run has a specific frequency, such as every 5 minutes, hourly, daily, or at custom intervals based on business needs.
Multiple brokering runs allow retailers to set different frequencies for each batch of orders. For example, high-priority orders can be routed more frequently (every 5 minutes), so urgent orders receive immediate attention, while standard or less time-sensitive orders are routed at more moderate intervals (hourly).
Single run setup: For retailers with similar urgency across orders and a lower order volume, a single run at regular intervals (every hour) can manage all order types in one brokering cycle.
Everyday order routing: Within this single brokering run, multiple routing rules (order batches) can be created to address different delivery needs, such as same-day delivery orders, two-day delivery orders and standard delivery orders. We’ll understand in depth about in the next sections.
Multiple runs for different priorities: In the event where order fulfillment priorities vary significantly and the order volume is high, creating separate runs can optimize resources and allocation:
High-Priority Orders: For orders requiring same-day, next-day, or two-day delivery, setting a frequency of the brokering run to every 5 minutes can quickly allocate inventory to this order batch and meet urgent fulfillment deadlines.
Medium-Priority Orders: For orders on standard deliveries, a separate brokering run with a 6-hour interval can balance routine order routing with the available resources.
Seasonal run adjustments: During peak seasons, like holidays, retailers can activate a dedicated high-frequency brokering run to handle increased order volumes. For example, a run set to every 5 minutes for all orders that can remain in draft mode on regular days but be activated to handle seasonal surges.
The frequency and configuration of each run are critical for optimizing brokering strategies, allowing retailers to meet diverse order priorities effectively.
Now, let’s understand how you can achieve your order routing and fulfillment goals with the HotWax Commerce’s Order Routing App
:
Open the Order Routing App
Start by opening the Order Routing App
. This will take you to the home page, where you can view all previously created brokering runs. If no brokering runs have been created yet, the page will appear blank.
Initiate a new run
Click on the New Run
button to begin creating a new brokering run. You’ll be prompted to provide a name for this run, which will help identify it in the list of all existing brokering runs.
Name the run
Give the run a meaningful name that reflects its purpose. For example, if you’re creating a single brokering run for all orders you can name it “Everyday order routing” or if you are creating multiple brokering runs based on the order urgency, you can name them as “High priority orders” with the next run as “Medium priority orders”.
Add a description
After naming the run, we need to add a description to provide further context. Descriptions help in clarifying the intent behind each brokering run, making it easier for team members to understand its specific function.
Click on a specific Run
to open its details and now navigate to the Description card and add details that best describes your run.
For example, if there is a single brokering run "Everyday order routing", you can write: “Hourly routing for all online orders” or if the run focuses on urgent orders, you can write: “Prioritized routing for same-day, next-day, and two-day delivery orders.”
Schedule the brokering run with a predefined frequency or using cron expressions
Navigate to the Scheduler card, here you can set the frequency and runtime for your brokering run.
You can choose predefined intervals or use cron expressions to customize the schedule based on your business needs. Here are a few examples of valid cron expressions that you can use:
For our Everyday order routing brokering run we can directly choose the predefined "Hourly" frequency and save it.
You need to change the brokering run's status from Draft to Active to make it operational.
By default, new brokering runs are set to Draft. Simply select Active from the dropdown to activate it, or revert an active run back to Draft if adjustments are needed.
Ideally, activate the brokering run only once you've fully configured your routing, inventory rules, and other settings.
Understanding how to view, schedule, and manage brokering runs is important for optimizing your order routing strategies.
Why does the order status on the "Find Order" page show as "created" even though the order is already approved?
This discrepancy is likely due to an issue with Solr indexing, which can occur if the Solr instance was down when the order status was updated.
To resolve this issue, follow these steps:
Reindex the order by going to the order detail page and clicking the reindex button just below the order ID.
Verify that the order status has been correctly updated on the find order page in the OMS.
Learn about Routings.
As discussed, routing, also known as routing rules, enable retailers to create specific order batches based on their business requirements, such as a same-day delivery batch, a next-day delivery batch, and a standard order batch. These routing rules help in efficiently looking up orders based on urgency and shipping promises.
Multiple routing rules within a single brokering run are useful when different order batches, like same-day, next-day and standard orders, need to be routed at the same interval.
If these order batches need routing at the same frequency but require different inventory allocation strategies, unique inventory rules can be applied to each batch. This way, even with a shared routing frequency (single brokering run), each order batch is managed according to its specific requirements. We’ll understand more about .
This section explains how to create order batches in a brokering run using filters and sorting options to match business needs. We’ll demonstrate this by creating two routing rules:cSame-day/Next-day orders and Standard orders within our previously created Everyday order routing .
In this example, we’re routing Same-day/Next-day orders and Standard orders at the same frequency. If a business scenario requires these batches to be routed at different frequencies then separate brokering runs should be created.
Click the Create order batch
button to create a new routing rule.
Name the routing rule and click Save
to add it to the list of routing rules.
To add the next routing rule click on the New
button next to the "Order batches" label and name your new routing rule.
Continuing our example, let's name our two routing rules as Same-day/Next-day orders and Standard orders.
For a routing to actively process orders, you’ll need to change its status from Draft to Active. Just click Draft to update it to Active, or, if needed, revert an active routing back to Draft by clicking on Active.
This step should be done only after setting up all routing rules.
To prioritize which the routing rule is applied first:
Click and drag the chip on the top right of the routing card.
The sequence number on the card will automatically update based on the card's position.
Continuing our example, we’ll position Same-day/Next-day orders before Standard orders so that the higher-priority order batch is routed first.
Creating an order batch is a two-step process:
The first step in setting up routing rules is to create a batch of orders using specific filters. This helps the brokering algorithm group and prioritize orders accurately for each routing rule, enabling more targeted and effective fulfillment strategies.
Here are the available filters to create order batches:
Order priority: Not all orders carry the same level of urgency. In HotWax Commerce, orders can be assigned a priority level of high, medium, or low. By default, orders are set to "medium priority," but retailers can adjust the order priority in HotWax Commerce as needed. By filtering orders based on priority, the most critical ones (high-priority orders) are routed before less urgent ones.
Promise date: Pre-orders or backorders can be filtered based on their promise date. Retailers may choose to broker orders that have passed their promise date first for the timely fulfillment of overdue orders.
All orders that are not pre-orders or backorders in HotWax Commerce and are waiting for the inventory are in the Brokering Queue
. In most of the cases this will be the filter you will use to make your order batch.
Sales channel: Channel where the order was captured. Different sales channels (eCommerce or marketplaces) may require different routing strategies. Orders can be filtered by channel so that the right group of orders is picked for routing based on channel-specific fulfillment rules, reducing the risk of penalties or delays in fulfilling orders from marketplaces like Amazon.
Continuing with our example, let’s take a closer look at how to apply the right filters and sorting options for Same-day/Next day routing rule.
Applying filters to create order batches:
Open the Same-day/Next-day orders routing rule’s details, then navigate to the Filters option.
Filters help define which orders should be looked up to create a batch. For the “Same-day/Next-day” routing rule we will choose the “Queue” and "Shipment method type" filters.
From the “Queue” we will choose the “Brokering Queue” to include all orders that are waiting for the inventory allocation.
From the “Shipping Method” dropdown, we will choose “Same Day" and "Next Day” shipping methods to include only same-day and next-day shipping orders in our batch.
Since our objective is to prioritize orders with tight SLAs, we are not selecting additional filters like order priority, promise date, and sales channel.
Outcome? With these filters in place, the brokering algorithm will specifically look for orders in the Brokering Queue
that need same-day or next-day delivery. This means that urgent orders are prioritized in your batch for quicker inventory allocation and fulfillment.
If you are not selecting any filter then all orders in all parkings will be attempted for brokering.
After filtering, the next step is choosing the Sorting criteria to prioritize the sequence in which individual orders within each batch are picked for inventory allocation. Sorting allows you to align order routing with your fulfillment goals, prioritizing high-priority orders first.
Available sorting options:
Order date: Sort by order date to prioritize older orders first, following a first-in, first-out (FIFO) approach.
Order priority: Orders can be sorted by priority levels, such as high, medium, low allowing retailers to prioritize orders based on their urgency.
Ship by
Ship after
Shipping method: Sorting by shipping method enables the brokering engine to priortize orders based on the promised SLA. HotWax records the delivery days associated with each shipping method, Same-Day as 0, Next-Day as 1, Two-Day as 2, etc. For example, applying shipping method sorting for a Same-Day/Next-Day batch allows the brokering engine to pick same-day orders before next-day orders, so inventory is allocated first to the most urgent orders. Sorting orders by shipping method becomes unnecessary when all orders in the batch have the same shipping method.
Choosing sorting options to define order priority:
Navigate to the Sort
option. Continuing our example, for the Same-day/Next-day order batch we will choose the "Shipping Method” sorting so that all same-day orders are sequenced first following by all the next day orders.
Finally, click on the Save
icon in the right most corner to save your configured routing rule.
If you are choosing multiple sorting options, you can prioritize them into the desired sequence using drag and drop.
Orders will be brokered based on order date if no sorting is specified.
Now that you already know what filters and sorting options are available and what they mean, you can easily use them for your next routing rule.
Let’s see what should be the right filters and sorting options for our second routing rule Standard orders.
From the filters option, we will choose the "Queue" and "Shipment method type" filters.
From the “Queue” dropdown we will choose the “Brokering Queue” to include all shipping orders that are waiting for the inventory allocation.
Now, from the "Shipping Method" dropdown we will choose the “Standard” shipping method to include only standard shipping orders present in the Brokering Queue
.
From the sorting option, even if we don’t choose any option all standard orders are sequenced based on their order date that is FIFO basis, so older orders are picked first for inventory allocation.
We did not apply the Shipping Method sorting for our Standard orders because all of these orders use the same standard delivery shipping method. Therefore, sorting by shipping method in this case would not make any difference.
Finally, click on the Save
icon in the right most corner to save your configured routing rule.
These examples help understand how retailers can use different filters and sorting options to create order batches and strategically fulfill orders, aligning each routing rule with specific business objectives.
When a routing is no longer needed in a brokering run you can Archive
it:
Click on the Archive
button at the bottom right of the routing card.
This action moves the routing to the archive, removing it from the brokering run flow.
Archived routings can be reactivated if needed and are accessible from the archive drawer at the bottom of the list.
Event | Date and Time |
---|---|
If you have multiple product stores, you’ll be prompted to choose the store for which you want to create a brokering run. This feature helps in managing order routing uniquely for each store. Learn more about .
Schedule Description | Cron Expression | Explanation |
---|
Now, let's understand about within a brokering run.
Origin facility group: This parameter allows retailers to filter orders based on the from which they originated. For example, many times when walk-in customers cannot find their preferred items in store, store associates place the order on their behalf. These are known as Send Sale orders. In this scenario, the origin facility becomes the specific physical location. If a retailer wants all Send Sale orders from specific facilities to be routed differently, then they can apply this filter to create a batch of orders and proceed to create their routing.
Queue: The parking location to pick orders from. HotWax Commerce has to park orders that are not yet brokered to a facility. Retailers can filter by queue type (Brokering Queue, Pre-order/Backorder Parking, Rejected Parking, or Unfillable Parking) to decide which orders should be brokered to available inventory.
Shipment method type: SLA promised to the customer. When customers choose specific , like expedited or same-day delivery, these orders must be prioritized differently. Retailers can use this filter to create a batch of orders based on the selected shipping method, so orders requiring fast shipping are processed first.
Congrats! You now have a clear understanding of how to create brokering runs and set routing rules. The final step is choosing to complete the order routing setup.
Filter Type
Description
Store Filter
Filter out store-specific products, every brand product store has a unique product catalog and if you'd like to view the product catalog of a specific brand, you can filter out the products using the Store filter
Category Filter
Filter products belonging to single or multiple categories, for example, “Men’s shoes”, “Kids' wear”, “accessories”, “apparel”, “Jewellery”, etc.
Feature Filter
Filter products by choosing product features like “color” “shades”, “sizes”, “donations”, etc.
Tags Filter
Filter products by choosing any tags available on them like ‘sale”, “discount”, “size range”, “men”, “women”, etc. For example, if a retailer wants to view shirts on discount, they can search for shirts using the search bar and Discount from Tags filter to get specific products in search results.
Exclude Tags Filter
It refines the search by excluding product tags. This will help users to streamline bulk product lookup, where the products having those tags will not be displayed during the search.
Pre-order Filter
Filter out all existing products under the pre-order category.
Backorder Filter
Filter out all existing products under the backorder category.
Include Parent Product
Helps users view parent products with respective variants.
Specifications
Description
Product Type
Displays Product Type as “Finished Goods”, “Digital Goods”, “Accessories”, or others as specified.
Product Name
Universal name or title assigned to the Product.
Product SKU
Universal product identifier, that retailers assign to products to keep track of stock levels internally at ecom stores which acts as a unique identifier for HotWax Commerce and ERP.
Product Brand
Specifies the brand the product is associated with. Multiple Brands may have the same Product but have a unique SKU for each brand. Product Brand name determines the products to which it belongs when multiple brands are configured.
Tags
Product Tag identifications, added at e-commerce stores like “sale”, “discount”, “size range”, “men, women”, etc.
Shippable Dimensions
Product dimensions with ideal height, width, depth, and weight for shipping and ascertain the shipping box dimensions accordingly.
Product Features
Feature particulars specified for product variants like size, and color.
Product Identifications
Displays associated product ID and Inventory ID with eComm stores. When HotWax Commerce enters a retailer’s Shopify ecosystem, it becomes the source of truth for all product-related information, viz: ECom Product Id, Product SKU, UPCA, GTIN, ISBN.
Product Categories
Displays the parent product category for the variants.
Parameter
Type
Description
Default Value
configId
Required
Identifies the configuration for Order Item Attribute records.
RESET_INVENTORY
propertyResource
Required
Specifies the property resource for configuration.
FTP_CONFIG
remoteFilename
Optional
Specifies the remote filename for processing.
Not specified
groupBy
Optional
Specifies a grouping parameter for the job.
Not specified
additionalParameters
Optional
Additional parameters for job customization.
groupBy
, facilityId
fileNameRegex
Optional
Specifies a regular expression for filtering filenames.
Not specified
importPath
Optional
Specifies the SFTP location and path for importing the file.
Not specified
scheduleNow
Optional
Forces the system to pick the file out of sequence for immediate processing when importing files into the OMS. Enabled by default when importing files from FTP but can be disabled during high-volume syncs for system stability.
Not specified
createdByJobID
Optional
ID of the job that initiated this job.
Not specified
Parameter
Type
Description
Default Value
configId
Required
Identifies the configuration for Order Item Attribute records.
IMP_ITM_RECEIPT
propertyResource
Required
Specifies the property resource for configuration.
FTP_CONFIG
remoteFilename
Optional
Specifies the remote filename for processing.
Not specified
groupBy
Optional
Specifies a grouping parameter for the job.
Not specified
additionalParameters
Optional
Additional parameters for job customization.
Not specified
fileNameRegex
Optional
Specifies a regular expression for filtering filenames.
Not specified
importpath
Optional
Specifies the SFTP location and path for importing the file into the system.
Not specified
scheduleNow
Optional
When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability.
Not specified
createdByJobID
Optional
ID of the job that initiated this job.
Not specified
Parameter
Type
Description
Default Value
Example Value
configId
String
Specifies the configuration ID for importing product thresholds.
IMP_PROD_THOLD
IMP_PROD_THOLD
propertyResource
Required
Specifies the property resource for configuring FTP.
FTP_CONFIG
FTP_CONFIG
configId
Required
Specifies the configuration ID for importing inbound shipments.
IMP_TO_SHPMNT
IMP_TO_SHPMNT
remoteFilename
Optional
Specifies the remote filename for the job.
Not specified
sample_file.txt
groupBy
Optional
Specifies the grouping parameter for the job.
Not specified
category
additionalParameters
Optional
Specifies additional parameters for customization.
Not specified
{ "param1": "value1", "param2": "value2" }
fileNameRegex
Optional
Specifies the regular expression for matching file names.
Not specified
*.csv
scheduleNow
Optional
Specifies whether to schedule the job for immediate processing.
false
true
Parameter
Type
Description
Default Value
configID
Required
Identifies the configuration for product facility.
IMP_PROD_FACILITY
propertyResources
Required
Specifies the property resource for configuration.
FTP_CONFIG
remoteFilename
Optional
Specifies the remote filename for processing.
Not Specified
groupBy
Optional
Specifies a grouping parameter for the job.
Not Specified
additionalParameters
Optional
Additional parameters for job customization.
Not specified
fileNameRegex
Optional
Specifies a regular expression for filtering filenames.
Not specified
importPath
Optional
Specifies the SFTP location and path for importing the file into the system.
Not Specified
scheduleNow
Optional
When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability.
Not specified
createdByJobID
Optional
ID of the job that initiated this job.
Not specified
Parameter
Type
Description
Default Value
Example Value
facilityId
String
Specifies the facility ID for exporting product thresholds.
null
FCTY-001
propertyResource
String
Specifies the property resource for configuring FTP export.
FTP_EXP_CONFIG
FTP_EXP_CONFIG
threshold
String
Specifies the threshold value for exporting products.
null
10 units
includeAll
Boolean
Specifies whether to include all products in the export.
null
true
searchPreferenceId
String
Specifies the search preference ID for customizing product search.
null
SEARCH_PREF_001
Parameter
Type
Description
Default Value
includeAll
Optional
Specifies whether to include all inventory levels.
Not Specified
Parameter
Type
Description
Default Value
configId
Required
Identifies the configuration for Order Item Attribute records.
IMP_INV_TRANS
propertyResource
Required
Specifies the property resource for configuration.
FTP_CONFIG
remoteFilename
Optional
Specifies the remote filename for processing.
Not specified
groupBy
Optional
Specifies a grouping parameter for the job.
Not specified
additionalParameters
Optional
Additional parameters for job customization.
Not specified
fileNameRegex
Optional
Specifies a regular expression for filtering filenames.
Not specified
importpath
Optional
Specifies the SFTP location and path for importing the file into the system.
Not specified
scheduleNow
Optional
When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability.
Not specified
createdByJobID
Optional
ID of the job that initiated this job.
Not specified
Parameter
Type
Description
Default Value
Example Value
propertyResource
Required
Specifies the property resource for configuring FTP.
FTP_CONFIG
FTP_CONFIG
configId
Required
Specifies the configuration ID for importing inbound shipments.
IMP_TO_SHPMNT
IMP_TO_SHPMNT
remoteFilename
Optional
Specifies the remote filename for the job.
Not specified
sample_file.txt
groupBy
Optional
Specifies the grouping parameter for the job.
Not specified
category
additionalParameters
Optional
Specifies additional parameters for customization.
Not specified
{ "param1": "value1", "param2": "value2" }
fileNameRegex
Optional
Specifies the regular expression for matching file names.
Not specified
*.csv
scheduleNow
Optional
Specifies whether to schedule the job for immediate processing.
false
true
Parameter
Type
Description
Default Value
shipmentId
Required
Specific Id to uniquely Identify each shipment
Not Specified
limit
Optional
Additional parameters for job customization.
Not Specified
Parameter
Type
Description
Default Value
Example Value
propertyResource
Required
Specifies the property resource for configuring FTP.
FTP_CONFIG
FTP_CONFIG
fileNameRegex
Optional
Specifies the regular expression for matching file names.
*.csv
*.csv
configId
Required
Specifies the configuration ID for importing inventory.
RESET_INVENTORY
RESET_INVENTORY
remoteFilename
Optional
Specifies the remote filename for the job.
Not specified
sample_file.txt
groupBy
Optional
Specifies the grouping parameter for inventory.
facilityId
facilityId
locationSeqId
Optional
Specifies the location sequence ID for inventory import.
TLTLTLLL01
TLTLTLLL01
additionalParameters
Optional
Specifies additional parameters for customization.
Not specified
{ "param1": "value1", "param2": "value2" }
fileNameRegex
Optional
Specifies the regular expression for matching file names.
Not specified
*.csv
scheduleNow
Optional
Specifies whether to schedule the job for immediate processing.
false
true
Parameter
Type
Description
Default Value
includeAll
Optional
Specifies whether to include all inventory levels.
True
frequency
Optional
Defines the default duration for syncing orders if there is no last sync time.
15 minutes
buffertime
Optional
Specifies the buffer time (in minutes) for scheduling job downloads.
5 minutes
scheduleNow
Optional
When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability.
Enabled
Parameter
Type
Description
Default Value
Example Value
propertyResource
String
Specifies the property resource for configuring FTP synchronization.
FTP_CONFIG
FTP_CONFIG
fileNameRegex
String
Specifies the regular expression for matching file names during synchronization.
*.csv
*.csv
configId
String
Specifies the configuration ID for the multi-threaded inventory synchronization.
SYNC_INV_SHPF_MLTTHD
SYNC_INV_SHPF_MLTTHD
groupBy
String
Specifies the grouping parameter for multi-threading, such as location_id
.
Not specified
location_id
additionalParameters
Optional
Specifies additional parameters for customization.
Not specified
{ "param1": "value1", "param2": "value2" }
remoteFilename
Optional
Specifies the remote filename for the job.
Not specified
sample_file.txt
scheduleNow
Optional
Specifies whether to schedule the job for immediate processing.
false
true
Parameter
Type
Description
Default Value
facilityGroupID
Required
Specifies which facilitygroup to be
FAC_GRP
includeAll
Optional
Specifies whether to include all inventory levels.
true
Order Date
03-08-2024 06:07 PM
Entry Date
03-08-2024 06:13 PM
First Brokered
03-09-2024 01:00 AM
Completed Date
03-11-2024 03:16 PM
Facility Parking
Description
Purpose
Brokering
Holds new orders
To hold orders for in-stock items, until the next brokering run.
Pre-order
Holds pre-orders
To hold pre-ordered items until released from the HotWax Commerce Pre-order Management app upon inventory availability.
Backorder
Holds Backorders
To hold backordered items until released from the HotWax Commerce Pre-order Management app upon inventory availability.
Unfillable Hold Parking
Hold orders which are unfillable but expecting inventory
To hold unfillable items from further brokering and auto-cancellation.
General Operations Parking
Hold completed and canceled orders during initial setup.
To hold completed and canceled orders during the initial Order Management System (OMS) instance setup, for later reference during analysis in reporting.
Store Pickup Rejected queue
Hold rejected store pickup orders
To hold store pickup orders which are rejected from the store,
Run Every 5 Minutes |
| Triggers the brokering run every 5 minutes throughout the day. |
Run Every Hour |
| Triggers the brokering run every hour throughout the day. |
Run Every Hour Between 8 AM and 2 PM |
| Triggers the brokering run at the top of every hour, between 8 AM and 2 PM. |
Run Every Day at 7 AM |
| Triggers the brokering run every day at 7 AM. |
Run Every 15 Minutes Between 6 AM and 6 PM |
| Triggers the brokering run every 15 minutes from 6 AM to 6 PM. |
Filters
Look up orders and group them in a batch.
Sorting
Determine the sequence in which orders are picked up during routing.
This document presents a case study of a Canada-based online retailer operating a central warehouse and multiple retail stores, with shipping capabilities extending to the USA. The retailer focuses on optimizing logistics to improve delivery speed, reduce operational costs, and enhance inventory management. This guide explores how businesses with similar models can leverage an advanced order routing system to achieve these goals.
The retailer offers standard shipping with delivery within 7 days for all USA and Canada orders.
All orders should be prioritized by the FIFO rule, ensuring that orders placed first are brokered first.
To minimize international shipping costs, it is essential to fulfill all orders through the central warehouse rather than retail stores. Shipping directly from the warehouse ensures cost efficiency and avoids the higher expenses associated with international shipping from individual retail locations.
For orders within Canada, the warehouse is the primary fulfillment center. Retail stores act as backup fulfillment points only when the warehouse lacks sufficient inventory. This strategy enables effective inventory management while still providing backup options to meet demand.
If no inventory is available at any locations, the order should be available for re-routing. These unfillable orders should be rerouted along with regular orders.
The brokering should be scheduled frequently to ensure continuous and timely order processing.
US Orders should be prioritized before Canada Orders since Canada orders can also be fulfilled from the store while US orders can only get inventory from the warehouse.
All US orders must be fulfilled exclusively from the central warehouse in Canada.
Warehouse First: Canada orders should be prioritized to be fully fulfilled from the warehouse.
Store Fulfillment: If the warehouse lacks inventory, orders should be fully fulfilled from stores.
Partial Fulfillment from Warehouse: If neither the warehouse nor stores have the entire stock, orders items with available inventory should brokered to the warehouse.
Partial Fulfillment: If the warehouse is out of stock, partial fulfillment from stores should be allowed.
The retailer operates two separate online stores in the US and Canada. During the initial mapping of shipping methods, they should be configured distinctly to differentiate between orders destined for the USA and those for Canada.
U.S. Orders: Mapped to "US_Standard_Shipping." All standard orders from the US store will use this shipping method.
Canada Orders: Mapped to "Standard_Shipping." Standard orders from the Canada store will use this shipping method.
Two facility groups need to be created:
Group for Warehouses: To centralize warehouse-based fulfillment.
Group for Stores: To route orders to retail stores when necessary.
A single brokering run is scheduled every 15 minutes to ensure timely order processing for both U.S. and Canada orders. This regular interval ensures that orders are brokered efficiently across different regions.
This routing rule is dedicated to handling Canadian orders, ensuring they are processed separately from U.S. orders.
Two filters are applied in this routing rule:
Queue Filter: Orders are fetched from three queues to ensure complete coverage of all types of Canadian orders:
Brokering Queue: Includes orders brokered for the first time.
Rejected Item Parking Queue: Includes orders rejected from fulfillment locations.
Unfillable Queue: Includes orders that were previously unfillable due to a lack of available inventory.
Shipping Method Filter: The filter is set to include only Standard Shipping, which is the designated shipping method for Canada orders.
The orders are sorted by Order Date, ensuring that Canadian orders are brokered on a first-come, first-served basis, following the FIFO principle.
The following five inventory rules are applied to route Canadian orders effectively:
Inventory Filter: A Facility Group Filter is applied to prioritize fulfillment from Warehouses Only.
Inventory Sort: Orders are sorted by Proximity to the customer.
Action: Partial fulfillment is turned off, and if no warehouse can fulfill the order, the order is sent to the next rule.
Inventory Filter: A Facility Group Filter is applied to allow fulfillment from any store.
Inventory Sort: Orders are sorted by Proximity to the customer to prioritize the nearest store.
Action: Partial fulfillment is turned off. If no store can fulfill the entire order, the order is sent to the next rule.
Inventory Filter: A Facility Group Filter is applied to allow fulfillment from warehouses only.
Inventory Sort: Orders are sorted by Proximity to the customer to minimize delivery time from the warehouse.
Action: Partial fulfillment is turned on, meaning available inventory in the warehouse is allocated to the order. For items that are unavailable, the order is sent to the next rule.
Inventory Filter: A Facility Group Filter is applied to allow fulfillment from all stores.
Inventory Sort: Orders are sorted by Proximity to the customer, ensuring the closest store can fulfill the order.
Action: Partial fulfillment is turned on so that available inventory in the stores is allocated to the order. For any remaining unfilled items, the order is sent to the Unfillable Queue for further processing later.
For U.S. orders, a U.S. Routing Rule is created to manage routing and fulfillment. This batch ensures U.S. orders are processed based on their specific requirements.
Order Filter: Two filters are applied to U.S. orders:
Queue Filter: Orders are fetched from the Brokering Queue, Rejected Item Parking, and Unfillable Queue, ensuring all orders are processed, including previously unfulfilled or rejected orders.
Shipping Method Filter: Only orders using the US_Standard Shipping Method are included in this batch, ensuring that only U.S. standard shipping orders are routed.
Order Sort: Orders are sorted by Order Date, ensuring that earlier orders are processed first, following the first-in, first-out (FIFO) principle.
For U.S. orders, the following inventory rule is applied to prioritize the central warehouse as the fulfillment location.
Inventory Filter: The Facility Group Filter is set to include only the warehouse as the fulfillment source for U.S. orders.
Inventory Sort: Orders are sorted by Proximity to ensure that the nearest location is considered.
Action: Turn on partial fulfillment to allow the system to fulfill orders from available inventory in the warehouse. If any items are unavailable in the warehouse, the order is moved to the Unfillable Queue for future processing.
U.S. orders should be mapped to "US_Standard_Shipping," and a new routing batch should be created to ensure that these orders are fulfilled on a FIFO basis.
All U.S. orders should be fulfilled from the central warehouse. Select the facility group filter for the warehouse, allowing partial fulfillment to allocate available inventory. If items are unavailable, move them to the unfillable queue.
Activate Inventory Rules: Define fulfillment strategies for U.S. and Canadian orders.
Activate Each Order Batch: Ensure orders are processed according to their respective shipping methods.
Activate the Brokering Run: Schedule the brokering run every 15 minutes to ensure continuous and timely order brokering.
By leveraging a robust order routing system, retailers can optimize order fulfillment. Specific batches for U.S. and Canada orders, combined with precise inventory rules, ensure that U.S. orders are fulfilled from the central warehouse, and Canada orders are managed efficiently between the warehouse and stores. This streamlined approach enhances order processing efficiency, reduces costs, and supports reliable delivery within the 7-day standard shipping timeframe.
The retailer, a prominent footwear company with over 200 stores across multiple countries, produces its own footwear and partners with global brands to offer a diverse range of products in both online and physical stores.
Previously, the retailer focused primarily on physical stores and fulfilled online orders from a single retail location, as they did not have any dedicated warehouses. With the implementation of HotWax Commerce, they have transitioned to using all their stores as fulfillment centers. This shift optimizes inventory management and enhances order fulfillment efficiency across their entire store network, benefiting both in-store and online orders.
The retailer offers several shipping options, including:
Next-Day Delivery
Two-Day Delivery
Three-Day Delivery
Standard Shipping (Within 7 days)
The retailer aims to maintain a minimum stock level at each store before allocating orders. This ensures inventory availability at all locations, optimizing fulfillment efficiency and reducing the risk of stock shortages and order cancellations.
Since the retailer operates within a limited geographical area, proximity is not a major concern. Instead, order routing is based solely on stock availability to ensure efficient fulfillment and prevent inventory shortages.
If no store has sufficient inventory to fulfill an order, the order should be flagged and brokered again after a set time to check for inventory replenishment, ensuring the order can eventually be fulfilled.
The retailer requires regular brokering to ensure timely processing of both regular and rejected orders. For unfillable orders, the brokering process should occur within a predefined interval, allowing time for potential inventory replenishment.
The routing process for the retailer must filter locations based on Minimum Stock availability. Locations with 15 or more units of an item should be prioritized first.
If inventory is insufficient, the criteria need to be adjusted to include locations with 10 or more units, then 5 or more units, expanding the search while still focusing on locations with higher stock levels.
If no location has the minimum stock, any location with available inventory should be included to ensure that orders are fulfilled.
If no single location can fully meet the order requirements, partial fulfillment should be allowed. This approach optimizes inventory usage and improves order completion rates by combining stock from multiple locations.
Expedited Orders should be prioritized before standard orders when routing orders. Furthermore, if there are orders that are rejected once from any fulfillment location due to inventory unavailability, these orders should be prioritized before regular orders that are being routed for the first time.
We begin by creating a Regular Order Run. This run will manage all regular orders, excluding unfillable orders, which the retailer prefers to broker separately since the schedule of these run would be different. The regular run will consist of multiple routing rules, each configured based on different shipping methods and fulfillment priorities. The regular order runs are scheduled every 15 minutes for timely order processing and fulfillment.
Within the Regular Order Run, set up an Order Routing Rule to define which orders will be routed in this batch based on queues, shipping methods, and priority. The orders are fetched based on the following configurations:
The retailer applies multiple filters to ensure proper order routing:
Queues: Orders are filtered from the Brokering Queue to broker all orders that will be fulfilled for the first time.
Shipping Method Filter: Only orders using Standard Shipping are included.
Orders are sorted by Order Date, ensuring that the oldest orders are fulfilled first.
For inventory management, the retailer sets up five inventory rules to ensure orders are routed to stores based on stock availability.
Inventory Filter: Orders will be routed to stores that have 15 or more units of inventory available for the ordered items.
Inventory Sort: Orders are sorted by inventory balance, ensuring stores with the highest available stock are prioritized.
Action: If this rule is not met, the order is sent to the next inventory rule.
Inventory Filter: Stores must have at least 10 units of inventory available.
Inventory Sort: Orders are sorted based on inventory balance.
Action: Orders that do not meet this rule are sent to the next rule.
Inventory Filter: Stores must have at least 5 units of inventory available.
Inventory Sort: Orders are sorted by inventory balance.
Action: If the stock requirement is still not met, the order moves to the next rule.
Inventory Filter: No specific stock limit is required; any store with available inventory is considered.
Inventory Sort: Orders are sorted by inventory balance.
Action: Partial fulfillment is not allowed. If inventory is still unavailable, the order moves to the next rule.
Inventory Filter: No specific stock limit is required; any store with available inventory is considered.
Inventory Sort: Orders are sorted by inventory balance.
Action: Partial fulfillment is allowed so that available inventory can be allocated to the orders. If the orders remain unfulfilled, they can be sent to the unfillable queue
.
This system aligns with the retailer’s Minimum Stock Availability and Order Fulfillment Priority requirements by ensuring orders are routed based on stock availability and fulfillment efficiency.
The second routing rule handles all orders with expedited shipping options, including Next-Day, Two-Day, and Three-Day Delivery. The orders are fetched based on the following configurations:
The retailer applies multiple filters to ensure proper order routing:
Queues: Orders are filtered from the Brokering Queue to broker all orders for the first time.
Shipping Method Filter: Only orders using Next-Day, Two-Day, and Three-Day Shipping are included.
Orders are sorted by Shipping Method (prioritizing Next-Day, Two-Day, and then Three-Day) and by Order Date.
Note: The inventory rules for this order batch are the same as the rules for standard orders, focusing on maintaining inventory balance.
This routing rule manages rejected standard orders that were previously rejected due to stock unavailability. The orders are fetched based on the following configurations:
Order Filter:
Queue Filter: Orders are fetched from the Rejected Queue.
Shipping Method Filter: Only orders using Standard Shipping are included.
Order Sort: Orders are sorted by Order Date, ensuring that orders rejected earlier are processed first for potential fulfillment.
Note: The inventory rules for this order batch are the same as the rules for standard orders, focusing on maintaining inventory balance.
This routing rule manages rejected expedited orders, including Next-Day, Two-Day, and Three-Day Shipping orders that were not fulfilled initially due to stock unavailability. The orders are fetched based on the following configurations:
Order Filter & Sort
Order Filter:
Queue Filter: Orders are fetched from the Rejected Queue.
Shipping Method Filter: Only orders with Next-Day, Two-Day, and Three-Day Shipping are included.
Order Sort: Orders are sorted by Shipping Method (Next-Day first, followed by Two-Day, and then Three-Day) and by Order Date to ensure expedited orders are prioritized appropriately.
Note: The inventory rules for this order batch are the same as the rules for standard orders, focusing on maintaining inventory balance.
Since the client wants Rejected order routing first before the regular orders and wants to prioritize expedited orders, the routing Rules should be sequenced in the following manner:
Rejected Expedited Orders
Rejected Standard Orders
Expedited Orders
Standard Orders
Retailers need to create a separate run to handle orders when inventory is unavailable across all stores. This is created as a separate run since inventory replenishment can take time so checking for inventory in every 15 minutes is not required. Therefore, this run is scheduled to run in evey 6 hours and once stock is available, the orders are re-brokered.
This routing rule manages unfillable expedited orders, including Next-Day, Two-Day, and Three-Day Shipping orders that were not allocated initially due to stock unavailability. The orders are fetched based on the following configurations:
Order Filter:
Queue Filter: Orders are fetched from the Unfillable Queue.
Shipping Method Filter: Only orders with Next-Day, Two-Day, and Three-Day Shipping are included.
Order Sort: Orders are sorted by Shipping Method (Next-Day first, followed by Two-Day, and then Three-Day) and by Order Date.
Note: The inventory rules for this order batch are the same as the rules for standard orders, focusing on maintaining inventory balance.
This routing rule manages unfillable standard orders that were previously rejected due to stock unavailability. The orders are fetched based on the following configurations:
Order Filter:
Queue Filter: Orders are fetched from the Unfillable Queue.
Shipping Method Filter: Only orders using Standard Shipping are included.
Order Sort: Orders are sorted by Order Date, ensuring that orders rejected earlier are processed first for potential fulfillment.
Note: The inventory rules for this order batch are the same as the rules for standard orders, focusing on maintaining inventory balance.
Since the client wants to prioritize expedited orders, the routing Rules should be sequenced in the following manner:
Unfillable Expedited Orders
Unfillable Standard Orders
Ensure all inventory rules are active. Move the order routing from "Draft" to "Active" to ensure it's live and processing orders.
Set a schedule for how frequently each routing run will execute. For regular orders, schedule the run every 15 minutes for timely order processing, while for unfillable orders, schedule the run every 6 hours.
This retailer utilizes HotWax Commerce’s advanced routing system to streamline order fulfillment. By leveraging Brokering Safety Stock, the retailer ensures orders are prioritized based on available inventory, optimizing fulfillment for both expedited (Next-Day, Two-Day, Three-Day) and standard shipping. Orders that cannot be fully or partially fulfilled are routed to a separate unfillable queue, with regular brokering runs every 15 minutes and unfillable runs every 6 hours, ensuring efficient handling and timely delivery across their retail network.
Discover your guide for troubleshooting issues for order brokering due to inventory unavailability
Orders won't be brokered if the inventory is not available or if the inventory is less than the brokering threshold set in the inventory rule. Ensuring accurate inventory levels and thresholds is essential for efficient order brokering and fulfillment.
Click on the SKU
from the sales order page
to view the product inventory details on the Product Inventory View
page.
Check the inventory availability across the facilities. Use the facility
filter to check the inventory in individual facilities.
Verify if the inventory is available for that product. If the inventory is not available or is less than the brokering threshold, the order will move to the unfillable parking.
For example: If an item has a brokering threshold of 10 units but only 5 units are available across all facilities, the order will not be brokered and will move to unfillable parking.
Ensure that the order routing run for unfillable parking is scheduled. This ensures that all such orders are picked up in the next brokering cycle for inventory allocation.
Retailers sometimes prefer not to split orders to minimize shipping costs. If only part of an order is available at one fulfillment location, the order won't be routed. If inventory is scattered across multiple facilities, you need to decide whether to split the order.
If you decide to allow order splitting, navigate to the Order Routing App
.
Navigate to the brokering run
> order batch
> inventory rule
.
Check if partial allocation
is allowed for that inventory run.
Turn the partial allocation
toggle on if you want to enable order splitting.
Save the inventory rule
configuration.
Discover how HotWax Commerce's Pre-order Solution maximizes revenue potential and operational efficiency for retailers, simplifying the entire pre-order process.
HotWax Commerce’s Pre-order Solution empowers retailers to maximize revenue potential and operational efficiency. With intuitive applications and workflows, managing Pre-orders becomes straightforward.
Our solution enables retailers to sell inventory at full price before arrival, reducing end-of-season markdowns and securing increased revenues. By handling mixed cart orders, allocating inventory for online and physical stores, and facilitating Pre-order fulfillment without risking overselling, HotWax Commerce simplifies the entire Pre-order process.
This section contains use cases designed to help you understand how various scenarios can be handled in the HotWax Commerce Order Routing App. These use cases are written as if you are creating a brokering run for the first time, ensuring simplicity and clarity for new users.
However, if you already have an existing brokering run and want to maintain the same schedule, you don’t need to create a new run. Simply add the routing rules from these cases to the relevant existing runs. This way, you can enhance your current routing logic without altering your established workflows.
A retailer wants to ensure that all orders placed through various marketplaces are fulfilled exclusively from their warehouse. This scenario is common for businesses that prefer to manage marketplace orders separately due to specific logistical or contractual obligations.
Marketplace_sales_channel must be created in HotWax Commerce and mapped with the relevant sales channels in Shopify.
A facility group must be created in HotWax Commerce with the Brokering_group subtype, which includes all warehouse locations.
To create a new brokering run for marketplace orders, begin by opening the Order Routing App. If you are managing multiple product stores, select the relevant store to ensure marketplace orders are routed correctly. Next, click on New Run and name the run something clear and specific, such as “Marketplace Order Routing,” to easily identify its purpose. Add a description like “Routing all marketplace orders through warehouse locations only” to provide clarity for your team. Finally, navigate to the Scheduler card and set the appropriate frequency for this routing run, ensuring marketplace orders are processed on time.
To set up routing rules for marketplace orders, first, select the previously created routing run for marketplace orders in the Order Routing App. This ensures the routing rule is linked to the correct run.
In the next step, apply the necessary configurations:
Order Filter: Use the Sales Channel filter to include only marketplace orders, ensuring orders from Shopify or other marketplaces are grouped and brokered separately from other channels.
Order Sort: Set the sorting criteria to Order Date. This ensures that older marketplace orders are prioritized for inventory allocation, following a first-in, first-out (FIFO) approach.
To create inventory rules for marketplace orders, first ensure that the appropriate routing rule for marketplace orders is selected, then click on Add Inventory Rule. Once the inventory rule is created, follow these steps:
Inventory Filter: Apply the Facility Group filter and select the group for warehouses only. This ensures that the inventory from warehouse locations is considered for the routing.
Inventory Sort: Sort the inventory by proximity to the customer’s delivery address. This helps minimize shipping costs by prioritizing inventory that is closer to the destination.
Actions: If inventory is unavailable, toggle on Partial Fulfillment to allow order splitting. For completely unavailable inventory, select Send Orders to Queue and assign them to the Unfillable Queue
for further processing.
Retailers often prefer to fulfill eCommerce orders from their warehouse first, but when inventory is unavailable, the orders should be routed to retail stores for fulfillment. This helps ensure that orders are not delayed and inventory is optimized across all available locations.
To implement this scenario, you need to create two facility groups in HotWax Commerce. First, create a Warehouses facility group under the Brokering_Group subtype, which will include all your warehouse locations. Second, create a Stores facility group, also under the Brokering_Group subtype, to ensure that all retail store locations are available for routing when necessary. These facility groups ensure a clear separation of inventory between warehouses and retail stores.
To create a new brokering run for eCommerce orders, open the Order Routing App
. If your system manages multiple product stores, be sure to select the relevant store from the bottom-left switcher to ensure the correct routing. Click on New Run
, and give it a clear name such as "eCommerce Order Routing." This naming convention will help easily identify the run for future use. In the description field, add something like "Prioritizing warehouse fulfillment, with store fallback" to clarify the purpose of the run for the rest of your team. Finally, navigate to the Scheduler card
to set the run's frequency. This ensures that eCommerce orders are processed in a timely manner.
To configure the routing rules for eCommerce orders, first, ensure that the eCommerce Order Routing run is selected.
Order Filter: Use the Sales Channel filter
to select only eCommerce orders. This will group and broker orders specifically from your eCommerce channel, keeping them separate from orders placed through other sales channels.
Order Sort: Set the sorting criteria to Order Date
. This ensures that older orders are processed first, following a first-in, first-out (FIFO) model for order fulfillment.
Now, create inventory rules to route orders through the appropriate facilities. First, make sure that the correct eCommerce Order Routing rule is selected, then click on Add Inventory Rule
.
First Inventory Rule for Warehouses The first rule ensures that orders are fulfilled from warehouse locations:
Inventory Filter: Apply the Facility Group filter
and select the group for Warehouses only, ensuring that orders are initially routed through the warehouse locations for fulfillment.
Inventory Sort: Sort by proximity
to the customer’s delivery address to help minimize shipping costs, prioritizing fulfillment from warehouses closest to the destination.
Actions: If inventory is unavailable at the warehouses, set the rule to send the order to the next inventory rule, allowing the system to route the order to available retail stores. If you want to allocate partially available inventory from the warehouse to the orders, turn on the toggle for Prtial Fulfillment.
Second Inventory Rule for Stores The second rule is triggered when the warehouse is unable to fulfill the order:
Inventory Filter: Apply the Facility Group filter
and select the group for Stores, allowing the system to route orders through retail store locations as a secondary option.
Sort Inventory: Sort by proximity
to the customer’s delivery address, helping to minimize shipping costs by routing orders to the nearest store.
Actions: If the inventory is also unavailable in the stores, send the order to the Unfillable Queue
for further processing, ensuring that orders that cannot be fulfilled are properly handled. Allow partial fulfillment by turning on the toggle to allow order splitting and ensure available items are fulfilled.
Once the routing rules and inventory rules are set up, the next step is to activate the rules and schedule the run. First, change the status of the eCommerce Order Routing run from Draft
to Active
. This makes the run ready for live processing. After that, activate the inventory rules for both warehouses and stores, ensuring they are applied during the routing process. Finally, schedule the routing run by setting the frequency at which it should occur, ensuring that eCommerce orders are brokered and fulfilled without delays.
When orders is rejected from stores due to inventory unavailability, the order routing engine automatically re-routes the rejected orders to the next best location with available inventory. This ensures fulfillment while minimizing cancellations, and improving operational efficiency and customer satisfaction.
Start by creating a new brokering run for rejected orders in the Order Routing App
. Click on New Run
and name it something clear, such as “Rejected Orders Re-Routing.” Add a description like "Re-routing rejected orders to available locations" for better team understanding. Finally, navigate to the Scheduler card
to set the frequency for this routing run, ensuring that rejected orders are handled in a timely manner.
Once the run is created, set up the routing rules for re-routing rejected orders.
Order Filter: Apply the Queue Filter
in the order batch settings and select the Rejected Order Item
queue. This ensures that only rejected orders are included in this batch.
Order Sort: Set the sorting criteria to Order Date
, ensuring that the oldest rejected orders are reprocessed first, following a first-in, first-out (FIFO) method.
Now, create an inventory rule that routes orders to the best available location.
Inventory Filter: If you are checking the inventory at all locations, without any additional filters, you don't have to add inventory rule here.
Inventory Sort: Sort by proximity
to the customer’s delivery address to minimize shipping costs.
Actions: If inventory is unavailable across all locations, select one of the following options:
If you want to split the order to allocate the inventory for the items available, turn on the toggle for partial rejection.
If you have another inventory rule for further allocation, select send to Next Rule
to attempt routing based on the next rule.
If no further rules exist, select send to Unfillable Queue
to handle orders manually or through alternative processes.
Once the routing and inventory rules are configured, activate the Rejected Orders Re-Routing run by changing its status from Draft
to Active
. Then, schedule the routing runs to ensure timely re-routing of rejected orders at regular intervals.
Retailers may want to fulfill orders from locations closest to the customer to minimize delivery times and costs. By applying a proximity-based routing strategy, businesses can improve both operational efficiency and customer satisfaction.
To start, open the Order Routing App
and create a new brokering run for proximity-based routing. Name the run something descriptive, such as "Proximity Order Routing." In the Scheduler card
, set the appropriate frequency for the run to ensure timely processing of orders based on proximity.
Once the run is created, define the routing rules to prioritize fulfillment based on customer proximity.
Order Filter: Apply the Queue Filter
to select the Brokering Queue
. By default, orders from all queues will be included. If you need to focus on a specific queue, select accordingly.
Order Sort: Sort the orders by Order Date
. This ensures that older orders are given priority in the routing process, following a first-in, first-out (FIFO) approach.
Now, configure the inventory rule to allocate stock based on proximity.
Inventory Filter: Apply the Proximity Filter
with a specified distance (e.g., 50 miles). This ensures that orders are routed to locations within the defined proximity of the customer’s delivery address.
Inventory Sort: Sort the inventory by Proximity
. This ensures that the nearest fulfillment locations are prioritized for order allocation.
Actions: If you want to split the order to allocate the inventory within 50 miles for the items available, turn on the toggle for partial rejection. In case of inventory unavailability, you can choose to send the order to the next rule if you want to broaden the search beyond 50 miles, select the option to send the order to the next inventory rule. Alternatively, if you want to limit fulfillment to locations within 50 miles and no inventory is available, send the order to the Unfillable Queue
for further action.
Once the rules are set up, activate the proximity-based rules and routing run by changing the status from Draft
to Active
. Then, schedule the routing run at regular intervals to ensure efficient processing of orders based on proximity.
Retailers need to balance in-store inventory for walk-in customers while fulfilling online orders. To do this, they want to allocate online orders only to locations with sufficient stock, ensuring that in-store inventory is preserved. Using the Brokering Safety Stock
feature allows retailers to set a minimum stock threshold for order allocation, protecting essential inventory for physical store customers.
Open the Order Routing App
to begin creating a new brokering run. Name the run something like "Minimum Stock Order Routing" for clarity, and provide a description such as "Allocating online orders only to locations meeting minimum stock levels." Then, in the Scheduler card
, set the appropriate frequency for the routing run to ensure the timely processing of orders.
Define the routing rules to ensure online orders are routed only to locations that meet the minimum stock levels for each item.
Order Filter: Apply the Brokering Queue
filter to route orders from the appropriate queue.
Orde Sort: Sort orders by Order Date
to prioritize older orders in the routing process, ensuring a first-in, first-out (FIFO) approach.
Set up inventory rules that ensure fulfillment is done only from locations that meet the required stock levels.
First Inventory Rule:
Inventory Filter: Apply the Brokering Safety Stock
filter and define the minimum stock level required for inventory allocation. For example, if the Brokering Safety Stock
is set to greater than 10, the inventory will only be allocated if the store has more than 10 units of that item available. This ensures that walk-in customers have access to sufficient stock._
**InventorySort **: Sort the inventory by Inventory Balance
to prioritize locations with higher stock levels.
Action: If no location can fulfill the entire order based on the first rule, select the option to Send to Next Rule
.
Second Inventory Rule:
Inventory Filter: No specific filter is selected, as inventory can be allocated from any available location.
Inventory Sort: Sort the inventory by Inventory Balance
to prioritize locations with the most available stock.
Action: If partial fulfillment is allowed, enable Allow Partial Fulfillment
to split the order between multiple locations. If partial allocation is not an option, select Send to Unfillable Queue
.
Activate both inventory rules and the order routing batch. Ensure that the rules are in effect by changing the status of the batch from Draft
to Active
. Lastly, schedule the routing runs to occur at regular intervals, ensuring efficient and timely fulfillment of online orders while maintaining adequate stock levels for in-store customers.
Retailers who manage stores with varying rent agreements, especially those in malls where rent is tied to sales revenue, need to optimize order routing to avoid giving commissions to the malls. By prioritizing the stores that are not in malls, retailers can increase profitability.
Ensure that facility groups are created for stores with fixed rental agreements.
Fixed Rent Stores: Group stores with fixed or lower rent costs.
All Stores: Group all stores to use as a fallback for order fulfillment when necessary.
Open the Order Routing App
and set up a new brokering run. Name the run something like "Fixed Rent Store Fulfillment" to indicate that this run prioritizes stores with fixed or lower rent costs. In the Scheduler card
, set the appropriate frequency for routing to ensure orders are processed at regular intervals.
Define routing rules to prioritize cost-effective fulfillment locations.
Order Filter: Apply the Brokering Queue
filter to route orders from the appropriate queue.
Order Sort: Sort orders by Order Date
to prioritize older orders in the routing process.
Set up inventory rules to ensure fulfillment is prioritized based on store rent agreements.
First Inventory Rule:
Inventory Filter: Select the facility group created for stores with fixed or lower rent costs.
Inventory: Sort inventory by Inventory Balance
to prioritize locations with sufficient stock levels in these low-rent stores.
Action: If no location can fulfill the order based on this rule, select the option to Send to Next Rule
.
Second Inventory Rule:
Inventory Filter: Select the facility group that includes all stores to broaden the search to any available location.
Inventory Sort: Sort inventory by Inventory Balance
to prioritize locations with the most available stock.
Action: If partial fulfillment is allowed, enable Allow Partial Fulfillment
to split the order between multiple locations. If partial allocation is not an option, select Send to Unfillable Queue
.
Activate both inventory rules and the order routing batch. Ensure that the rules are active and schedule the brokering runs to execute at regular intervals, ensuring efficient and cost-effective fulfillment of online orders while managing rental costs.
Retailers need to balance the cost of shipping, which is influenced by both the distance and the number of shipments. The goal is to minimize shipping costs by considering when it's more cost-effective to ship from multiple locations versus a single distant location. This scenario is particularly relevant for retailers with stores and warehouses spread across a wide geographic area.
Open the Order Routing App
and create a new brokering run. Name it "Proximity and Cost-Based Shipping" to reflect that the routing will balance shipping costs with distance and split shipments when necessary. Set up a regular schedule for the run to ensure continuous order processing.
Define routing rules to balance shipping costs and minimize the distance of fulfillment.
Order Filter: Apply the Brokering Queue
filter to ensure that orders from the correct queue are routed.
Order Sort: Sort orders by Order Date
to ensure older orders are fulfilled first.
Define a series of four inventory rules to balance shipping costs with proximity and partial allocation options.
First Inventory Rule:
Inventory Filter: Apply a Proximity Filter
to limit the search to locations within 100 miles.
Inventory Sort: Sort the inventory based on Proximity
to prioritize the nearest locations.
Action: Disable partial allocation to ensure that the entire order is fulfilled from a single location within 100 miles. If no location can fulfill the order, send to the next rule
.
Second Inventory Rule:
Inventory Filter: Apply the same Proximity Filter
of 100 miles.
Inventory Sort: Sort the inventory based on Proximity
.
Action: Enable partial allocation to allow the order to be split across multiple locations within the 100-mile proximity. If the order cannot be fully allocated, send it to the next rule
.
Third Inventory Rule:
Inventory Filter: Remove the inventory filter to expand the search to distant locations without any proximity constraints.
Inventory Sort: Sort the inventory based on Proximity
.
Action: Disable partial allocation to require the entire order to be fulfilled from a single, distant location. If no single distant location can fulfill the order, send it to the next rule
.
Fourth Inventory Rule:
Inventory Filter: Allow all available locations to be included.
Inventory Sort: Sort the inventory based on Proximity
.
Action: Enable partial allocation to allow the order to be split across all available locations. If the order still cannot be fulfilled, send it to the unfillable queue
.
Activate all inventory rules and ensure that the order routing batch is active. Schedule the brokering runs to execute at regular intervals, ensuring a balance between shipping cost and distance while also handling split shipments when required.
Note: To further minimize the high cost of shipping due to order splitting, you can use the shipment threshold feature of HotWax Commerce.
Retailers often face scenarios where certain items in an order must be shipped together, while other items can be shipped separately. For example, if a customer orders a frame and lenses along with sunglasses, the frame and lenses must be shipped together, but the sunglasses can be shipped from a different location. In such cases, items like the frame and lenses are grouped to ensure they are always shipped together.
HotWax Commerce allows retailers to manage these scenarios by disabling the splitting of grouped items while keeping the option to split other items in the order. This ensures that grouped items, which are critical to be shipped together, are handled appropriately, while other non-grouped items can still be split for faster fulfillment.
Set up a brokering run in the Order Routing App
and label it “Grouped and Split Shipments” to manage orders containing both grouped and non-grouped items.
Set up routing rules to manage the overall flow of orders.
Order Filter: Apply the Brokering Queue
filter to prioritize orders correctly.
Order Sort: Sort by Order Date
to process the oldest orders first.
Define three inventory rules that control how grouped and non-grouped items are allocated, with specific actions for each rule.
First Inventory Rule:
Inventory Filters: Since no specific inventory filters are needed for this scenario, no filters are applied.
Inventory Sort: Sort inventory based on Proximity
to prioritize fulfillment from the closest locations.
Action: Disable both Partial Fulfillment
and Split Grouped Items
to ensure that the entire order, including grouped items, is fulfilled from a single location. If no location can fulfill the order, send it to the next rule.
Second Inventory Rule:
Inventory Filters: No filters are applied here as well.
Inventory Sort: Continue sorting by Proximity
to ensure the closest locations are prioritized.
Action: Enable Partial Fulfillment
to allow non-grouped items to be split across multiple locations but keep Split Grouped Items
disabled to ensure grouped items stay together. If unavailable, send the order to the next rule.
Third Inventory Rule:
Inventory Filters: Again, no filters need to be applied here.
Inventory Sort: Sort by Proximity
again to prioritize fulfillment from nearby locations.
Action: Enable both Partial Fulfillment
and Split Grouped Items
to allow the entire order, including grouped items, to be split across multiple locations. If no fulfillment is possible, send the order to the unfillable queue.
Activate all inventory rules and ensure the brokering run is scheduled to process orders at regular intervals. This setup ensures that grouped items like kits are handled together while non-grouped items can be split for faster delivery, based on the retailer’s fulfillment strategy.
The Order Routing app in HotWax Commerce offers retailers flexibility in configuring various scenarios to meet their specific needs. However, certain settings outside the app can still impact order routing processes.
To prevent operational strain when fulfilling online orders alongside walk-in customers, retailers can set a maximum order capacity for each store. This helps avoid exceeding a store's fulfillment capabilities. Once the set limit is reached, the brokering engine will automatically route further orders to other facilities with available capacity.
The process for setting the Maximum Order Capacity is consistent across the Facility, Fulfillment, and ATP apps. Follow these steps to configure the maximum capacity for a facility:
In each app (Facility, Fulfillment, ATP), locate the capacity settings for the store.
Click the capacity chip on the store’s order capacity card.
Choose from the following options:
Unlimited Capacity
No Capacity
Custom Capacity
Select Custom Capacity
and enter the desired maximum limit (e.g., 10 orders per day) for each facility.
During peak hours, store managers can turn off fulfillment to manage store capacity by setting the order capacity to `No Capacity`.
To optimize inventory usage and fulfillment speed, retailers often split orders across multiple locations. However, this can result in high shipping costs, especially for low-value items. HotWax Commerce provides an option to set a Brokering shipment threshold value to avoid high shipping costs. If this threshold is set, orders will be allowed to split only if they are above the mentioned threshold.
Example:
1- If an order contains a `Black Belt' of $80 and a 'Brown Wallet' worth $160, the order will not be split as both items should be above the threshold.
2- If an order contains a 'Black Belt' and 'Black Wallet' valued at $80 each, the order will not be split as both item falls below the threshold.
3- If an order contains two items—'Brown Belt' and 'Brown Wallet'—each worth $160, and the brokering threshold is set to $100, the items will be split since both items are above the threshold.
Navigate to Store Settings
In the HotWax Commerce Order Management System, go to the Product Store
page.
Click Add Settings
in the store settings section.
Set Brokering Shipment Threshold
From the settings submenu, select Brokering Shipment Threshold
.
Enter the threshold value to prevent splitting orders below this amount (e.g., set the threshold to $100).
Save Settings
Save the store settings to apply the brokering threshold across the Product Store.
Once the threshold is set, orders will only be split if the value of the items meets or exceeds the threshold, ensuring more efficient shipping and reducing losses on low-value shipments.
Learn how to resolve brokering issues related to incorrect scheduling
The brokering engine relies on correctly scheduled runs to process and route orders. If the scheduling is incorrect, the engine won't execute, leading to unprocessed orders and potential delays in order fulfillment.
Verify Brokering Schedule
Navigate to the Order Routing App.
Click on the Brokering Run card you would like to run for routing.
Verify the run time and the frequency to ensure they are set correctly.
Check Inventory Rules
If the brokering run schedule is correct, proceed to check the inventory rules by clicking on the order batch you would like to run.
Verify if the order batches are correctly sorted. The sorting should align with the expected order processing sequence.
Verify Inventory Rule Configuration
Check the inventory rules by clicking on the inventory rule associated with the order batch.
Verify if the order brokering facilities are correctly configured. Ensure the facilities to which the orders should be routed are specified accurately.
Verify if the inventory sorting criteria are correctly set to prioritize the orders as needed.
Confirm Status
Finally, verify the status of the inventory rule, order batch, and brokering run. Ensure that each status is set to "Active" and not in "Draft."
Read our order routing user manual to learn more
Example
Incorrect Scheduling: If the brokering run is set to execute at 3:00 PM daily but needs to run every hour, adjust the frequency to "Hourly" in the Brokering Run settings.
Learn about Inventory Rules.
As discussed, inventory rules help orchestrate the process of choosing the most suitable fulfillment locations for each order in a batch of orders based on defined criteria like proximity, stock levels, and strategic priorities. These rules act as sequential steps in the order routing, guiding the brokering engine through multiple checks to find the best fulfillment location.
Multiple inventory rules are required because a single rule may not allocate inventory to all orders in a batch. If the first rule does not allocate inventory to some orders, the brokering engine will proceed to the next rule in sequence. This multi-step process continues through each rule until all possible options are exhausted.
Using multiple inventory rules means that if primary locations lack the required inventory, secondary locations can be considered. This layered approach increases the likelihood of successful allocation by exploring various fulfillment options.
For example, let’s continue with our example of Same-day/Next-day batch, assuming there are 1,500 orders:
Only 2 orders remain unfillable, moving to Unfillable Parking
(configurable action) for rerouting as inventory becomes available.
Applying these inventory rules progressively increases the likelihood of fulfilling each order without delay by prioritizing the most optimal locations first and expanding options only when needed.
In the next sections, we will learn how to create these multiple inventory rules for different order batches.
Here’s how multiple inventory rules work within each routing rule:
Each rule is checked in sequence. If a rule does not allocate inventory to an order, the brokering engine attempts inventory allocation using the next rule.
If no inventory is allocated after all the rules are checked, an auto-cancellation date can be applied or the order may be moved to a different queue for reattempted routing later with a different strategy.
You can easily drag and drop inventory rules to reorder them. The order in which the rules are arranged is important, as the first inventory rule is always evaluated first, followed by the next one. This allows for flexibility in adjusting the sequence as per changing requirements.
In this section, we’ll demonstrate how to set up multiple inventory rules for two routing rules we created earlier: Same-day/Next-day orders and Standard orders.
Creating inventory rules is a three-step process:
The first step is to filter the available facilities to identify those capable of fulfilling an order, so the brokering algorithm considers only facilities that meet the specific criteria set by retailers for order fulfillment.
For example, a retailer may want to use both stores and warehouses for high-priority orders, such as same-day and next-day deliveries. While, for standard orders, they may prefer to rely only on warehouses, avoiding the use of stores. These preferences can be configured using inventory rules to address these types of cases effectively.
Now, if you are wondering how to achieve this configuration, here’s how:
Retailers can set up facility groups in HotWax’s Facility App
. Creating facility groups is an important concept because it allows you to group different facilities. For example, in the scenario above, you could create facility groups where one group includes both stores and warehouses, while another includes only warehouses. This setup provides control over facility lookup based on order type and urgency. Here’s a user manual to understand more about the app and its use cases.
HotWax Commerce offers several inventory filters to fine-tune which facilities are eligible for allocation, including:
Turn off the facility order limit check: Retailers can set fulfillment capacity in HotWax, allowing them to define the maximum number of orders a facility can fulfill in a day. Disabling the facility order limit filter gives retailers the flexibility to bypass the defined order limit for a facility, which is especially useful during peak times or high-demand periods. For example, if a retailer turns off this limit, orders can continue to be assigned to that facility even after its maximum capacity has been reached.
Brokering safety stock: Different from online ATP safety stock, brokering safety stock defines the minimum stock required for an order to be brokered to a facility. For example, if a retailer sets a brokering safety stock level of 10 units, only facilities with at least 10 units of the item in stock will be eligible to fulfill the order. This prevents over-allocation and maintains safety stock levels for unforeseen demand.
Facility Group: Custom grouping of locations. Grouping certain facilities allows retailers to simplify their decision-making. For example, as discussed above, there can be a dedicated facility group of only warehouses, one group can have both stores and warehouses or there can also be slow-moving or lower-demand facilities can be grouped together and allotted for non-urgent orders, while high-demand facilities are reserved for time-sensitive fulfillment.
Proximity: The distance between a fulfillment facility and the customer’s address. When a facility address is added in HotWax, its latitude and longitude are automatically saved. Similarly, HotWax saves the latitude and longitude for customer addresses as well. With both locations’ coordinates stored, the brokering engine can compare them to identify warehouses and stores within the defined proximity that have available inventory. For example, a retailer can set a 200-mile proximity limit for next-day delivery orders, so only inventory within 200 miles of the customer’s address is considered. This approach supports faster, cost-effective delivery while meeting SLA requirements.
All facilities enabled for online fulfillment will be attempted for brokering if no filter is applied.
Continuing our example, let's first create inventory rules for Same-day/Next-day orders routing.
Applying filters to look up facilities with inventory:
Start Creating the Inventory Rule, click the Add Inventory Rule
button. Name the rule, such as “Check all warehouses in 100 miles,” to reflect its purpose of checking only the closest warehouses that can meet the same-day or next-day delivery SLA.
Click Save
to save the rule name.
Configure filters, select the right filters to narrow down eligible facilities. For the “Same-day/Next-day orders” routing rule, we will choose “Facility Group” and “Proximity”.
Facility Group: Select “Warehouses” from the dropdown. This limits eligibility to only warehouses with available inventory. Why did we choose warehouse locations? Warehouses handle larger inventory volumes and can better support online order fulfillment compared to stores, which often focus on walk-in customers.
Proximity: Set the distance to 100 miles, so the rule includes only those warehouses within a 100-mile radius of the customer’s location.
This means that only nearby warehouses are considered, optimizing delivery speed and meeting SLA requirements.
If no warehouse within 100 miles has inventory available, the next inventory rule expands the search to include both stores and warehouses. This multi-step approach allows the brokering engine to consider optimal warehouse locations first before evaluating stores, maximizing efficiency.
Once the eligible facilities are filtered, the next step is to set up sorting criteria to prioritize these locations based on specific requirements. Sorting determines the sequence in which the brokering engine evaluates facilities. For example, if 10 facilities meet the filtering criteria, sorting enables the brokering engine to choose the most optimal one based on your fulfillment goals, such as faster delivery, balanced workload, or efficient inventory usage.
Here are the available sorting options:
Proximity: Retailers can sort inventory allocation based on the distance between the customer's shipping address and the facility. This sorting method prioritizes inventory located closer to the customer, helping reduce shipping times and costs, especially for expedited orders or those requiring same-day or next-day delivery.
Facility order limit: To maintain a balanced workload at facilities, they can also be sorted based on the remaining fulfillment capacity.
Inventory balance: Orders can be routed to facilities with the highest available stock of the ordered item, prioritizing locations with excess inventory. This strategy promotes efficient stock rotation, reduces the risk of overstocking, and helps prevent stockouts at key locations.
Custom sequence: Allows full manual override to the sequence at which facilities are attempted. Retailers can set a custom sequence of facilities, defining a specific order in which locations should be considered for order routing. For example, if a retailer wants to prioritize fulfillment from underperforming stores with lower foot traffic, they can create a custom sequence that favors those stores, helping to balance inventory across all locations. Custom sequences can also be useful for managing seasonal inventory or routing orders to specific regions.
Facilities will be sorted based on creation date if no sorting preferences are applied.
Choosing sorting options to select the most optimal facility:
Navigate to the sort option. Continuing our example, for the “Check all warehouses in 100 miles” inventory rule, we’ll use the "Proximity" sorting option.
This sorting option will arrange eligible facilities within the 100-mile range by their distance from the customer, so the closest warehouse is chosen for fulfillment. This approach supports meeting same-day or next-day delivery requirements by minimizing transit time.
After applying filters and sorting, the final step is to define the actions to take if some orders in a batch do not receive inventory.
Once filters and sorting have been defined, the brokering engine identifies the optimal facility to allocate inventory for orders. Multiple inventory rules are created so that if the first rule fails to allocate inventory to some orders, the next rule can be tried. In this scenario, specifying the action “move items to next rule” allows the brokering engine to check the next rule for unavailable items.
There may also be cases where, when the brokering engine tries to allocate inventory to an order, inventory for some items is available while for others it is not, or if available, it may be at different locations. In such cases, we can specify actions to allow or disallow partial allocation. This action serves as one of the final attempts to allocate inventory to orders, ideally included in the last inventory rule.
After-action logic helps manage orders accurately, whether through partial fulfillment or rerouting at a later time, by moving unfillable orders to a different queue.
Here are the available actions:
Partially available
Allow partial allocation: Allow an order to be split and allocated partially if some items are available at a location. For example, a same-day/next-day batch may allow partial allocation in the final inventory rule, while standard orders may prohibit partial allocation across all rules. While partial allocation enables some items to be fulfilled immediately, it can increase shipping costs. To mitigate this, retailers can enable the Brokering Shipment Threshold in HotWax, which only allows order splitting if the order’s value exceeds a minimum threshold. Learn more about Brokering Shipment Threshold and how to implement it.
Partially allocate grouped items: Allow orders containing kits or gift items to be split and allocated partially if some items are available. If you want to allow splitting for other items but wish to prevent splitting for grouped items, you can configure this by toggling ON partial allocation and toggling OFF partial allocation for grouped items.
Unavailable items
Move items to queue: Transfer unallocated order items to the selected queue for further processing. When inventory couldn’t be allocated to an order but further allocation attempts should not be made, the order can be moved to a specific queue. This allows for holding such unfillable orders until the appropriate action can be taken. For example, unfillable orders can be moved to the Unfillable Parking
, where they can later be rerouted through a different routing strategy. Ideally, this should be part of your final inventory rule.
Next rule: Automatically move unallocated order items to the next inventory rule in the sequence. When using multiple rules, this is the default action, allowing the brokering engine to attempt inventory allocation through each rule in sequence.
Auto cancel days: Specify the number of days to automatically cancel orders that could not be allocated. Based on inventory availability, retailers may want to set an auto-cancel date for orders to prevent them from staying in the fulfillment pipeline for too long. Ideally, this should be part of the final inventory rule.
Clear auto cancel days: This option is helpful when an auto-cancel date has been applied to an order, but incoming inventory is expected to fulfill it. For example, if unfillable items were moved to an Unfillable Parking
with an auto-cancel date, and inventory is now expected to arrive, clearing the auto-cancellation date during routing can prevent automatic cancellation. This allows the brokering engine to reroute the order once inventory arrives, maximizing fulfillment opportunities. It's also important to note that applying or clearing an auto-cancel date will apply to all unfillable orders. If there’s an exception and you want to perform an action for a single order only, you should do so directly in HotWax OMS. You can move the specific order to a new queue, like Unfillable Hold Parking
, and then remove its auto-cancel date.
Deciding actions to choose the most optimal facility:
In Actions, navigate to the partially available card. Continuing our example, for the “Check all warehouses in 100 miles” inventory rule, we’ll keep the Partial fulfillment as disabled because we want to try allocating inventory to orders using multiple rules without splitting an order. We can allow splitting in our final inventory rule.
Navigate to unavailable items card. Here we will set the action as “Move unavailable items” to the “Next Rule.” This means that the brokering engine will now try to allocate inventory using the next configured inventory rule in our sequence. We don’t want to apply an auto cancel date yet or move unfillable items to a separate queue. We can do this in our final rule.
By default partial fulfillment is disabled and move items to next rule is selected in actions.
Great! With your first inventory rule in place, creating additional inventory rules will expand the facility lookup and optimize inventory allocation for same-day and next-day orders.
The following examples provide a brief overview of potential inventory rules, which may vary depending on a business’s unique priorities and requirements.
To add more inventory rules, follow these steps:
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all locations in 100 miles,” to reflect its purpose of checking both the stores and warehouses that can meet the same-day or next-day delivery SLA.
For the second inventory rule, we will expand facility lookup with the "Proximity" Filter:
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all locations in 100 miles".
Filter: We will use the "Proximity" filter, setting the distance to 100 miles. This rule expands the facility lookup to include all facilities (both stores and warehouses) within a 100-mile radius of the customer’s location.
We are not using the Facility Group filter here to include all fulfillment locations (stores and warehouses) within the 100-mile radius.
Sorting: Under sorting, we will choose proximity so that the closest facility with the available inventory is selected.
Action: For any items in this batch that remain unfillable, we will set the action as “Move unavailable items” to the “Next Rule.”
For the third inventory rule, we will further expand facility Lookup with "Proximity" Filter:
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all locations in 250 miles".
Filter: We will use the Proximity filter, setting the distance to 250 miles. This rule expands the facility lookup to include all facilities (both stores and warehouses) within a 250-mile radius of the customer’s location.
Sorting: Again, we will use the Proximity option to choose the closest facility with available inventory.
Action: For any items in this batch that remain unfillable, we will set the action as “Move unavailable items” to the “Next Rule.”
For the fourth inventory rule, we will further expand facility lookup without any distance limitation:
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all locations".
Filter: We will not apply any filter, allowing the brokering engine to consider all facilities, regardless of distance. This rule allows every facility (store or warehouse) to be considered for fulfilling unallocated orders.
Sorting: We will sort facilities by "Proximity", so the closest location is selected.
Action: For any items in this batch that still remain unfillable, we will set the action as “Move unavailable items” to the “Next Rule.”
For the final fifth inventory rule, we will again include all facilities but also enable order splitting to allow partial fulfillment across different facilities.
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all locations, allow splitting".
Filter: We will not apply any filter, allowing the brokering engine to consider all facilities, regardless of distance.
Sorting: We will sort facilities by "Proximity", so the closest location is selected.
Action: We will toggle ON “Partial allocation” to enable partial allocation across multiple facilities if inventory is spread out. For items in this batch that still remain unfillable after we have applied multiple rules, we will set the final action as “Move unavailable items” to the “Queue,” and select Unfillable Parking
from the dropdown. We will also apply a "7 days auto-cancel date" for these unfillable orders.
Once you've configured each rule, change its status from Draft to Active to make it operational. To do this, click on Draft and select Active, or revert an active rule back to Draft if any adjustments are required.
Once all rules are active, and your routing is fully configured, set the Brokering Run to Active so that orders can be processed as scheduled.
For standard orders with a longer SLA (7 days or more), inventory rules can be configured differently to prioritize fulfillment from warehouse locations, reserving in-store stock for higher-priority, faster-shipping orders. Here’s how to create inventory rules for “Standard orders” routing:
Navigate to the Brokering Run
details page, choose the Standard orders routing, and follow the steps below to add inventory rules.
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all warehouses in 250 miles,” to reflect its purpose of checking only warehouse locations in the defined proximity.
For the first inventory rule, we will prioritize warehouse locations with most inventory.
Filter: We will choose “Warehouses” in the “Facility group”, excluding stores to maintain inventory levels for faster-shipping orders. We will also use the Proximity filter, setting the distance to 250 miles. This rule expands the facility lookup to include all warehouses within a 250-mile radius of the customer’s location, allowing us to reduce shipping costs if a nearby warehouse is available.
Sorting: We will choose “Inventory balance” to route orders to warehouses with the highest available inventory. Proximity sorting isn’t prioritized here, as the goal is to maximize inventory balance within 250 miles.
Action: For any items that remain unfillable, we will set the action to “Move unavailable items” to the “Next Rule.”
For the second inventory rule, we will prioritize warehouse locations with most inventory.
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all warehouses in 500 miles".
Filter: We will use the Facility Group filter and continue to restrict the facility lookup to Warehouses only but we will now expand the distance to 500 miles using the Proximity filter.
Sorting: We will again choose “Inventory balance” sorting to select the optimal warehouse in 500 miles with the available inventory.
Action: If any items still remain unfillable, we will set the action to “Move unavailable items” to the “Next Rule.”
For the final third inventory rule, we will look up all warehouse locations.
Click on the Add Inventory Rule
button and give the new rule a distinct name, such as “Check all warehouses".
Filter: We will continue to restrict the facility lookup to Warehouses only using the Facility Group filter. However, this time we will not use the Proximity filter, allowing all warehouse locations to be considered.
Sorting: We will again choose “Inventory balance” sorting to select the optimal warehouse with available stock.
Action: For items in this batch that still remain unfillable after we have applied multiple inventory rules, we will set the final action as “Move unavailable items” to the “Queue,” and select Unfillable Parking
from the dropdown. We will also apply a 7 days auto-cancel date for these unfillable orders.
This is how in a single brokering run, you can set up multiple routings with unique inventory rules based on each order batch specific needs.
What did we do differently for standard orders?
For Standard orders, we focused only on "Warehouse" locations, prioritized "Inventory balance" over “Proximity" and "Disabled partial allocation" across all inventory rules.
When an inventory rule is no longer needed, you can simply Archive
it by changing its status from the top right corner. You can unarchive the inventory rule if it’s needed again.
By leveraging HotWax Commerce, Order Routing App
retailers can create highly customized and efficient order routing strategies that optimize inventory usage, reduce shipping times and costs, and align their fulfillment process with their unique business needs.
In the following sections, we’ll cover a range of business use cases that the HotWax Commerce Order Routing
App can help achieve, highlighting its adaptability to various inventory and order fulfillment needs.
Gain a clear understanding of your presell catalog with HC's Audit feature, allowing you to track the status of pre-orders and back orders, and confirm listed items on the eCommerce platform.
Merchandisers need a clear picture of their presell catalog to understand the status of pre-orders and back orders. This helps them figure out when these pre-orders will show up on Shopify. This overview also lets them check and confirm listed items, even after they're on the e-commerce platform.
To see their complete presell catalog, merchandisers can go to the catalog
page through the left menu in the Pre-Order
app.
The Catalog
page shows all items in pre-orders or backorders in one place. On the right side, users can see when the last pre-order computation job commenced and when will the next job run.
Users can search for product SKUs for which they want to audit by their SKU, Product name, Product ID, or keywords in the search bar. They can also filter products by clicking Pre-order
or Backorder
to see items in those categories. Only items in those categories will appear in the filtered list. Products not added to the catalog won’t show up in the search results.
Once a merchandiser identifies their desired SKU, clicking on the product leads to the product detail
page. This page facilitates an audit of the pre-order catalog through the following steps:
Variants View: Auditors can explore all product variants, such as colors and sizes, click on each variant to access specific information about that SKU.
Verify Shopify Pre-Order listing details such as:
Pre-order Eligibility: Check the product's qualification for the presell category based on future and current inventory. Merchants will view Yes
if product is eligible No
if product is ineligible You can check the pre-order eligibility criteria to identify when a product is eligible for pre-order/backorder.
Verify Category: Confirm if the product is correctly categorized on Shopify by checking for the ✅ icon in the UI. When the category is incorrect on Shopify, the auditors will see a warning sign that the product is incorrectly categorized. The incorrect categorization on Shopify is mostly due to the Job for syncing on Shopify has not commenced yet. Check Jobs for Pre-Order Catalog Synchronization with eCommerce to ensure accurate categorization.
Verify Shopify Listing Status: Ensure the product is listed on all associated Shopify stores. When listed accurately it will reflect ‘listed on all stores’. If the product is not listed, check the respective job to push listing data on Shopify has run in the Job Manager App.
Verify Promise Date: Every product that is eligible for pre-order will have a promise date for the future. Promise date can also be verified from the active purchase order card.
Verify Presell Timeline: Review each eligible pre-order product for a future promise date. Auditors can monitor the timeline to observe when the preselling commenced and ceased, and the reasons behind halting the preselling process.
Verify Active Purchase Orders- Auditors can view the status of the active purchase orders for that specific products under Verify Active Purchase Order
card. This card offers complete information if there’s any purchase order for this product that is scheduled to arrive and is not completed yet. The Active Purchase Order
Page offers the following information:
Pre-selling category: This field shows whether the product is in pre-order or backorder
Ordered value: Check how many quantities are ordered in this purchase order
Available: Check if there’s already a purchase order received for the same product and if yes what is the current status of the inventory.
Corresponding sales orders: Check how many sales orders have already been received for this product
Total PO items: Check how many items are going to be received in this purchase order
Total PO ATP: Check how many available to promise inventory can be deduced from this PO. if the merchandiser has added any order buffer, yes then the ATP for the PO will be less than the incoming inventory
Check Online ATP computation- Online ATP calculation
card offers the complete inventory explainability about how the pre-order item reaches the online ATP from the ordered quantity., This card contains the following information:
Online ATP: The inventory available to promised online or the inventory on which the pre-orders can be taken will be visible in this field.
Quantity on Hand: The total inventory that the retailer receives at the physical location will be visible in this field.
Excluded ATP: Retailers can view how much inventory is excluded from the quantity on hand. The inventory can be excluded due to, already received online orders on it, the inventory also may have an order buffer which serves as safety stock for pre-orders.
Reserve Inventory: This toggle allows Hotwax Commerce to reserve the inventory in the brokering queue when accounting for ATP calculation. Retailers who use Shopify as inventory master for pre-order computation need to toggle these settings off. Shopify already reduces the inventory at the time of the order's arrival. HotWax Commerce does not need to reduce the inventory from the ATP at the time of fulfillment otherwise it may result in double inventory deductions.
Hold Physical Inventory: Shopify retailers managing Pre-Order inventory balance it between eCommerce and physical stores. For retailers with brick-and-mortar stores, HotWax Commerce allows a Hold Physical Inventory setting. This setting reserves excess Pre-Order stock for physical stores before pushing surplus to eCommerce. For example, if the 100 inventory is received for 80 online orders, the remaining 20 won’t be immediately available online to sell as available products. Instead, the retailer can hold the surplus inventory exclusively for their offline customers.
Related Job Information: Auditors have access to all product listing-related jobs, including their last execution time and upcoming run schedules. This quick access allows auditors to verify the completion of pre-sell computations, order brokering, and pre-order release jobs. Merchandisers can quickly run or cancel jobs by clicking on their respective names.
Shopify Shop Listing Status: Auditors can track product listings and delistings across Shopify stores. In case of any discrepancies due to job failures causing inaccurate listings or delistings, this information helps identify errors. Merchandisers can investigate the issue manually and resolve it to ensure accurate product category on Shopify.
Learn how HotWax Commerce OMS simplifies in-store return processes for retailers, ensuring efficient handling of online orders in physical stores.
The Creating In-Store Returns feature in HotWax Commerce addresses challenges for retailers selling products across multiple channels. In the absence of online order information in POS systems, in-store returns can become complex. HotWax Commerce, an Omnichannel Order Management system, resolves this by maintaining records of online orders from e-commerce platforms, ensuring efficient in-store return processes on the HotWax Commerce platform, and improving workflow for store associates.
Enter your user credentials (username and password) to log in to the HotWax Commerce Platform.
Navigate to Create Order Return:
In the main menu, click on Order Management
.
From the dropdown, select Create Order Return
.
Search for the Order:
On the Create Order Return page:
Utilize the search tab to locate specific orders.
Enter relevant details such as Shopify Order ID
, Customer Name
, Order creation date
, Customer Email Address
, or Customer Phone Number
.
Click Search
to find the specific sales order.
Select Create Return:
Once the order is located, click on the Create Return
button associated with the order.
Complete the Return Details:
You will be redirected to the Create Return
page.
Select the first checkbox for all items or individual boxes for selective returns.
Enter the Facility ID
where the customer is returning the item.
Choose the Return Reason
from the dropdown menu.
Optionally, enter the Employee ID
.
Click the Create Return
button to initiate a return request.
Alternatively, store associates can also create returns by going to the sales order
for which the return needs to be created and clicking on the Create RMA
button.
View Returns Page:
After creating the return, you will be directed to the View Returns
page.
Store managers wanting to review and approve multiple return requests can also access the View Returns
page through the following steps:
Navigate to the Sales Return Page
from the hamburger menu.
Locate and track the status of the return (Requested
, Received
, or Completed
).
Click on the order ID to access the View Returns
page for detailed information about the return.
Authorize Returns:
On the View Returns
page, click the Accept
button to approve the return request.
To finalize the return process, click the Receive Return
button.
The return status will be completed
now on the sales returns
page.
Partial Returns:
If only specific items need acceptance:
Select the checkboxes for those items.
Click the Update
button to receive a return for the selected items.
Ensure Returns Job is Scheduled:
Verify Returns on Shopify:
To verify order returns on Shopify:
Go to the Shopify admin panel
.
Navigate to Orders
and access Order Details
by clicking on the corresponding order ID.
Return information will be available for the corresponding order items.
By following these detailed steps, store associates can efficiently navigate through the HotWax Commerce platform, manage in-store returns, and contribute to a smooth and effective customer experience.
Parameter
Type
Description
Default Value
Example Value
includeAll
Optional
Specifies whether to include all inventory levels.
true
false
Discover your guide to troubleshooting brokering issues due to incorrect Facility Associations
For orders to be routed correctly, the facilities need to be associated with the appropriate facility group. If the facilities are not correctly configured in the facility groups, orders might be routed to the wrong locations, causing delays and inefficiencies.
Navigate to the Facilities App.
Navigate to the Facility Groups page.
Identify the facility group with the "Brokering_Group" subtype.
Click on the chip available against the facilities.
From the submenu, click on "View Facilities" to verify the facilities or "Quick Edit" to add or remove any facility from the group.
Navigate to the Order Routing App.
Navigate to inventory rules by clicking on the brokering run and order batch for the orders you would like to broker.
Click on the inventory rule you would like to configure.
Click on "Filter", select "Facilities," and choose the correct facility group to which you would like to broker the order.
For more details on Order Routing, refer to our user manual.
Discover your guide for troubleshooting Brokering Issues due to Incorrect Shipping Method
Shipping methods need to be correctly mapped from Shopify to HotWax Commerce and to every facility to ensure that orders are shipped as per the SLA (Service Level Agreement) with the customer. The orders won’t be brokered if the shipping method for the order is not correctly mapped.
Log In to Your HotWax Commerce Instance: Open your web browser and log in to your HotWax Commerce account using your credentials.
Navigate to Your Carrier Integration Page: From the Hamburger Menu navigate to the carrier integration settings. For example, if you'd like to verify shipping methods for FedEx, navigate to the FedEx carrier setup page under the "Settings" heading.
Verify the Carrier Shipping Method: On the carrier setup page, ensure that the carrier shipping method (e.g., FedEx Standard Overnight, FedEx 2Day) is mapped correctly in HotWax Commerce. This mapping should match the shipping methods available in Shopify.
Verify Facilities Association: Check that the facilities are correctly associated with the carrier. Each facility should have the appropriate carrier enabled to ensure orders can be routed and shipped from the correct location.
Rectify Issues Using the User Manual: If you identify any issues with the mapping or facility association, refer to the HotWax Commerce user manual for detailed instructions on how to correct these settings.
Learn how HotWax Commerce automates pre-order and back-order management through the use of purchase orders, offering integration with ERP systems and a simplified process for manual import.
HotWax Commerce aids in automating pre-order and back-order management by leveraging purchase orders. This automation includes the automatic listing and de-listing of products which is particularly beneficial for retailers who have large purchase order catalogs.
Purchase orders (POs) provide crucial details about item specifics and upcoming inventory arrivals. Retailers can integrate their ERP systems with HotWax Commerce to synchronize purchase orders automatically or utilize the Import App to manually import purchase order CSV files.
To know how you can manage your purchase orders from your ERP system like NetSuite, please refer to the integration guide. For users who want to import their purchase orders manually, HotWax Commerce’s Import app simplifies the process of importing purchase orders and their inventory into HotWax Commerce. Here’s how retailers can upload purchase orders using the Import App:
Head to the Import App
> Purchase order page
by clicking on the Purchase order in the left menu.
Upload the CSV File by simply clicking on the Upload
text within the first field.
Upon uploading, there might be variations in column names in Hotwax Commerce and the uploaded purchase order, like 'Order ID' in HotWax Commerce can be named as 'Internal ID' in other systems. To avoid errors, users must map these columns accurately. Here are the fields to be mapped:
Order ID: Acts as a unique identifier for the order.
Shopify Product SKU: Shopify's distinct product identifier.
Arrival Date: Expected arrival date of the order.
Ordered Quantity: Quantity of products ordered.
Facility ID: Identifies the specific facility.
Users can easily map these fields by selecting the exact field from dropdown menus. For added convenience, HotWax Commerce allows Merchandisers to save these mappings within the Import App by clicking on the New mapping
button, streamlining future uploads. Saved mappings appear as buttons above the mapping field for quick access.
Apart from this merchandisers need to create a new field i.e. IsNewProduct
and mark the field as either ‘Yes’ or ‘No’. This field helps HotWax commerce identify whether a product is a new product and should be added to the pre-order catalog or the product was already being sold on the e-commerce and currently it is currently out of stock, in such cases, it is added to the backorder catalog.
After saving mappings, proceed by clicking on the Review
button to transition to the PO review
page. This ensures a smooth completion of the process.
The PO Review page
provides a detailed overview of PO CSV data and assists users in identifying and correcting errors within the CSV file.
The purchase order page offers the following functions to ensure accurate importation into HotWax Commerce:
Search Products: For Merchandisers managing a large catalog of products in their CSV, getting details about individual products is crucial. Merchandisers can search for individual products for review using the product SKU. In the product fields, the merchandiser will get a comprehensive view of that particular product, including whether it is on backorder or pre-order, the quantity ordered, and the expected inventory arrival date.
Bulk Adjustments: Merchandisers can select products for adjustments using checkboxes available in each product's field. To select all products, the merchandiser can click on the checkbox at the top right of the page. Once products are selected, merchandisers need to click on the bulk adjustment screen, which will open a pop-up screen with the following options:
Buffer days: Refers to additional time added to the expected delivery date of a pre-order product to account for potential delays. For example, if the Purchase order arrival date is 10th January, the user can set a buffer days of 10 so that the dispatch date for Shopify PDP will be shown as 20th January.
Order Buffer: Refers to the inventory or quantity of a pre-order product that a merchandiser may set to manage inventory discrepancies or excess demand. For example, if a product has an upcoming inventory of 100, the user can set 10 as order buffer so that the available to promise inventory on Shopify becomes 90.
Catalog: Merchandisers can determine whether the product is on backorder or pre-order.
Facility: Merchandisers can select the facility where the purchase order for that inventory is received.
DateTime Parse Errors: Retailers working in different countries often face issues with time formats (e.g., European countries follow DD/MM/YYYY formats, while US companies follow MM/DD/YYYY format). Similarly, purchase orders can have different formats. If there's any format mismatch, the error message will be available in this field. Merchandisers can specify the date format easily by clicking on the DateTime Parse Errors
and adjusting the date according to the PO.
Missing Facilities: There may be instances when the facility name in the purchase order is inaccurate, causing errors in the uploading process. For example, if the Times Square facility is incorrectly mentioned as Time Square in the Purchase order, this field will show an error. Merchandisers can rectify this error by clicking on the Missing Facilities
field which will open up a missing facilities pop up card. Merchandisers can rectify the mistake by typing the correct facility name and click on the save
button to update the changes.
Missing Products: Similarly, there can be errors in product namings. If a product is not available in HotWax Commerce, this field will display an error. Merchandisers can rectify the mistake by clicking on this field, and opening a pop-up menu where they can correct and save it.
Reset Changes: If a merchandiser wants to start afresh with the changes, they can click on the reset
icon at the top right of the page.
Filter Products: Purchase orders for different facilities can be included in the same CSV file. If a merchandiser wants to view upcoming purchase orders of a specific facility, they can filter by clicking on the Purchase order IDs
at the bottom of the page.
Upload Purchase Order: Once the review is complete, merchandisers can click on the blue upload
icon at the bottom right to upload the purchase order in HotWax Commerce.
Learn about setting up pre-order jobs in HotWax Commerce to sync pre-orders with the eCommerce platform, ensuring accurate listing and seamless operations
Once Purchase Orders have successfully been uploaded to HotWax Commerce, the subsequent step involves seamlessly syncing the pre-orders with the e-commerce platform. Merchandisers can set up various jobs in HotWax Commerce to ensure the accurate listing of pre-orders on the e-commerce platform. Some of these jobs are internal to HotWax Commerce and facilitate the creation of jobs within the system.
All Pre-order jobs have a defined frequency of 15 minutes to ensure the smooth running of the process. However, should the merchandiser wish to modify the job frequency, they can do so by following these steps:
Navigate to the Job Manager
> Pipeline
Page.
Utilize the search
bar at the top of the page to locate the specific job.
The desired job card will appear in the results, displaying all the job details, including the last run time, frequency, and other relevant job data.
Clicking on the job card reveals a detailed view, offering merchandisers various options to modify the job, such as altering the run time, adjusting the frequency, and adding custom parameters if required.
Once the changes are made, merchandisers can save them by clicking on the save changes
button. This action ensures that all future runs of the job reflect the updated settings. Additionally, if there are no pre-orders, merchandisers can also cancel the job to reduce system load.
In HotWax Commerce, merchandisers have the option to schedule the Auto Refresh Pre-sell Catalog
job, which automatically manages the addition or removal of pre-sell products from the HotWax Pre-order/Backorder category. This job checks for new products eligible for pre-order/backorder and adds them to the pre-order catalog based on specific eligibility criteria:
Status of PO items must be created or approved, ensuring canceled PO items are not considered for Pre-Order.
Promise date of a PO item must be in the future, guaranteeing that purchase order items will arrive in the future, not from an old PO.
Current inventory of the item must be 0, indicating it's out of stock and qualified for Pre-Order or backorder.
If the 'isNewProduct' field of a PO is marked as “yes”, it’s identified as a Pre-Order product; if marked “no”, it's categorized as a backorder product.
Products from purchase orders that don't meet these criteria won't be listed in HotWax Commerce's pre-order catalog. It's important to ensure that purchase order items adhere to these criteria for accurate listing.
Moreover, this job also manages the removal of pre-sell items from the pre-order/backorder category in HotWax Commerce under specific circumstances:
When all future inventory pre-orders are received.
When the Purchase Order status changes to “Canceled” or “Completed”.
Upon physical receipt of inventory at the fulfillment center.
When the Purchase Order arrival date (promised fulfillment date) has passed.
For more comprehensive details, read our shopify integration page.
You can schedule the job by accessing the Job Manager App
> Pre-order page
and selecting the checkbox
next to the Auto refresh pre-sell catalog
job name.
To schedule the job, Merchandisers navigate to the Job Manager
> Pre Orders
page, where they can schedule the presell catalog sync
by checking the box next to Sync variant details
. This job facilitates updates to the Presell catalog on Shopify, working through these steps:
HotWax Commerce generates a GraphQL file encapsulating all pre-order-related changes, including promised delivery dates, product categories, and statuses. This file is placed in an SFTP location.
Shopify processes these GraphQL files in sequence from the SFTP location to execute the required updates. However, for multiple sequential GraphQL file uploads, Shopify doesn’t fetch the next file automatically. To initiate processing for the subsequent files, Merchandisers should schedule Process Upload jobs in HotWax Commerce through the following steps:
Navigate to Job Manager
> Initial Load
> Process uploads
card.
Activate the File Upload Status
job, which monitors file processing and potential errors via the Shopify webhook.
Schedule the Upload Pending Proces
s job to prompt Shopify for the next GraphQL file upon receiving Upload
Status updates.
After confirming the activation of Process Upload
jobs, Merchandisers can schedule the presell catalog sync
job. To delve deeper into understanding how pre-orders are listed on Shopify, comprehensive insights are available in our Shopify Pre-order integration guide.
Upon listing all products on Shopify, it's crucial to appropriately tag them with HC: Pre-order
or HC: Backorder
. This tagging process is easily managed by enabling the checkbox for the Add pre-order tags
and Add backorder tags
jobs, running every 15 minutes. These jobs utilize the pre-order category in the meta fields to add the suitable tag to the parent product on Shopify.
The HotWax Commerce Pre-order PDP app employs tags and meta fields to modify the Add to Cart
button and display the expected delivery date on Shopify PDP. Products labeled with HC: Pre-order
tags will alter the Add to Cart
button to Pre-Order
, while those with HC: Backorder
tags will display Backorder
.
Likewise, it's essential to schedule the Remove pre-order tags
and Remove backorder tags
jobs to eliminate the HC: Pre-order
and HC: Backorder
tags when a product is removed from the pre-order catalog.
Update Pre-Order Category Item Arrival Date
The Sync Variant Details
job ensure that if there is any change in the purchase order arrival date the promise dates of the product is also updated on Shopify. However, when there are changes in the arrival dates of the multiple items in the purchase orders, the promise dates need to be first updated in HotWax Commerce pre-sell category. These changes happen through Update Pre-Order Category Item Arrival Date
job which creates a file and process all the updated date changes in HotWax Commerce category, after this the Sync Variant Details updates the changes on Shopify.
Ensuring accurate representation of pre-order information and changes in customer sales orders post their e-commerce purchase is crucial. While pre-orders are downloaded alongside regular orders, specific notes are included in these sales orders for easy identification of pre-orders. Here are the various jobs that can be scheduled in HotWax Commerce for managing sales orders with pre-order items:
Add Pre-order/Backorder Tags- These jobs assign pre-order/backorder tags to orders containing pre-selling items. This simplifies identification for the operations team. The job is scheduled by selecting the respective checkbox against the Add Pre-Order Tag
or Add Backorder Tag
.
Add Promise Date- Adding promise dates to sales orders, mirroring the dates provided to customers upon order placement. This job, when activated via checkbox, appends promise date notes to sales orders.
Update Promise Date- In cases where promise dates change due to shifts in the arrival date of purchase orders, updates to the promise dates in sales orders are necessary. The update promise date
job update the promise date notes of the sales orders.
Adjust ATP on Early PO in Bulk– Merchandisers frequently handle multiple Purchase Orders for identical SKUs. Sometimes, they might upload a new Purchase Order with an earlier promised date, even if there's an existing Purchase Order for the same SKU in the system. In such cases, reallocating sales orders from the initial Purchase Order to the latest one with an earlier date becomes vital. This ensures that customers who placed pre-orders first are given priority, guaranteeing timely delivery. The task automatically adjusts Purchase Order ATP allocations and reallocates pre-orders accordingly. To schedule this, enable and set up the Adjust ATP on Early PO in Bulk
job found in the More Jobs section.
Auto Sync Date to order- Merchants can change the promise dates in sales orders if there are any changes in the promise date due to arrival date changes in Purchase order through this job. This job can be scheduled by checking the box against the file name.
Email Customers- To efficiently manage customer expectations regarding changes in promised dates, activating the Email customers
checkbox initiates a job that triggers automatic emails to customers. This action ensures customers are informed whenever there's a modification in the promised date.
Discover how to manage uploaded purchase orders in HotWax Commerce, including viewing, editing, making changes, or canceling purchase orders.
Once the Purchase order has successfully been uploaded to HotWax Commerce, Merchandisers can view the purchase orders via the Find Purchase Order
Page. This can be done by clicking on Procurement
> Purchase Orders
from the HotWax Commerce’s Hamburger menu.
The Find Purchase Orders
page showcases the following details:
Consolidated View: Offers a comprehensive display of all upcoming purchase orders and their individual items.
Purchase Order Specifications: Presents purchase orders in an exploded pattern, revealing distinct specifications for each item.
Purchase Order Status: Indicates the current status of the purchase order, whether it's in a created, approved, completed, or canceled state.
On-Hand Inventory Overview: Provides insights into available quantities and available-to-promise inventory on Shopify.
Created Date and Arrival Date: Merchandisers can easily view when the purchase order was created in HotWax Commerce and when will the inventory of the purchase order items arrive.
Merchandisers can easily view individual Purchase orders by searching Purchase Order ID, HotWax Commerce ID, or Product name from the search bar. Moreover, they have the ability to filter search results based on PO status, arrival date, or facilities.
Additional functionalities that are available on the Find Purchase Orders
page are:
Grouping: Merchandisers have various options to view purchase order items, they can group the items by order items, products, and their arrival dates, etc. For example, if a merchandiser changes the grouping to a parent product, they will be able to see all the parent products and the inventory overview of that product, irrespective of the variant's inventory.
Export CSV: Merchandisers can export the CSV files of all the purchase orders for external auditing purposes.
Once the merchandiser has located their desired purchase order, they can execute various flows to ensure precise synchronization of pre-order information with the eCommerce platform.
Merchandisers may opt to cancel purchase orders due to various reasons such as supplier issues or lack of demand. HotWax Commerce allows the cancellation of uploaded purchase orders by following these steps:
Navigate to Procurement
> Purchase Orders
> Find Purchase Order
.
Select the desired purchase order
> Open Purchase Order Detail page
.
The cancel
button, located at the top left of the page, facilitates the cancellation process, changing the purchase order status to canceled
.
Merchandisers can modify the purchase order arrival date if there’s a change from the supplier's end. This alteration assists in providing the accurate promise date to the customers
Navigate to the desired purchase order detail
page.
View purchase order item details at the bottom of the page. Click the pencil
icon to adjust the arrival date.
Changes made can be tracked by clicking on the history
icon in the line item field.
For bulk updating of all product arrival dates, merchandisers can import another CSV in the import app and cancel the existing PO.
In cases where product demand differs from expectations, merchandisers can alter the quantity of purchase order items rather than create a new purchase order. Steps to execute this adjustment include:
Navigate to the Purchase Order Detail
page.
Click the Edit Items
button at the top of the line items to modify quantities. Insert the accurate quantity and click on Save
button to sync the latest inventory changes to the e-commerce platform for selling.
To cancel specific items instead of the complete purchase order, merchandisers can follow these steps:
Select the desired purchase order from the Find Purchase Order
Page.
Click on the Edit Items
button at the top of the purchase order line item list.
Click on the Delete icon
in the last column of the line item. Confirm the deletion process in the pop-up prompt by clicking yes
.
Discover how HotWax Commerce automatically allocates sales orders for pre-order items on a first-in, first-out (FIFO) basis, with the flexibility for manual allocation when needed.
Once a customer places an order for a pre-order item, the sales order is automatically allocated to the purchase order inventory on a first-in, first-out (FIFO) basis. This ensures that customers who place orders first receive their inventory first. However, there are instances when merchandisers need to manually manage these allocations, either due to errors or the need for reallocation. HotWax Commerce provides the flexibility for merchandisers to manually manage purchase orders through the following methods:
In order to review associated sales orders for a selected item and get overview of the total quantity ordered and consumed ATP for that specific purchase order item, merchandisers can view all the sales orders associated with that purchase order through the following steps:
Navigate to the Procurement
> Purchase Orders View
> Purchase Order Detail
page
Click on Review Allocation
in the line item field to view all associated orders with that purchase order.
This will open up a review allocations
page where merchandisers get a holistic view of all the sales orders allocated with that purchase order and they can take actions such as removing allocations.
In cases where sales orders are not allocated to the purchase order due to any error or if the relevant purchase order is canceled, resulting in unallocated sales orders, merchandisers can manually allocate sales orders to purchase order items efficiently. Here's how:
Navigate to the Procurement
> Purchase Orders View
> Purchase Order Detail
page.
Click Allocate Sales Order
in the line item field, opening a confirmation pop-up. Click yes to view all unallocated sales orders for that product.
Select the sales orders to associate with the existing purchase order. This will allocate the sales order with the existing purchase order, and the order will be fulfilled accordingly.
Whenever there's a change in the arrival date of the purchase order items, the same arrival date needs to be synced with the sales order. This ensures an accurate view of when an order needs to be fulfilled, and customers are informed about changes in their product's arrival date. Merchandisers can do this through the following steps:
Navigate to the Procurement
> Purchase Orders View
> Purchase Order Detail
page
Click on Sync Date with SO
in the respective line item field which opens a confirmational pop-up.
Click yes
to sync the date for all sales orders associated with the existing purchase order.
Merchandisers may sometimes encounter inaccurate allocations of sales orders with purchase orders or they want to remove allocations to utilise that inventory for in-store sales. Such issues can be rectified by removing allocations through following steps:
Navigate to the Procurement
> Purchase Orders View
> Purchase Order Detail
page
Click Remove Allocation
in the line item field to open the Review Allocations
page.
This will display all the sales orders for which the inventory is allocated. Merchandisers can select the sales orders they want to remove the allocation for by clicking on the checkbox and then clicking on the Remove Allocations
button.
Learn how HC automatically handles the release and brokering of Shopify Pre-Orders, with the option for manual release preferred by merchants managing both physical stores and eCommerce platforms.
HotWax Commerce automatically handles the release and brokering of Shopify Pre-Orders, ensuring fulfillment from the most suitable location without requiring manual intervention. However, for merchandisers seeking greater control over online Pre-Order inventory, manual release becomes preferable over automatic processing. This preference often emerges among merchants managing both physical stores and eCommerce platforms. They opt for manual release to prevent allocating all available inventory solely to online Pre-Orders, reserving a portion for their physical stores instead.
HotWax Commerce strategically organizes all pre-orders in a dedicated queue until their physical inventory is received. This approach ensures that brokering processes are not initiated for orders lacking available inventory. Once the pre-order inventory arrives, HotWax Commerce transfers all orders from the pre-order queue to the brokering queue. This allows the system's engine to efficiently match the most suitable inventory with specific orders for fulfillment. To accommodate diverse retailer preferences, HotWax Commerce offers two methods for automatically releasing Pre-Orders:
Daily Job: Merchandisers can schedule this job through the Job Manager App
> Pre-Order Page
by enabling the Run Daily
checkbox in the auto-releasing card. This automated process releases pre-orders where the shipping date has arrived and inventory is available for release.
Immediate Release: This method doesn't require scheduling. Merchandisers can trigger instant release by clicking the release
button associated with the Release Pre-orders
job name. This action promptly releases all pre-orders in the queue, facilitating their allocation to the respective fulfillment locations.
Manual release grants merchants precise control over order releases, allowing merchandisers to release pre-orders either by product or by order.
When merchants opt to release Pre-Orders By Product
, they gain control over available product inventory allocation. Merchants can determine the number of Pre-Orders they wish to release for online orders and how much inventory to reserve for their physical stores. For instance, if 100 units of inventory are received for 100 pre-orders, a retailer might choose to release 80 units for 80 pre-orders online and retain the remaining 20 units for in-store customers. The pending 20 pre-orders can be fulfilled using subsequent inventory from future purchase orders.
Here's the process for releasing pre-orders by products:
Navigate to the Product
page in the Pre-Order
App.
Search for the desired product by Product name or Product ID.
Merchandisers can view the badges displaying quantities of pre-orders, available stock, and orders in the brokering queue for that product.
To release a specific quantity, merchandisers can input the desired quantity in the Pieces
field. Alternatively, to release all pre-ordered quantities, simply click on the badge to insert the total quantity at once.
Finally, click on the release
button at the bottom of the page to release the ordered quantities from the pre-order queue to the brokering queue for fulfillment.
Merchandisers can also select the Release to the Warehouse
button to specify the location for brokering. This action bypasses the brokering queue and directly releases the order from the pre-order queue to the warehouse for fulfillment.
Merchandisers can also cancel a specific quantity of pre-orders by clicking on the cancel
button.
When merchants specifically aim to release a particular customer's Pre-Order, they have the option to release it By Order
.
This method becomes valuable when a customer requests expedited delivery, and if the On-Order
inventory has been received. Opting for the By Order
release method allows the merchant to choose that specific order and release it earlier than its estimated ship date. This action caters to meeting the customer’s delivery expectations promptly. Instead of releasing all Pre-Orders together on the estimated ship date, a merchant can prioritize the fulfillment of a particular Pre-Order. Here are the steps to release pre-orders by orders:
Navigate to the Orders
Page in the Pre-Order App
.
Search for specific orders using order ID, product name, style name, SKU customer name, UPCA, or external ID from the search
bar.
Merchandisers can utilize filters for orders, such as:
Order After Date: Lists all orders after the specified date.
Order Before Date: Lists all orders before the specified date.
Promised After Date: Lists orders with a promised date after a specific date.
Promise Before Date: Lists orders before a specific promise date.
Loyalty Status: Filters orders based on loyalty status awarded to customers based on their purchase history.
Once orders are filtered, merchandisers can select multiple orders or use the options icon on individual orders to perform actions like:
Release: Initiate orders for brokering and fulfillment.
Release to a warehouse: Release the pre-order to a specified location for fulfillment.
Edit Promise date: Set a new promise date for these orders, which will be used for inventory allocation and order fulfillment.
Cancel: Cancel all selected orders with the cancel button available at the bottom right.
Discover how HotWax Commerce streamlines the return management process for Shopify retailers by integrating with Shopify to import returns.
The import returns feature in HotWax Commerce streamlines the return management process for retailers using Shopify. Returns, whether initiated by customers or customer service representatives (CSRs), are a common aspect of eCommerce. Retailers often leverage third-party return management apps to handle returns efficiently. However, HotWax Commerce doesn't function as a Return Management System; instead, it integrates with Shopify to import the returns.
HotWax Commerce downloads return data once the return process is completed in Shopify, and this information is then transmitted to ERP systems for financial and accounting purposes. The integration avoids the need for direct links between ERP and Return Management Systems.
Here's how returns can be imported from Shopify to HotWax Commerce:
log in to the HotWax Commerce Job Manager App
from the launchpad
.
Within the Job Manager
app, go to the Orders
page.
Locate the Returns
job within the import
section of the Orders
page.
Click on the job title to open the job card.
Specify the job run time and preferred frequency based on your operational needs.
Click on Save Changes
to schedule the job according to the defined run time and frequency.
Refer to our for detailed insights into how the import return
job facilitates the import of order returns from Shopify.
Discover how to troubleshoot missing product linking issues between HotWax Commerce and Shopify for enabling pre-order options and seamless product synchronization.
Despite having 0 inventory in both HotWax Commerce and the Shopify store, the pre-order option is unavailable for a product. The root cause is the absence of proper linking between the product in HotWax Commerce and the Shopify store.
HotWax Commerce encounters difficulties in showcasing products for pre-orders on the Shopify store when there is no linkage between the products in HotWax Commerce and the corresponding Shopify store. This issue commonly arises when a retailer manages the same product catalog across multiple Shopify stores.
Products within Shopify
Retailers streamline their operations by employing a unified product catalog across multiple Shopify stores. Consequently, products obtain distinct internal IDs on each store, while retaining a consistent and unique identifier, typically the SKU. It's important to note that not all stores carry the entire product range; instead, a hierarchical structure is established with one store functioning as the master catalog and others as child catalogs, each tailored to specific product offerings. This approach facilitates efficient management and customization of product availability across diverse Shopify storefronts.
Products in HotWax
In instances where a common product catalog is employed across multiple Shopify stores, HotWax adopts a structured approach. It designates one specific Shopify store as the master catalog, responsible for comprehensive product information. The same set of products is then associated with other Shopify stores, considering them as child catalogs. To establish a connection with HotWax, a product must be initially configured in the parent store and subsequently linked to the corresponding child store. Failure to follow this setup process inhibits HotWax from establishing a connection with the Shopify store and transmitting updated product information. This systematic approach ensures a cohesive and organized integration between HotWax and the various Shopify stores within the shared product ecosystem.
Association in HotWax Commerce
Step 1: Verify Product Association with the Shopify Store
Locate the Product in HotWax
Open the Audit page and examine the Shop listing status card to check the stores to which the product is currently listed. If it's not linked to the desired store, proceed with the following steps:
Step 2: Link product to Shopify store
Access the Find Product Page
Visit the Find Product page:https://{instanceName}.hotwax.io/commerce/control/FindProduct.
Open the detailed page for the specific product.
Inspect the Shopify Shop Product Section
On the detailed page, review the Shopify shop product section to identify the store with which the product is currently connected.
Establish the Connection
Initiate the connection by clicking the Add
button.
Select the Shopify store designated as the Shop in OMS.
Input the Shopify product ID and Inventory ID (extracted from the product on the Shopify store).
Step 3: Refresh products to reflect changes
Execute Jobs in the Job Manager App
Within the Job Manager app, initiate the following jobs: Auto refresh pre-order catalog
and Sync variant details
by searching them from the pipeline page.
Review products in Hotwax and Shopify
By following these steps meticulously, you ensure a seamless and accurate linking of products, ultimately improving the functionality of the pre-order option on the Shopify store.
Learn how to troubleshoot inaccurate inventory computation issues in HotWax Commerce for accurate product availability, especially during pre-orders.
Unavailability of Pre-Order Option for a product on Shopify Store Despite 0 Inventory and Linkage to HotWax Commerce
HotWax is encountering issues accurately reflecting product availability, notably during pre-orders for specific items. The problem arises when HotWax depends on Shopify for inventory data, resulting in products being inaccurately displayed as in stock when they are, in fact, out of stock.
Shopify's available inventory is computed by deducting open orders from the physical inventory published by the ERP.
During pre-selling, inventory levels can go below zero due to overcommitment of inventory, causing negative inventory.
HotWax deliberately disables specific functionalities to reserve inventory for committed orders, ensuring that committed inventory is not deducted twice. This precaution is taken because Shopify already incorporates committed inventory within its shared inventory levels.
Current State of Inventory Deduction in HotWax
Reserve Inventory Enabled | Reserve Inventory Disabled |
---|
HotWax relies on Shopify's inventory-level webhooks as a crucial mechanism to determine the available inventory for its products. In HotWax, negative inventory values from Shopify are systematically treated as zero, mitigating the risk of inaccurate stock calculations. The issue arises when HotWax reads inventory from multiple locations. This process introduces a potential for inaccuracies in product availability computations, particularly when Shopify indicates negative stock levels.
For Shopify
Navigate to the Product on Shopify:
Locate the specific product within your Shopify admin panel.
Check Inventory:
Review the inventory level for the product at all the locations. Hint: There must be locations with negative inventory numbers.
Verify the sum of location Inventories:
Ensure that the combined inventory from all locations sums to 0.
For HotWax
Find the Product in HotWax:
Check Inventory in the Online ATP calculation card:
Examine the inventory level for the product within HotWax. The online ATP would be more than 0.
To see how HotWax allocates pre-orders to physical inventory when HotWax is the source of inventory, check out this blog: https://www.hotwax.co/blog/how-to-capture-and-release-shopify-pre-orders-with-ease
In the HotWax Commerce Job Manager
app, ensure the refunds
job to update returns on e-commerce for refund creation is scheduled from the Orders
page. For more details on how in-store returns are updated on Shopify, you can visit our
Navigate to the within HotWax Commerce.
Locate the corresponding product in the HotWax Commerce Pre-order app's and click the product to open the Product Audit page.
Filters
Look up eligible facilities with inventory that can fulfill an order.
Sorting
Determine which eligible facility should be prioritized to allocate an order.
Actions
Define fallback actions for orders that cannot be fully allocated to a single facility. The actions also help configure the final steps if all previous rules don’t allocate inventory to orders.
Product | Store1 Internal ID | Store2 Internal ID |
SKU1234 | 1543 | 1462 |
Product | HotWax Internal ID | Store1 Internal ID | Store2 Internal ID |
SKU1234 | SKU1234 | 1543 | 1462 |
QOH Inventory in ERP | 20 | 20 |
Committed orders | 10 | 10 (ignored) |
Inventory from Shopify | 10 | 10 |
Available to sell in HotWax | 0 (=20-10-10) | 10 (=20-10) |
Location | Shopify | HotWax |
Canada | 1 | 1 |
Belgium | -1 | 0 |
Available | 0 | 1 |
Retail brands often sell products across various sales channels such as offline stores, marketplaces, social media, and their own websites. However, managing inventory across these different platforms can be challenging, as each sales channel has its own set of rules and penalties. For instance, marketplaces like Amazon impose charges for delayed fulfillment or rejected orders. To prevent overselling and efficiently manage inventory, many brands allocate separate Available-to-Promise (ATP) inventories for each sales channel.
This section explains how to set up inventory channels, link facilities to those channels, and configure product inventory for each channel.
In HotWax Commerce, Inventory Channels combine Facility Groups and Configuration Facilities. Follow these steps to create a new inventory channel:
Access the Inventory Channels Page:
From the left-side menu bar of the ATP app, go to the Inventory Channels
page to view existing channels.
Create a New Channel:
Click the blue plus
button at the bottom-right of the page to open the Create Channel Group
window.
Enter a name for the new Inventory Channel. The channel ID will automatically populate with the same name.
Write a description of the channel to explain its purpose, such as "Inventory channel facility group to publish ATP on Shopify."
The Configuration Facility is a virtual facility that plays a critical role when managing product-level ATP configurations at a network-wide scale. Therefore when configuring network-level product ATP rules, you need to add a channel-level configuration facility:
Create a New Configuration Facility:
Click on the Create New
option in the dropdown menu under the group-level configuration to create a new configuration for the channel.
Select an Existing Virtual Facility:
When you setup HotWax Commerce, you already get one configuration facility by default. If you are adding such an existing virtual facility, you can choose it from the dropdown menu.
To link facilities to an inventory channel:
Open the Facilities Section:
Click the Options
button in the Facilities
section to open the Link Facilities
window.
Select the Facilities for ATP Computation:
Check the boxes for the facilities you want to include in the ATP computation for that channel. This action will add the facilities to the channel facility group as discussed in the concepts.
Example: If a Canadian retailer has two Shopify stores—one in the US and another in Canada—and they want to compute ATP for the US store using only their warehouses, they would link the warehouses to the inventory channel. This would link the facilities to the relevant facility group that includes only the warehouses.
Retailers managing multiple online sales channels must decide which facility group will publish its inventory to which channel. This setup ensures that only selected facilities' inventory will be made available on the defined sales channels. Follow the steps below to publish inventory to your Shopify store using the Available-to-Promise (ATP
) app.
Access the ATP
App Navigate to the ATP
app within HotWax Commerce and locate the Inventory Channel
page.
Go to the Publish
Tab Once on the Inventory Channel
page, click on the Publish
tab to proceed. The publish
tab has a list of all the Shopify shops connected with the product store. When you download the HotWax Commerce integration App for a Shopify Store, it automatically creates a Shopify shop in HotWax OMS. This Shopify shop is the representative of all the Shopify Stores for that specific brand. For example, since the retailer is selling the NotNaked Brand in both the US and Canada, both the US Shopify Store and Canada Shopify Store will be listed here.
Select Run Time and Frequency Here, you can choose the Run Time
and the Frequency
(daily, weekly, etc.) to push inventory updates to Shopify. This setting helps define when the inventory will be published.
Choose the Inventory Channel From the dropdown menu, select the inventory channel from which you want to publish. This corresponds to the facility group whose inventory will be pushed to the Shopify store.
Save and Schedule the Job After selecting the appropriate options, click Save Changes
to finalize the settings. This will schedule the inventory publishing job as per the selected time and frequency.
This page explains how retailers use product tags and facility groups in HotWax Commerce to manage inventory and order fulfillment across multiple sales channels, including setting up Available-to-Pro
Product tags are labels or keywords that retailers use to categorize and organize their products. These tags can help classify products based on various attributes such as type, season, brand, or other custom criteria. For example, a retailer might use tags like summer collection
, new arrivals
, or clearance
to manage and track specific groups of products easily. Tags simplify inventory management and allow retailers to quickly identify and apply specific rules to products across their catalog.
In HotWax Commerce, product tags play a crucial role in creating Available to Promise (ATP) rules. Instead of manually configuring ATP settings for each product individually, especially for large catalogs, HotWax Commerce leverages product tags to streamline the process. Since retailers typically use product tags in Shopify to manage their product listings, HotWax Commerce syncs these tags from Shopify and uses them to apply ATP rules efficiently.
For example, a retailer may want to ensure that products tagged as clearance
are not available for store fulfillment, or that new arrivals
have specific safety stock thresholds across all stores. By using tags, retailers can configure these rules once and apply them consistently to all products that share the same tag, saving time and ensuring accurate inventory management across channels.
Facility groups are collections of multiple facilities organized together for specific business purposes, enabling businesses to manage and utilize their facilities more effectively. A common use of facility groups is to define which facilities participate in online order fulfillment. For instance, warehouses are typically involved in fulfilling online orders, and in an omnichannel setup, stores can also participate in this process. However, not all facilities are involved in store-based fulfillment. By using facility groups, businesses can clearly specify which stores and warehouses handle online order fulfillment. Two types of facility groups are commonly used when syncing inventory with Shopify or other online sales channels.
Facilities that fulfill BOPIS
(Buy Online, Pick Up In Store) orders require a designated staging area for efficient processing, as same-day pickups demand immediate picking and packing. Only facilities capable of handling BOPIS
orders should be included in this group.
In HotWax Commerce, each facility group has a type, and business rules are tied to the group type. For BOPIS
, a default PICKUP
facility group is pre-configured when you start setting up HotWax Commerce and you don't need to create this group. Retailers must add all facilities they want to enable for BOPIS
to this group. Once included, these facilities will be available as pickup options for customers on the Shopify product detail page (PDP
).
Facilities can be added to this group in multiple ways:
From the Group
page of the Facility App
You can also add the facilities to this group by turning on the toggle for Allow Pickup
in the Fulfillment settings
card on the Facility Details
page in the Facilities App
.
Alternatively, for a more centralized experience, you can add the facilities to this facility group from the Facilities
tab of the Store Pickup
page in the ATP App
.
All facilities in this group can be viewed on the Facility Groups
page in the Facilities App
or through the Facilities
tab of the Store Pickup
page in the ATP App
.
This facility group is created to determine whether a facility will participate in selling its inventory online. If a facility is capable of fulfilling online orders and wants to sell its inventory online, it can be added to a facility group with the CHANNEL FAC GROUP
type. If a facility does not want to sell its inventory online, it can be excluded from the group. When calculating the unified online ATP
for a Shopify store or any online sales channel, only the inventory of facilities in this group will be considered.
Unlinke PICKUP
group, the facility group of type CHANNEL FAC GROUP
is not by default available in HotWax Commerce, so it must be created either through the Facilities App
on the Facility Group
page or via the Inventory Channel
page in the ATP App
.
Once the Facility Group is created, the facilities can be added to this group in multiple ways:
From the Group
page of the Facilities App
You can add individual facilities by turning on the Sell Inventory Toggle
in the Facility Details
page of the Facilities App
.
Alternatively, for a more centralized experience, you can add facilities from the Channels
tab on the Inventory Channel
page of the ATP App
.
Facility groups created in the Facilities App
with the CHANNEL FAC GROUP
type will be visible on the Inventory Channels
page, and vice versa.
Each facility group for online fulfillment can be linked to a Shopify store. The Publish
tab on the Inventory Channel
page of the ATP App
allows you to specify the inventory of which facility group will be synced to which Shopify store.
Suppose a retailer sells inventory across different channels, such as different Shopify Stores and third-party marketplaces. In that case, they need to create separate Inventory Channels in HotWax Commerce to manage the availability and fulfillment of inventory for each channel. Each Inventory Channel is tailored to a specific sales channel, ensuring that inventory is accurately tracked and synchronized to specific sales channel.
In HotWax Commerce, when you create an inventory channel, internally it creates two componenets:
Facility Group: This is the Channel facility Group that we previously discussed. This channel defines the inventory of which facilities will be pushed to which inventory channel.
Configuration Facility: This virtual facility enables network-level Product ATP (Available-to-Promise) configurations, including setting thresholds and suppressing products from store pickup and shipping.
These components work together to ensure that inventory is allocated and managed according to the specific needs of each sales channel. You will gain a deeper understanding of how these components work when creating safety stock and threshold rules and suppressing products for store pickup and shipping from facilities and channels.
As previously mentioned, the "CHANNEL FAC GROUP" is used to configure which facilities will participate in selling their inventory online. When calculating the unified online ATP for a Shopify store or any other online sales channel, only the inventory from facilities within this specific group is considered. This setup enables retailers to control which facilities are responsible for fulfilling orders for specific channels.
For instance, a Canadian retailer may operate 2 Shopify stores—one for the US and one for Canada. The retailer also has a mix of 3 physical stores and 2 warehouses all located in Canada. Each Shopify store requires different inventory sources for order fulfillment:
The US Shopify store is fulfilled exclusively from 2 warehouses located in Canada.
The Canada Shopify store fulfills orders from both 2 warehouses and 3 physical stores in Canada.
If both Shopify stores were using all warehouses and stores for fulfillment, a single facility group would be sufficient. However, since in this case inventory source for both the Shopify stores is different, separate facility groups must be created for each: one for the US Shopify store, including only the 2 warehouses, and another for the Canada Shopify store, including all 5 facilities.
This configuration ensures that the correct inventory from the appropriate facilities is available for each online sales channel, optimizing inventory synchronization and reducing the risk of overselling or inventory discrepancies.
The Configuration Facility is a virtual facility designed to manage product-level threshold across the network. It is also useful when creating store-pickup and shipping rules, allowing retailers to suppress the fulfillment of certain products from specific channels or locations. Not every product in the catalog should be available for shipping or BOPIS from stores. For example, special product launches or exclusive items may only be sold in-store. Retailers can disable store fulfillment or online inventory for select products from chosen channels and locations, providing granular control. This network-level approach ensures that orders are allocated efficiently and strategically across all relevant sales channels.
For more detailed instructions on how to create multiple Channel Facility Groups and Configuration Facilities in HotWax Commerce, please refer to our detailed user manual.
Managing cycle counts requires a lot of manual communication, especially for merchants with a large inventory network. Operations Managers and Admins often aren’t in a position to directly communicate cycle count requests to ground teams, instead rely on static forms of communication like email. If merchants need inventory reconciliation for multiple items, inconsistency in the information flow can lead to inaccurate inventory.
The Directed Cycle Count
app is designed to adapt to the user who is operating it. When an Operations team member logs in, they are provided with admin screens or admin view screens that are dedicated to the holistic operations of cycle count management. Within the admin view, users can create draft cycle counts, assign them to stores for counting, and then review and either accept or reject them for recounts. After counts are completed, the admin views also show analytics of their counts for better overall visibility into inventory accuracy. For store side of the Cycle Count app, you can refer to our user manual for store operations team.
Safety stock allows retailers to reserve inventory for walk-in customers while controlling how much product inventory is committed to online channels. It also helps mitigate the risk of order rejection caused by discrepancies between the system’s inventory and the actual stock available in stores. By maintaining safety stock, retailers can reduce the chances of receiving orders they cannot fulfill. A robust omnichannel order management system makes it easy to track and manage safety stock across all locations. For example, if a retailer has 100 units of a medium-sized Blue shirt from the NotNaked brand at their Times Square store and wants to reserve 10 units for in-store customers, the Available-to-Promise (ATP) inventory for that store would be reduced to 90 units.
To create a new safety stock rule, click the Add
button on the Safety Stock
page, located at the bottom right corner. This will open the rule configuration page where you can define the safety stock levels.
Enter a descriptive and unique name for the rule, such as “Safety Stock- Retail Stores.” This name will help you quickly identify and manage the rule later.
Set the product's safety stock level. In this case, the safety stock level will be 10 units per store, meaning you are reserving 10 units of the product at each store location to ensure sufficient stock for walk-in customers.
Safety stock rules apply to facility groups. When creating these groups for the first time, it’s recommended to create a group that includes only your retail stores. If a similar group already exists, use the Include
card to add that group, enforcing the 10-unit safety stock rule. You can also create custom groups as needed from the Facility Group
page. If necessary, use the Exclude
card to exclude specific facility groups. Alternatively, you can toggle an option to apply the rule to all stores if the same rule applies across all locations.
If you want to create a blanket rule to add safety stock on all products, you don’t have to select any products. However, if you want to add safety stock for specific products, you can select the products either by Product Tag
or Product Feature
.
Use the Include
or Exclude
options by clicking the add button in the relevant card and selecting product tags synced from your product catalog. For example, to apply the rule specifically to the Blue Shirt, you would select the “Blue Shirt” tag.
You can also filter products based on specific attributes such as color, size, or category by using the add button. For instance, to target the Blue Shirt of Medium size for your safety stock rule, select “Color: Blue” and “Size: M.”
Once you’ve set the safety stock level, selected the facilities, and applied the product tags or features, click the Save
button at the bottom right corner to apply the rule. The system will now reserve 10 units of the selected products at each selected store location for walk-in customers.
Retailers can manage the scheduling of the ATP computation job responsible for the safety stock rule from the safety stock page. By default, ATP computation jobs are scheduled to run at midnight to ensure ATP calculations occur when store traffic is minimal, making the inventory ATP ready before the start of the day.
However, if you have created a new rule and want to compute ATP immediately, you can run a job once by selecting the relevant option from the job's overflow menu.
Once the safety stock rules are created, they will be visible as rule cards on the safety stock page as per the created rule. Each rule card provides an overview of configurations and product facility selections. Retailers can click the "Edit rule" button to modify rule configurations. The rule configuration can be adjusted by clicking on the chip of the safety stock rule and updating the number.
Learn to implement effective strategies to manage stock levels and mitigate fulfillment discrepancies with HotWax Commerce's Safety Stock manual.
In omnichannel retail, "Safety Stock" is a key strategy for managing inventory effectively. Unlike traditional practices, it prevents committing all stock to online orders. Instead, when a store's inventory drops below a set threshold, the remaining stock is reserved exclusively for in-store sales.
Omnichannel retailers often face inventory discrepancies, where system records don't match actual stock. Safety stock helps mitigate the risk of accepting orders that can't be fulfilled due to these discrepancies.
This manual guides users in setting up safety stock for optimal inventory control.
This page explains how retailers use store pickup rules in HotWax Commerce to suppress product availability across facilities and sales channels.
As discussed in previous sections, to enable store pickup for a facility, it is essential that the facility is added to the PICKUP facility group. By default, store pickup is enabled for all products at facilities that are part of this group. If a facility is already included in the PICKUP group, rules only need to be created if the retailer wishes to suppress specific products from being available for in-store pickup.
In HotWax Commerce, retailers can create different types of store pickup rules:
Configure which facilities will participate in in-store pickup.
Configure which products will be suppressed for store pickup from which inventory channel.
Configure which products will be suppressed for store pickup from which facility.
In this user manual, we will set up different types of configurations. For the remainder of the setup, we will use the example of a Canadian retailer that has five retail locations, including three retail stores and two warehouses. They want to suppress store pickup for a specific product: a Blue Medium-sized shirt from the NotNaked brand. Let’s see how retailers can configure store pickup rules for this scenario.
As previously discussed, retailers must add facilities that can offer store pickup to the PICKUP group in HotWax Commerce. Retailers can do this through the Facilities App
, though the ATP app
provides centralized control to add store pickup facilities.
For example, let’s assume the retailer wants to enable store pickup at their three stores, but not at their warehouses.
Here's how you can set up the Store Pickup rule Using the ATP App:
Navigate to the Store Pickup Page:
Go to the Store Pickup
page within the ATP App
.
Access the Facilities Tab:
Click on the Facilities Tab
to view the complete list of all your facilities (both warehouses and stores).
Toggle Store Pickup for Stores: For the three stores where you want to enable store pickup, turn on the toggle next to each store's name.
Finalize Setup: Once toggled on, these stores will automatically be added to the PICKUP facility group. All products available at these stores will now be eligible for in-store pickup.
In this scenario, let’s assume the retailer wants to suppress store pickup from their US stores channel, allowing only customers in canada to pickup their orders from stores. Here’s how the retailer can set up this rule through the ATP app:
Here's how you can suppress store pickup from Channel:
Create Rule:
Navigate to the Pickup
page within the ATP App
and go to the Product by Channel
tab. Click on the Add
button to create a new rule.
Rule Name: Enter a descriptive name for the rule, such as "Suppress Store Pickup for US Stores," to easily identify its purpose later.
Rule Configuration: After naming the rule, configure it by turning off the toggle for Store Pickup. This ensures that the selected products will be suppressed for store pickup from the designated channel.
Selecting Channel/ Configuration facility: Next, choose the relevant channel configuration facility, as all network rules for the products are governed by these configuration facilities. Since we are suppressing store pickup for the US Shopify store, select the US Config Facility from the channel options. This ensures the rule applies specifically to this channel. If you want to suppress store pickup for all channels, turn on the toggle to select all channels.
Selecting Products: If you want to suppress store pickup for all products, there is no need to change any settings for including or excluding products. However, if you want to suppress store pickup for a specific product while keeping other products available for pickup, you can select products by tags or features. For example, let’s assume you want to suppress store pickup for the Blue Shirt (Size M), which has the product tags "Shirt" and "Blue Shirt."
Tags: Click the Add
button in the Include section and select the "Shirt" or "Blue Shirt" tag from your product catalog.
Features: Alternatively, use product filters to include "Color: Blue" and "Size: M" to narrow the rule to this specific product variant.
Similarly, you can also exclude products by using the Exclude section with tags and features.
Saving Configuration:
Once you’ve completed the product selection, click the Save
button at the bottom-right of the screen. This will finalize the rule and ensure that the Blue Shirt (Size M) is no longer available for store pickup on the Shopify channel.
In this scenario, the retailer wants to suppress store pickup for the Blue Shirt (Size M) from their warehouse facilities while allowing store pickup for the Blue Shirt from their retail stores.
Here's how you can suppress Store Pickup from a Facility:
Create Rule:
Navigate to the Pickup
page within the ATP App
and select the Product and Facility
tab. Click the Add
button to create a new rule. This rule will allow the retailer to suppress store pickup for specific products at certain facilities while maintaining availability at other locations.
Rule Name: Enter a descriptive name for the rule, such as "Suppress Store Pickup for Blue Shirt (Size M) from Warehouses," so it’s easy to identify later.
Rule Configuration: To suppress store pickup for this product at the specified facilities, turn off the toggle for Store Pickup. This ensures that the Blue Shirt (Size M) will no longer be available for in-store pickup at the selected locations.
Selecting Facilities: Pickup rules apply to facility groups since retailers can have numerous facilities, and managing store pickup can be a dynamic process. To make this easier, it is recommended to create a facility group for the warehouses when setting up HotWax Commerce. Creating different facility groups based on Facility Types (e.g., warehouses vs. retail stores) is useful not only for store pickup but also for order routing.
If you want to create a custom facility group, you can do so through the Facility App
.
Once the facility group is created, navigate to the ATP rule configuration
page. Click the Add
button in the Include section of the facilities and add the relevant facility group. You can also use the Exclude feature to exclude specific facilities or select All Facilities if you want to suppress fulfillment of the product from all locations.
Selecting Products: If you want to suppress store pickup for all products at this facility, there is no need to include specific products. However, since we want to suppress pickup for only the Blue Shirt (Size M), you can do this using tags or features.
Tags: Click the Add
button in the Include section and select the "Shirt" or "Blue Shirt" tag from your product catalog.
Features: Alternatively, use product filters to include "Color: Blue" and "Size: M" to narrow the rule to this specific product variant.
Similarly, you can exclude products by using the Exclude section with tags and features.
Saving Configuration:
Once you have configured the rule, selected the facilities, and chosen the product, click the Save
button at the bottom-right of the page. This finalizes the rule, ensuring that the Blue Shirt (Size M) is suppressed for pickup from warehouse locations, while keeping store pickup available for other products and at other locations.
Retailers can manage the scheduling of the ATP computation job responsible for the store pickup rule from the store pickup page. By default, ATP computation jobs are scheduled to run at midnight to ensure ATP calculations occur when store traffic is minimal, making the inventory ATP ready before the start of the day.
However, if you have created a new rule and want to compute ATP immediately, you can run a job once by selecting the relevant option from the job's overflow menu.
Once the Store Pickup rules are create, they will be visible as rule cards in the Product and Channel or Product and Facility page as per the created rule. Each rule card provides an overview of configurations and product facility selections. Retailers can click the "Edit rule" button to modify rule configurations. The rule configuration can be adjusted by toggling the store pickup on or off.
Retail brands sell products across various channels such as offline stores, marketplaces, social media, and their own websites. Managing inventory across these platforms can be challenging, as each channel may have different rules and penalties for order fulfillment delays or rejections. For example, platforms like Amazon impose penalties for delayed fulfillment or rejected orders, which makes managing inventory crucial.
To address this, retailers can create threshold rules to maintain a buffer stock for specific channels, reducing the risk of overselling due to inventory inaccuracies. This buffer stock is known as the Inventory Threshold and is applied across the network level rather than individual stores, helping ensure there’s a reserve of stock available before committing to online sales channels.
For instance, if the brand NotNaked sets an Inventory Threshold of 10 units for Blue Shirts across their stores, the Available-to-Promise (ATP) inventory will be adjusted to ensure enough buffer stock is reserved.
Times Square Inventory: 100 Units
Safety Stock: 10 Units
Available Inventory: 100 - 10 = 90 Units
Brooklyn Inventory: 100 Units
Safety Stock: 10 Units
Available Inventory: 100 - 10 = 90 Units
Broadway Inventory: 50 Units
Safety Stock: 10 Units
Available Inventory: 50 - 10 = 40 Units
Total ATP: 90 (Times Square) + 90 (Brooklyn) + 40 (Broadway) = 220 Units
Then, subtract the Inventory Threshold from the Total ATP to get the total inventory available for online orders: Total Inventory for Online Orders = Total ATP - Threshold = 220 Units - 10 Units = 210 Units available for online orders.
Now, let’s walk through how to set up a threshold rule for one inventory channel, such as Shopify, for a Blue Medium-Sized Shirt from the brand NotNaked.
To create a new threshold rule, click the Add
button located on the Threshold
page at the bottom right corner. This will open the Rule Configuration page, allowing you to set a new inventory threshold.
Enter a descriptive and unique name for your threshold rule. For example, you could name it “Shopify Blue Shirt Threshold.” This name will help you easily identify and manage the rule across your sales channels.
Set the threshold value in this section. This value defines the amount of inventory buffer you want to maintain for the selected channel. For this example, set a threshold of 10 units, ensuring that the product maintains 10 network-level safety stock units to mitigate the risk of overselling.
As we discussed previously, network-level inventory configurations on products are done through the Channel Configuration
facility. Therefore, you will see the list of all the channel configuration facilities here. You can choose the relevant configuration facility to ensure the rules are applied network-wide on that channel.
If you want to create a blanket rule to apply the threshold on all products, no product selection is required. However, if you want to apply the threshold rule to specific products, you can select them either by Product Tag
or Product Feature
.
Use the Include
or Exclude
options by clicking the add button in the relevant card and selecting product tags synced from your product catalog. For instance, to apply the rule specifically to the Blue Shirt, you would select the “Blue Shirt” tag.
You can also filter products based on specific attributes such as color, size, or category by using the add button. For example, to target the Blue Shirt in size Medium, select “Color: Blue” and “Size: M” for your threshold rule.
Once you’ve configured the threshold value, selected the channels, and chosen the products, click the Save
button at the bottom right corner to finalize and save the rule. The system will now apply the threshold, ensuring that the selected product has a 10-unit buffer stock reserved across your chosen channel.
If you want to create a threshold rule for multiple inventory channels, you will need to create separate channels and select channel config facility as per the requirement. To learn how to create new channels and manage threshold configurations, refer to our Detailed User Manual for further instructions.
Retailers can manage the scheduling of the ATP computation job responsible for the threshold rule from the threshold page. By default, ATP computation jobs are scheduled to run at midnight to ensure ATP calculations occur when store traffic is minimal, making the inventory ATP ready before the start of the day.
However, if you have created a new rule and want to compute ATP immediately, you can run a job once by selecting the relevant option from the job's overflow menu.
Once the threshold rules are created, they will be visible as rule cards on the threshold page as per the created rule. Each rule card provides an overview of configurations and product facility selections. Retailers can click the "Edit rule" button to modify rule configurations. The rule configuration can be adjusted by clicking on the threshold chip and updating the number,
Welcome to the Troubleshooting section focused on resolving common inventory-related issues. This guide covers key areas to help you manage and resolve discrepancies
As discussed previously, all facilities included in the CHANNEL_FAC_GRP
type will have their inventory available for online sales. With the new shipping feature, retailers can configure inventory availability on a per-product, per-facility basis, allowing them to control which product’s inventory will be suppressed for online sales from specific facilities and for specific channels.
For example, retailers can suppress the availability of a blue shirt for shipping from the US Shopify Store. Similarly, they can suppress a product, such as the blue shirt, to restrict shipping from specific locations, such as retail stores, while keeping all other products available for shipping from these retail stores.
In HotWax Commerce, retailers can create different types of shipping rules:
Configure the capacity of online orders from a store.
Configure which products will be suppressed to sell from which sales channel.
Configure which product will be suppressed for which facility so that the inventory of these facilities for that product is not computed.
In this user manual, we will set up different types of configurations. For the remainder of the setup, we will use the example of a Canadian retailer that has five retail locations, including three retail stores and two warehouses, and sell their inventory across Canada and US. They want to configure shipping rules for a specific product: a Blue Medium-sized shirt from the NotNaked brand. Let’s see how retailers can configure shipping rules for such scenarios.
Retailers often face operational constraints in their stores, as they must balance serving walk-in customers while fulfilling online orders. To prevent overwhelming the store's capacity, HotWax Commerce allows retailers to set a maximum order capacity for each store. Once this limit is reached, the brokering engine automatically routes additional orders to alternative facilities with available capacity.
The maximum order limit does not impact the ATP (Available-to-Promise)
of the facility. This configuration is purely for controlling the number of orders that can be shipped from the store and helps users manage shipping rules without having to navigate multiple apps.
Let’s suppose a retailer wants to limit the capacity of their retail stores to handle only 10 orders per day while keeping the warehouse order capacity unlimited. Here’s how they can set up the maximum order capacity:
Navigate to the Shipping Page: Go to the Shipping
section in the ATP App
.
Access the Facilities Tab: Click on the Facilities
tab to view the complete list of all facilities (stores and warehouses).
Set Maximum Order Capacity: For each store, click on the capacity chip
next to the store’s card. You will see three options: - Unlimited Capacity
- No Capacity
- Custom Capacity
Configure Custom Capacity: Select Custom Capacity
and set the maximum limit to 10 orders per day for each store.
Unlimited Capacity for Warehouses: For the warehouses, leave the setting as Unlimited Capacity
, ensuring they can fulfill as many orders as needed.
Once this setup is complete, the system will automatically redirect any additional orders beyond the store's daily capacity to other facilities with available capacity.
In this scenario, the retailer wants to suppress shipping for the Blue Shirt (Size M) across the Shopify
channel, making it available exclusively for walk-in customers. This could be due to high demand in-store or a strategic decision to drive in-store traffic.
Here’s how to set up the rule to suppress shipping for this specific product on the Shopify channel:
Create Rule Navigate to the Shipping
page within the ATP App
and select the Product and Channel
tab. Click the Add
button to create a new rule.
Rule Name Enter a descriptive name for the rule, such as “Suppress Shipping on Shopify.” This name should clearly reflect the rule’s purpose.
Rule Configuration After naming the rule, configure it by turning off the toggle for Shipping
. This action ensures that the Blue Shirt (Size M) will be suppressed from the selected channel.
Selecting Channel / configuration facility Choose the relevant channel configuration facility, as all network rules for the products are governed by these configuration facilities. Since we are suppressing shipping of the Blue Shirt from all the channels, turn on the toggle to select all channels
. If you want to suppress shipping for specific channels, such as the US Shopify store, select the relevant US Config Facility
from the list of all available config facilities.
Selecting Products To apply this rule to the Blue Shirt (Size M), you can use the Tag
or Feature
filters:
Tags: Add the “Blue Shirt” tag from your product catalog using the Include
card.
Features: Alternatively, use the product feature filters to select “Color: Blue” and “Size: M,” ensuring the rule applies only to this specific variant of the Blue Shirt. You can also use the Exclude
card to exclude specific products before suppressing shipping. If you want to configure this setting for all the products, you don't have to include/exclude any of the products either by the tag or the feature.
Saving Configuration Once you have selected the relevant product and configured the rule, click the Save
button to apply the settings. This will finalize the rule, ensuring that the Blue Shirt (Size M) is suppressed for shipping on the Shopify channel, making it exclusive to walk-in customers at physical stores.
In this scenario, the retailer wants to suppress shipping for the Blue Shirt (Size M) from their retail stores due to higher demand from walk-in customers. Shipping for this product will remain available at other locations, ensuring that online orders can still be fulfilled from other facilities.
Here’s how to set up this rule:
Create Rule Navigate to the Shipping
page within the ATP App
and select the Product and Facility
tab. Click the Add
button to create a new rule. This rule will allow the retailer to suppress shipping for specific products at certain facilities.
Rule Name Enter a descriptive name for the rule, such as “Suppress Shipping for Blue Shirt (Size M) from stores” to easily identify it later.
Rule Configuration To suppress shipping for this product at the specific facilities, turn off the toggle for Shipping
. This ensures that the Blue Shirt (Size M) will be suppressed from selected stores.
Selecting Facilities Shipping rules apply to facility groups
since retailers can have numerous facilities, and managing shipping for all the facilities can be a time-consuming process. To make this easier, it is recommended to create a facility group for the stores when setting up HotWax Commerce. If such a facility group does not exist, you can create a custom facility group through the Facility App
. Once the facility group is created, navigate to the ATP rule configuration
page. Click the Add
button in the Include
section of the facilities and add the relevant facility group. You can also use the Exclude
feature to exclude specific facilities or select All Facilities
if you want to suppress fulfillment of the product from all locations.
Selecting Products To specify the Blue Shirt (Size M), you can either use Tags
or Features
:
Tags: Add the “Blue Shirt” tag to include this product in the rule.
Features: Filter products by selecting “Color: Blue” and “Size: M” to target only this specific variant of the product.
Saving Configuration After configuring the rule, selecting the facilities, and choosing the product, click the Save
button at the bottom right of the page. This finalizes the rule, ensuring that the Blue Shirt (Size M) is suppressed for shipping from the stores while keeping shipping available for other products from these stores.
Retailers can manage the scheduling of the ATP computation job responsible for the shipping rule from the shipping page. By default, ATP computation jobs are scheduled to run at midnight to ensure ATP calculations occur when store traffic is minimal, making the inventory ATP ready before the start of the day.
However, if you have created a new rule and want to compute ATP immediately, you can run a job once by selecting the relevant option from the job's overflow menu.
Once the shipping rules are created, they will be visible as rule cards on the Product and Channel or Product and Facility page as per the created rule. Each rule card provides an overview of configurations and product facility selections. Retailers can click the "Edit rule" button to modify rule configurations. The rule configuration can be adjusted by toggling the store pickup on or off.
The Product Inventory Configurations
page in HotWax Commerce offers users the ability to configure product inventory settings globally or for individual facilities. This is crucial for retailers with large product catalogs, as it allows for product-specific settings that cannot be covered across all the facilities. For example, bespoke items may only be available from certain facilities, necessitating specific configurations at the product level.
The Global Settings
section enables users to customize various product configurations at the company level. This customization includes managing product thresholds, order brokering, store pickup options, and shipping timelines. These settings are essential for optimizing inventory management and order fulfillment processes.
To avoid overselling due to inventory inaccuracies, merchandisers prefer not to promise all the inventory to the online sales channel. So the merchandising team keeps a buffer stock on a company level before promising the inventory to online channels, also called Inventory Threshold. Adjusting the threshold is crucial for maintaining optimal inventory levels. During peak seasons, increasing the threshold prevents stockouts, while reducing it during slower periods prevents excess inventory. Here's how retailers can adjust thresholds
Navigate to the Global Settings
section on the Product Inventory Configurations
page.
Click on Threshold
to access the dialog box.
Modify the threshold value to match your requirements.
Retailers may sometimes want to ensure that some products are routed to only specific locations and they may want manual control on these products. Enabling or disabling order brokering based on product-specific requirements ensures optimal order routing for the products. This step is essential, particularly for bespoke products that cannot be fulfilled from all locations.
Navigate to the Global Settings
section on the Product Inventory Configurations
page.
Open the dialog box by selecting Order Brokering
.
Toggle the setting to enable (Y) or disable (N) order brokering based on your business needs.
Retailers sometimes have bulky items in their catalogs that are not optimized for store pickup. Enabling or disabling store pickup options ensures accurate order fulfillment options, for the customer.
Navigate to the Global Settings
section on the Product Inventory Configurations
page.
Access the dialog box for Store Pickup
.
Toggle the setting to allow (Y) or disallow (N) store pickup according to your business model.
Setting minimal days to ship the product is crucial for meeting customer expectations and optimizing order fulfillment timelines. For example, bespoke items may require a minimum of 2 days to ship, therefore, they cannot be available for same-day or next-day delivery.
Navigate to the Global Settings
section on the Product Inventory Configurations
page.
Open the dialog box by selecting Days to Ship
.
Edit the number of days required for order shipment.
The Inventory Configuration
section empowers users to efficiently manage their inventory by configuring facilities, adjusting safety stock levels, and organizing locations within each facility. This feature is aimed to optimize inventory levels, streamline warehouse operations, and ensure seamless order fulfillment processes.
Adding facilities is crucial for retailers operating in multiple regions or countries to streamline storage and distribution efficiently. Not all products are available at all facilities, so facilities need to be associated with the product where the product will be sold or fulfilled from. This ensures accurate order routing and efficient inventory management across various locations.
Click on the Add Facility
function in the Inventory configuration section
to open a dialog box.
Select the desired facility and its location from the dropdown menu.
Click Add
to confirm the addition of the facility.
Adding locations within each facility helps in optimizing product storage and organization. It enables businesses to effectively manage their warehouse space, improve inventory visibility, and streamline order picking and packing processes, resulting in enhanced operational efficiency and customer satisfaction.
Click on the Add Location
function to open a dialog box.
Choose the facility to which you want to add a location from the dropdown menu.
Select the geographical information or address for the location from the dropdown menu.
Click Add
to confirm the addition of the new location to the selected facility.
Editing a product's safety stock levels ensures maintaining an adequate level of stock to meet demand and prevent stockouts. Safety stock is set to ensure stores have stock that can be used in case of any inventory variance or to reserve stock for in-store sales. By adjusting safety stock levels, businesses can optimize inventory investment, minimize carrying costs, and mitigate the risk of stockouts, thereby enhancing customer satisfaction and revenue generation.
Locate and click on the edit
icon of the facility for which you want to adjust the safety stock.
Update the minimum stock (Safety Stock)
as required.
Click Add
to confirm the changes in safety stock.
Comprehensive guide to reviewing cycle counts in the Cycle Count app, including filtering counts, accepting or rejecting items, and managing inventory variance thresholds.
Once a count has been submitted for review by the facility it was assigned to, it will be shown on the Pending Review
page.
On the review cycle count page, you can filter counts by facilities where the count was submitted from, as well as counts that have specifically been resubmitted after a recount.
If the cycle count is submitted for the first time, a Submitted
badge will appear. For counts with items that were recounted and re-submitted, a Re-submitted
badge will indicate that the count was reassigned and resubmitted by the facility after a recount.
The pending review list view
also shows how many of the assigned items have been counted as well as the due date of the count. Clicking on a count opens the detail page for it.
The detail page of a pending review cycle count is where items are finally accepted or rejected from a cycle count.
The overview section, similar to the Assigned
page, shows a high-level readout of how the count performed and overall accuracy. The due date of a cycle count can still be adjusted if it needs to be assigned back to a facility with a new due date.
The Inventory Variance Threshold
function helps reviewers quickly filter out cycle count results based on the percent variance recorded. Counts that pass the variance threshold will be filterable using the green threshold filter, and counts that fall below the threshold can be filtered out under the red threshold filter.
Admins can use the slider of the inventory threshold to get accept/reject suggestions accordingly.
Each count item will show the following information:
Counted: Represents the physically available sellable inventory counted at the facility for a given product. If an item is not counted, this information will not be shown on an item.
Systemic: Represents the quantity on hand at the time when that particular count was submitted.
Variance: Shows the difference between the expected and counted values if a count is submitted for an item.
User: The user name that submitted the count will be displayed below the variance.
If no count has been submitted for an item, a red badge labeled Not Counted
will be displayed along with the date that this product was last counted.
Every count item has three options that the reviewer must select from. When a count is closed, all items where no action was performed will be rejected by default to ensure that they do not impact inventory.
Accept: Accepting a count commits the variance submitted by that count to the OMS’s actual inventory and also becomes available to be synced to external systems as cycle counts or inventory adjustments. Click the green thumbs-up button to accept a count.
Recount: When variances reported in a count are outside of acceptable limits and a recount by the store is required, click on the yellow recount button. This will reject the current count and add the same item back into the count so that when the count is reassigned to the facility, the product is available to be counted again.
Reject: Rejecting an item discards a submitted count, ensuring that it does not impact OMS inventory levels. clicking on the red thumbs-down button rejects the cycle count for the items.
Based on the variance threshold selected, suggested actions will be highlighted with an outline. Admins can use the slider of the inventory threshold to accept/reject suggestions accordingly.
Items with variances within acceptable tolerances will be suggested by the system to be accepted, and items below acceptable tolerance will be suggested for recount or rejection. Items that were not counted at all will be suggested for recount.
Select multiple items by clicking on the checkbox at the end of an item and clicking on the desired bulk action in the bottom toolbar. All items can be selected or unselected by clicking on the checkbox in the top toolbar. Retailers can also switch the green or red threshold tabs to accept/reject items in bulk.
If an item needs to be added to a count before being reassigned to a facility for a recount, click on the add
toolbar at the top of the screen, search for the product using the product identifier, and click on Add to Count to add the product.
All the newly added items and the items sent for recount will need to be reassigned to the facility. Click on the re-assign
button in the overview section to reassign the inventory count to the facility.
To close a count, click on the primary action button at the bottom of the screen. This will prompt you to confirm that the current count is ready to close. All open count items from the count will be rejected and the count will no longer be editable. Closed counts are shown on the Closed counts
page.
When an inventory is rejected by the fulfillment team in HotWax Commerce, the ATP of that product gets 0, while the QOH remains the Same. Once inventory is updated through the Cycle count app, the variance for both the QOH and ATP is recorded separately. For example, if the QOH of the inventory is 10 and the ATP is 0 due to order rejection, and during the inventory count the inventory available is 9 then the variance will be updated as -1 and +9 for QOH and ATP respectively.
Guide to creating and managing draft cycle counts in the Cycle Count app, including adding products, assigning facilities, and setting due dates.
A directed cycle count begins as drafts. When logging into the Cycle Count
app, the Drafts
page is the first page you’ll see. To create a new draft, click on the +
icon at the bottom right of the screen.
A new draft count will open up on a new page where you can begin setting up a new count.
Name your cycle count, a cycle count ID will be automatically assigned to it.
Add Products to the Count
Enter SKUs to Add to the Count
Adding Individual Products
Retailers require cycle counts of a product in case they believe there is a discrepancy in the inventory of the product. For example, if the store has rejected the order with the reason Not in stock
but the store should have available inventory.
As you enter the product's SKU, it will show up to the right of the input field. Ensure that the product SKU is accurate, otherwise the products won't appear in the results.
If the product you want to add to the draft count appears, click on the +
button next to the product details.
To instantly add the result shown as a result of your search, press the enter key while the input field is selected.
Adding Products in Bulk
If you already have a list of products in a CSV file format, you can upload the list of products by clicking the upload
button in the upper right of the page.
Select a file from your local file system and upload it to the app.
Once uploaded, you’ll be prompted to select which product identification you’ve uploaded in the CSV and which column the products are located in.
Click the save
button and the products will be added to your count. Products that are already added to the count will not be added again.
Removing Products
If a product has been added that needs to be removed, click on the x
button at the end of any product's row.
Add a Due Date Due dates are optional on directed cycle counts and can be added by clicking on the date-time button from the configuration options. For example, retailers may want to ensure that all the inventory is counted before commencing a season-end sale.
Assign a Facility
Retailers need to decide the cycle count is created for which facility where the physical counting should happen. Assigning a facility is required to move a count from Draft
to Assigned
. To assign a facility, click on the + Assign
button and select a facility from the facility selection modal.
Once a count is ready to be assigned to a facility, click on the send
button at the bottom right of the draft detail
page. The created draft will now appear in the assigned tab and on the store management side of the Cycle Count
app.
Guide to managing assigned cycle counts in the Cycle Count app, including tracking progress, rescheduling counts, and moving them to the review stage.
Assigned cycle counts are awaiting the assigned facilities to submit for review. While assigned, the admin view provides insights into the progress made by stores.
The list of assigned counts shows how many of the items in each count have been completed and when the count is due. If the count is sent for the first time, it will have an Assigned
badge. If a count has been sent for a "Re-count" after being reviewed, it will have a Re-count Requested
badge.
The details page of an assigned count helps track the exact progress of the specific count and take any corrective actions or initiate discussions with store personnel to ensure the full completion of a count.
The detail section of an assigned count starts with an overview of the count and its progress. On the left part of the overview, you’ll see details added during creation such as count name, assigned facility, and due date. On the right side, there is a brief progress insight.
The progress metric shows how many assigned cycle count line items have been completed. This does not represent the accuracy of the count, but rather the completeness of the whole count.
The variance metric shows the accuracy of the count for the counted items. It shows the total expected count along with the total inventory counted to highlight the difference between expected and actual inventory levels.
While the facility of a count cannot be changed once it is assigned, it can be rescheduled. To reschedule a count, click on the due date
chip below the name of the count and select a new date from the date-time picker.
While a count is assigned, reviewers can still track individual item progress but cannot accept or reject the count items while it is still assigned.
Each count item will show the following information while in the assigned status:
Quantity on Hand: The most current quantity on hand in the OMS will be shown for items that have not yet been counted. Once an item is counted, the quantity on hand for that item at the time of being counted will be displayed. This quantity on hand value will not change on a count item once it has been counted, ensuring accurate variance logs even if the count is accepted after inventory has continued to move in the facility.
Counted: Once an item has been counted, it will show the counted number on the item. This is the exact count of inventory physically counted.
User: The user who performed the count will be displayed on an item once the count is submitted. If a count is performed by multiple staff members, reviewers can track exactly which user performed each count.
More Details: Clicking on the vertical ellipses at the end of a count item reveals additional information and actions on a count.
Last Counted: The last time this product was counted at this facility.
Remove from Count: If an item has not been counted, it can be removed from a count if the inventory count is no longer required for that product. Once an item has been counted, it can only be rejected during the review stage.
While in the assigned status, items can still be added to a count, which is helpful in the event that an item needs to be added after a count has already been assigned.
Reviewers have the option to use the admin view to move a count to the review stage themselves. This option should be used in the event that a count is not moved to the review stage by the assigned facility.
To move a count to Pending Review
status, click on the lock
button at the bottom right of the page.
Operations teams can now easily create and assign multiple cycle counts to different locations at once using the new bulk import feature.
The Bulk Import functionality in HotWax Commerce’s Cycle Count
App is designed to simplify the process of creating and assigning cycle counts across multiple facilities and products. This feature is essential for large retailers who regularly perform cycle counts across various store locations to maintain accurate inventory records.
Efficiently managing cycle counts is critical for keeping inventory data consistent between physical and system counts, preventing stock discrepancies, and ensuring smooth operations. The bulk import capability allows users to create multiple cycle count requests simultaneously by uploading a CSV file, eliminating the need to create individual requests for each product or location. This reduces manual effort, minimizes errors, and enhances operational efficiency, especially for retailers with large store networks.
For example, if a retailer needs to conduct inventory audits for several products across 30 stores, instead of manually creating 30 separate cycle count requests, they can upload a single CSV file. This capability ensures that operations teams can manage inventory counts faster, stay on schedule, and plan audits with greater ease.
Here’s how users can utilize the Bulk Import feature within the Cycle Count
App for seamless cycle count management:
1. Access the Cycle Count App
Navigate to the Cycle Count
App from the HotWax Commerce launchpad.
Log in using your credentials.
2. View Draft Cycle Counts
Upon logging in, the default screen displays all Draft Cycle Counts that have not yet been assigned to a facility. Here, you can view existing cycle counts in progress.
3. Create a New Bulk Cycle Count
In the bottom right corner, click the +
button to initiate a new count.
Two options will appear: one for a single cycle count and another for bulk cycle counts. Select the bulk cycle count
option (icon with multiple pages).
4. Upload the CSV File
This will open the Bulk Upload
page.
Click on the Upload
button and select the prepared CSV file containing the cycle count data.
5. Map CSV Fields to HotWax Fields
When using the Bulk Import feature in HotWax Commerce’s Cycle Count
App, the system enables users to map fields from their uploaded CSV file to the relevant fields within HotWax Commerce. This flexible mapping process allows retailers to customize their cycle count creation based on their unique inventory and operational needs. Additionally, once mappings are completed, users can save these mappings for future uploads, eliminating the need to reconfigure them every time, further streamlining the process.
Required Fields:
Count Name: Assign a unique name to each cycle count to differentiate between them. For example, cycle counts for different product categories (e.g., Jackets, Shirts) should have distinct names. Each count can also have different due dates if needed, helping store associates prioritize tasks accordingly.
Product SKU: Enter the SKUs (Stock Keeping Units) for the products that need to be counted. SKUs are critical for identifying specific items in inventory. Ensure no duplication of SKUs within a single count to avoid errors or confusion during the audit process. This field is crucial for inventory accuracy, as the SKU forms the backbone of product identification in the system.
Optional Fields:
Facility: Operations managers can map specific facilities where the cycle counts will take place. If this information is not yet available, you can leave this field unmapped during the initial CSV upload. The counts will remain in the draft stage, allowing users to assign facilities later once the data is ready. This flexibility ensures that inventory counts can be initiated without delay, even if facility assignment is still pending.
Status: Choose the status of the cycle counts during the import. For instance, you may set the counts as Draft if facilities have not yet been assigned, or as Assigned if facilities have already been determined and the counts are ready for execution. Setting the status upfront helps operations teams track the progress of cycle counts and manage their workflows effectively.
Due Date: Assign a due date to provide a timeline for store associates to complete their cycle counts. This optional field allows operations managers to enforce deadlines and ensure that all inventory audits are completed within a set time frame, helping to maintain an organized and consistent approach to inventory control.
Additional Details:
Saving Mappings for Future Use: Once you have mapped the CSV fields to the corresponding HotWax fields, you can save these mappings for future use. This feature ensures that repeated cycle count uploads—especially for recurring tasks across multiple stores—can be handled efficiently without needing to redo the mapping every time. By saving mappings, retailers can quickly initiate bulk cycle counts, further reducing manual input and enhancing productivity.
This comprehensive field mapping process is crucial for customizing cycle counts to match the specific needs of retailers, and the ability to save these configurations increases efficiency for future inventory management tasks.
6. Confirm and Upload
After mapping the necessary fields, click the Upload
button.
Confirm the upload
in the popup window.
7. Review Uploaded Cycle Counts
Once processed, the uploaded cycle counts will appear at the bottom of the import screen.
These counts will appear in the Draft
section until they are assigned to specific facilities.
8. Canceling Uploaded Counts
If any uploaded cycle counts have not been processed, users can cancel them by clicking the trash-bin icon
next to the corresponding count.
This standard bulk import feature streamlines cycle count scheduling and management, allowing retailers to maintain accurate and timely inventory records with minimal manual input.
Guide to overview closed cycle counts in the Cycle Count app, including performance metrics, detailed count summaries, and export options for comprehensive reporting.
The closed counts page gives a review of all counts that have been closed. This page is helpful for getting an overview of how cycle counts have been performing.
The top of the page has two metrics:
Counts closed: Number of counts that have been closed in the selected time range.
Average variance: The average variance presents an overall measure of how accurate inventory has been across all recently closed cycle counts.
The Closed count list shows the name and ID of the cycle count along with the facility from which it is completed and the date on which the cycle count is closed. Admins can also see the item count details such as how many items were available in the count and how many of them were counted. the rejected inventory counts and the total inventory variance are also visible for admins to easily identify the count with major inaccuracies.
To get a detailed view of recently closed counts, use the export
function available at the right bottom and save counts offline in a CSV format that can be opened in all common spreadsheet tools.
Configurable export options: Commonly referenced values can be configured during export to help make reporting easier.
Facility
Internal ID
External ID
Primary/Secondary Product ID
Internal ID
Internal Name
SKU
UPC
Line Status
Accepted
Rejected
When importing the Count ID, facility and Internal ID are mandatory fields, while individual columns can also be selected to be included in the export, but all fields are selected by default. The following columns are available to export:
The Product Inventory View Page
within HotWax Commerce offers users a comprehensive snapshot of a product's inventory information. This feature is crucial for retailers as it empowers them to make informed decisions regarding sales and overall inventory management for their products.
Step-by-Step Usage Instructions:
Within the Hamburger Menu of HotWax Commerce, find and select the Warehouse
option from the list of menu choices.
Once in the Warehouse section, a submenu will appear. Click on Inventory
from this submenu to proceed.
On the Find Product Inventory page, you'll find a list of available products. Click on the product name of the desired item to open its Product Inventory View Page.
Alternate Access Method:
Click on the PIM
section, then select Products
to access the Find Products
Page.
Browse through the list of available products or search for the product name. Click on the name of the desired product to open its Product View
Page.
On the Product View Page, locate and click on the View Inventory
button to access the Product Inventory View Page, offering comprehensive inventory information for the selected product.
Navigate to the Overview
section on the Product Inventory View
page to access essential product information, including product name, SKU, size, and color variants.
Sections within Overview
A. Order Queue: This section displays orders that currently lack allocated inventory. Orders in different queues, such as brokering queue, unfillable hold queue, pre-order queue, and backorder queue, are listed here. Explore further details about these queues here.
B. Threshold: Retailers can establish a global threshold for products through the Threshold Management
app. This quantity is subtracted from the overall Quantity on Hand (QOH) to prevent overselling on e-commerce platforms. Users can see the inventory that is subtracted from the overall QOH as the threshold.
C. Physical ATP: HotWax Commerce calculates Physical Available to Promise (ATP) by considering various factors, such as safety stock, threshold, reserved quantity, and orders in the queue. The excluded ATP comprises safety stock and reserved quantities, with adjustments made at the facility level.
Example: Consider a product blue shirt
from Brand ABC with a QOH of 100 units. If 10 units are excluded ATP, 5 units are the threshold, and 5 units are in the brokering queue, the ATP can be calculated as follows:
ATP = QOH - (Excluded ATP + Threshold + Orders in brokering queue) ATP = 100 - (10 + 5 + 5) = 100 - 20 = 80
D. Online ATP: Online ATP is derived by subtracting the excluded facilities' ATP, i.e., facilities not participating in online fulfillment, from the total ATP. The excluded facilities' ATP can be different for different online facility groups. For instance, if the total ATP is 100 across 10 facilities and 5 facilities with a cumulative quantity of 60 are excluded for online selling on Shopify, the Shopify Online ATP can be calculated as: Shopify Online ATP = ATP - Excluded Facilities’ ATP = 100 - 60 = 40
Online ATP may vary for each sales channel.
The item inventory
section allows users to get a detailed breakdown of the received inventory at each facility, along with the date and time of each transaction and where the inventory is located within the facility.
View Inventory Logs
The Inventory Logs
feature within the item inventory section offers users the ability to access detailed logs of inventory transactions for the selected product across all facilities. Users can track inventory movements, monitor changes, and identify any discrepancies or trends promptly.
Step-by-Step Usage Instructions:
On the View Product inventory
page, navigate to the item inventory section
Locate the Inventory Logs
checkbox and check the box to activate the inventory logs feature.
Once activated, detailed logs of each inventory transaction for the selected product across all facilities will be displayed.
Review these logs to track inventory movements, monitor changes, and identify any discrepancies or trends.
If you want to view inventory details for a specific facility, use the facility dropdown menu to select the desired facility.
You can click on the Inventory Item ID
available in the records to view the complete breakdown of when and where the inventory is received.
The Record Variance
feature” allows users to manually document any discrepancies in inventory levels and manage adjustments effectively. This feature is crucial for maintaining accurate inventory records and ensuring transparency.
Step-by-Step Usage Instructions:
Within the View Products Inventory page
, locate and click on the Record Variance
function, available at the top of the page.
This will open a new form, select the relevant facility where the inventory adjustment is taking place from the dropdown menu.
Choose the specific location within the selected facility and enter the quantity of the inventory adjustment.
From the dropdown menu, choose the relevant reasons for the inventory variance. This could include factors such as damaged goods, discrepancies in shipment, or theft.
After confirming all details are accurate, click the Save
button to record the variance in the system.
In HotWax Commerce, every change in inventory numbers for a product generates an inventory log. This log details the reasons for the change and its impact on Available to Promise (ATP) and Quantity on Hand (QOH).
Go to the Inventory Page
Click on the hamburger
menu located at the top left corner of the page
Scroll down to the Warehouse
section.
Click on the Inventory
button.
Select the Product
You will land on the Find Product Inventory
page where multiple Items are listed.
Click on the specific item for which you want to view the inventory details
Access the Inventory Log
At the bottom of the inventory view
page, you will see a section labeled Inventory Logs.
Check the checkbox labeled Inventory Log
or click on the Inventory Log
blue text to display the inventory log of the product.
This view will show all inventory changes and their reasons.
Filter by Facility
To see inventory logs for a specific facility, use the facility dropdown menu at the top of the page.
Click on the Facility
button and select the desired facility from the dropdown menu.
Again check the checkbox of the Inventory log
to view the log specific to that facility.
To understand the various reasons for inventory changes, let's consider an example: an order involving a product with both Available to Promise (ATP) and Quantity on Hand (QOH) set at 10. Inventory logs are generated whenever any action related to the inventory of a product is performed. The calculations below are for a single quantity of the product.
Here are some of the reasons or events that cause inventory changes:
Sales Reservation: Product Inventory is reserved for a sales order.
Resulting log: ATP diff: -1, QOH diff: 0
Sales Shipment: When the order is completed in the OMS and shipped, the QOH decreases as the item is physically shipped from the store.
Resulting log: ATP diff: 0, QOH diff: -1
ERP Updates: HotWax Commerce considers ERP systems as the source of truth and receives daily inventory updates from them. Any inventory changes, whether negative or positive, will create an inventory log.
Example Scenario: ERP system updates inventory based on actual counts or adjustments.
Inventory Log: Created for each change in inventory.
Transfer Reservation: Inventory is reserved due to a transfer order. The ATP and QOH diff will be similar to the sales reservation.
Resulting log: ATP diff: -1, QOH diff: 0
Transfer Shipment: The on-hand quantity of the product decreases as the item is physically shipped for a transfer order.
Resulting log: ATP diff: 0, QOH diff: -1
Inbound Transfer Shipment: Inventory for the product is received as a transfer shipment, increasing the product's inventory.
Resulting log: ATP diff: 1, QOH diff: 1
Variance API Variance log for POS order(Order-id) (POS Sale): When an item is sold in-store, both the Available to Promise (ATP) and Quantity on Hand (QOH) for that item decrease accordingly.
Resulting log: ATP diff: -1, QOH diff: -1
Variance API (Adjustment): When a user records a variance with the reason adjustment from the product inventory page.
Store rejected inventory (Not in Stock): When a store rejects an order because the product is not in stock, the Available to Promise (ATP) and Quantity On Hand (QOH) at that particular facility will become 0.
Resulting log: ATP diff: -10, QOH diff: -10
Reservation cancelled: When a sales reservation is cancelled, the Available to Promise (ATP) for the product will increase to 1, and the Quantity On Hand (QOH) will remain at 0.
Resulting log: ATP diff: +1, QOH diff: 0
Retailers need real-time insights into their product inventory, to ensure informed decision-making and efficient inventory management. The Find Product Inventory
page within HotWax Commerce serves as a centralized hub for managing specific inventory details of products. It offers a comprehensive view of various reservations and availability statuses, including reserved, committed, and available ATP (Available to Promise). Retailers can get visibility into reservations, queues, and excluded facilities, and the Find Product Inventory
page empowers users to optimize their inventory allocation and fulfillment processes. Users can see all the columns in which inventory is reserved and the available-to-promise at the end. The following details are available for the inventory on the page:
Queue Type | Description |
---|---|
Log in to HotWax Commerce by entering your credentials on the login page.
Within the hamburger menu, find and select the Warehouse
option. This will open a submenu with various warehouse-related functionalities.
From the Warehouse submenu, choose the Inventory
option. This action will direct you to the Find product Inventory
page
Users can search for products based on various identifiers such as Product ID, Product name, SKU, Parent Product, or Keyword to get an instant overview of the inventory status of the searched product, facilitating informed decision-making and resource allocation for the retailers. The Search Products
feature on the Find Product Inventory
page provides users with quick access to information regarding a specific product inventory. It streamlines the process of checking ATP (Available-to-Promise) computation for specific products.
Retailers operating multiple warehouses or stores need facility-specific inventory visibility to efficiently manage and monitor product availability at each fulfillment location. The Facility
filter provides users with visibility of products available at a particular facility, enabling users to make decisions regarding restocking, fulfillment, and redistribution. The Facility
filter enhances workflow by enabling users to swiftly identify stock levels, assess inventory distribution, and optimize their supply chain operations.
Navigate to the Find Product Inventory
page within HotWax Commerce. Look for the Facility
filter option located at the top of the page.
Click on the dropdown menu associated with the Facility filter. A list of available facilities or locations will appear.
Once you've selected a facility from the dropdown menu, the page will display a list of products associated with the chosen facility. Review product availability, quantities, and details related to inventory management at this location.
Use the search filter option to find specific products within the selected facility. Enter the product identifier of the product to access its inventory breakdown at the chosen facility.
For example: If you'd like to search for the available product inventory of the SKU "WJ08-XS-Gray" in the Times Square facility, search for the SKU in the search bar and select 'Times Square' from the facility filter.
In a multi-channel retail environment, efficient inventory management across various sales channels is crucial for success. The Inventory Channel Filter in HotWax Commerce provides users with the ability to view available products and their inventory on specific inventory channels. This feature enables retailers to view separate Available-to-Promise (ATP) inventories for each channel, minimizing risks and ensuring streamlined operations.
For example, if a retailer chooses the Amazon sales channel and searches for SKU "WJ08-XS-Gray" in the search bar they will get the breakdown of the product ATP that is available to sell online on Amazon.
Navigate to the Find Product Inventory
page within HotWax Commerce where inventory details are displayed. Look for the Inventory Channel Filter, which is typically located at the top of the page.
If you want to view inventory details for a specific inventory channel, click on the dropdown menu to select the desired channel from the available options.
If you need to find a specific product's inventory breakdown for the selected channel, use the search functionality provided within the interface. Enter the identifier of the product you're interested in, and the system will display its inventory details for the chosen channel.
Discover how HotWax Commerce manages restock returns for both online and in-store orders, ensuring accurate inventory management and syncing with Shopify.
HotWax Commerce operates with a specific inventory management approach for restocking online returns. When inventory is returned on Shopify, it provides an option to enable the restock returned inventory flag. However, HotWax Commerce does not automatically increase the inventory count in its system even if the restocked return flag is enabled on Shopify. This is because HotWax Commerce lacks visibility into the specific location where the inventory is received. Instead, inventory is updated only when the updated inventory count is received from Warehouse Management Systems (WMS) or Enterprise Resource Planning (ERP) systems.
Store associates can configure whether to accept the return of the product with or without restocking it, depending on the specific requirements set by the retailer. If the decision is to restock in-store order items immediately upon receipt, the inventory changes are updated in HotWax Commerce instantly. These inventory updates are then synced with Shopify through the Upload recent inventory change
job from HotWax Commerce Job Manager
app. To schedule the job follow these steps:
Log in to the HotWax Commerce Job Manager App
from the launchpad.
Within the Job Manager app, go to the Inventory
page.
Locate the Upload recent inventory change
job within the more jobs
section of the inventory
page.
Click on the job title to open the job card.
Specify the job run time and preferred frequency based on your operational needs.
Click on Save Changes
to schedule the job according to the defined run time and frequency.
Retailers usually plan new product launches and need these products to be available for sale in future dates at precise times. For instance, if a retailer plans to start selling a new product at 10 AM after one month, they need the inventory to be synced exactly at that time. Previously, this required manual intervention, which was prone to errors. Manual management of inventory synchronization could lead to delays or mistakes, causing products to not be available for sale as planned, resulting in missed sales opportunities and customer dissatisfaction.
To address this challenge, HotWax Commerce offers a scheduled inventory restocking feature in the Import
App. Retailers can upload a CSV file containing the products they want to restock and specify the facility and product store for which the inventory needs to be updated. Crucially, during inventory restocking, the update inventory
service also runs in HotWax Commerce to ensure that inventory is increased in HotWax Commerce but also synced with Shopify.
Access the Import
App:
Locate the HotWax Commerce Import
app in the app launchpad.
Log in with your user credentials.
Navigating to Inventory Page:
Within the Import
app, the default page opened is the Purchase Order
page.
Navigate to the Schedule Restock
page from the left menu.
Only users with Super
or Admin
user permissions can access the Schedule Restock
page in the Import
App.
Uploading CSV File with Saved Mappings:
Click on the upload
button and select the preferred CSV file.
Map CSV Fields
Map CSV file fields with corresponding HotWax Commerce fields.
The following fields need to be mapped and filled in while scheduling restocks:
Shopify Product SKU field is the default product identifier, but users can choose the preferred product identifier from the options in the dropdown menu. HotWax Commerce supports the following product identifiers:
Saving Custom CSV Mappings:
Save custom CSV mappings directly within the Import
app for future use by clicking on the New Mappings
button.
In the future, you can utilize the saved mappings within the Import
app to expedite the process of mapping.
Reviewing Inventory:
Click on the Review
button to inspect and verify all scheduled inventory updates.
This will open an Inventory review
page where you can ensure data accuracy and completeness before finalizing.
Add/Modify Restock Details:
Merchandisers can also add or change Facilities, Product Store, or Shopify Shop by choosing the relevant options from the drop-down menus for the relevant fields.
Finalizing Update:
Once you have verified all the items, proceed by clicking on the Upload
icon.
This will open up a confirmation module; confirm inventory upload by clicking on the Upload Button.
You will get a success message indicating that the inventory has been updated successfully.
If the merchandisers have any operational level changes, such as their sale being postponed to a later date or they want to remove some products from that sale, they can reschedule or cancel the restocking from the Schedule Restock
page.
All the scheduled restocks will appear at the bottom of the page, with the scheduled date and time. Merchandisers can click on the overflow menu to reschedule or cancel the restocks as per their requirements.
This page explains how HotWax Commerce calculates Available-to-Promise (ATP) by syncing inventory across channels and factoring in safety stock, thresholds, and facility exclusions.
HotWax Commerce integrates with ERP, POS, and WMS systems to provide a unified inventory view, ensuring stock levels are synchronized with platforms like Shopify. When calculating Online Available to Promise
(ATP) for Shopify, HotWax Commerce considers more than just the quantity on hand (QOH). It also factors in safety stock, thresholds, reserved quantities, brokering queue orders, and excluded facilities` to avoid overselling scenarios.
For example, the product "blue shirt" from the brand NotNaked has a current quantity on hand (QOH) of 100 units. There are 10 orders placed for this product, with inventory allocated to 5 of those sales orders. Additionally, the product has 5 units set aside as safety stock and 5 units as a threshold. One facility, which is unavailable for fulfillment, has 5 units of Available-to-Promise (ATP) inventory. The ATP for this product can be calculated using the following formula:
Online ATP = QOH - (Reserved quantities + Safety stock + Threshold + Orders in brokering queue + Excluded facilities’ ATP)
Here is the given information:
Given:
Hence,
HotWax Commerce will push 75 units as the sellable Online ATP to Shopify, ensuring accurate inventory representation for online sales. However, retailers managing large product assortments and multiple facilities may face challenges in handling individual product settings at scale. Each product can have different configurations for safety stock, thresholds, store pickup, and shipping rules. Modifying product categories or introducing new ones requires uploading large CSV files, which takes time and limits flexibility in adjusting fulfillment rules.
The ATP app simplifies this by allowing retailers to configure multiple rules to manage safety stock, threshold, store pickup, and shipping for bulk products with ease. The ATP app allows retailers to apply rules based on product tags and facility types or groups, reducing manual work. It supports real-time available to promise computation based on all these rules and automates inventory synchronization across multiple channels.
Target high-demand scenarios by setting up customized safety stock levels for specific products at designated facilities.
The ability to Set Individual Safety Stocks
in the HotWax Commerce platform provides retailers with a targeted solution for addressing high in-store demand scenarios. This feature is particularly significant for retailers aiming to set up safety stock for specific products at a designated facility
Navigate to the Hamburger Menu
> Warehouse
> Inventory
to open the `View Inventory`` page.
Search for the desired products using any product identifier such as product SKU, product ID, internal ID, or product name.
Click on the specific product to go to the Product Inventory View
page. This page has the complete inventory details for the specific product.
Click on the inventory configurations to go to the Product Inventory Configuration
page. this page allows users to manage inventory configurations of those products across the HotWax Commerce
Click on the edit icon in the last column of the facility for which you want to set safety stock, also called minimum stock.
Set the desired safety stock and then click on the next
button.
Finally, click on the save
button to save the safety stock configuration.
By following these steps, users can efficiently utilize the Set Individual Safety Stocks feature within the HotWax Commerce platform, allowing for targeted and responsive safety stock management tailored to specific products and facilities.
Managing inventory effectively across various facilities is crucial to meeting customer demands swiftly and efficiently. HotWax Commerce empowers retailers with a robust Available-to-Promise (ATP) app that allows seamless configuration of safety stock levels tailored to the unique demands of each facility.
Determine which facility groups require specific safety stock levels based on their demand. Retailers can create custom facility groups as needed by following our .
Navigate to Launchpad
-> ATP app
-> Safety Stock
.
Click on the +
icon in the right-bottom corner of the app.
Name: Provide a descriptive name for the rule.
Safety Stock: Enter the desired level of safety stock.
Facilities:
Select all facilities: Toggle this on if the same safety stock level applies uniformly across all facilities.
Included: Add the facility groups where this safety stock rule should be applied.
Excluded: Optionally exclude specific facility groups from this rule if necessary.
Products By Tags:
Included: Filter products that require this safety stock level using product tags.
Excluded: Optionally exclude specific products based on tags from this safety stock rule.
Products By Feature:
Included: Filter products based on features that require this safety stock level.
Excluded: Optionally exclude products based on features from this safety stock rule.
Once rules are established, a dedicated service generates a CSV file containing all specified safety stock levels. This file is securely exported to the designated SFTP server for further processing.
The scheduled Import_Product_Facility
service imports this CSV file into the Order Management System (OMS), ensuring swift updates without manual intervention.
The Process_Bulk_Imported_Files
service then swiftly processes the imported data, updating safety stock levels across selected products and facilities. This automated workflow minimizes errors and accelerates response times.
HotWax Commerce’s ATP app empowers retailers to enhance operational efficiency and responsiveness through sophisticated safety stock management. By leveraging customizable rules and automated workflows, retailers can optimize inventory levels across diverse facilities, ensuring customer satisfaction and operational excellence.
This document explains the Reorder Point Management feature in HotWax Commerce, which automates inventory replenishment reports to prevent stockouts and lost sales.
In HotWax Commerce, managing inventory effectively is crucial for retailers to strike a balance between ensuring well-stocked shelves and avoiding excess inventory. Manually monitoring stock levels, sell-through rates, and pending deliveries are prone to errors, resulting in issues such as stockouts, lost sales, and compromised customer experiences.
While traditional inventory thresholds help prevent stockouts and overselling online, they often neglect the issue of lost sales due to underselling. According to client needs, HotWax Commerce introduces the Reorder Point Management feature, specifically designed to not restrict sales and, in some cases, even oversell wherein the buyer is informed that the product is out of stock but will be available at a future date and they can purchase it now (i.e., place Backorders). The feature also generates a report for the clients to be informed of the products which need to be reordered.
The Reorder Point Feature automates the replenishment process by enabling users to set minimum inventory levels for each product. When a product's inventory (including the current inventory and any purchase orders that are yet to be received) reaches this reorder point, an automated report is triggered to notify users to reorder. This report provides comprehensive details of the product including the SKU, the brand, the current inventory level, the purchase order (PO) inventory, and the specific reorder point, facilitating informed decision-making in inventory management.
Reorder Point involves leveraging a dedicated reorder channel within the Order Management System (OMS). This channel operates independently of the primary sales channel and serves solely to trigger reorder reports and manage inventory thresholds. Please refer to this on how to make a new channel in HotWax Commerce.
For example, if the primary sales channel, say A, starts with 100 units and has a reorder point of 10 units, a reorder Channel, say B, would have 100 inventory with a 10 threshold. As sales occur on the inventory channel A, inventories in both A and B decrease concurrently. When A sells 90 units, B's online inventory becomes depleted, triggering an automated reorder report while allowing online sales on A.
Thus, by such automation, retailers streamline inventory management, minimize lost sales opportunities, and optimize operational efficiency. It not only frees up resources that would otherwise be tied up in manual monitoring but also ensures that the right products are consistently available to meet customer demand online and in-store.
The reorder point is visible on the product inventory
page. Retailers can check their remaining inventory before reaching the set reorder point to know when to place a new purchase order. When the online selling channel inventory reaches the reorder point that is the inventory threshold in the reorder channel, a report is triggered indicating to place a new purchase order for the products. The report usually contains following fields:
Column Name | Description |
---|
Streamline stock control for multiple products across diverse facilities effortlessly.
The Bulk Safety Stock feature in the HotWax Commerce platform is a powerful tool that enhances users' ability to efficiently manage safety stock for multiple products across various facilities.
Navigate to the Hamburger Menu
> PIM
> Products
to open the View Products
page.
Choose filters to select multiple products or search for the specific product for which you want to set up safety stock on all facilities.
Click the Manage Safety Stock
button to set the safety stock.
Enter the desired safety stock values for the selected products
Click the Export
function to generate a CSV file containing the safety stock details for the selected products.
Navigate to the EXIM
subsection from the hamburger menu.
Find the Imports
category, then the Warehouse
subcategory, and finally click on Safety Stock
to open the Safety Stock Import Data page.
Upload the previously exported CSV file to update safety stock values for the products on the existing facilities.
Check that the status is updated as Finished
in the Result Section, ensuring the successful completion of the safety stock update process.
By following these steps, users can seamlessly leverage the Bulk Safety Stock
feature within the HotWax Commerce platform, contributing to a more efficient and comprehensive safety stock management system.
Retailers can manage the scheduling of the job responsible for ATP (Available to Promise) rules from the top of the page. By default, ATP rule jobs are scheduled to run at midnight to ensure ATP calculations occur when store traffic is minimal, making the inventory ATP ready before the start of the day.
Retailers can view the history of job runs, disable a job, or run a job once by selecting the relevant option from the job's overflow menu.
Each rule card provides an overview of configurations and product facility selections. Retailers can click the "Edit rule" button to modify rule configurations. The rule configuration can be adjusted by toggling the store pickup and shipping options on or off, or by setting values for threshold and safety stock by clicking on the number chips.
Each omnichannel configuration, safety stock, threshold, BOPIS, and shipping can have multiple rules to target specific product and facility selections. Since there are multiple rules for each configuration type, products and facilities may overlap among rules. When this occurs, the last rule in the sequence of rules overrides previous rules for a unique combination of products and facilities.
Consider a retailer who wants to set different inventory thresholds for general shirts and blue shirts. The retailer sets a threshold of 5 for all shirts, allowing a minimum of 5 shirts to be available as network-level buffer stock. However, for blue shirts, the retailer wants to increase the threshold to 10 to ensure enough is available for demand.
To achieve this, the retailer would create two rules:
General Shirt Rule (Threshold set to 5 shirts)
Applies to all shirts, allowing a minimum of 5 shirts to be available as network-level buffer stock.
Blue Shirt Rule (Threshold set to 10 shirts)
Applies only to blue shirts, requiring a minimum of 10 blue shirts to be available as network-level buffer stock.
These rules should be listed in the correct sequence to ensure that the specific blue shirt rule overrides the general shirt rule for blue shirts while maintaining the broader threshold for all other shirts.
A balloon icon in the bottom right corner allows retailers to collapse or expand the inventory rules. Retailers can collapse the inventory rules to rearrange the sequencing of the inventory rules according to the cascade.
To learn more about the re-order report, read our detailed
Field
Description
Shopify Product SKU
The unique product identifier used by Shopify.
Restock Quantity
Represents the updated inventory count for the product.
Schedule Time
Specify when the inventory needs to be restocked and synced with Shopify.
Facility
Specify the facility where the products need to be restocked.
Product Store
Specify the product store for which the product needs to be restocked.
Shopify Store
Specify the Shopify store where the inventory needs to be synced after restocking.
Restock Name
Retailers can give a detailed name to the restock such as SeasonEndSale Restock or use the default date-time restock naming.
Field
Description
Shopify Product SKU
The Stock Keeping Unit number assigned to products.
Product ERP ID
Unique identifier of the product in the ERP system.
GTIN
Global Trade Item Number is an identifier for trade items.
ISBN
International Standard Book Number (ISBN) is a numeric commercial book identifier.
Manufacturer (Model) Number
Unique number issued by manufacturers to identify individual products.
Shopify Product ID
Unique product identifier on Shopify.
UPCA
Universal Product Code is the unique barcode of the product.
Field
Description
Count ID
Unique identifier for the cycle count.
Count Name
Descriptive name of the cycle count.
Accepted by User
Name or ID of the user who accepted the count.
Created Date
Date when the cycle count was created.
Last Submitted Date
Date when the count was last submitted.
Closed Date
Date when the count was closed.
Facility
Name or ID of the facility where the count was performed.
Primary Product ID
Unique identifier for the primary product being counted.
Line Status
Current status of the line item (e.g., Accepted, Rejected).
Expected Quantity
The expected quantity of the product in the inventory.
Counted Quantity
The actual counted quantity of the product.
Variance
The difference between the expected and counted quantities.
Quantity on hand
100 Units
Reserved quantities
5 Units
Safety stock
5 Units
Threshold
5 Units
Orders in brokering queue
5 Units
Excluded facilities' ATP
5 Units
Product ID | Unique identifier for the product |
SKU | Stock Keeping Unit, an internal name for the product |
Brand | Brand name of the product |
Maximum Online ATP | Maximum inventory available for online channels, calculated as the sum of the last inventory count minus the minimum stock and pending orders. |
Reorder Channel ATP | Inventory available specifically for the reorder channel, indicating levels set aside for replenishment. |
PO Inventory | Total quantity of the product available in approved or created purchase orders. |
Reorder limit | Minimum stock level for products in the reorder channel, aiding in inventory replenishment management. |
Brokering queue
Queue that holds orders awaiting brokering.
Unfillable hold queue
Queue that holds orders that cannot be fulfilled at the moment.
Pre-order queue
Queue that holds pre-orders awaiting fulfillment.
Backorder queue
Queue that holds backorders awaiting fulfillment.
Excluded facilities ATP
Shows inventory of facilities excluded from online selling.
Excluded ATP
Shows inventory excluded from online selling.
Threshold
Limit set by a merchandiser to avoid overselling online.
Online ATP
Inventory available for promise on online channels.
Available to Promise (ATP)
Inventory available for promise to customers, representing actual availability.
Troubleshooting guide to resolve inventory synchronization errors
Inventory synchronization issues can occur at multiple stages, leading to discrepancies in stock levels across platforms. Accurate inventory synchronization is crucial to prevent underselling or overselling for retailers. This document aims to provide detailed steps to diagnose and resolve issues related to inventory synchronization between ERP systems, HotWax Commerce, and Shopify.
During the process of importing an inventory file via SFTP, connection failures may occur, resulting in only a portion of the file being processed. This incomplete processing can lead to an invalid file status, causing discrepancies in inventory levels.
Navigate to Your SFTP File Path
Access your SFTP server using your preferred SFTP client such as Filezilla.
Check the File with Import Date and Time
Locate the file by its import date and time to identify the specific file that was partially processed.
If the File is Failed, Reimport the File
If the file is placed in the failed folder, re-upload the file to the SFTP server.
Ensure a stable connection during the reimport process to avoid partial processing.
The inventory file might be placed in an incorrect SFTP path, preventing HotWax Commerce from accessing and processing the file. This misplacement can result from user error or misconfiguration in the SFTP client or ERP system.
Check the File Path and Location
Verify the SFTP file path where the inventory file should be located.
Consult the User Manual
Refer to the HotWax Commerce User Manual for detailed instructions on setting up the correct file path.
Sometimes inventory synchronization to Shopify fails because of an issue on Shopify's end. This can happen when the scheduled job in Shopify is not running due to errors, maintenance, or other interruptions.
Wait for the Shopify Job to Run
Verify if there are any scheduled maintenance or downtime announcements from Shopify.
If the issue is temporary, wait for the job to resume.
Monitor Shopify Job Status
In Shopify, check the job logs and status updates for inventory synchronization tasks.
HotWax Commerce relies on two main jobs for inventory synchronization to Shopify: Update Recent Inventory Changes
and Hard Sync Job.
These jobs might fail or may not be scheduled correctly, leading to synchronization issues.
Ensure Jobs are Scheduled
In HotWax Commerce, navigate to the Inventory
page in the Job Manager App
Verify that Update Recent Inventory Changes
and Hard Sync Job
are scheduled as per your preferred frequency.
Check Job Status
Look into the job pipeline to ensure these jobs are not marked as failed.
Re-run the jobs if necessary.
Ensure Process Uploads to eCommerce
Job is Running
Go to the Miscellaneous
page in the Job Manager App
.
Verify that the Process Uploads to eCommerce
job is running to process all uploaded files to Shopify.
If the Shopify shop does not have the necessary write permissions configured, synchronization attempts from HotWax Commerce will fail. This often happens if the access scope is mistakenly set to Read Only.
Navigate to the Shopify Shop Page
In HotWax Commerce, use the hamburger menu to go to the Shopify Shop
page.
Select the Relevant Shopify Shop
Choose the specific Shopify shop where the issue is occurring.
Check Access Scope in Shopify Config
In the Shopify configuration section, verify the access scope settings.
Update Access Scope
If the access scope is set to Read Only
, click on the pencil icon
to edit the configuration.
Change the access scope to Read and Write
permissions.
Discover how HotWax Commerce's Job Manager App streamlines order, product, and inventory operations with its workflow management features.
HotWax Commerce’s Job Manager App enables you to view, schedule, and update job workflows running in the HotWax Commerce's Order Management System for operations related to orders, products, inventory and more.
To directly access the Job Manager application, click on the provided link or navigate to the Launchpad and locate it within the Workflow section.
Learn about the miscellaneous jobs in HotWax Commerce.
Job Name: Process uploads to eCommerce
Job Enum ID: JOB_UL_PRCS
Description
This job is used in scenarios where multiple uploads to Shopify are queued, and it's crucial to ensure that these uploads are processed one at a time. This could be part of a larger system where inventory, product data, or other information needs to be synced with Shopify in an orderly and managed way, preventing conflicts and ensuring data integrity.
No custom parameters for this job
Job Name: Process bulk imported files
Job Enum ID: DMGR_RN_PNDNG_JB
Description This job is used in scenarios where a system needs to handle multiple data import jobs that are queued. It ensures that each job is processed in the correct order, with the appropriate service, and that the job statuses are accurately tracked. This is particularly useful in systems that manage large amounts of data, such as content management systems, e-commerce platforms, or enterprise resource planning (ERP) systems.
Custom Parameters
Job Name: Import Historical Shopify Customer
Job Enum ID: JOB_SHOP_CUST
Description
The Import Historical Shopify Customer
job downloads historical customer data from Shopify and imports it into HotWax Commerce. This is crucial for integration with NetSuite, as NetSuite allows order creation only for customers that already exist in the system. By importing historical Shopify customers, this job ensures that all necessary customer records are available in HotWax Commerce, enabling seamless order transmission from HC to NetSuite alongside the customer data.
Custom Parameters
Job Name: Send Broker Order Mail
Job Enum ID: JOB_BROKER_MAIL_ODR
Description
The Send Broker Order Mail
job facilitates the bulk sending of email notifications for brokered orders. This job ensures that customers receive timely updates on the status of their brokered orders, enhancing communication and order tracking.
Custom Parameters
Job Name: Send Completed Order Mail
Job Enum ID: JOB_COMPLET_MAIL_ODR
Description
The Send Completed Order Mail
job enables the bulk sending of email notifications for completed orders, ensuring customers are promptly informed when their orders are fulfilled and ready for receipt.
Custom Parameters
Job Name: Packaged multi-stream Import
Job Enum ID: JOB_IMP_GN_JSON_LIST
Description This job is useful in scenarios where multiple pieces of JSON data need to be imported and processed by different services. For instance, in a data integration or ETL (Extract, Transform, Load) system, this function can be used to import and process batches of data from JSON files or API responses. It ensures that each data item is processed through the correct service and handles any errors encountered during the process.
Custom Parameters
Job Name: Multi-Stream Import
Job Enum ID: JOB_IMP_JSON_DATA
Description This job is used when there is a need to process a single JSON data object by invoking a specific service. For example, it can be used in scenarios where data needs to be imported from a JSON payload and processed by a particular service in an application. This function ensures that the data is correctly validated and passed to the service, and handles any errors that may occur during the process.
Custom Parameters
Job Name: Send Packed Order Mail
Job Enum ID: JOB_PACKED_MAIL_ODR
Description
The Send Packed Order Mail
job facilitates the bulk sending of email notifications for packed orders, notifying customers when their orders are prepared and ready for shipment.
Custom Parameters
Job Name: Send Packed Shipment Notification to Customer
Job Enum ID: SHPMNT_PKD_NT
Description This job is used in scenarios where notifications need to be sent for a large batch of shipments that have recently been packed. It is particularly useful for automating the process of informing customers or internal systems about the status of their shipments, ensuring timely communication and updates.
Custom Parameters
Job details
Manage pre-configured job automation to streamline operations within the Order Management System.
Initial load
Schedule jobs for the initial deployment and instance setup, tasked with importing all products and orders into the OMS.
Job queueing
View all scheduled, running and completed jobs, with configurations to change the scheduled job data from the Job Pipeline page.
Job categories
Jobs and Webhooks are categorized based on operations, ensuring that related operations are grouped together for efficient configuration.
Bulk job scheduling
Search and select multiple jobs to schedule and execute them collectively for multiple shop configs.
Parameter | Type | Description | Default Value |
| Optional | Identifies the configuration for pending data manager job. |
|
| Optional | Not Specified |
|
| Optional | Not Specified |
|
| Optional | Not Specified |
|
Parameter | Type | Description | Default Value |
| Required | Identifies the configuration for Order Item Attribute records. |
|
| Required | Specifies the property resource for configuration. |
|
| Optional | Specifies the remote filename for processing. |
|
| Optional | Specifies a grouping parameter for the job. |
|
| Optional | Additional parameters for job customization. |
|
| Optional | Specifies a regular expression for filtering filenames. |
|
| Optional | Specifies the SFTP location and path for importing the file into the system. |
|
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. |
|
| Optional | ID of the job that initiated this job. |
|
Parameter | Type | Description | Default Value |
| Optional | Defines the default duration of the last syncing of the orders. |
|
| Optional | Specifies the type of email template to use for a notification. |
|
Parameter | Type | Description | Default Value |
| Optional | Defines the default duration of the last syncing of the orders. |
|
| Optional | Specifies the type of email template to use for a notification. |
|
Parameter | Type | Description | Default Value |
| Required | Identifies the configuration for import JSON list data. |
|
| Required | Specifies the property resource for configuration. |
|
| Optional | Specifies the remote filename for processing. |
|
| Optional | Specifies a grouping parameter for the job. |
|
| Optional | Additional parameters for job customization. |
|
| Optional | Specifies a regular expression for filtering filenames. |
|
| Optional | SFTP file location from where the file will be imported. |
|
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. |
|
| Optional | ID of the job that initiated this job. |
|
Parameter | Type | Description | Default Value |
| Required | Identifies the configuration for import JSON data. |
|
| Required | Specifies the property resource for configuration. |
|
| Optional | Specifies the remote filename for processing. |
|
| Optional | Specifies a grouping parameter for the job. |
|
| Optional | Additional parameters for job customization. |
|
| Optional | Specifies a regular expression for filtering filenames. |
|
| Optional | SFTP file location from where the file will be imported. |
|
| Optional | When importing files into the OMS, forces the system to pick the file out of sequence for immediate processing. Enabled by default when importing files from FTP, but can be disabled during high-volume syncs for system stability. |
|
| Optional | ID of the job that initiated this job. |
|
Parameter | Type | Description | Default Value |
| Optional | Defines the default duration of the last syncing of the orders. |
|
| Optional | Specifies the type of email template to use for a notification. |
|
Parameter | Type | Description | Default Value |
| Required | Defines the default duration of the last syncing of the shipment status. |
|
| Optional | Specifies the buffer time (in minutes) for scheduling the job. | Not specified |
| Optional | Unique identifier of Shipment Method type. | Not specified |
This document provides steps to diagnose and resolve issues when orders fail to transfer from Shopify to HotWax Commerce (OMS).
When an order fails to import from Shopify to HotWax, it typically does not appear in the OMS, and an error is logged in the EXIM Import record for Shopify orders in HotWax Commerce. Several factors can contribute to these errors, such as incompatibility of exported data, API endpoint issues, or the absence of required meta fields during order processing. A report titled The Shopify Order Import Error Report details these failures, outlining specific errors generated by the system. These errors can usually be resolved by the following steps:
Navigate to OMS: Log in to OMS.
Check Order: Search the order on the OMS find order page to verify if the order is already available in OMS.
Log in to OMS: Use your username and password to log in to Hotwax Commerce OMS
.
Navigate to the Import Section:
Go to MDM > EXIM
in from the hamburger menu.
Navigate to Shopify Jobs
and select Import Shopify Order
under the Order Management tab.
Re-import the Order:
Select the Shopify config and enter the Shopify Order ID
.
Run the job by clicking the Run
button.
Verify Successful Import:
To verify the order's successful import, go to MDM > EXIM
.
Navigate to Shopify Jobs and click on Shopify Order MDM
under the MDM tab.
If the order still fails to import, troubleshoot the import failure by checking the error logs in the EXIM Import record for detailed errors. Some possible failure reasons are:
Connection timeout.
Transaction is empty.
Valid fields are missing in order JSON.
Identify the issue's source, determining if it originates from Shopify, the integration process, or HotWax Commerce.
If the cause remains unclear, reach out to HotWax Commerce support, providing them with the error logs for efficient troubleshooting.
This document aims to provide detailed troubleshooting steps for resolving issues related to order brokering in HotWax Commerce. The goal is to ensure smooth operation of the brokering engine, proper scheduling, and correct configuration of inventory rules, order batches, and facilities.
HotWax Commerce Order Brokering is a critical function that ensures orders are routed correctly based on predefined rules and schedules. Issues with order brokering can result in delays, incorrect order routing, and inventory mismanagement. This document will guide users through diagnosing and resolving common issues encountered during the brokering process.
Learn about HotWax Commerce's return management solutions, including importing returns from Shopify and creating in-store returns.
HotWax Commerce offers solutions for two distinct types of return managemnet: Importing Returns from Shopify and Creating In-Store Returns.
Import Returns from Shopify:
In the context of Mail Returns, customers or the Customer Service Representative (CSR) team can initiate return requests via email or phone calls.
Shopify retailers typically employ third-party return management apps for efficient return handling.
HotWax Commerce, while not functioning as a dedicated Return Management System, integrates with Shopify. It downloads return data post-completion, transmitting the information to ERP systems for financial and accounting purposes. This integration is facilitated without the need for direct links between ERP and Return Management Systems, showcasing HotWax Commerce's innate capabilities for data transfer.
In-Store Returns:
Shopify retailers utilizing Shopify POS can efficiently create and manage in-store returns for online orders directly through the POS system. Returns for these orders is also imported from SHopify
For retailers on non-Shopify POS systems, HotWax Commerce steps in to provide essential tools and functionality for creating and managing returns effectively within the platform.
This approach ensures that retailers using HotWax Commerce have a comprehensive and flexible system for handling returns, whether initiated by customers through various channels or managed within the HotWax Commerce platform itself.
HotWax Commerce provides a unified view of inventory by seamlessly connecting with various technology systems used by retailers, including Enterprise Resource Planning (ERP), Point of Sale (POS), and Warehouse Management Systems (WMS). HotWax Commerce ensures that inventory updates from all these systems are synchronized to support various business scenarios. HotWax Commerce determines the "Available to Promise (ATP)" or the amount of inventory that can be sold and then sends it to e-commerce channels. This makes HotWax Commerce the ultimate authority on inventory availability. Users can see both consolidated ATP and facility-wise ATP by clicking on the total ATP count.
Effortlessly upload bulk inventory data, map fields, and identify errors for seamless integration, even with legacy systems lacking API integration.
The HotWax Commerce Import App
enables bulk updates to inventory, especially when dealing with legacy systems that lack API-based integration. This app eliminates the need for manual editing of CSV formats. Merchandisers can efficiently upload CSV files, map CSV fields directly, and identify errors before finalizing the upload.
Access the Import App:
Locate the HotWax Commerce Import app in the app launchpad. Log in with your user credentials.
Navigating to Inventory Page:
Within the Import app, the default page opened is the Purchase Order
page. Navigate to the Inventory
page from the left menu.
Only users with Super or Admin user permissions can access the inventory
page in the Inventory App
.
Uploading CSV File with Saved Mappings:
Click on the upload
button and select the preferred CSV file.
Mapping Fields and Identifying Errors:
Map CSV file fields with corresponding HotWax Commerce fields.
The following fields need to be mapped in HotWax Commerce:
Field | Description |
---|---|
Shopify Product SKU
field is the default product identifier but users can choose the preferred product identifier from the options in the dropdown menu. HotWax Commerce supports the following product identifiers.
Field | Description |
---|---|
Saving Custom CSV Mappings:
Save custom CSV mappings directly within the Import App for future use by clicking on the New Mappings
Button.
In the future, you can utilize the saved mappings within the Import App to expedite the process of mapping.
Reviewing Inventory:
Click on the Review
button to inspect and verify all mapped inventory updates.
This will open an Inventory review
page where you can ensure data accuracy and completeness before finalizing.
Handling Missing Facilities:
Merchandisers sometimes make errors in their CSV files when creating them. For example, if the CSV file has "Time Square" as the facility name instead of "Times Square" it can cause an error when updating inventory. If any missing facilities or errors are detected during the process, click on Missing Facilities
.
This will open up a new module where you can rectify the mistake by specifying the accurate facility.
Click on the Save
icon to save and rectify the facility.
Finalizing Update:
Once you have verified all the items, proceed by clicking on the Upload
icon.
This will open up a confirmation module; confirm inventory upload by clicking on the Upload
Button.
You will get a success message indicating that the inventory has been updated successfully.
Item Inventory Verification:
Once the inventory is updated you can verify whether the inventory is accurately reflected in HotWax Commerce.
Confirm the updated inventory by going to the Product
page in your OMS instance.
Find the product SKU by utilizing the search bar. You can also search for products using the product name or HotWax Commerce ID.
Navigate to the Product Details
page by clicking on the product.
Click on the View Inventory
button to open the Product Inventory View
page of that product.
Here you will be able to verify the inventory changes under the Inventory Items
section.
Please ensure that all the products are synchronized in HotWax Commerce from e-commerce. If a product does not exist in HotWax Commerce, the corresponding records will not be processed.
Shopify Product SKU
The unique product identifier used by Shopify.
Quantity
Represents the updated inventory count for the product.
Facility ID
Identifies the specific facility associated with the product.
Shopify Product SKU
The Stock Keeping Unit number assigned to products
Product ERP ID
Unique identifier of the product in the ERP system
GTIN
Global Trade Item Number is an identifier for trade items
ISBN
International Standard Book Number (ISBN) is a numeric commercial book identifier
Manufacturer (Model) Number
Unique number issued by manufacturers to identify individual products
Shopify Product ID
Unique product identifier on Shopify
UPCA
Universal Product Code is the unique barcode of the product