Skip to main content

Bulk Order Feature Setup Guide

The Bulk Order feature lets your customers easily place large orders for branded merchandise, uniforms, promotional items, and more. This guide walks you through setting it up.


What Is the Bulk Order Feature?

The Bulk Order feature provides a simple 3-step ordering process for your wholesale customers:

StepWhat Happens
Step 1: Build Your OrderCustomers browse products, select sizes/colors, and add quantities to their order list
Step 2: CustomizeCustomers add customization details like logo uploads, thread colors, or special instructions
Step 3: Review & SubmitCustomers review their order and proceed to checkout

Quick Setup (5 Minutes)

Step 1: Create Your Bulk Order Page

  1. In your Shopify admin, go to Online Store → Pages
  2. Click Add page
  3. Enter a title (e.g., "Bulk Order" or "Wholesale Order")
  4. In the URL handle field (under "Search engine listing"), enter: bulk-order
  5. Under Template, select page.bulk-order
  6. Click Save

Step 2: Configure Your Settings

  1. Go to Online Store → Themes → Customize
  2. Navigate to your new Bulk Order page
  3. Click on the Bulk Order section to open its settings
  4. Select the Product collection you want customers to order from
  5. Customize the titles, descriptions, and colors to match your brand
  6. Click Save

Step 3: Add Customization Options

Still in the Theme Editor with your Bulk Order section selected:

  1. Click Add block in the left sidebar
  2. Choose the customization options you want to offer (see table below)
  3. Configure each block's settings (label, options, required, etc.)
  4. Arrange blocks in your preferred order by dragging them
  5. Click Save

Available Customization Blocks:

Block TypeBest For
Product file uploadLogo files, artwork, design mockups
Product swatch groupThread colors, fabric colors, materials
Product custom selectDecoration method (embroidery, screen print, etc.)
Product custom multiselectMultiple options like locations (front, back, sleeve)
Product custom propertyText fields for company name, PO number, etc.
Product design selectorLet customers pick from your design gallery

Section Settings Reference

Collection & Display Settings

SettingWhat It Does
Primary collectionThe main collection of products to show on the bulk order page
Additional collectionsAdd more collections to create filter tabs (customers can switch between collections)
Show collection filterDisplay tabs to let customers filter products by collection (only shows when multiple collections are selected)
"All products" tab labelText for the tab that shows all products (default: "All Products")
Color option nameThe name of your color variant option (default: "Color") — used for showing color images
Show product descriptionsDisplay product descriptions on the cards
Show variant image swatchesShow small image previews next to variant options in dropdowns
Show image popup on mobileWhen customers tap a variant on mobile, show a larger image preview

Multiple Collections Example:

If you sell both apparel and promotional items, you could set up:

  • Primary collection: "Corporate Apparel"
  • Additional collections: "Promotional Items", "Accessories"

This creates filter tabs at the top of Step 1 so customers can quickly switch between product categories while building their order.

Step Titles & Descriptions

Customize the text shown at each step:

SettingDefault Value
Step 1 title"Build Your Order"
Step 1 description(empty)
Step 2 title"Customize Your Order"
Step 2 description(empty)
Step 3 title"Review & Submit"
Step 3 description(empty)

Per-Product Notes

SettingWhat It Does
Enable per-product notesAllow customers to add notes for individual items
Notes labelPlaceholder text for the notes field (e.g., "Special instructions for this item")

Checkout Settings

SettingWhat It Does
Checkout button textText on the checkout button (default: "Checkout Now")

Per-Product Volume Discounts

Display volume discount tiers on individual products using metafields. This allows different products to have different discount structures.

Setting Up Product Metafields

  1. Go to Settings → Custom data → Products
  2. Click Add definition
  3. Configure the metafield:
    • Name: Discount Tiers
    • Namespace and key: custom.discount_tiers
    • Type: Single line text
  4. Save the definition

Adding Discounts to Products

Edit any product and scroll to the Metafields section. Enter discount tiers in this format:

RANGE:DISCOUNT|RANGE:DISCOUNT|RANGE:DISCOUNT

Examples:

ScenarioMetafield Value
Percentage discounts`1-11:0%
Price per item`1-11:$10.00 each
Savings per item`1-5:$0 off
Custom text`1-11:Standard

How It Displays

Products with discount tiers show an expandable "Volume Discounts" section in their product card:

Example: Percentage discounts

QuantityDiscount
1-110%
12-4710%
48+15%

Example: Price per item

QuantityDiscount
1-11$10.00 each
12-47$8.50 each
48+$7.00 each

Discounts applied at checkout

Tips

  • Only products with the metafield configured will show discount info
  • Format is completely flexible — use percentages, price per item, dollar savings, or any custom text
  • Tiers are separated by | (pipe character)
  • Each tier uses format RANGE:VALUE (the "VALUE" can be any text you want)
  • Common range formats: 1-11, 12-47, 48+, 100+

Note: This displays the tiers to customers but doesn't automatically apply discounts. Use a discount app or Shopify's automatic discounts to apply the actual discount at checkout.

Pricing Note

Display a merchant-configurable note near the subtotal (Steps 1 & 2) and total (Step 3):

SettingWhat It Does
Show pricing noteEnable a small note near the pricing totals (default: off)
Pricing note textThe text to display (e.g., "Discounts reflected at checkout")

