Recognizing/Deferring Revenue for orders based on shipment status in Shopify

MyWorks can help you recognize revenue in QuickBooks only when the items in an order have shipped - by recording an item to Deferred Revenue until it's shipped in Shopify

Written by the MyWorks Team

Updated at January 6th, 2026

MyWorks makes it possible to delay recognizing revenue in QuickBooks until items in an order have shipped: letting you sync the order to QuickBooks right away, but recording revenue for unshipped items to a Deferred Revenue account until the item in the Shopify order is shipped. 

This can be helpful for several scenarios, including:

  • Pre-orders/ product launches - where you're collecting orders now for products that will ship later.
  • Backorders/stockouts with future ship dates - where you're waiting for product to arrive before you ship it.
  • Made to order or long-lead-time products - where you're building the product once ordered.

Getting Started

It's quite simple to enable this setting in MyWorks! 

  1. In QuickBooks, ensure you have a product created to be used for items not yet shipped, recording the deferred revenue. This would normally be assigned to a Liability account in your QuickBooks, to track the deferred revenue, like the below example.

  2. In MyWorks Sync > Settings > Order, enable our setting to track Deferred Revenue, and select the above QuickBooks product.

3. In MyWorks Sync > Settings > Order, ensure the setting to control the QuickBooks Order Date is set to the Shopify Order Fulfillment Date. This ensures that when the order is shipped in Shopify, the QuickBooks order date is updated to reflect this, instead of using the original Shopify order date. 

Tracking Deferred Revenue in QuickBooks

Once the above is configured, orders will sync normally to QuickBooks, but will use the Deferred Revenue item for any unshipped line items in the order. Once the item in the order is fulfilled in Shopify, an update for the order will sync to QuickBooks- and will use the actual mapped QuickBooks product; resulting in the income being correctly recorded in QuickBooks, as well as the inventory/cogs, if it's an inventory item in QuickBooks. 

Here's an example as an order is placed in Shopify, progressing to when some, then all, items have shipped.

In QuickBooks, the Deferred Revenue item is used for these items, as none are shipped yet. This ensures these sales are not yet recorded as income in QuickBooks, but instead to the Deferred Revenue Liability account.

 

Later, 2 of the 3 items in the Shopify order are fulfilled. An order update then syncs to QuickBooks, updating these line items to use the actual mapped QuickBooks item, instead of deferred revenue. This would continue updating in QuickBooks until all the items in the Shopify order are fulfilled!