Get Excelify now
Get Excelify now

Draft Orders

See what each field/column from our “Draft Orders” template means including possible allowed values and examples.

Fields marked with “Exported only” tag cannot be imported/set in Shopify and but can be exported with Excelify export.

To import Shopify Draft Orders read this tutorial.

Excel Sheet Name

Draft Orders

​To tell the app that you are importing Draft Orders you need:

  • If using CSV file then the file name needs to contain the word “Draft Orders”, for example, “my-shopify-draft-orders.csv”
  • If using XLSX file then the sheet/tab name in the file needs to be “Draft Orders”. The file name for the XLSX file does not matter.

Columns Available For Export And Import

Base Columns

Column Description / Example Value
ID ID is automatically generated number by Shopify to identify the item.
It is filled in by an Export.
When creating new Draft Orders, leave this value empty.Number

11920047631
Name Name of the Draft Order.

Shopify is always generating its own Draft Order name and doesn’t allow you to assign any specific custom Name to it.

Anyway, when you create new Draft Orders, you need to specify any unique Name for each Draft Order so that the app can distinguish which rows belong to which Draft Order.

When updating Draft Orders, Name cannot be used as a unique identifier. For an update, use exported Draft Order ID.

Text

#D100
Command When importing Draft Order, it tells the app, what to do with it.

  • NEW: will try to create a new Draft Order with the provided details. If such Draft Order will already exist (with the same ID or same Name), the Draft Order creation will fail.
  • UPDATE: Allows to update some of the existing Draft Order attributes. Here is the list of what can be updated.
  • REPLACE: at first, if such Draft Order with provided ID or Name exists, then the app will delete it. After that, it will create a new one. If an existing Draft Order will not be found, then still the app will create a new Draft Order.
  • DELETE: the app will delete the existing Draft Order, which is found by ID or Name. If such Draft Order will not be found, then this item import will fail. This DELETE command can be very handy when Draft Orders need to be deleted in bulk, or when such Draft Orders need to be deleted, which cannot be deleted through the Shopify Admin.

NEW
UPDATE
REPLACE
DELETE

REPLACE
Order ID
ID of the real Order which was created from this Draft Order.

If this cell is filled, this means that the real Order exists from this Draft Order.

If this cell is empty, this means that real Order is not yet created.

Number

234823948234
Status

Exported only

Shows the current status of the Draft Order.

Possible values are:

  • open: Draft Order is created but it doesn’t have an invoice sent, and no real order was yet generated. All importable fields can be updated at this stage.
  • invoice_sent: invoice was sent to the customer of this Draft Order. All importable fields can be updated at this stage.
  • completed: real Order was created from this Draft Order. You can see the ID of the real Order in the “Order ID” column. Only Tags can be updated – any other fields cannot be updated anymore.

To change the Status, you need to use the respective command columns “Send Invoice” and/or “Complete“.

open
invoice_sent
completed
Note Draft Order notes.

Can be a large text going over several lines.

Text

Here I can write any notes I need for the Draft Order.
Tags Tags allow you to add additional elements or “properties” to your order, which you can use for filtering in Admin.

If Draft Order is in “complete” status, Tags is the only field which can be updated.

See this tutorial on how to bulk manage your Tags.

Comma seperated list

Urgent, To Review
Tags Command Tell the app, what to do with Tags:

  • MERGE: will add Tags to existing tags. It means that you don’t need to list all the tags in the import file, you can import those which you want to add. If some of the tags you are importing already exist, then the app will ignore it.
  • DELETE: will delete the Tags that are listed in the import file. If the listed tag will not exist, then the app will ignore it.
  • REPLACE: will replace all existing tags with the tags from the import file. Use this method to maximize the import speed, because if you will use MERGE, it means that the app will need first to load existing tags which takes additional time.

If Tags Command is not set, the app will assume the REPLACE command by default.

You can also have Tags listed in multiple rows within the item and with different Tags Commands.
They will be executed in the same order within the item as you have them listed in the file.

See this tutorial on how to bulk manage your Tags.

MERGE
DELETE
REPLACE

REPLACE
Created At

Exported only

It will be automatically set to the time when the Draft Order was actually created. When migrating from another store, this time will always be the time of migration.

Date & Time

2018-02-06 23:03:00 UTC
Updated At

Exported only

It will be automatically updated, whenever you change the Draft Order data.

Date & Time

2018-02-06 23:03:00 UTC
Currency Currency of the Draft Order.

Currency code in ISO 4217 format

USD
Weight Total

Exported only

Total weight of the ordered items, in grams.

Calculated automatically from Line Items.

Grams

