Sample Files
Here are sample spreadsheets you can use to test the order import functionality:
Sample spreadsheet with basic columns: Orders_Sample.xlsx
Orders with discounts (fixed amount and percentage): Orders_Sample_Discount.csv
Set payment terms for new orders: Orders_Sample_Payment_Terms.xlsx
Mark existing orders as paid: Orders_Sample_Mark_As_Paid.csv
Cancel existing orders: Orders_Sample_Cancel.csv
General
ID
Description | Example Value |
Shopify order identifier |
|
If present, the ID will be used to identify existing orders for updates. When creating new orders, Altera will use this to group multiple rows together into a single order.
Name
Description | Example Value |
Order name/number |
|
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.
Command
Description | Example Value |
Action to perform |
|
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 |
|
TRUE: Send order confirmation email to customer
FALSE: Do not send confirmation email (default)
Inventory Behaviour
Description | Example Value |
Inventory claim behavior |
|
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 |
|
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.
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 |
|
Internal notes about the order that are visible in Shopify Admin but not to customers.
Tags
Description | Example Value |
Order tags |
|
Comma-separated list of tags for filtering and organization purposes.
Tags Command
Description | Example Value |
Tag action |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
Three-letter currency code in ISO 4217 format.
Source
Description | Example Value |
Order source/channel |
|
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 |
|
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: 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.
Customer Information
Customer: ID
Description | Example Value |
Customer identifier |
|
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:
Customer: ID - Links to an existing customer by ID
Customer: Email - Finds an existing customer by email, or lets Shopify create one
Customer: Phone - Finds an existing customer by phone number
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 |
|
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 |
|
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 |
|
The customer's last name. This field is required when creating a customer.
Customer: Note
Description | Example Value |
Customer notes |
|
Notes about the customer visible in Shopify Admin.
Customer: State
Description | Example Value |
Customer status |
|
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 |
|
TRUE: Customer is exempt from taxes
FALSE: Customer is subject to normal tax rules
Addresses
Billing: First Name
Description | Example Value |
Billing address first name |
|
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 |
|
Last name for the billing address. This field is required when creating a billing address.
Billing: Company
Description | Example Value |
Billing company name |
|
Company name for billing address, if applicable.
Billing: Phone
Description | Example Value |
Billing phone number |
|
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 |
|
First line of billing address. Required for billing address creation.
Billing: Address 2
Description | Example Value |
Billing address line 2 |
|
Second line of billing address (optional).
Billing: City
Description | Example Value |
Billing city |
|
City for billing address. Required for billing address creation.
Billing: Province
Description | Example Value |
Billing province |
|
Province/state name for billing address. Must match Shopify's geographic classifier.
Billing: Province Code
Description | Example Value |
Billing province code |
|
Two-character province/state code. See the complete list of codes.
Billing: Country
Description | Example Value |
Billing country |
|
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 |
|
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 |
|
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 |
|
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 |
|
Last name for the shipping address. This field is required when creating a shipping address.
Shipping: Company
Description | Example Value |
Shipping company name |
|
Company name for shipping address, if applicable.
Shipping: Phone
Description | Example Value |
Shipping phone number |
|
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 |
|
First line of shipping address.
Shipping: Address 2
Description | Example Value |
Shipping address line 2 |
|
Second line of shipping address (optional).
Shipping: City
Description | Example Value |
Shipping city |
|
City for shipping address.
Shipping: Province
Description | Example Value |
Shipping province |
|
Province/state name for shipping address.
Shipping: Province Code
Description | Example Value |
Shipping province code |
|
Two-character province/state code. See the complete list of codes.
Shipping: Country
Description | Example Value |
Shipping country |
|
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 |
|
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 |
|
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:
Line: Product ID (primary)
Line: Product Handle (if ID not found)
Line: SKU (if ID and Handle not found)
For Variants:
Line: Variant ID (primary)
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 |
|
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)
Line: Command
Description | Example Value |
Line item action |
|
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 |
|
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).
Line: Product ID
Description | Example Value |
Product identifier |
|
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 |
|
Used as secondary method to identify products when Product ID is not available.
Line: Title
Description | Example Value |
Line item title or discount type |
|
For regular line items, this is the title of the order line item. Can be set independently of the linked product title.
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 |
|
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 |
|
The title of the product variant included in the line item.
Line: SKU
Description | Example Value |
Product SKU |
|
The SKU of the product variant. Used to identify products when ID and handle are not available.
Line: Quantity
Description | Example Value |
Item quantity |
|
The quantity of the line item purchased.
Line: Price
Description | Example Value |
Unit price |
|
The price of one line item unit.
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 |
|
Discount amount applied to the line item. Negative value. The Shopify API does not support setting per-line-item discounts when creating orders.
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 |
|
Calculated as (Quantity × Price) + Discount. This field is export-only and cannot be imported.
Line: Grams
Description | Example Value |
Item weight |
|
Weight per line item in grams.
Line: Requires Shipping
Description | Example Value |
Requires shipping: TRUE, FALSE |
|
TRUE: Line item requires shipping
FALSE: Line item does not require shipping (e.g., digital products)
Line: Vendor
Description | Example Value |
Product vendor |
|
Vendor name of the product purchased.
Line: Name
Description | Example Value |
Line item name |
|
The full name of the line item, including variant details. This is typically the product title combined with variant options.
Line: Discount Allocation
Description | Example Value |
Discount allocation information - Export only |
|
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: Presentment Discount Allocation
Description | Example Value |
Discount allocation in customer currency - Export only |
|
The discount amount allocated to this line item in the presentment currency (the currency shown to the customer at checkout). For stores using Shopify Markets with multiple currencies, this shows the discount in the customer's local currency, which may differ from 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 |
|
The discount amount applied per individual unit of this line item. This field is export-only and cannot be imported.
Line: Properties
Description | Example Value |
Custom line item properties |
|
Custom properties or attributes associated with the line item. Format as comma-separated key: value pairs with each key and value on a new line. When viewing the spreadsheet in Excel you may need to expand the row height to see the full value.
Line: Gift Card
Description | Example Value |
Gift card: TRUE, 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 |
|
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: Line item is subject to tax
FALSE: Line item is tax-exempt
Line: Tax Total
Description | Example Value |
Total tax amount |
|
The total amount of tax applied to this line item across all tax rates.
Line: Tax 1 Title
Description | Example Value |
First tax name |
|
The name or title of the first tax applied to this line item.
Line: Tax 1 Rate
Description | Example Value |
First tax rate |
|
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 |
|
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 |
|
The name or title of the second tax applied to this line item.
Line: Tax 2 Rate
Description | Example Value |
Second tax rate |
|
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 |
|
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 |
|
The name or title of the third tax applied to this line item.
Line: Tax 3 Rate
Description | Example Value |
Third tax rate |
|
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 |
|
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 |
|
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 |
|
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: 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 |
|
The price of the line item before any taxes are applied.
Line: Presentment Price
Description | Example Value | |
Price shown to customer in local currency - Export only |
|
The price that was presented to the customer at checkout in their local currency. For stores using Shopify Markets with multiple currencies, this shows the actual price the customer paid in their currency, which may differ from the shop's base currency. This field is export-only and cannot be imported.
Line: Presentment Currency
Description | Example Value | |
Currency shown to customer at checkout - Export only |
|
The three-letter currency code (ISO 4217) for the presentment price. This shows which currency the customer saw and paid in at checkout. For stores using Shopify Markets, this may differ from the shop's base currency. This field is export-only and cannot be imported.
Transactions
Transaction data can be included in your spreadsheet in two ways:
Inline on Line Item rows: Add
Transaction:columns (e.g.,Transaction: Kind,Transaction: Amount) directly on the same row as aLine Item. This is the simplest approach and is recommended for most imports.Separate Transaction rows: Use
Line: Type=Transactionto 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 |
|
Shopify-generated transaction identifier. This field is export-only and cannot be imported.
Transaction: Kind
Description | Example Value |
Transaction type |
|
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 |
|
The amount of the transaction in the order currency.
Transaction: Currency
Description | Example Value |
Transaction currency |
|
Currency code for the transaction. Should match the order currency.
Transaction: Status
Description | Example Value |
Transaction status |
|
success: Transaction completed successfully
pending: Transaction is pending
failure: Transaction failed
error: Transaction error occurred
Transaction: Gateway
Description | Example Value |
Payment gateway |
|
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:
By Line: ID (preferred): If the
Line: IDcolumn 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.By composite key (automatic fallback): When
Line: IDis not available, the app matches fulfillment lines to line items using a combination of fields:Line: SKU,Line: Title,Line: Variant Title, andLine: 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 |
|
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: Fulfillment was successful
cancelled: Fulfillment was cancelled
Fulfillment: Tracking Company
Description | Example Value |
Shipping carrier |
|
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 |
|
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 |
|
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 |
|
Name of the location where the fulfillment is shipped from.
Fulfillment: Send Receipt
Description | Example Value |
Send notification: TRUE, 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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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
Refunds
Refund: ID
Description | Example Value |
Refund identifier |
|
Shopify-generated refund ID. Used to group refund lines together.
Refund: Note
Description | Example Value |
Refund reason |
|
Note explaining the reason for the refund.
Refund: Restock
Description | Example Value |
Restock items: TRUE, FALSE |
|
TRUE: Add refunded items back to inventory
FALSE: Do not restock items
Refund: Send Receipt
Description | Example Value |
Send notification: TRUE, 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 IDname: Filter by order name/numbercreated_at: Filter by when the order was added to Shopify's databaseupdated_at: Filter by when the order was last updated in Shopify's databaseprocessed_at: Filter by when the order was placedtags: Filter by order tagsstatus: Filter by order status (open, closed, cancelled)payment_status: Filter by payment statusfulfillment_status: Filter by fulfillment statuscustomer_id: Filter by customerbilling_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 exportline_product_handle: Filter by products in orderline_sku: Filter by SKUs in order
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:
If Fulfillment: ID is a Shopify numeric ID: The specified fulfillment will have the tracking information updated
If Fulfillment: ID is a custom string: New fulfillments will be created using
Fulfillment Linerows, 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.If no Fulfillment: ID is provided, but the order has existing fulfillments: The most recent fulfillment will be updated with the new tracking information
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:
Set
CommandtoUPDATEInclude the order's
IDorNameto identify which order to updateSet
Transaction: KindtosaleSet
Transaction: Statustosuccess
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: Gatewayvalue 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:
Set
CommandtoUPDATEInclude the order's
IDorNameto identify which order to cancelSet
Cancel: Reasonto one of the supported values (see below)Optionally set
Cancel: RefundtoTRUEto refund to the original payment methodOptionally set
Cancel: Send ReceipttoTRUEto notify the customerOptionally set
Cancel: RestocktoFALSEto prevent inventory restocking (defaults to TRUE)
Cancel: Reason
Description | Example Value |
Cancellation reason |
|
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 |
|
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 |
|
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: 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 Atvalue are skipped.Inventory is restocked by default when an order is cancelled. Set
Cancel: RestocktoFALSEto 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:
Set the main
Commandfield toUPDATE(for existing orders)Include the order's
IDorNameto identify which order to updateSet
Line: TypetoLine Itemfor each line item rowSet
Line: CommandtoMERGEfor each line item you want to addProvide either:
For variant-linked items:
Line: SKU,Line: Variant ID, orLine: Product Handle+ variant informationFor custom items:
Line: TitleandLine: 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: Pricefield
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: Commandset toMERGE
For more information about error codes, see our Error Codes documentation.
