Orders
Learn about the Orders jobs in HotWax Commerce.
Import Orders
Job Name: Import Orders
Job enum ID: JOB_IMP_ORD
Service Name: createOrdersFromShopify
Flow: Order Import from Shopify to OMS
The Import Orders
job is used for downloading orders from Shopify into HotWax. It retrieves all orders created in Shopify from the time the job last ran up to the current time.
When the Import Order
job runs for the first time, it defaults to downloading orders created in the last 15 minutes. This time frame can be adjusted using the "frequency" parameter.
How are orders downloaded?
HotWax sends an API request to Shopify, which returns the order details in JSON format. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
To prevent errors with large files, HotWax limits the download to 100 orders per API call, though Shopify allows downloading up to 250 orders.
Note: To find the Uploaded file, login to HotWax Commerce OMS, then navigate to Hamburger Menu>EXIM Page > Shopify Jobs tab > Shopify Order MDM
.
Custom parameters:
Recommended frequency for the Import Order job is 15 minutes.
The required parameters for this job is “frequency”.
It has some more optional parameters.
To know more about Order Download, refer to this document.
Approve Orders
Job name: Approve orders
Job Enum ID: JOB_APR_ORD
Service Name: approvePendingShopifyOrders
Flow : Order Approval
The Approve Orders
job changes the status of orders from 'Created' to 'Approved,' making them eligible for brokering. Orders must be verified and approved before fulfilment to prevent invalid or fraudulent orders. The Approved Orders job runs every 30 minutes and approves all the orders placed between the last job ran up and the current timestamp.
How are orders approved?
This job checks the payment preference for each order in the 'Created' state. If the payment preference is either 'Authorised' or 'Settled,' then the job changes the order status from ‘Created' to 'Approved’.
Custom Parameter:
The recommended frequency for this job is every 30 minutes.
The 'orderId' is an optional parameter. When provided, it will approve the specified order. By default, the job approves all orders in the created state.
HotWax Commerce offers an additional job, Approved Sales Orders
, designed for scenarios where retailers require custom order approval.
To know more about Order Approval refer to this document.
Update Orders
Job Name: Import Order Updates from Shopify
Job Enum Id: JOB_IMP_ORD_UPD
Service Name: updateOrdersFromShopify
Flow: Order Update From Shopify to OMS
The Update Orders job is used for importing updates of orders from Shopify to HotWax, such as adding new items, modifying quantities, or cancelling items within an order.
When CSRs or customers modify orders in Shopify, the Import Order Updates from Shopify
job ensures those changes are accurately synced to HotWax. It identifies and updates any orders that have been modified after being downloaded in HotWax. The job retrieves updates for all orders placed between the last job run and the current time.
How are orders updated in HotWax ?
HotWax sends an API request to Shopify, which returns the order update details in JSON format. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Note: To find the Uploaded file, login to HotWax Commerce OMS, then navigate to Hamburger Menu>EXIM Page > Shopify Jobs tab > Shopify Order MDM
.
Custom parameters
The required parameters for this job is “frequency”.
Recommended frequency for this job is every hour (i.e 60 min)
It has bufferTime as the optional parameter.
To know more about order updates, refer to this document.
Cancelled Orders
Job Name: Import Cancelled Orders
Job Enum ID: JOB_IMP_ORD_CNCL
Service Name: updateShopifyOrderStatus
Flow: Shopify to HotWax
The 'Import Cancelled Orders Job` is used for syncing cancelled orders from Shopify to HotWax. This job retrieves all Shopify orders cancelled between the last job run and the current time.
When an order is cancelled on Shopify, it can be imported into HotWax Commerce via the Update Orders Job
, Shopify webhooks, or the Import Cancelled Orders Job
, which ensures accurate processing when other methods are unreliable.
To sync cancelled orders, it is recommended to schedule both the Update Order and Cancelled Order jobs. The Cancelled Order job handles missed orders but will be deprecated in the near future.
This job specifically checks the cancelled_at
field for orders on Shopify and compares it with the job’s last run time. If the cancelled_at
time is later than the job's last run time, the job downloads all canceled orders in batches of 100 to avoid exceeding Shopify's API limit.
How is cancellation synced?
HotWax sends an API request to Shopify, which returns the cancelled order details in JSON format. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Custom parameters
The required parameters for this job is “frequency”.
Recommended frequency for this job is every 30 min.
It has bufferTime as the optional parameter.
To know more about Order Cancellation refer to this document.
Cancelled Order Items
Job Name: Import Cancelled Items
Job Enum ID: JOB_IMP_ITM_CNCL
Service Name: cancelOrderItemsFromShopify
Flow : Shopify to HotWax
The Import Cancelled Items
job is used to accurately synchronize item cancellations from Shopify to HotWax. When a customer cancels an item from an order, only that specific item is canceled, not the entire order.
While the Update Orders Job can import canceled items, the Import Canceled Items job acts as a backup to guarantee that cancellations are properly synced. This job retrieves updates for orders placed between the last run and the current time, reflecting any cancellations made in Shopify.
How Items are Cancelled in HotWax ?
HotWax sends an API request to retrieve order information, and in response, Shopify provides a JSON format file containing details of orders. The job checks the 'updated at' field in the order JSON and compares the timestamp with the job’s last run time. All orders updated after the last run are imported into HotWax Commerce in batches of 100 to prevent exceeding Shopify’s API limits.
After import, HotWax filters out the orders with canceled items and marks those items as canceled. The order status in HotWax Commerce is not changed; only the status of the canceled items is updated.
Custom Parameters
The required parameters for this job is “frequency”.
The recommended frequency for this job is Hourly (i.e 60 min).
bufferTime and createByJobId are optional parameters for this job.
To know more about item cancellations, refer to this document.
Import Order Returns
Job Name: Import Order Returns
Enum Id: JOB_IMP_RTN
Service Name: createReturnsFromShopify
Flow: Shopify to HotWax
The Import Order Returns job imports returns from Shopify to HotWax after they are completed and marked as "Refund" or "Returned" in Shopify, maintaining the order history.
Another method for importing returns is subscribing to Shopify webhooks via the Job Manager App, but this approach is not recommended due to the unreliability of Shopify webhooks.
Although Shopify allows fetching 250 returns per API call, to avoid issues with large files, HotWax will download up to 100 returns per API call.
How are returns imported?
HotWax sends an API request to Shopify, which returns the order return details in JSON format. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Note: To find the Uploaded file, login to HotWax Commerce OMS, then navigate to Hamburger Menu>EXIM Page > Shopify Jobs tab > Shopify Order Return
.
Custom Parameters
The required parameters for this job is “frequency”.
The recommended frequency for this job is 6 hours.
financialStatus ,bufferTime ,limit , createdByJobId are the optional parameters.
To know more about return import refer to this document
Webhooks
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
Upload Cancelled Orders
Job Name: Cancelled Orders
Job Enum ID: JOB_UL_CNCLD_ORD
Service Name: bulkCancelOrdersOnShopify
Flow: Upload Cancelled HotWax to Shopify
In usual scenarios, orders are cancelled in Shopify and then synced to HotWax. However, in special cases, like when a CSR cancels an order on behalf of a customer from the view order page in HotWax, this process works differently. In such cases, this job is used to upload cancelled orders from HotWax back to Shopify. It retrieves all orders cancelled between the job's last run time and the current time.
How Cancelled Orders are Uploaded ? HotWax sends a post API request to Shopify with data of all orders that are cancelled in OMS in JSON format, then the orders are marked as cancelled in Shopify.
Custom Parameters
This job has no required parameters.
orderId and cancelledDate are two optional parameters.
More Jobs
Party Identification
Job Name: Part Identification
Job Enum ID: JOB_PARTY_IDENT
Service Name: ftpImportFile
Flow: Order Approval Flow
The party identification job is used for importing new customers created in NetSuite to HotWax.
HotWax ensures that the Netsuite Customer ID
must be mapped to the HotWax Customer ID
for every order for smooth integration. Basically, when an order is placed for which the customer ID is not created in NetSuite, NetSuite will generate a “NetSuite Customer ID." Netsuite also generates a file in CSV format with newly created customer data and uploads that CSV in the SFTP location; from there, HotWax will import that CSV through the Party Identification
job and map customers against all the NetSuite Customer IDs.
How are customer IDs mapped? The HotWax Commerce integration platform first queries the HotWax database to fetch orders that lack a “NetSuite Customer ID.” It then uploads a CSV file of these orders to an SFTP location.
Next, a SuiteScript in NetSuite runs at scheduled intervals, retrieves the CSV file, and generates a JSON file containing the “NetSuite Customer ID” for all the orders in the CSV and uploads it to an SFTP location. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file to process in HotWax Commerce.
Custom Parameters
The recommended frequency for this job is 15 minutes
It also has some optional parameters.
This job has configId and propertyResource as the required parameters.
To know more about this, refer to this document.
Complete Order Item from Shopify
Job Name: Complete Order Item from Shopify
Job Enum ID: IMP_COMPL_ORD_ITM
Service name: completeOrderItemsFromShopify
Flow: Shopify to HotWax
This job imports completed order items from Shopify for cases where retailers do not use HotWax Commerce for managing Available to Promise (ATP) inventory. In this case, ATP is managed on Shopify. In this case, order fulfillment information is not available with HotWax, and so it relies on Shopify to get the status of an order item. It fetches orders completed between the last run time and the current timestamp.
How completed order items are imported ?
HotWax sends an API request to Shopify, which returns the order fulfillment item details in JSON format. The JSON file is then uploaded to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has no required parameters.
It has some optional parameters
Approve Sales Orders
Job Name: Approve Sales Orders
Job Enum ID: JOB_APR_SALES_ORD
Service Name: Import Approve Sales Order
Flow: Order Approval
This job changes the order's status from 'Created' to 'Approved' based on certain conditions. It is used in custom order approval processes.
For example, if the retailers want to ensure that payment must be captured before the order is approved, this job will ensure that only those orders are approved for which payment is captured by applying this condition on the Order Approval Flow.
Some jobs, like party identification
and order identification
are those required jobs that need to be run before this job ensures custom conditions are matched.
How are orders approved?
This job queries the HotWax Commerce database to fetch orders in the created state and filters out the orders that pass the checks defined by the retailer. The filtered orders’ are then changed to the ‘Approved’ status.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
Create Exchange Order
Job Name: Create Exchange Order
Job Enum ID: JOB_CRT_SALES_ORD
Service Name: ftpImportFile
Flow: Importing Exchanges from HotWax to Shopify
This job is used for importing exchanges in HotWax from Shopify. Basically, when an exchange is created in Shopify, it has to be synced with HotWax to maintain system integrity. This job imports all the exchanges from Shopify created between the last job run and the current timestamp.
How are exchanges imported?
Shopify provides a feed of all the returns and exchanges in JSON format, which is then fetched and transformed by the HotWax Commerce integration platform. Further HotWax Commerce integration platform uploads transformed JSON to an SFTP location. From that SFTP location, the Create Exchange Order
job brings the JSON and uploads it to the internal file system in HotWax.
Basically, when an exchange is created on an order in Shopify. This job takes those orders and creates the same exchanges for the corresponding orders in HotWax to maintain the system's integrity.
Custom parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
To know more about exchange, refer to this document.
Create Return Order
Job name: Create Return Order
Job Enum ID: JOB_CRT_RETURN
Service name: ftpImportFile
Flow: Return Creation from Shopify to HotWax
This job is used for importing returns from Shopify to HotWax. This imports all returns that are created in Shopify between the last job run and the current timestamp.
Shopify uploads a feed in JSON format of both returns and exchanges to an SFTP location; from there, the HotWax Commerce integration platform transforms this feed, and then returns are created in HotWax by the Create Return Order
job.
How are returns synced from Shopify to HotWax?
Shopify uploads a JSON file with returns and exchanges to an SFTP location. The HotWax Commerce integration platform processes this file and uploads a transformed feed of returns to the SFTP location. The Create Return Order
job then imports this JSON into the IMP_CRT_RTN_ORD
MDM in HotWax from the SFTP location. Finally, the Process Bulk Import Files
job processes the data, creating the returns in HotWax.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
To know more about returns, refer to this document.
Import Last Day Orders from Shopify
Job Name: Import Last Day Orders from Shopify
Job Enum ID: JOB_IMP_MISS_ORD
Service Name: importLastDayMissingOrders
Flow: Missed Orders from Shopify to HotWax
This job is used for importing all the last-day orders from Shopify to HotWax. Although HotWax has an Import Orders
job to import orders from Shopify on a scheduled frequency, this job serves as a backup and makes sure that if any order is missed by the import orders job, it will also be imported into HotWax.
How are last-day orders imported?
HotWax gives an API call to Shopify for importing all the last day's orders from Shopify. In response to this request, Shopify provides an order data feed containing data of all the last day's orders in JSON format. Import Last Orders from Shopify
job imports this JSON file and uploads it to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Note: To find the Uploaded file, login to HotWax Commerce OMS, then navigate to Hamburger Menu>EXIM Page > Shopify Jobs tab > Shopify Order MDM
.
Custom Parameters
This job has no required parameters.
It has some optional parameters.
To know more about Order Download refer to this document.
Order Item Attribute
Job Name: Order Item Attribute
Job Enum ID: JOB_ORDER_ITM_ATTR
Service Name: ftpImportFile
Flow: Import Item Attribute from NetSuite to HotWax
This job is used for importing order item attributes from NetSuite to HotWax. Order item attributes are basically used to provide some additional details on the order of every item in an order.
NetSuite provides order line item details in a JSON format file. This JSON file is uploaded by NetSuite to an SFTP location; from there, HotWax imports these attributes.
How are attributes imported?
Order Item Attribute
job fetches the JSON file from the specified SFTP location at defined intervals and imports this JSON file and uploads it to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads a JSON file and creates order records in HotWax Commerce.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
Order Item Rejected
Job Name: Import Order Item Rejected
Job Enum ID: JOB_ORDER_ITM_RJCT
Service Name: ftpImportFile
Flow: Import Rejected Order Item from NetSuite to HotWax
This job is used for importing rejected items in orders from NetSuite to HotWax from the last job run until the current timestamp.
When NetSuite is used as a Warehouse Management System (WMS), it rejects an order in case that order cannot be fulfilled from the warehouse. These orders need to be rebroken in search of another location to get fulfilled. NetSuite marks all such order items as rejected and uploads a JSON feed containing data of all the rejected items to an SFTP location.
How are rejected items synced from NetSuite to HotWax?
NetSuite uploads a CSV-format feed of all the rejected items to an SFTP location. From there, the Import Order Item Rejected
job fetches this CSV file and uploads it to the internal file system of HotWax Commerce for further processing. The Process Bulk Import Files
job then reads the CSV file and creates order records in the HotWax database.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
Import Transfer Order
Job Name: Import transfer Orders
Job Enum ID: JOB_ORDER_ITM_TO
Service Name: ftpImportFile
Flow: Import Transfer Order from NetSuite to HotWax
This job imports transfer orders from ERP systems (e.g., NetSuite) into HotWax. Transfer and purchase orders are created in ERP systems, and HotWax, as an order management system, imports them to maintain accurate inventory records.
How are transfer orders synced?
For every transfer order created in an ERP system (like NetSuite), there is a script that runs on a scheduled frequency and uploads all the transfer orders created in ERP to an SFTP location. From there, the Import Transfer Order
job runs and imports the feed of transfer orders from the SFTP location and uploads it onto the HotWax Commerce internal file system. From there, the Process Bulk Import
job runs, and hence transfer orders are synced from NetSuite to HotWax.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
To know more about importing transfer orders refer to this document.
Order Identification
Job Name: Order Identification
Job Enum ID: JOB_ORDER_IDENT
Service Name: ftpFileImport
Flow: Order Approval (NetSuite to HotWax Order Sync)
This job is used for importing NetSuite order IDs for orders that exist in HotWax. The NetSuite order ID is required for every order to maintain the system's integrity and sometimes in custom order approval flow.
This job runs at a defined frequency and fetches all the records created between the last job run and the current timestamp.
How are NetSuite orders ID mapped in HotWax?
The HotWax Commerce integration platform queries the HotWax database and fetches all the records for which the NetSuite order ID is Null but the NetSuite customer ID exists. And creates a CSV for all such records and uploads it to an SFTP location. Further, a suite script from NetSuite fetches all these orders and provides NetSuite order IDs for all these orders and uploads a JSON feed on the SFTP location. Then the HotWax Commerce Order Identification job imports this JSON from SFTP to IMP_ORDER_IDENTMDM. Next, the Process Bulk Import File job maps all the NetSuite order IDs to the corresponding order IDs in HotWax.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
To know more about order ID sync, refer to this document.
Import Order Metafield
Job Name: Import Shopify Order Metafield
Job Enum ID: IMP_ORD_META_FIELD
Service Name: importShopifyOrderMetafield
Flow: Order information Import Shopify to HotWax
Order metafields are basically some additional information of an order. The Import Order Metafield
job is used for importing order metafields from Shopify to HotWax. Basically, when an order is imported into HotWax, if it has some metafields, HotWax imports those metafields separately through this job
Custom Parameters
nameSpace is the required parameter for this job.
It has some optional parameters.
Approve Transfer Order
Job Name: Approve Transfer Order
Job Enum ID: JOB_APR_TO
Service Name: BulkApproveTransferOrders
Flow: Transfer Order Approval Flow
This job is used for auto-approving transfer orders in HotWax. Basically, the Imports Transfer Order
job checks the status of imported transfer orders from NetSuite to HotWax. The Approve Transfer Order
job works on an essential step to approve transfer orders in HotWax.
Custom parameters:
This job has no required parameters.
It has bufferTime and orderId as the optional parameters.
Import Order Attribute
Job Name: Import order attribute
Job EnumID: JOB_ORDER_ITM_ATTR
Service Name: ftpImportFile
Flow: Importing Order Information from Shopify to HotWax
This job is used for importing order attributes into HotWax. Order attributes are basically some additional information on an order that is essential to be attached with the order.
For example, if an order is to be gift wrapped, this information is essential for the person who will pack the order. Such information will be imported as an order attribute.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
Order Item Fulfillment
Job Name: Order Item Fulfillment
Job Enum ID: JOB_ODR_ITM_FLFLMNT
Service Name: ftpImportFile
Flow: Import Fulfillment update from HotWax to NetSuite.
This job is used for syncing the fulfillment status of orders from NetSuite to HotWax. Basically, when an order is allocated to a warehouse and in cases when NetSuite is used as a warehouse management system (WMS), fulfillment updates on such an order will be taken from NetSuite.
HotWax requires the fulfillment update for various reasons, such as to update status on eCommerce and ultimately to maintain the integrity between HotWax and NetSuite.
How is fulfillment status synced?
NetSuite runs a SuiteScript to provide details of items that are fulfilled in the warehouse. And uploads a JSON file of such details on the SFTP location Order Item Fulfillment
; the job imports the JSON to HotWax and uploads it on IMP_ODR_ITM_FLFLMNT
MDM. Finally, the Process Bulk Import Files
job processes the file, and hence, fulfillments are synced from Netsuite to HotWax.
Custom Parameters
The recommended frequency for this job is 15 minutes.
This job has configId and propertyResource as the required parameters.
It has some optional parameters.
Import Customer
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
frequency
Required
Defines the default duration of the last syncing of the shipment status.
15
bufferTime
Optional
Specifies the buffer time (in minutes) for scheduling job.
Not Specified
limit
Optional
Additional parameters for job customization.
Not Specified
Last updated
Was this helpful?