4000
Price: Subtotal

Exported only

Value of the order, including discounts, but before shipping and taxes.

Currency

1000
Tax 1: Title
Tax 2: Title
Tax 3: Title
Exported only
Title of each applied tax.

Each Draft Order can have up to 3 different taxes applied, therefore all those are split into separate tax columns.

To import Taxes – fill those for the Line Items.

Text

VAT
Tax 1: Rate
Tax 2: Rate

Tax 3: Rate
Exported only
The rate of the tax applied.

To import Taxes – fill those for the Line Items.

Number

0.21
Tax 1: Price
Tax 2: Price
Tax 3: Price
Exported only
The calculated tax in the Draft Order currency.

To import Taxes – fill those for the Line Items.

Currency

210.00
Tax: Included Tells whether the Draft Order subtotal has taxes included or not.

Cannot be updated, can be only set when creating a new or replacing the Draft Order.

TRUE
FALSE

TRUE
Tax: Total Total amount of the tax applied to the Draft Order.

Currency

300.43
Price: Total Total amount of the Draft Order, including line items, discounts, shipping cost, and taxes.

Currency

1300.43
Additional Details Additional details collected on the Draft Order from the customer – either from the product page or from the checkout page.

Each added property will be shown as “<name>: <value>”, and will include all of those properties as several lines inside the Excel cell.

When prepared in the same format, those details also can be imported.

Those are visible in Shopify Admin, on each Order, section “Additional Details”. This section shows only if there are any details added, otherwise it’s not visible there.

Read more about collecting additional data for orders:

Lines of

"name: value"

Gift wrapped: yes
Door code: 1234
Row #

Exported only

Will have row number from 1 till the end for each row. So that if you change the sorting in your exported file to easier update your data, you can sort it back by “Row #” and return it to the original sorting. Because, you know, all the item data should be together – and if you change the sorting, you need to sort it back.
Top Row

Exported only

It will have value “TRUE” for each “top row” of the item. That can help you filter in Excel to get only the base rows, in case you need to get rid of repeated rows for each item. Some sheets already had this as Primary Row column earlier, but we have added it now to all the sheets now and renamed to Top Row so it’s more clear.

Customer Columns

Each Draft Order can have one customer or no customer at all.

When importing Draft Orders with Customer data, Excelify will link them by Email or by Phone to existing customers, or create new Customers if such customer doesn’t exist yet.

If you need to change the fields of existing Customer, you cannot change them through Draft Order – you need to import the update through the Customers sheet.

If you are about to send the invoice to the customer, you can skip filling the customer columns – because the customer who will receive the invoice, will fill their customer data themselves.

Column Description / Example Value
Customer: ID Shopify generated Customer ID. If specified existing customer ID from that store, Draft Order will be linked to that customer.

If you don’t have an ID, then leave it empty, and Excelify will link to existing customer by Customer Email or Phone – whichever is found first.

Cannot be updated, can be only set when creating a new order or replacing one.

Number

1234567890
Customer: Email Customer e-mail.

The app will link to existing store Customer by this e-mail or Phone number if e-mail is empty. If the app will not be able to find existing customer to link to, it will create a new customer.

Shopify is very strong about validating e-mail addresses – it is checking if e-mail actually exists in real life. If you import e-mails and get the error that Email is not valid then first you should check that this e-mail is really correct. If it happens to be some old customer Email which you still need to import then you can move that Email value to Note field and leave this Email field empty.

When updating – will update only contact information on the Draft Order, but will not change the data of the Customer.

E-mail

[email protected]
Customer: Phone Phone number must be full – with the country code and must be valid for the respective country.

You can prefix phone numbers with ‘ (apostrophe) to allow Excel to show the + (plus) sign. But the + (plus sign) is not required.

The app will clean out any non-digit characters from the Phone field.

If e-mail is empty, the app will search existing customer by Phone number – and if will find, then will attach this order to that customer.

To change for an existing Draft Order – change the data of the Customer.

Phone Number

'+15417543000
Customer: First Name The first name of the Customer.

To change for an existing Draft Order – change the data of the Customer.

Text

John
Customer: Last Name The last name of the Customer.

To change for an existing Order – change the data of the Customer.

Text

Smith
Customer: Note Whatever is written on the Customer card, accessible from Shopify Admin.

To change for an existing Order – change the data of the Customer.

Text

Your notes go here.
Customer: Orders Count

Exported only

Total count of orders made by this Customer.

Number

100
Customer: State The Customer status – one of those:

  • disabled: customers are disabled by default until they are invited.
  • invited: the customer has been emailed an invite to create an account.
  • enabled: the customer accepted the email invite and created an account.
  • declined: the customer declined the email invite to create an account. If Customer has declined your invitation, you cannot generate new Account Activation URL.

