Shopify Custom Orders: Solving the 'Add Products' & 'Cost of Goods' Headaches

Hey everyone, your Shopify expert here! I recently came across a really insightful post in the Shopify community from a store owner named mamanova, titled "How weird is this..?" And honestly, it perfectly captures a couple of frustrations I often hear from merchants dealing with custom orders. mamanova wasn't shy about it, stating, "Creating custom orders is just broken… Like, why?" followed by some very valid points.

It's a common sentiment. Shopify is fantastic, and mamanova even ended their post with, "For the rest, I do love to work with Shopify." :slight_smile: But those little friction points, especially with unique customer requests, can really be a headache.

Let's dive into the two core issues mamanova highlighted and talk about how we can navigate them, drawing from best practices and a bit of insight into how Shopify's draft orders (what mamanova refers to as custom orders) are designed.

The Custom Order Conundrum: Letting Customers Browse & Add Store Items

Mamanova's first point resonated: "When you create a custom order and the customer would like to brows the store and add things, it is impossible. How is this not an option?" This is a classic point of confusion with Shopify's "Draft Order" functionality. A Draft Order is essentially an invoice you, the merchant, build for a customer. It's not designed as a live shopping cart where a customer can browse your store and add items themselves while it's in a draft state.

If a customer needs to browse and add more items, they need to be on your actual storefront, using their own shopping cart. The goal is to get all items into one unified cart for a single checkout.

Solution: Combining Custom Items with Store Browsing

Here’s a streamlined approach for when a customer wants a custom item and wants to add standard products from your store to the same order:

  1. Create Your Custom Item as a "Real" Product (Even if Hidden): Instead of just typing a "custom line item" directly into a Draft Order, first create a dedicated product in your Shopify admin for that custom request. You can make it a "draft" product or hide it from your online store. Give it a clear title, like "Custom Order for [Customer Name]" or "Special Engraved Pendant."
  2. Set the Price & Details: Configure the price, weight, and any other relevant details for this custom product.
  3. Add to Customer's Cart & Continue Shopping:
    • Option A (You Add for Them): If you're assisting them, visit your storefront, add this custom product to the cart, and then share the cart link.
    • Option B (Customer Adds Themselves): Provide the customer with a direct link to this custom product's page. Instruct them to add it to their cart.
    Once the custom item is in their cart, they can then browse your entire store and add any other standard products they desire. All items will be in one cart, ready for a single checkout.
  4. Review & Checkout: They proceed to checkout as usual, resulting in one complete order with both custom and standard items, all handled through the regular checkout flow.

This method ensures a smooth customer experience and keeps everything within a single order for cleaner inventory, fulfillment, and reporting.

The Reporting Headache: Tracking Cost of Goods for Custom Products

Mamanova's second point was equally critical for any business serious about their numbers: "When you create a custom product in this custom order, you are just not able to add a cost of goods... all of the sudden you are not able to use rapports because you will have 0 cost of goods for this order…" This is a very real challenge for accurate profit reporting.

When you add a "custom line item" directly into a Draft Order (by simply typing in a product name and price), Shopify treats it as a unique, unlinked entry. It's not connected to an actual product variant in your inventory, so there's no inherent field for "Cost per item" or "Cost of Goods Sold" (COGS). This can indeed skew your profit reports significantly.

Solution: Accurate COGS for Custom Items in Draft Orders

The trick here is to leverage Shopify's existing product structure, even for custom items created within a Draft Order. This ensures your COGS are always tracked:

  1. Create a Generic "Custom Order Item" Product: In your Shopify admin, create a hidden product (set to "Draft" or hidden from sales channels) specifically for custom order placeholders. Call it something like "Custom Order Item."
    • Set its initial price and "Cost per item" to $0.00 (you'll adjust these per order).
    • Disable inventory tracking for this placeholder product.
  2. When Creating a Draft Order, Use This Product:
    • Instead of typing a custom line item, click "Browse" or search for your "Custom Order Item" product.
    • Add it to the Draft Order.
  3. Customize & Add COGS to the Line Item:
    • Once added, click on the line item within the Draft Order. You can now edit its title (e.g., "Custom Engraved Watch"), quantity, and price.
    • Crucially, you'll also see the "Cost per item" field. Enter the actual cost of goods for this specific custom product here. Shopify allows you to override the default product cost within a Draft Order line item.
    • Fill in any other relevant details like SKU if needed.
  4. Repeat for Multiple Custom Items: For orders with several unique custom components, add multiple "Custom Order Item" products and customize each one individually with its specific title, price, and COGS.

By following this method, your custom items are linked to an actual (albeit generic) product, allowing Shopify to capture COGS data. This means your profit reports will be accurate, giving you a true picture of your custom order profitability. It's a small adjustment that makes a massive difference in your financial tracking!

I hope these insights help clear up some of those "why is this so weird?" moments mamanova and many others experience. While Shopify's core functionality is robust, sometimes it's about understanding the intended workflow and finding clever ways to adapt it to your unique business needs. Keep those questions coming in the community – that's how we all learn and grow together!

Share:

Start with the tools

Explore migration tools

See options, compare methods, and pick the path that fits your store.

Explore migration tools