Request: Ability to set custom order name field via API for Draft Orders

We have to create both orders and draft orders via API. We use “name” when creating orders, but we can’t set “name” while creating orders from draft orders. Please add possibility to add an order_name field for draft orders

Hi Ilya,

The current GraphQL inputs are asymmetric here: OrderCreateOrderInput exposes name, but DraftOrderInput does not. Completing a draft therefore creates the order with Shopify’s generated order name; there isn’t a supported order_name field on draftOrderCreate or draftOrderUpdate today.

For a stable external reference, the safest workaround is to put it on the draft as one of:

  • poNumber if it is a buyer/ERP purchase-order reference;
  • a namespaced metafield if another system needs to query it; or
  • a custom attribute/tag if staff mainly need to see or filter it.

After draftOrderComplete, store the returned Shopify order ID/name beside that external reference rather than trying to overwrite the generated name. The current fields are listed in Shopify’s DraftOrderInput documentation; the separate order-creation input that exposes name is OrderCreateOrderInput.

Where does your custom name need to appear: Shopify Admin, the customer invoice, or a downstream ERP? That determines whether poNumber, a metafield, or a custom attribute is the least fragile substitute.