To change for an existing Draft Order – change the data of the Customer.

disabled
invited
enabled
declined

enabled
Customer: Total Spent

Exported only

The total amount the customer has spent at the moment of the export.

Currency

1024.99
Customer: Tags Tags allow you to add additional elements or “properties” to your Customer, which you can use for filtering, for developing some additional logic for those Customers in your Store Theme.

To change for an existing Draft Order – change the data of the Customer.

Comma seperated list

Friend, Migrated
Customer: Accepts Marketing Whether Customer accepted that he can be sent Marketing e-mails.

To change for an existing Draft Order – change the data of the Customer.

TRUE
FALSE

TRUE

Customer Billing Address Columns

All the following fields will be shown in the Draft Order in the Billing Address block. When imported, will be added as one of the addresses for the Customer, too.

Can only be updated for draft orders with statuses “open” and “invoice sent”, cannot be updated for “completed” Draft Orders.

Column Description / Example Value
Billing: First Name The first name of the Customer in the Billing Address.

Text

John
Billing: Last Name The last name of the Customer.

Text

Smith
Billing: Company Company name, if the billing address is a company.

Text

Smith Inc.
Billing: Phone Phone number to use for this address.

Phone Number

'+15417543002
Billing: Address 1 Address 1st line.

Text

Calvin Street 5
Billing: Address 2 Address 2nd line.

Text

2nd Floor
Billing: Zip Zip number of the address. Shopify doesn’t check its correctness.

Zip

ZIP-1234
Billing: City City name. Is not checked, so it’s possible to enter any city name.

Text

Dough
Billing: Province Province names are checked against Shopify geographic classifier. If provided province will not be valid, then Shopify will accept it, but it will be empty on the customer card.

If you are not sure, what are available values, go to Shopify Admin, edit the Address, and click the drop-down to choose the Province for chosen Country.

If the Province Code is filled, this can be left empty, then Province will be set from there.

Province Name

Ontario
Billing: Province Code In Shopify classifier there are Province Codes. If provided province code will not be valid, then Shopify will accept it, but it will be empty on the customer card.

If Province is filled, this can be left empty, then Province will be set from there.

Province Code

ON
Billing: Country Country names are checked against Shopify geographic classifier. If the provided country will not be valid, then Shopify will accept it, but it will be empty on the customer card.

If you are not sure, what are available values, go to Shopify Admin, edit the Address, and click the drop-down to choose the Country.

If Country Code is filled, this can be left empty, then Country will be set from there.

Required Country or Country Code. If empty, the address will not be created.

Country Name

Canada
Billing: Country Code Country international code, consisting of 2 letters.

If Country is filled, this can be left empty, then Country will be set from there.

Country Code

CA

Customer Shipping Address Columns

All the following fields will be shown in the Draft Order in the Shipping Address block. When imported, will be added as one of the addresses for the Customer, too.

Those columns are the same, as for Billing Address, just the column name starts with “Shipping: …”, so those will not be repeated here.

Can only be updated for draft orders with statuses “open” and “invoice sent”, cannot be updated for “completed” Draft Orders.

Line Item Columns

Each Draft Order must have at least one line item.

Can only be updated for draft orders with statuses “open” and “invoice sent”, cannot be updated for “completed” Draft Orders.

<tr”>Line: Variant Title

Has a different value, depending on the Line Type:

  • Line Item: the title of the product variant included in the line item.
  • Discount: ignored
  • Shipping Line: ignored

Text

Red / XS
Column Description / Example Value
Line: Type Draft Order consists of “Line Items”, where each of them as a certain line type. That allows to group items together in a fashion that can be reconciled with actual draft order data, and most importantly – cross-check that all amounts match.

Some of the line types will have details in the Line Item columns, but some will have details in their own respective columns.

  • Line Item: Draft Order line item.
  • Discount: Discount which is applied to the whole order. A Draft Order can have only one discount line.
  • Shipping Line: Shipping cost of the whole order. A Draft Order can have only one shipping line.

Line Item
Discount
Shipping Line

Line Item
Line: Product ID ID of the line item Product – if the line item is a product.

Line items can be custom, without a link to the Product, in that case, the Product ID will be empty.

When importing a Draft Order, can have a real product ID from the store. If such ID will not be found in the store (e.g. when copying Draft Orders from another store), then the app will try to match it by “Line: Product Handle” column value.

Number

