Orders without inventory adjustments

Question

Is there a way for an app to differentiate between:

  1. An order that DOES decrement inventory
  2. An order that does NOT decrement inventory

?

Background

Shopify’s Marketplace Connect application can connect to marketplaces like Amazon.

Marketplace Connect syncs orders from Amazon to a user’s shop.

Amazon has 2 types of orders:

  • FBA: Amazon does the fulfillment from their warehouse
  • FBM: The fulfillment is done by the store

For FBA orders: No inventory is removed from the store’s location.

For FBM orders: Inventory is marked as committed until there is a fulfillment.

Complication

Easy: You might think that FBA orders wouldn’t have a Fulfillment Order or Fulfillment. Unfortunately they do.

Worse: Not only do FBA orders have Fulfillment Orders and Fulfillments, but they are indistinguishable from regular Fulfillment Orders and Fulfillments.

Indistinguishable

Twins: As far as I can tell, there is nothing to show that inventory should be removed with one order type and not with the other order type.

Both have requiresShipping as true.

Both have Fulfillment Orders and Fulfillments.

Location: Both of those have a Location.

Quantity: Both Fulfillment Line Items have a valid quantity

Dates: I thought that maybe I could identify these situations in general by when the Order, FulfillmentOrder and Fulfillment all have the exact same createdAt timestamp, but that has a lot of false-positives with web and POS orders.

Context

Why: My application needs to know the difference between those 2 situations because my application is an inventory management application.

1 Like

@KyleG-Shopify Maybe another interesting question for you

Duplicate: How to determine if Marketplace Order moves stock

1 Like