This is useful for communicating pricing-related information to customers, such as:

  • "Discounts reflected at checkout"
  • "Volume discounts apply at checkout"
  • "Tax calculated at checkout"

Styling Options

Customize colors to match your brand:

  • Progress bar — Background, border, active state, completed state, label colors
  • Product cards — Background, border, text color, border radius
  • Sidebar — Background and border colors
  • Buttons — Background, text, border, and hover state colors
  • Dropdowns — Background, border, and hover colors

Design Picker Integration

If you use the design picker/gallery feature, you can let customers select a design and bring it to their bulk order.

Configure in Theme Settings

  1. Go to Theme Settings → Bulk Order (in the Customize theme editor)
  2. Set the Design picker destination:
    • Hat Lab — Designs go to Hat Lab (existing behavior)
    • Bulk Order — Designs redirect to Step 2 of Bulk Order
    • Both — Customers choose where to send their design

Image Previews & Swatches

Variant dropdowns can show image swatches for color options (when "Show variant image swatches" is enabled):

  • Desktop — Hover over a variant option to see a larger preview tooltip appear beside the dropdown
  • Mobile — Tap a variant swatch to open a full-screen image preview

Mobile Experience

The Bulk Order feature is fully responsive:

  • Order Summary — Appears as a collapsible bottom sheet on mobile
  • Variant Dropdowns — Tap to expand and see all options
  • Image Previews — Tap a variant swatch to see a larger image (when enabled)
  • Progress Bar — Simplified for smaller screens
  • Add Button — Full-width button for easy touch interaction

How Customers Use It

Step 1: Build Your Order

  1. Customer browses products from your selected collection
  2. For each product, they select variant options (size, color, etc.)
  3. They set a quantity and click the Add button to add to their order
  4. Multi-variant selection: Customers can add multiple variants of the same product! After adding one variant, they can select different options (e.g., a different size or color), set a new quantity, and add again
  5. Added variants appear in a list below each product card for easy reference
  6. The "Your Order" sidebar shows running totals of all items
  7. When ready, they click Next

Example: Ordering T-Shirts in Multiple Sizes

A customer ordering custom T-shirts might:

  • Select "Navy / Medium" → enter qty: 10 → click Add
  • Select "Navy / Large" → enter qty: 15 → click Add
  • Select "Navy / XL" → enter qty: 8 → click Add

All three variants appear in the product card and sidebar, and the customer can continue to other products or proceed to Step 2.

Step 2: Customize Your Order

  1. Customer fills in the customization fields you've configured
  2. They can add per-product notes if enabled
  3. When finished, they click Next

Step 3: Review & Submit

  1. Customer reviews all items and customizations
  2. If tiered pricing is enabled, they see potential discounts
  3. They click Checkout Now to proceed to checkout

Troubleshooting

Products aren't showing

  • ✓ Make sure you've selected a collection in the section settings
  • ✓ Check that the collection has products and they're set to "Active"
  • ✓ Verify the products are not hidden by filters or sold out
  • ✓ If using "All Products" as primary collection, ensure you have published products in your store
  • ✓ Try refreshing the page or clearing your browser cache if products appear in the sidebar but not in the grid

Customization blocks aren't appearing

  • ✓ Make sure you've added blocks in the Theme Editor (not just enabled settings)
  • ✓ Click "Add block" and select the customization type you want
  • ✓ Check that blocks are configured with labels and options

Variant images aren't showing in dropdowns

  • ✓ Enable "Show variant image swatches" in section settings
  • ✓ Make sure your product variants have images assigned
  • ✓ The "Color option name" setting should match your actual option name

Design picker isn't redirecting correctly

  • ✓ Go to Theme Settings → Bulk Order and check the destination setting
  • ✓ Make sure your bulk order page exists with the handle bulk-order

Volume discounts aren't showing on a product

  • ✓ Make sure the product has the custom.discount_tiers metafield configured
  • ✓ Check the format: RANGE:DISCOUNT|RANGE:DISCOUNT (e.g., 1-11:0%|12+:10%)
  • ✓ Each tier needs both a range AND a discount separated by :
  • ✓ Multiple tiers are separated by | (pipe character)

Page URL Structure

Your bulk order page will use these URLs:

URLWhat It Shows
/pages/bulk-orderStep 1 (product selection)
/pages/bulk-order?step=2Step 2 (customizations)
/pages/bulk-order?step=3Step 3 (review)

Customers can bookmark any step and the page will remember their order (stored in their browser).


Need Help?

If you run into issues or have questions about the Bulk Order feature:

  1. Double-check your settings against this guide
  2. Clear your browser cache and try again
  3. Contact our support team with screenshots of your settings

Files Reference (For Developers)

FilePurpose
sections/bulk-order.liquidMain section with all settings and step routing
snippets/bulk-order-progress.liquidThe progress bar at the top
snippets/bulk-order-step-1.liquidStep 1: Product grid layout
snippets/bulk-order-step-2.liquidStep 2: Customization form
snippets/bulk-order-step-3.liquidStep 3: Review and checkout
snippets/bulk-order-product-row.liquidIndividual product cards
assets/bulk-order.jsAll interactive functionality
assets/bulk-order.cssStyling
templates/page.bulk-order.jsonPage template definition