200005386255
Line: Product Handle Has a different value, depending on the Line Type:

  • Line Item: this is the secondary way how to identify the product if it can’t be found by Product ID. It is used in cases when copying Draft Orders from one store to another, which have the same Products – then the right product will be linked to the Draft Order by the Handle.
  • Discount: ignored
  • Shipping Line: Shipping service Handle.

Text

tshirt-with-picture-of-me
Line: Title Has a different value, depending on the Line Type:

  • Line Item: the title of the Draft Order line item. When importing, if Line Item is linked to Product then Shopify will always take this value from the actual Product.
  • Discount: “percentage” or “fixed_amount”. To set the discount value, see the column “Line: Quantity”.
  • Shipping Line: the shipping title written in free form.

If Title will contain HTML tags then they will be removed by the app.

Text

Tshirt With Picture Of Me
Line: Name Has a different value, depending on the Line Type:

  • Line Item: full name of the Draft Order line item, which includes the variant title. Formatted as <product title> – <variant title>. When importing – it will be saved, but will not be visible anywhere on the Draft Order screen.
  • Discount: the free text comment that was written for the discount. If the discount code was used, then it will be here.
  • Shipping Line: the shipping code, usually has value “custom”.

Text

Tshirt With Picture Of Me - Red / XS
Line: Variant ID Variant ID of the line item Product variant – if the line item is a product.

In case of the custom line item (not related to a real product), this ID will be empty.

When importing a Draft Order, can have a real variant ID from the store. If such ID will not be found in the store for that product (e.g. when copying Draft Orders from another store), then the app will try to match it by “Line: SKU” column value.

Number

1834691428367
Line: SKU Has a different value, depending on the Line Type:

  • Line Item: the SKU of the product variant included in the line item.
  • Discount: ignored
  • Shipping Line: ignored

Text

SKU-1234567
Line: Quantity Has a different value, depending on the Line Type:

  • Line Item: the quantity of the line item purchased.
  • Discount: the value of the discount applied. If “Line: Title” is “percentage” then this will be the percentage number. If “fixed_amount” then the value of the fixed amount discount. The value should be positive.
  • Shipping Line: ignored

Number

100
Line: Price Has a different value, depending on the Line Type:

  • Line Item: the price of one line item purchased – can only be set for Custom Line Items. Line items that are linked to the actual product will get their Line: Price set from the Products price. Price is required for Line Item when creating a new Order – be it as custom price, or from the linked product.
  • Discount: ignored
  • Shipping Line: the price of the shipping applied to the order.

Currency

5.49
Line: Discount Has a different value, depending on the Line Type:

  • Line Item: line item level discount amount. Always expressed as a fixed value, regardless if the percentage or fixed amount is used.
  • Discount: the whole Draft Order level discount amount. The amount is negative. If importing empty value for “percentage” discount type, then it’s automatically calculated from the specified percentage in the “Line: Quantity” column.
  • Shipping Line: ignored

Amounts in this column are organized so that you can sum all discount column per order, and get the correct total discount value for that Draft Order.

Currency

49.00
Line: Total Has a different value, depending on the Line Type:

  • Line Item: line item total as Quantity * Price + Discount (because Discount is negative).
  • Discount: the whole Draft Order level discount amount total. The amount is negative. If importing empty value for “percentage” discount type, then it’s automatically calculated from the specified percentage in the “Line: Quantity” column.
  • Shipping Line: the same as “Line: Price”. Ignored when imported.

Amounts in this column are organized so that you can sum all Line Totals per order, and get the correct total value for that Draft Order.

Currency

500.00
Line: Grams Has a different value, depending on the Line Type:

  • Line Item: weight per line item sold in grams (weight of one item). To get the weight of the whole line item – multiply this by “Line: Quantity”.
  • Discount: ignored
  • Shipping Line: ignored

Number

250
Line: Requires Shipping Has a different value, depending on the Line Type:

  • Line Item: TRUE if the line item requires shipping.
  • Discount: ignored
  • Shipping Line: ignored

TRUE
FALSE

TRUE
Line: Vendor Vendor name of the product purchased.

Text

Puma
Line: Properties Additional details collected on the Draft Order from the customer about the line item – either from the product page or from the checkout page.

Each added property will be shown as “<name>: <value>”, and will include all of those properties as several lines inside the Excel cell.

When prepared in the same format, those details also can be imported.

Those are visible in Shopify Admin, on Draft Order, for each Line Item. Those properties show only if there are any added, otherwise, they are not shown here.

Read more about collecting additional properties for order line items:

Lines of

"name: value"

Color: Red
Engraving: My Name
Line: Gift Card

Exported only

TRUE if the line item is a gift card.

TRUE
FALSE

