Skip to main content

Order Fields

Orders contains details about the customer, items purchased, payments, fulfillment, and more.

Sample Files

Here are sample spreadsheets you can use to test the order import functionality:

General

ID

Description

Example Value

Shopify order identifier

12345678

If present, the ID will be used to identify existing orders for updates.

When creating new orders, the ID is used to group multiple rows together into a single order. The value does not need to be an existing Shopify order ID. You can use any arbitrary value (e.g. 1, 2, 3) to indicate which rows belong to the same order. Each unique ID value will become a separate order.

Name

Description

Example Value

Order name/number

#1001

The order name is used as a key to identify existing orders during import. Order names should be unique. If left empty, Shopify will generate the next sequential order number automatically. When importing new orders, you can leave this blank or use any value you like. Either the ID or Name column should have a value so that multi-row orders can be grouped correctly.

When matching existing orders, the leading # is optional. A value of 1001 will match Shopify's #1001. Matching is also case-insensitive and ignores surrounding whitespace, so order numbers exported from other systems can be imported without rewriting them. Only one leading # is normalized - ##1001 is treated as a different value.

Command

Description

Example Value

Action to perform

MERGE

  • NEW: Create a new order (will skip if order already exists)

  • UPDATE: Update existing order (will skip if order doesn't exist)

  • MERGE: Update existing order or create if not found

  • REPLACE: Delete and recreate the entire order with only data from the file

  • DELETE: Remove the order from the store

  • IGNORE: Skip this order during import

Send Receipt

Description

Example Value

Send confirmation: TRUE, FALSE

FALSE

  • TRUE: Send order confirmation email to customer

  • FALSE: Do not send confirmation email (default)

Inventory Behaviour

Description

Example Value

Inventory claim behavior

bypass

The behavior to use when updating inventory:

  • bypass: Do not claim inventory (default)

  • decrement_ignoring_policy: Ignore the product's inventory policy and claim all amounts no matter what

  • decrement_obeying_policy: Obey the product's inventory policy

Phone

Description

Example Value

Contact phone number

+13125550123

Phone number must include country code and be valid for the respective country. Can be different from the customer's phone number. Shopify has strict validation for phone numbers - see DAT001 error code for details.

Email

Description

Example Value

Contact email address

Contact email for the order. Can be different from the customer's email address. Must be a valid email format.

Note

Description

Example Value

Internal order notes

Priority shipping requested

Internal notes about the order that are visible in Shopify Admin but not to customers.

Tags

Description

Example Value

Order tags

wholesale, urgent

Comma-separated list of tags for filtering and organization purposes.

Tags Command

Description

Example Value

Tag action

REPLACE

  • MERGE: Add tags to existing tags (default)

  • DELETE: Remove the specified tags

  • REPLACE: Replace all existing tags with specified tags

Created At

Description

Example Value

Order creation time - Export only

2024-12-05 06:12:35 -0500

The timestamp when the order was created. This field is export-only and cannot be imported. ISO-formatted timestamps are also supported.

Updated At

Description

Example Value

Last modification time - Export only

2024-12-05 06:12:35 -0500

The timestamp when the order was last modified. This field is export-only and cannot be imported. ISO-formatted timestamps are also supported.

Processed At

Description

Example Value

Order processing time

2024-12-05 06:12:35 -0500

The date and time when the order was processed. This appears in Shopify Admin and analytics reports. ISO-formatted timestamps are also supported. If no timezone is specified, your shop's timezone will be used.

Cancelled At

Description

Example Value

Order cancellation time

2024-12-05 06:12:35 -0500

The timestamp when the order was cancelled. Empty if the order is not cancelled. ISO-formatted timestamps are also supported.

Cancel: Reason

Description

Example Value

Cancellation reason

customer

The reason for cancelling the order. Used during UPDATE to trigger order cancellation. See Cancelling Orders for details and a full example.

Supported values (case-insensitive):

  • customer: The customer requested cancellation

  • declined: Payment was declined

  • fraud: The order was fraudulent

  • inventory: Insufficient inventory

  • staff: Staff made an error

  • other: Other reason (default if unrecognized value is provided)

Cancel: Refund

Description

Example Value

Refund to original payment: TRUE, FALSE

FALSE

Whether to refund the customer to their original payment method when cancelling an order. Only used in combination with Cancel: Reason.

  • TRUE: Refund to original payment method

  • FALSE: Do not issue a refund (default)

Cancel: Send Receipt

Description

Example Value

Send notification: TRUE, FALSE

FALSE

Whether to send a cancellation notification email to the customer. Only used in combination with Cancel: Reason.

  • TRUE: Send cancellation notification

  • FALSE: Do not send notification (default)

Cancel: Restock

Description

Example Value

Restock inventory: TRUE, FALSE

TRUE

Whether to restock inventory when cancelling an order. Only used in combination with Cancel: Reason.

  • TRUE: Restock inventory items (default)

  • FALSE: Do not restock inventory

Currency

Description

Example Value

Order currency

USD

Three-letter currency code in ISO 4217 format.

Source

Description

Example Value

Order source/channel

online_store

The channel where the order originated. When importing, you can set any custom value except Shopify reserved words (web, pos, iphone, android, shopify_draft_order).

Payment Status

Description

Example Value

Payment status

paid

  • pending: Payments are pending (may fail)

  • authorized: Payments have been authorized

  • partially_paid: Order has been partially paid

  • paid: Payments have been paid

  • partially_refunded: Payments have been partially refunded

  • refunded: Payments have been refunded

  • voided: Payments have been voided

Fulfillment Status

Description

Example Value

Order fulfillment status - Export only

fulfilled

  • fulfilled: Every line item has been fulfilled

  • partial: At least one line item has been fulfilled

  • restocked: Every line item has been restocked and order cancelled

  • (empty): No fulfillments have been created

This field is export-only and cannot be imported.

Price: Total Discount

Description

Example Value

Total order discount in shop currency

10.00

The total discount applied to the order in the shop's base currency.

Price: Total Shipping

Description

Example Value

Total shipping price in shop currency

7.50

The total shipping price for the order in the shop's base currency.

Customer Information

Customer: ID

Description

Example Value

Customer identifier

987654

Shopify-generated customer ID. Accepts both numeric IDs (e.g., 987654) and Shopify GIDs (e.g., gid://shopify/Customer/987654). If specified, the order will be linked directly to that existing customer.

When importing orders, customers are resolved in the following priority order:

  1. Customer: ID - Links to an existing customer by ID

  2. Customer: Email - Finds an existing customer by email, or lets Shopify create one

  3. Customer: Phone - Finds an existing customer by phone number

  4. If none of the above are provided, a new customer is created from the name and address fields

Customer: Email

Description

Example Value

Customer email

Customer's email address. Used to find existing customers or create new ones if no customer ID is provided.

Customer: Phone

Description

Example Value

Customer phone

+13125550123

Customer's phone number with country code. Used as fallback to find existing customers if email is empty. When importing orders without a customer email, the app will automatically search for existing customers using this phone number to maintain customer relationships. Shopify has strict validation for phone numbers - see DAT001 error code for details.

Customer: First Name

Description

Example Value

Customer first name

Jane

The customer's first name. This field is optional, if you only have one name you should place it in the Customer: Last Name field instead.

Customer: Last Name

Description

Example Value

Customer last name

Smith

The customer's last name. This field is required when creating a customer.

Customer: Note

Description

Example Value

Customer notes

VIP customer

Notes about the customer visible in Shopify Admin.

Customer: State

Description

Example Value

Customer status

enabled

  • disabled: Customer is disabled (default until invited)

  • invited: Customer has been emailed an account invite

  • enabled: Customer accepted invite and created account

  • declined: Customer declined the email invite

Customer: Tax Exempt

Description

Example Value

Tax exempt: TRUE, FALSE

FALSE

  • TRUE: Customer is exempt from taxes

  • FALSE: Customer is subject to normal tax rules

Browser: IP

Description

Example Value

IP address of the customer at purchase - Export only

159.148.78.222

The IP address recorded by Shopify when the customer placed the order. Useful for fraud detection and geographic analysis. This field is export only and cannot be set during import.

Addresses

Billing: First Name

Description

Example Value

Billing address first name

John

First name for the billing address. This field is optional, if you only have one name you should place it in the Billing: Last Name field instead.

Billing: Last Name

Description

Example Value

Billing address last name

Smith

Last name for the billing address. This field is required when creating a billing address.

Billing: Company

Description

Example Value

Billing company name

Smith Inc.

Company name for billing address, if applicable.

Billing: Phone

Description

Example Value

Billing phone number

+13125550123

Phone number for billing address with country code. Shopify has strict validation for phone numbers - see DAT001 error code for details.

Billing: Address 1

Description

Example Value

Billing street address

123 Main St

First line of billing address. Required for billing address creation.

Billing: Address 2

Description

Example Value

Billing address line 2

Suite 100

Second line of billing address (optional).

Billing: City

Description

Example Value

Billing city

New York

City for billing address. Required for billing address creation.

Billing: Province

Description

Example Value

Billing province

New York

Province/state name for billing address. Must match Shopify's geographic classifier.

Billing: Province Code

Description

Example Value

Billing province code

NY

Two-character province/state code. See the complete list of codes.

Billing: Country

Description

Example Value

Billing country

United States

Country name for billing address. If no country code is provided, Altera will attempt to convert the country name to a code automatically (e.g., "USA", "U.S.A.", "United States", "UK", "Great Britain" are all recognized). If both country and country code are provided, the country code takes precedence. See the complete list of codes.

Billing: Country Code

Description

Example Value

Billing country code

US

Two-character country code for billing address (e.g., US, CA, GB). This field takes precedence over the country name field. If not provided, Altera will attempt to convert the country name to a code. See the complete list of codes.

Billing: Zip

Description

Example Value

Billing zip code

10001

Postal/zip code for billing address.

If your zip code starts with zeros (like 01234), Excel may strip the leading zeros. To prevent this, start the zip code with a single quote: '01234. The quote will be automatically removed during import.

Shipping: First Name

Description

Example Value

Shipping address first name

John

First name for the shipping address. This field is optional, if you only have one name you should place it in the Shipping: Last Name field instead.

Shipping: Last Name

Description

Example Value

Shipping address last name

Smith

Last name for the shipping address. This field is required when creating a shipping address.

Shipping: Company

Description

Example Value

Shipping company name

Smith Inc.

Company name for shipping address, if applicable.

Shipping: Phone

Description

Example Value

Shipping phone number

+1-555-0123

Phone number for shipping address with country code. Shopify has strict validation for phone numbers - see DAT001 error code for details.

Shipping: Address 1

Description

Example Value

Shipping street address

123 Main St

First line of shipping address.

Shipping: Address 2

Description

Example Value

Shipping address line 2

Suite 100

Second line of shipping address (optional).

Shipping: City

Description

Example Value

Shipping city

New York

City for shipping address.

Shipping: Province

Description

Example Value

Shipping province

New York

Province/state name for shipping address.

Shipping: Province Code

Description

Example Value

Shipping province code

NY

Two-character province/state code. See the complete list of codes.

Shipping: Country

Description

Example Value

Shipping country

United States

Country name for shipping address. If no country code is provided, Altera will attempt to convert the country name to a code automatically (e.g., "USA", "U.S.A.", "United States", "UK", "Great Britain" are all recognized). If both country and country code are provided, the country code takes precedence. See the complete list of codes.

Shipping: Country Code

Description

Example Value

Shipping country code

US

Two-character country code for shipping address (e.g., US, CA, GB). This field takes precedence over the country name field. If not provided, Altera will attempt to convert the country name to a code. See the complete list of codes.

Shipping: Zip

Description

Example Value

Shipping zip code

10001

Postal/zip code for shipping address.

If your zip code starts with zeros (like 01234), Excel may strip the leading zeros. To prevent this, start the zip code with a single quote: '01234. The quote will be automatically removed during import.

Line Items

Product and Variant Matching

When importing line items, the app will attempt to match products and variants using the following fields in order of priority:

For Products:

  1. Line: Product ID (primary)

  2. Line: Product Handle (if ID not found)

  3. Line: SKU (if ID and Handle not found)

For Variants:

  1. Line: Variant ID (primary)

  2. Line: SKU (if Variant ID not found)

You only need to provide one of these identifiers per product/variant. The app will automatically fall back to alternative matching methods if the primary identifier is not found.

Line: Type

Description

Example Value

Line item type

Line Item

If this column is in the sheet it cannot be blank. For exports, "Line Item" lines will be shown first, then the remaining lines will be shown in chronological order.

Possible values:

  • Line Item: Order line item containing product, quantity and price information

  • Discount: Order-level discount

  • Shipping Line: Shipping cost

  • Transaction: Payment transaction (see Transactions for an alternative inline format)

  • Refund Line: Refunded line item

  • Refund Shipping: Refunded shipping

  • Fulfillment Line: Fulfilled line item. Each fulfillment can contain one or more fulfillment lines, grouped by Fulfillment: ID. See Fulfillment Line Matching for how fulfillment lines are associated with their corresponding line items.

  • Ignore: Custom line for formulas (ignored by app)

How Line: columns vary by type

Several Line: columns are reused by non-Line-Item rows and carry different meanings depending on Line: Type:

Line: column

Line Item

Discount

Shipping Line

Refund Line

Fulfillment Line

Transaction

Line: ID

Line item ID

blank

Shipping line ID

Line item ID

Line item ID

blank

Line: Title

Product title

percentage or fixed_amount

Shipping method name (e.g. Standard Shipping)

Line item title

Line item title

blank

Line: Name

Product + variant name

Discount code or automatic-discount name

Shipping carrier code

Line item name

Line item name

blank

Line: Variant Title

Variant title

automatic for auto-discounts, else blank

Shipping source (e.g. shopify)

Variant title

Variant title

blank

Line: Price

Unit price

Percentage rate (% discount only)

Shipping price

Unit price

Unit price

blank

Line: Quantity

Ordered qty

blank

blank

Original line qty

Negative fulfilled qty

blank

Line: Discount

Line item discount (negative)

Total order discount, first row only (negative)

blank

Line item discount

Line item discount

blank

Line: Total

Line total

Same as Line: Discount on first row

Shipping price

Line total

Negated line total

blank

Line: Tax columns

Line item tax

blank

Shipping tax

Line item tax

Line item tax

blank

Line: Product / Variant / SKU / Vendor / Grams / Properties etc.

Populated

blank

blank

Populated

Populated

blank

Refund Line and Fulfillment Line rows reuse the original line item's product, variant, and tax data and add their own Refunds: or Fulfillments: columns. Fulfillment Line rows have negative Line: Quantity and Line: Total to represent the items leaving inventory. Transaction rows leave all Line: columns blank - all data lives in the Transaction: columns.

Tip: To export the Shopify Shipping Method, include line items in your export and look at the Line: Title column on rows where Line: Type is Shipping Line. The carrier code is in Line: Name and the price is in Line: Price.

Line: Command

Description

Example Value

Line item action

MERGE

Controls what action to perform on the line item when updating an existing order. This field is only used when the main Command field is set to UPDATE or MERGE.

  • DEFAULT: Do not add this line item to the existing order

  • MERGE: Add this line item to the existing order

When you set Line: Command to MERGE, the app will add new line items to the order using Shopify's Order Edit API. This allows you to:

  • Add products by SKU (variant-linked items)

  • Add custom line items without a product link (using Line: Title and Line: Price)

  • Add duplicate line items (same SKU multiple times will create separate line items)

Important Notes:

  • Line items are added as new items - they are not merged with existing line items of the same SKU

  • The app automatically handles archived orders by unarchiving, adding items, then re-archiving

  • Orders must be in your store's base currency (international currency orders cannot be edited)

  • See Adding Line Items to Orders for detailed examples

Line: ID

Description

Example Value

Line item identifier

728763138063

Unique identifier for the line item. Generated by Shopify for existing items, can be any unique number for new orders.

For Fulfillment Line and Refund Line rows, the Line: ID should match the Line: ID of the line item being fulfilled or refunded. This allows the app to precisely associate fulfillments and refunds with the correct line items. If Line: ID is not provided, the app will fall back to matching by other fields (see Fulfillment Line Matching).

For Shipping Line rows, this is the Shopify shipping line ID. For Discount and Transaction rows, this column is blank.

Line: Product ID

Description

Example Value

Product identifier

200005386255

Shopify product ID for the line item. If not found, the app will try to match by handle or SKU.

Line: Product Handle

Description

Example Value

Product handle

tshirt-with-picture-of-me

Used as secondary method to identify products when Product ID is not available.

Line: Title

Description

Example Value

Line item title or discount type

Tshirt With Picture Of Me or percentage

For regular line items, this is the title of the order line item. Can be set independently of the linked product title.

For shipping lines (when Line: Type is "Shipping Line"), this is the shipping method name as shown to the customer at checkout (e.g. Standard Shipping, Express Delivery). This is the equivalent of the Shipping Method column in Shopify's built-in order export.

For discount line items (when Line: Type is "Discount"), this field specifies the discount type:

  • fixed_amount: Fixed dollar/currency amount off. The discount value comes from the Line: Discount field.

  • percentage: Percentage off discount. The percentage rate comes from the Line: Price field.

Line: Variant ID

Description

Example Value

Product variant ID

1834691428367

Shopify variant ID for the line item. If not found, the app will try to match by SKU.

Line: Variant Title

Description

Example Value

Product variant title

Red / XS

The title of the product variant included in the line item.

For shipping lines (Line: Type is "Shipping Line"), this field contains the shipping line source (e.g. shopify).

For discount lines (Line: Type is "Discount"), this field is set to automatic when the discount was applied automatically at checkout. It is blank for manually entered discount codes.

Line: SKU

Description

Example Value

Product SKU

SKU-1234567

The SKU of the product variant. Used to identify products when ID and handle are not available.

Line: Quantity

Description

Example Value

Item quantity

2

The quantity of the line item purchased.

For Fulfillment Line rows, this value is negative to represent the quantity leaving inventory through that fulfillment. Discount, Shipping Line, and Transaction rows leave this column blank.

Line: Price

Description

Example Value

Unit price

29.99

The price of one line item unit.

For shipping lines (Line: Type is "Shipping Line"), this field contains the shipping price.

When importing percentage discounts (Line: Type is "Discount" and Line: Title is "percentage"), put the percentage rate in this field (e.g., 15 for 15% off).

Line: Discount

Description

Example Value

Line item discount

-5.00

Discount amount applied to the line item. Always a negative value (e.g., -5.00). The Shopify API does not support setting per-line-item discounts when creating orders.

On Discount rows, this column holds the total order-level discount and is only populated on the first Discount row of the order - additional Discount rows leave it blank to avoid double-counting.

When importing, if line items have Line: Discount values but no explicit Discount row is present, the discount amounts will be automatically summed and applied as an order-level fixed discount. This prevents discount data from being lost during store-to-store migrations (e.g., when orders have automatic discounts or script-based discounts that don't have a discount code).

If a Discount row is already present in the spreadsheet, Line: Discount values on line items are ignored because the Discount row already captures the total discount amount for the order. Rolling up both would double-count the discount.

Line: Total

Description

Example Value

Line item total - Export only

54.98

Calculated as (Quantity × Price) + Discount. This field is export-only and cannot be imported.

For Shipping Line rows, this is the shipping price. For Fulfillment Line rows, this is the negated original line total to mirror the negative Line: Quantity. On the first Discount row, it carries the total order-level discount (matching Line: Discount).

Line: Grams

Description

Example Value

Item weight

250

Weight per line item in grams.

Line: Requires Shipping

Description

Example Value

Requires shipping: TRUE, FALSE

TRUE

  • TRUE: Line item requires shipping

  • FALSE: Line item does not require shipping (e.g., digital products)

Line: Vendor

Description

Example Value

Product vendor

Nike

Vendor name of the product purchased.

Line: Name

Description

Example Value

Line item name

Tshirt With Picture Of Me - Red

The full name of the line item, including variant details. This is typically the product title combined with variant options.

For shipping lines (Line: Type is "Shipping Line"), this field contains the shipping carrier code from Shopify (e.g. Standard, Express).

For discount lines (Line: Type is "Discount"), this field contains the discount code or automatic discount name (e.g., BIENVENUE20 or FINHIVER15).

Line: Discount Allocation

Description

Example Value

Discount allocation information - Export only

5.00

Information about how discounts are allocated to this specific line item in the shop's base currency. This field is export-only and cannot be imported.

Line: Discount per Item

Description

Example Value

Discount per unit item - Export only

-2.50

The line item discount divided by the line item quantity, giving the per-unit discount amount. This is the per-unit version of Line: Discount and is also negative. This field is export-only and cannot be imported.

Line: Properties

Description

Example Value

Custom line item properties

Color: Red

Custom properties or attributes associated with the line item. Write each property on its own line as a key: value pair, with a single colon separating the key from the value. Use a real line break to separate each pair (in a spreadsheet cell, press Alt+Enter or Option+Enter to add a line break). When viewing the spreadsheet in Excel you may need to expand the row height to see the full value.

Each line must contain exactly one colon. If a key or value needs to include a literal colon (for example a URL), escape it as \: - for example link: https\://example.com. A line with more than one unescaped colon is rejected with error DAT020. A common cause is a source file that writes a literal \n (backslash + n) as text instead of a real line break, which leaves two pairs on one line.

Line: Gift Card

Description

Example Value

Gift card: TRUE, FALSE

FALSE

  • TRUE: Line item is a gift card

  • FALSE: Line item is a regular product

Line: Force Gift Card

Description

Example Value

Force gift card: TRUE, FALSE

FALSE

  • TRUE: Force this line item to be treated as a gift card regardless of product type

  • FALSE: Use the product's default gift card setting

Line: Taxable

Description

Example Value

Taxable: TRUE, FALSE

TRUE

  • TRUE: Line item is subject to tax

  • FALSE: Line item is tax-exempt

Line: Tax Total

Description

Example Value

Total tax amount

4.20

The total amount of tax applied to this line item across all tax rates.

Line: Tax 1 Title

Description

Example Value

First tax name

State Tax

The name or title of the first tax applied to this line item.

Line: Tax 1 Rate

Description

Example Value

First tax rate

0.08

The rate (as a decimal) of the first tax applied to this line item. Example: 0.08 = 8%.

Line: Tax 1 Price

Description

Example Value

First tax amount

2.40

The monetary amount of the first tax applied to this line item. If left empty but a tax rate is provided, the app will automatically calculate the tax amount using either the line item price or the linked variant's price.

Line: Tax 2 Title

Description

Example Value

Second tax name

County Tax

The name or title of the second tax applied to this line item.

Line: Tax 2 Rate

Description

Example Value

Second tax rate

0.02

The rate (as a decimal) of the second tax applied to this line item. Example: 0.02 = 2%.

Line: Tax 2 Price

Description

Example Value

Second tax amount

0.60

The monetary amount of the second tax applied to this line item. If left empty but a tax rate is provided, the app will automatically calculate the tax amount using either the line item price or the linked variant's price.

Line: Tax 3 Title

Description

Example Value

Third tax name

City Tax

The name or title of the third tax applied to this line item.

Line: Tax 3 Rate

Description

Example Value

Third tax rate

0.01

The rate (as a decimal) of the third tax applied to this line item. Example: 0.01 = 1%.

Line: Tax 3 Price

Description

Example Value

Third tax amount

0.30

The monetary amount of the third tax applied to this line item. If left empty but a tax rate is provided, the app will automatically calculate the tax amount using either the line item price or the linked variant's price.

Line: Tax 4–100 Title / Rate / Price

Up to 100 tax lines are supported per line item. Use the same column naming pattern with higher numbers: Line: Tax 4 Title, Line: Tax 4 Rate, Line: Tax 4 Price, Line: Tax 5 Title, and so on up to Line: Tax 100 Price.

Line: Fulfillable Quantity

Description

Example Value

Quantity available for fulfillment

2

The quantity of this line item that can still be fulfilled. This is typically the ordered quantity minus any already fulfilled quantity.

Line: Fulfillment Service

Description

Example Value

Fulfillment service name

manual

The name of the fulfillment service responsible for fulfilling this line item. Common values include manual, amazon, shipwire, etc.

Line: Fulfillment Status

Description

Example Value

Line item fulfillment status

fulfilled

  • fulfilled: Line item has been fulfilled

  • partial: Line item has been partially fulfilled

  • unfulfilled: Line item has not been fulfilled

  • (empty): No fulfillment status set

Line: Pre Tax Price

Description

Example Value

Price before tax

25.00

The price of the line item before any taxes are applied.

Presentment Currency

The Presentment Currency category contains export-only versions of the order's money fields in the presentment currency, which is the currency shown to the customer at checkout. For stores using Shopify Markets with multiple currencies, these values may differ from the shop's base currency. This category is opt-in: enable it on the export configuration page to include these columns in your file.

Price: Presentment Subtotal

Description

Example Value

Order subtotal in customer currency - Export only

120.00

The order subtotal in the presentment currency, before shipping, taxes, and order-level discounts.

Tax 1: Presentment Price

Description

Example Value

First tax amount in customer currency - Export only

8.00

The monetary amount of the first tax line in the presentment currency.

Tax 2: Presentment Price

Description

Example Value

Second tax amount in customer currency - Export only

2.00

The monetary amount of the second tax line in the presentment currency.

Tax 3: Presentment Price

Description

Example Value

Third tax amount in customer currency - Export only

1.00

The monetary amount of the third tax line in the presentment currency.

Tax 4–10: Presentment Price

Presentment-currency amounts for additional tax lines on the order. Columns named Tax 4: Presentment Price through Tax 10: Presentment Price are auto-included in the export when an order has more than three tax lines, mirroring the shop-currency Tax N: Price columns.

Tax: Presentment Total

Description

Example Value

Total tax in customer currency - Export only

11.00

The total tax for the order in the presentment currency, summed across all tax lines.

Price: Presentment Total Discount

Description

Example Value

Total order discount in customer currency - Export only

11.00

The total discount applied to the order in the presentment currency.

Price: Presentment Total Shipping

Description

Example Value

Total shipping price in customer currency - Export only

8.25

The total shipping price for the order in the presentment currency.

Price: Presentment Total Duties

Description

Example Value

Total duties in customer currency - Export only

4.50

The total duties for the order in the presentment currency.

Price: Presentment Total Fees

Description

Example Value

Total additional fees in customer currency - Export only

1.25

The total of any additional fees on the order in the presentment currency.

Price: Presentment Total Refund

Description

Example Value

Total refunded in customer currency - Export only

15.00

The total amount refunded on the order in the presentment currency.

Price: Presentment Total Outstanding

Description

Example Value

Outstanding balance in customer currency - Export only

0.00

The outstanding balance still owed on the order in the presentment currency.

Price: Presentment Total

Description

Example Value

Order total in customer currency - Export only

139.25

The full order total in the presentment currency, including taxes, shipping, duties, and fees, after discounts.

Line: Presentment Price

Description

Example Value

Price shown to customer in local currency - Export only

29.99

The unit price that was presented to the customer at checkout in their local currency.

Line: Presentment Currency

Description

Example Value

Currency shown to customer at checkout - Export only

EUR

The three-letter currency code (ISO 4217) for the presentment price. This shows which currency the customer saw and paid in at checkout.

Line: Presentment Discount

Description

Example Value

Line item discount in customer currency - Export only

-5.50

The discount amount applied to the line item in the presentment currency. Always a negative value, matching the sign convention of Line: Discount.

Line: Presentment Discount Allocation

Description

Example Value

Discount allocation in customer currency - Export only

5.50

The order-level discount amount allocated to this line item in the presentment currency. See Line: Discount Allocation for details on how allocations work.

Line: Presentment Discount per Item

Description

Example Value

Discount per unit item in customer currency - Export only

-2.75

The per-unit discount amount in the presentment currency, calculated as Line: Presentment Discount divided by Line: Quantity.

Line: Presentment Total

Description

Example Value

Line item total in customer currency - Export only

60.48

The line item total in the presentment currency, calculated as (Quantity × Presentment Price) + Presentment Discount.

Transactions

Transaction data can be included in your spreadsheet in two ways:

  1. Inline on Line Item rows: Add Transaction: columns (e.g., Transaction: Kind, Transaction: Amount) directly on the same row as a Line Item. This is the simplest approach and is recommended for most imports.

  2. Separate Transaction rows: Use Line: Type = Transaction to create dedicated rows for transaction data. This is the format used by exports and is useful when an order has multiple transactions.

Both formats are equivalent - Altera will process them the same way.

Transaction: ID

Description

Example Value

Transaction ID - Export only

280328273935

Shopify-generated transaction identifier. This field is export-only and cannot be imported.

Transaction: Kind

Description

Example Value

Transaction type

sale

  • authorization: Amount reserved against funding source

  • capture: Transfer of authorized money

  • sale: Authorization and capture in one step

  • refund: Partial or full return of captured funds

  • void: Cancellation of a transaction

When importing orders, only one SALE transaction is allowed per order. If your spreadsheet contains multiple SALE transactions for a single order, only the first SALE transaction will be imported. All other transaction types (authorization, capture, refund, void) will be imported normally.

Transaction: Amount

Description

Example Value

Transaction amount

123.99

The amount of the transaction in the order currency.

Transaction: Currency

Description

Example Value

Transaction currency

USD

Currency code for the transaction. Should match the order currency.

Transaction: Status

Description

Example Value

Transaction status

success

  • success: Transaction completed successfully

  • pending: Transaction is pending

  • failure: Transaction failed

  • error: Transaction error occurred

Transaction: Gateway

Description

Example Value

Payment gateway

paypal

The name of the payment gateway used for the transaction. The value will be prefixed with manual to avoid triggering real transactions. Eg, paypal will be imported as manual (paypal).

Fulfillments

To import fulfillments, add rows with Line: Type set to Fulfillment Line. Each fulfillment line represents one line item being fulfilled. Multiple fulfillment lines with the same Fulfillment: ID are grouped into a single fulfillment.

You can also add fulfillment data directly on Line Item rows by filling in the Fulfillment: columns. This is a shortcut that fulfills each line item for its full quantity. Use dedicated Fulfillment Line rows when you need more control, such as partial fulfillments or grouping specific items into separate shipments.

Fulfillment Line Matching

Each Fulfillment Line row must be associated with the Line Item it fulfills. The app uses the following logic to match them:

  1. By Line: ID (preferred): If the Line: ID column is present and the fulfillment line's ID matches a line item's ID, that match is used directly. This is the most reliable method.

  2. By composite key (automatic fallback): When Line: ID is not available, the app matches fulfillment lines to line items using a combination of fields: Line: SKU, Line: Title, Line: Variant Title, and Line: Price. All available fields are compared together, so even if two line items share the same SKU, they can still be distinguished by their title or price.

When using composite key matching, make sure the values on your Fulfillment Line rows match the corresponding Line Item rows exactly.

Fulfillment: ID

Description

Example Value

Fulfillment identifier

311117676559

Used to group fulfillment lines into fulfillments. Rows with the same Fulfillment: ID will be grouped into the same fulfillment.

When exporting, this will contain the Shopify-generated fulfillment ID. When importing, you can use any value - it is only used by the app for grouping and will not be saved to Shopify. For example, you could use F1, F2, etc. to organize your fulfillments.

When updating existing orders with a numeric Shopify fulfillment ID, the app will update the tracking information on that specific fulfillment. When using a custom (non-numeric) ID, the app will create new fulfillments.

Fulfillment: Status

Description

Example Value

Fulfillment status

success

  • success: Fulfillment was successful

  • cancelled: Fulfillment was cancelled

Fulfillment: Tracking Company

Description

Example Value

Shipping carrier

FedEx

Name of the tracking company. Must match Shopify's supported tracking companies. Read tracking information updates for how to change tracking information for existing orders.

Fulfillment: Tracking Number

Description

Example Value

Tracking number

1234567890

Tracking number provided by the shipping company. Read tracking information updates for how to change tracking information for existing orders.

Fulfillment: Tracking URL

Description

Example Value

Tracking URL

https://www.fedex.com/fedextrack/?trknbr=1234567890

URL for tracking the shipment provided by the shipping company. Read tracking information updates for how to change tracking information for existing orders.

Fulfillment: Location

Description

Example Value

Fulfillment location

Main Warehouse

Name of the location where the fulfillment is shipped from.

Fulfillment: Send Receipt

Description

Example Value

Send notification: TRUE, FALSE

FALSE

If TRUE, Shopify will send a notification email to the customer when the fulfillment is created or updated.

  • TRUE: Send fulfillment notification email to customer

  • FALSE: Do not send notification (default)

Payment Terms

Payment Terms: Type

Description

Example Value

Payment terms

Net 30

The type of payment terms applied to the order. If you are using payment terms you need to use one of the following values:

  • Due on receipt: Payment due immediately upon receipt

  • Due on fulfillment: Payment due when order is fulfilled

  • Net 7: Payment due 7 days after invoice

  • Net 15: Payment due 15 days after invoice

  • Net 30: Payment due 30 days after invoice

  • Net 45: Payment due 45 days after invoice

  • Net 60: Payment due 60 days after invoice

  • Net 90: Payment due 90 days after invoice

  • Fixed date: Payment due on a specific fixed date

Shopify does not support custom 'Net X' payment terms. For example, 'Net 14' is not supported.

Payment Terms: Issued At

Description

Example Value

The date from which 'Net X' payment terms are calculated

2024-12-05 06:12:35 -0500

The date and time when payment terms were issued to the customer. ISO-formatted timestamps are also supported. If no timezone is specified, your shop's timezone will be used. This field is used with the Net X payment terms types. If you do not set this field, the app will use the current date.

Payment Terms: Due At

Description

Example Value

When the payment is due

2024-12-05 06:12:35 -0500

The date when payment is due according to the payment terms. ISO-formatted timestamps are also supported. If no timezone is specified, your shop's timezone will be used. This field is only required if you use the Fixed date payment terms type.

Payment Terms: Completed At

Description

Example Value

Payment completion date - Export only

2024-12-05 06:12:35 -0500

The date and time when payment terms were completed or paid in full. Empty if payment is still pending. ISO-formatted timestamps are also supported.

Payment Terms: Overdue

Description

Example Value

Payment terms overdue - Export only

FALSE

Indicates whether the payment for the order is past due.

  • TRUE: Payment is overdue based on the due date

  • FALSE: Payment is not overdue or has been completed

Companies

Use these columns to link an order to a B2B Company Location. The order will appear in the company's order history in Shopify admin and the customer's account page.

Before importing orders with company links:

  1. Import the B2B companies, company locations, and company contacts first

  2. Assign each customer a role at the company location (e.g., Ordering only or Location admin)

  3. Make sure the order's Customer: Email (or Customer: ID) matches a customer who is a contact at the target location

Minimum columns to link an order

At a minimum, set:

  • Customer: Email or Customer: ID - required so the customer can be associated to the location

  • One of Company: Location ID, Company: Location External ID, or Company: Location Name - identifies the location

When the location can be uniquely identified on its own (e.g. by its Shopify ID, or by a name/external ID that is unique across all companies on the store), that's enough.

When the same location name or external ID exists across multiple companies, also set one of Company: ID, Company: External ID, or Company: Name to scope the lookup. Without a company column, ambiguous matches fail with ORD021.

How the lookup works

Each column you set is matched on its own - there is no fallback between columns. If you set Company: ID and the ID doesn't exist, the row fails; it does not try Company: External ID or Company: Name next. Pick the column that matches the source of truth for your data and leave the others blank.

The same applies to the location columns: Company: Location ID is tried first if set, then Company: Location External ID, then Company: Location Name. When a Company: column is also set, the location lookup is restricted to that company.

Rows fail with ORD021 when:

  • A Company: column is set but no company matches it

  • Company: Location ID is set but the location belongs to a different company than the Company: column on the same row

  • Company: Location Name is set without a Company: column and more than one company on the store has a location by that name

  • Company: Location External ID is set without a Company: column and more than one company on the store has a location with that external ID

Updating existing orders

The company link can only be set when an order is created. Shopify's order update API doesn't allow changing the company location of an existing order - use REPLACE if you need to re-link an existing order. MERGE and UPDATE rows that set Company columns will skip the link and emit ORD023; other changes on the row are still applied.

Company: ID

Description

Example Value

Shopify internal ID for the linked Company

5301829

The Shopify internal ID for the B2B Company. Accepts the numeric ID or the full GID (gid://shopify/Company/5301829). Must match an existing company on the store, otherwise the row fails with ORD021.

Company: Name

Description

Example Value

Name of the Company linked to the Order

Acme Inc

The exact name of the B2B Company. Must match an existing company on the store, otherwise the row fails with ORD021. Set this column when you don't have the Shopify ID or an external ID for the company.

Company: External ID

Description

Example Value

External ID for the Company from another system

ACME-001

The externally-supplied ID for the company. Useful when migrating from another platform that already has its own IDs. Must match an existing company on the store, otherwise the row fails with ORD021.

Company: Location ID

Description

Example Value

Shopify internal ID for the Company Location linked to the Order

8826651

The Shopify internal ID for the B2B Company Location. Accepts the numeric ID or the full GID (gid://shopify/CompanyLocation/8826651). The order will be attached to this location's purchasing entity. If a Company: column is also set, the location must belong to that company, otherwise the row fails with ORD021.

Company: Location Name

Description

Example Value

Company Location Name linked to the Order

Main Office

The exact name of the company location. When set without a Company: column and more than one company on the store has a location with this name, the row fails with ORD021. Set Company: ID, Company: External ID, or Company: Name alongside to disambiguate.

Company: Location External ID

Description

Example Value

External ID for the Company Location from another system

ACME-MAIN

The externally-supplied ID for the company location. When set without a Company: column and more than one company on the store has a location with this external ID, the row fails with ORD021. Set Company: ID, Company: External ID, or Company: Name alongside to disambiguate.

Refunds

Refund: ID

Description

Example Value

Refund identifier

123123123

Shopify-generated refund ID. Used to group refund lines together.

Refund: Note

Description

Example Value

Refund reason

Customer requested return

Note explaining the reason for the refund.

Refund: Restock

Description

Example Value

Restock items: TRUE, FALSE

TRUE

  • TRUE: Add refunded items back to inventory

  • FALSE: Do not restock items

Refund: Restock Location

Description

Example Value

Location name to restock items into

Warehouse

The name of the location to restock items into when Refund: Restock is TRUE. If left empty, the import defaults to the shop's primary location.

Combined with the default Inventory Behaviour of bypass, the destination store's inventory is not adjusted when importing historical orders. Set Inventory Behaviour to decrement_obeying_policy if you want the order to actually decrement inventory and the restock to add it back.

Refund: Send Receipt

Description

Example Value

Send notification: TRUE, FALSE

FALSE

  • TRUE: Send refund notification to customer

  • FALSE: Do not send notification (default)

Metafields and SEO

Metafields can be imported and exported with orders to store custom metadata and additional attributes. You can export:

  • Order metafields

  • Customer metafields

  • Product metafields (from line items)

  • Variant metafields (from line items)

For detailed information about working with metafields, see our Metafields guide.

Export Filters

You can use these filters to limit which orders are exported:

  • id: Filter by order ID

  • name: Filter by order name/number

  • created_at: Filter by when the order was added to Shopify's database

  • updated_at: Filter by when the order was last updated in Shopify's database

  • processed_at: Filter by when the order was placed

  • tag / tag_not: Filter by order tags

  • status: Filter by order status (open, closed, cancelled)

  • payment_status: Filter by payment status

  • fulfillment_status: Filter by fulfillment status

  • customer_id: Filter by customer

  • billing_country_code: Filter by billing address country code in the ISO 3166-1 alpha-2 format. Accepts single codes (e.g., US) or comma-separated lists (e.g., US, CA, GB)

  • shipping_country_code: Filter by shipping address country code in the ISO 3166-1 alpha-2 format. Accepts single codes (e.g., US) or comma-separated lists (e.g., US, CA, GB)

  • line_item_title: Filter by the title of line items in the order. If any line item matches the filter, the entire order (with all line items) will be included in the export

  • product_id: Filter by line item product ID. Accepts a single ID, a GID, or a comma-separated list with equals any of

  • variant_id: Filter by line item variant ID. Accepts a single ID, a GID, or a comma-separated list with equals any of

  • sku: Filter by line item SKU. See SKU filter behavior below

  • channel, confirmation_number, discount_code, email, gateway, source_name: Text filters on the matching order fields

  • chargeback_status, delivery_method, fraud_protection_level, return_status, risk_level: Filter by the matching status field

  • fulfillment_location_id, location_id: Filter by location

Updating Orders

When updating existing orders, only a limited set of fields can be modified. Most order information becomes read-only after the order is created, but you can update these specific fields:

This update behavior aligns with Matrixify, so existing Matrixify templates should work without changes. If you see any differences, please let us know.

Supported Update Fields

The following fields can be updated on existing orders:

  • Note: Internal order notes

  • Tags: Order tags (use Tags Command to control merge/replace behavior)

  • Email: Contact email address

  • Shipping: First Name: Shipping address first name

  • Shipping: Last Name: Shipping address last name

  • Shipping: Company: Shipping company name

  • Shipping: Phone: Shipping phone number

  • Shipping: Address 1: Shipping street address

  • Shipping: Address 2: Shipping address line 2

  • Shipping: Zip: Shipping zip code

  • Shipping: Province: Shipping province/state name

  • Shipping: Province Code: Shipping province/state code

  • Fulfillment: ID: Fulfillment identifier

  • Fulfillment: Status: Fulfillment status

  • Fulfillment: Tracking Company: Shipping carrier

  • Fulfillment: Tracking Number: Tracking number

  • Fulfillment: Tracking URL: Tracking URL

  • Line Items: New line items can be added using Line: Command = MERGE (see Adding Line Items to Orders)

  • Additional Details: Custom attributes for the order

  • Mark as Paid: Orders with a pending payment status can be marked as paid (see Marking Orders as Paid)

  • Cancel Order: Orders can be cancelled by setting the Cancel: Reason field (see Cancelling Orders)

Tracking Information Updates

When updating tracking information for fulfillments, the following logic applies:

  1. If Fulfillment: ID is a Shopify numeric ID: The specified fulfillment will have the tracking information updated

  2. If Fulfillment: ID is a custom string: New fulfillments will be created using Fulfillment Line rows, with line items matched to the existing order using composite key matching. This allows you to add multiple fulfillments to an existing order in a single import.

  3. If no Fulfillment: ID is provided, but the order has existing fulfillments: The most recent fulfillment will be updated with the new tracking information

  4. If no Fulfillment: ID is provided and the order has no existing fulfillments: A new fulfillment will be created for the order with the provided tracking information

This ensures that tracking information is always properly associated with the correct fulfillment, whether you're updating existing fulfillments or creating new ones.

Marking Orders as Paid

You can mark orders with a pending payment status as paid by including a successful sale transaction in your update spreadsheet. This uses Shopify's orderMarkAsPaid mutation to record the full outstanding balance as paid.

To mark an order as paid:

  1. Set Command to UPDATE

  2. Include the order's ID or Name to identify which order to update

  3. Set Transaction: Kind to sale

  4. Set Transaction: Status to success

The Transaction: Amount, Transaction: Currency, and Transaction: Gateway columns are optional when updating - the payment will always be recorded for the full outstanding amount regardless of the values in these columns.

Example

Name,Command,Transaction: Kind,Transaction: Status
#1001,UPDATE,sale,success

Important Notes:

  • Only orders with a pending payment status can be marked as paid. Orders in other financial states (authorized, partially paid, partially refunded, etc.) are not affected.

  • The full outstanding balance is always marked as paid - partial payments are not supported during updates.

  • The gateway shown in Shopify will be "manual" regardless of the Transaction: Gateway value in the spreadsheet.

Cancelling Orders

You can cancel existing orders by setting the Cancel: Reason field during an update. This uses Shopify's orderCancel mutation to cancel the order, optionally restocking inventory and refunding the customer.

To cancel an order:

  1. Set Command to UPDATE

  2. Include the order's ID or Name to identify which order to cancel

  3. Set Cancel: Reason to one of the supported values (see below)

  4. Optionally set Cancel: Refund to TRUE to refund to the original payment method

  5. Optionally set Cancel: Send Receipt to TRUE to notify the customer

  6. Optionally set Cancel: Restock to FALSE to prevent inventory restocking (defaults to TRUE)

Cancel: Reason

Description

Example Value

Cancellation reason

customer

The reason for cancelling the order. Supported values (case-insensitive):

  • customer: The customer requested cancellation

  • declined: Payment was declined

  • fraud: The order was fraudulent

  • inventory: Insufficient inventory

  • staff: Staff made an error

  • other: Other reason (default if unrecognized value is provided)

Cancel: Refund

Description

Example Value

Refund to original payment: TRUE, FALSE

FALSE

  • TRUE: Refund the customer to their original payment method

  • FALSE: Do not issue a refund (default)

Cancel: Send Receipt

Description

Example Value

Send notification: TRUE, FALSE

FALSE

  • TRUE: Send a cancellation notification email to the customer

  • FALSE: Do not send notification (default)

Cancel: Restock

Description

Example Value

Restock inventory: TRUE, FALSE

TRUE

  • TRUE: Restock inventory items to their original locations (default)

  • FALSE: Do not restock inventory

Example

Name,Command,Cancel: Reason,Cancel: Refund,Cancel: Send Receipt,Cancel: Restock
#1001,UPDATE,customer,FALSE,FALSE,TRUE

Important Notes:

  • Only orders that have not already been cancelled can be cancelled. Orders with a Cancelled At value are skipped.

  • Inventory is restocked by default when an order is cancelled. Set Cancel: Restock to FALSE to prevent restocking.

  • The cancellation is processed asynchronously by Shopify.

Adding Line Items to Orders

You can add new line items to existing orders by setting the Line: Command field to MERGE for the line items you want to add. This functionality uses Shopify's Order Edit API to add items to orders after they've been created.

How to Add Line Items

To add line items to an existing order:

  1. Set the main Command field to UPDATE (for existing orders)

  2. Include the order's ID or Name to identify which order to update

  3. Set Line: Type to Line Item for each line item row

  4. Set Line: Command to MERGE for each line item you want to add

  5. Provide either:

  6. For variant-linked items: Line: SKU, Line: Variant ID, or Line: Product Handle + variant information

  7. For custom items: Line: Title and Line: Price (without SKU or variant information)

Example: Adding Items by SKU

ID,Name,Command,Line: Type,Line: Command,Line: SKU,Line: Quantity
,#1001,UPDATE,Line Item,MERGE,WIDGET-123,2
,#1001,UPDATE,Line Item,MERGE,GADGET-456,1

This will add 2 units of SKU WIDGET-123 and 1 unit of SKU GADGET-456 to order #1001.

Example: Adding Custom Line Items

ID,Name,Command,Line: Type,Line: Command,Line: Title,Line: Price,Line: Quantity
,#1001,UPDATE,Line Item,MERGE,Gift Wrapping,5.00,1
,#1001,UPDATE,Line Item,MERGE,Rush Processing,15.00,1

This will add two custom line items (Gift Wrapping and Rush Processing) to order #1001.

Example: Adding Mixed Items

ID,Name,Command,Line: Type,Line: Command,Line: SKU,Line: Title,Line: Price,Line: Quantity
,#1001,UPDATE,Line Item,MERGE,WIDGET-123,,,2
,#1001,UPDATE,Line Item,MERGE,,Setup Fee,10.00,1

This adds both a variant-linked item (WIDGET-123) and a custom item (Setup Fee) to the same order.

Important Behaviors

  • Duplicate Line Items: If you add a line item with a SKU that already exists in the order, it will create a new separate line item rather than increasing the quantity of the existing item

  • Archived Orders: The app automatically handles archived orders by unarchiving them, adding the line items, then re-archiving them

  • Currency Restriction: You can only add line items to orders that were placed in your store's base currency (not international/multi-currency orders)

  • Line Item Pricing: For variant-linked items, the current product price will be used. For custom items, you specify the price in the Line: Price field

Error Codes

  • ORD017: Cannot edit orders in international currency - the order was placed in a different currency than your store's base currency

  • ORD018: No line items found to add to order - make sure you have at least one row with Line: Command set to MERGE

For more information about error codes, see our Error Codes documentation.

Did this answer your question?