Many merchants need to collect extra information at checkout — gift messages, delivery instructions, custom engraving text, or special requests. Shopify doesn’t have this built in, but there are several ways to add custom order fields.
Why Add Custom Fields to Orders?
- Collect personalization details (name to engrave, shirt number, etc.)
- Gift wrap and message requests
- Delivery instructions or preferred time windows
- B2B purchase order numbers
Option 1: Shopify’s Native Order Notes
Every Shopify cart has a built-in “Order Note” field. In your theme editor, enable cart notes. This gives customers a free-text field that appears in your order view.
Option 2: Product-Level Custom Fields with Apps
- Infinite Options by ShopPad — most popular, free plan, handles text fields, dropdowns, file uploads
- Easify Product Options — newer, very flexible conditional logic
- Bold Product Options — enterprise-grade with inventory tracking per option
Option 3: Checkout Extensions (Shopify Plus)
With Shopify Plus and Checkout Extensibility, add custom UI blocks anywhere in the checkout flow. Use Checkout Blocks app to drag-and-drop custom fields without coding.
Option 4: Line Item Properties (Developer Method)
In your product template, add an input:
<input type="text" name="properties[Gift Message]" />
This attaches the field value directly to the line item and appears in orders, packing slips, and fulfillment emails.
Accessing Custom Field Data
- Orders admin panel under “Additional details”
- Order confirmation email (with theme customisation)
- Packing slips
- Shopify API
line_items[].properties