FALSE
Line: Taxable TRUE if the line item is taxable.

TRUE
FALSE

TRUE
Line: Tax 1 Title
Line: Tax 2 Title
Line: Tax 3 Title
Title of each applied tax.

Each order can have up to 3 different taxes applied, therefore all those are split into separate tax columns.

Text

VAT
Line: Tax 1 Rate
Line: Tax 2 Rate
Line: Tax 3 Rate
The rate of the tax applied.

Decimal Number

0.21
Line: Tax 1 Price
Line: Tax 2 Price
Line: Tax 3 Price
The calculated tax in the order currency.

Currency

105.00
Line: Fulfillable Quantity

Exported only

The quantity of the line item that is still left to be fulfilled.

Only exported – when importing it is calculated from actual line items.

Number

50
Line: Fulfillment Service Service provider handle who is doing the fulfillment.

To find out the handle, easiest is to enter one through the Shopify Admin, and then look in the export file.

If empty, will be assumed as “manual” by default.

manual
amazon
shipware

<other provider handle>

manual

Product Data Columns

Those columns are only exported. They will get ignored if being imported back.

Note that if you change the data of your Shopify Product, the Draft Order Line items will remain as they were when the order was placed, but the Product Data columns will contain the current product data.

Column Description / Example Value
Line: Product Type

Exported only

Product Type

Text

Line: Product Tags

Exported only

Product Tags

Text

Line: Variant SKU

Exported only

Product Variant SKU

Text

Line: Variant Barcode

Exported only

Product Variant Barcode

Text

Line: Variant Weight

Exported only

Product Variant Weight

Number

Line: Variant Weight Unit

Exported only

Product Variant Weight Unit

Text

Line: Variant Inventory Qty

Exported only

Product Variant Inventory Quantity

If you have the inventory distributed across several locations, then this quantity will show the total sum of available inventory of this variant across all your locations.

Number

Invoice Columns

You can instruct the Shopify to send an invoice for the Draft Order to the customer – by importing those invoice columns.

Column Description / Example Value
Send Invoice If setting this to TRUE, it tells the Excelify app to send the invoice for this Draft Order.

The link received by the customer will take them to the Checkout page. Once they will complete the checkout, the Draft Order will get completed – it will create the real Order.

When importing new Draft Order with this set to TRUE, at first the Draft Order is created and instantly the invoice is sent to the customer.

TRUE
FALSE
Send Invoice: To E-mail address of the invoice recipient.

If left empty, the invoice is being sent to the Customer which is the “Customer: Email”.

E-mail

Send Invoice: From Sender e-mail address which will show for the customer who received the invoice.

You can also enclose the email in “<>” and add a sender name at the beginning. That will show up in the received invoice as a sender name.

E-mail or Name <e-mail>

Jon Sunny <[email protected]>
Send Invoice: Bcc “Blind carbon copy” of the e-mail – which means, additional recipients of the invoice. Their e-mail addresses will not be visible by e-mail receivers, hence the “blind”.

E-mail

Send Invoice: Subject The e-mail subject.

If left empty, the Shopify will put its own default e-mail subject.

You can also use some variables in the invoice subject that Shopify knows how to decode.
For example:

  • {{name}}
  • {{total_price}}
  • {{note}}

You can find a documented list of variables in the Shopify documentation.

Text

Invoice {{name}} - {{total_price}}$ - {{note}}
Send Invoice: Message The message of the invoice e-mail.

HTML code is allowed.

If empty, then the default Shopify e-mail message will be used.

Text

Completion Columns

You can instruct the Shopify to complete the Draft Order – thus making the real Order from the Draft Order.

Column Description / Example Value
Complete If setting this to TRUE, it tells the Excelify app to generate the real Order from this Draft.

When importing new Draft Order with this set to TRUE, at first the Draft Order is created and instantly the real Order is generated.

TRUE
FALSE

TRUE
Complete: Payment Pending If setting this to TRUE, the created Order will have the payment status as “Payment Pending”.

If this will be empty or FALSE, then the real Order will not have the payment pending.

TRUE
FALSE

FALSE

Metafields

You can import and export Metafields for Draft Orders the same way as for any other items.

Read more detailed documentation on the Metafields page.

Good To Know

  • If you need to update something beyond that is allowed to update, please use the REPLACE command and replace the whole Draft Order with another – that will allow you to set any data at the moment of draft order creation.
  • To import several line items to Draft Order, just repeat the row with the same ID or Name.
  • When importing Draft Orders from scratch, start by the minimal fields, and grow it up from there, using the REPLACE command.
  • Minimal fields are Name, Line Item Title, Price and Quantity.