The REST Admin API is a legacy API as of October 1, 2024. Starting April 1, 2025, all new public apps must be built exclusively with the GraphQL Admin API. For details and migration steps, visit our migration guide.
Order
An order is a customer's request to purchase one or more products from a shop. You can create, retrieve, update, and delete orders using the Order resource.
Usage notes

- When you create an order through the API, no payment information is collected, and no transaction is performed.
- After an order is created, you can change only a few of its attributes using the API. You can't change the items or the quantities in an order using the REST API, but you can change them using the GraphQL Admin API.
- You can add metafields to the Order resource.
- You can allow merchants to create orders manually by using the DraftOrder resource.
You can't use the Order resource to create a new checkout for an individual store. To create a checkout, you need to use the Checkout API or an SDK powered by the Storefront API, such as the JavaScript Buy SDK, iOS Buy SDK, or Android Buy SDK.
Only the last 60 days' worth of orders from a store are accessible from the Order resource by default.
If you want to access older orders, then you need to request access to all orders.
If your app is granted access, then you can add the read_all_orders
scope to your app along with read_orders
or write_orders
.
Only use this data if it's required for your app's functionality. Shopify will restrict access to scopes for apps that don't have a legitimate use for the associated data.
Endpoints
- post/admin/api/unstable/orders.
json Create an order - post/admin/api/unstable/orders/{order_
id}/cancel. json Cancel an order - post/admin/api/unstable/orders/{order_
id}/close. json Close an order - post/admin/api/unstable/orders/{order_
id}/open. json Re-open a closed order - get/admin/api/unstable/orders.
json?status=any Retrieve a list of orders - get/admin/api/unstable/orders/{order_
id}. json?fields=id,line_ items,name,total_ price Retrieve a specific order - get/admin/api/unstable/orders/count.
json?status=any Retrieve an order count - put/admin/api/unstable/orders/{order_
id}. json Update an order - del/admin/api/unstable/orders/{order_
id}. json Delete an order
The Order resource
Properties
The ID of the app that created the order.
The mailing address associated with the payment method. This address is an optional field that won't be available on orders that do not require a payment method. It has the following properties:
Show billing_address properties
- address1: The street address of the billing address.
- address2: An optional additional field for the street address of the billing address.
- city: The city, town, or village of the billing address.
- company: The company of the person associated with the billing address.
- country: The name of the country of the billing address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the billing address.
- first_name: The first name of the person associated with the payment method.
- last_name: The last name of the person associated with the payment method.
- latitude: The latitude of the billing address.
- longitude: The longitude of the billing address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the billing address.
- province: The name of the region (for example, province, state, or prefecture) of the billing address.
- province_code: The alphanumeric abbreviation of the region of the billing address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the billing address.
The IP address of the browser used by the customer when they placed the order. Both IPv4 and IPv6 are supported.
Whether the customer consented to receive email updates from the shop.
The reason why the order was canceled. Valid values:
Show cancel_reason properties
- customer: The customer canceled the order.
- fraud: The order was fraudulent.
- inventory: Items in the order were not in inventory.
- declined: The payment was declined.
- other: A reason not in this list.
The date and time when the order was canceled. Returns null
if the order isn't canceled.
A unique value when referencing the cart that's associated with the order.
A unique value when referencing the checkout that's associated with the order.
Information about the browser that the customer used when they placed their order:
Show client_details properties
- accept_language: The languages and locales that the browser understands.
- browser_height: The browser screen height in pixels, if available.
- browser_ip: The browser IP address.
- browser_width: The browser screen width in pixels, if available.
- session_hash: A hash of the session.
- user_agent: Details of the browsing client, including software and operating versions.
The date and time (ISO 8601 format) when the order was closed. Returns null
if the order isn't closed.
Represents information about the purchasing company for the order. null
will be returned if there is no purchasing company.
A randomly generated alpha-numeric identifier for the order that may be shown to the customer instead of the sequential order name. This value isn't guaranteed to be unique.
The Order resource
Anchor to POST request, Create an orderpostCreate an order
orders
access scope.Creates an order.
By default, product inventory is not claimed when creating an order.
There are additional optional parameters that can be specified in the body of the request when creating an order:
- inventory_behaviour: The behaviour to use when updating inventory. (default:
bypass
)- bypass: Do not claim inventory.
- decrement_ignoring_policy: Ignore the product's inventory policy and claim inventory.
- decrement_obeying_policy: Follow the product's inventory policy and claim inventory, if possible.
- send_receipt: Whether to send an order confirmation to the customer. (default:
false
)
If you're working on a private app and order confirmations are still being sent to the customer when send_receipt
is set to false
, then you need to disable the Storefront API from the private app's page in the Shopify admin.
- send_fulfillment_receipt: Whether to send a shipping confirmation to the customer. (default:
false
)
If you are including shipping_address or billing_address, make sure to pass both first_name and last_name. Otherwise both these addresses will be ignored.
Usage notes:
If you're using this endpoint with a trial or Partner development store, then you can create no more than 5 new orders per minute.
Anchor to Parameters of Create an orderParameters
Anchor to post-orders-examplesExamples
Create a comprehensive order
Create a comprehensive order
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
The sum of the prices for all tax lines applied to the order in the shop currency, including refunded and removed tax lines.
The three-letter code (ISO 4217 format) for the shop currency.
Create a partially paid order with a new customer and addresses
Create a partially paid order with a new customer and addresses
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Information about the customer. The order might not have a customer and apps should not depend on the existence of a customer
object. This value might be null
if the order was created through Shopify POS. For more information about the customer
object, see the Customer resource.
The mailing address associated with the payment method. This address is an optional field that won't be available on orders that do not require a payment method. It has the following properties:
Show billing_address properties
- address1: The street address of the billing address.
- address2: An optional additional field for the street address of the billing address.
- city: The city, town, or village of the billing address.
- company: The company of the person associated with the billing address.
- country: The name of the country of the billing address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the billing address.
- first_name: The first name of the person associated with the payment method.
- last_name: The last name of the person associated with the payment method.
- latitude: The latitude of the billing address.
- longitude: The longitude of the billing address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the billing address.
- province: The name of the region (for example, province, state, or prefecture) of the billing address.
- province_code: The alphanumeric abbreviation of the region of the billing address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the billing address.
The mailing address to where the order will be shipped. This address is optional and will not be available on orders that do not require shipping. It has the following properties:
Show shipping_address properties
- address1: The street address of the shipping address.
- address2: An optional additional field for the street address of the shipping address.
- city: The city, town, or village of the shipping address.
- company: The company of the person associated with the shipping address.
- country: The name of the country of the shipping address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the shipping address.
- first_name: The first name of the person associated with the shipping address.
- last_name: The last name of the person associated with the shipping address.
- latitude: The latitude of the shipping address.
- longitude: The longitude of the shipping address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the shipping address.
- province: The name of the region (for example, province, state, or prefecture) of the shipping address.
- province_code: The alphanumeric abbreviation of the region of the shipping address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the shipping address.
The customer's email address.
The status of payments associated with the order. Can only be set when the order is created. Valid values:
Show financial_status properties
- pending: The payments are pending. Payment might fail in this state. Check again to confirm whether the payments have been paid successfully.
- authorized: The payments have been authorized.
- partially_paid: The order has been partially paid.
- paid: The payments have been paid.
- partially_refunded: The payments have been partially refunded.
- refunded: The payments have been refunded.
- voided: The payments have been voided.
- expired: The payments have been expired.
Create a pending order with an existing customer
Create a pending order with an existing customer
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Information about the customer. The order might not have a customer and apps should not depend on the existence of a customer
object. This value might be null
if the order was created through Shopify POS. For more information about the customer
object, see the Customer resource.
The status of payments associated with the order. Can only be set when the order is created. Valid values:
Show financial_status properties
- pending: The payments are pending. Payment might fail in this state. Check again to confirm whether the payments have been paid successfully.
- authorized: The payments have been authorized.
- partially_paid: The order has been partially paid.
- paid: The payments have been paid.
- partially_refunded: The payments have been partially refunded.
- refunded: The payments have been refunded.
- voided: The payments have been voided.
- expired: The payments have been expired.
Create a simple order and fulfill it
Create a simple order and fulfill it
Show order properties
The customer's email address.
The order's status in terms of fulfilled line items. You can use the FulfillmentOrder resource for a more granular view. Valid values:
Show fulfillment_status properties
- fulfilled: Every line item in the order has been fulfilled.
- null: None of the line items in the order have been fulfilled.
- partial: At least one line item in the order has been fulfilled.
- restocked: Every line item in the order has been restocked and the order canceled.
An array of fulfillments associated with the order. For more information, see the Fulfillment API.
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Create a simple order with only a product variant ID and no optional parameters
Create a simple order with only a product variant ID and no optional parameters
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Create a simple order without sending an order receipt or a fulfillment receipt
Create a simple order without sending an order receipt or a fulfillment receipt
Show order properties
The customer's email address.
The order's status in terms of fulfilled line items. You can use the FulfillmentOrder resource for a more granular view. Valid values:
Show fulfillment_status properties
- fulfilled: Every line item in the order has been fulfilled.
- null: None of the line items in the order have been fulfilled.
- partial: At least one line item in the order has been fulfilled.
- restocked: Every line item in the order has been restocked and the order canceled.
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Create a simple order, sending an order confirmation and a shipping confirmation to the customer
Create a simple order, sending an order confirmation and a shipping confirmation to the customer
Show order properties
The customer's email address.
The order's status in terms of fulfilled line items. You can use the FulfillmentOrder resource for a more granular view. Valid values:
Show fulfillment_status properties
- fulfilled: Every line item in the order has been fulfilled.
- null: None of the line items in the order have been fulfilled.
- partial: At least one line item in the order has been fulfilled.
- restocked: Every line item in the order has been restocked and the order canceled.
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
Create an order and apply a discount
Create an order and apply a discount
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
The customer's email address.
The customer's phone number for receiving SMS notifications.
The mailing address associated with the payment method. This address is an optional field that won't be available on orders that do not require a payment method. It has the following properties:
Show billing_address properties
- address1: The street address of the billing address.
- address2: An optional additional field for the street address of the billing address.
- city: The city, town, or village of the billing address.
- company: The company of the person associated with the billing address.
- country: The name of the country of the billing address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the billing address.
- first_name: The first name of the person associated with the payment method.
- last_name: The last name of the person associated with the payment method.
- latitude: The latitude of the billing address.
- longitude: The longitude of the billing address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the billing address.
- province: The name of the region (for example, province, state, or prefecture) of the billing address.
- province_code: The alphanumeric abbreviation of the region of the billing address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the billing address.
The mailing address to where the order will be shipped. This address is optional and will not be available on orders that do not require shipping. It has the following properties:
Show shipping_address properties
- address1: The street address of the shipping address.
- address2: An optional additional field for the street address of the shipping address.
- city: The city, town, or village of the shipping address.
- company: The company of the person associated with the shipping address.
- country: The name of the country of the shipping address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the shipping address.
- first_name: The first name of the person associated with the shipping address.
- last_name: The last name of the person associated with the shipping address.
- latitude: The latitude of the shipping address.
- longitude: The longitude of the shipping address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the shipping address.
- province: The name of the region (for example, province, state, or prefecture) of the shipping address.
- province_code: The alphanumeric abbreviation of the region of the shipping address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the shipping address.
The status of payments associated with the order. Can only be set when the order is created. Valid values:
Show financial_status properties
- pending: The payments are pending. Payment might fail in this state. Check again to confirm whether the payments have been paid successfully.
- authorized: The payments have been authorized.
- partially_paid: The order has been partially paid.
- paid: The payments have been paid.
- partially_refunded: The payments have been partially refunded.
- refunded: The payments have been refunded.
- voided: The payments have been voided.
- expired: The payments have been expired.
A list of discounts applied to the order.
When creating an order, only the first Discount Code supplied in this field is applied to the Order.
Each discount object includes the following properties:
Show discount_codes properties
- amount: The amount that's deducted from the order total. When you create an order, this value is the percentage or monetary amount to deduct. After the order is created, this property returns the calculated amount.
- code: When the associated discount application is of type
code
, this property returns the discount code that was entered at checkout. Otherwise this property returns the title of the discount that was applied. -
type: The type of discount. Default value:
fixed_amount
. Valid values:fixed_amount
: Appliesamount
as a unit of the store's currency. For example, ifamount
is 30 and the store's currency is USD, then 30 USD is deducted from the order total when the discount is applied.percentage
: Applies a discount ofamount
as a percentage of the order total.shipping
: Applies a free shipping discount on orders that have a shipping rate less than or equal toamount
. For example, ifamount
is 30, then the discount will give the customer free shipping for any shipping rate that is less than or equal to $30.
Create an order with tax lines split across taxable line items
Create an order with tax lines split across taxable line items
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
An array of tax line objects, each of which details a tax applicable to the order. Each object has the following properties:
Show tax_lines properties
- price: The amount added to the order for this tax in the shop currency after discounts are applied.
- rate: The rate of tax to be applied.
- title: The name of the tax.
- channel_liable: Whether the channel that submitted the tax line is liable for remitting. A value of
null
indicates unknown liability for the tax line.
The sum of the prices for all tax lines applied to the order in the shop currency, including refunded and removed tax lines.
Creating an order with tax lines both on line items and on the order fails and returns an error
Creating an order with tax lines both on line items and on the order fails and returns an error
Show order properties
A list of line item objects, each containing information about an item in the order. Each object has the following properties:
Show line_items properties
- attributed_staffs: The staff members attributed to the line item.
id
: The id of the staff member.quantity
: The quantity of the line item attributed to the staff member.
- fulfillable_quantity: The amount available to fulfill, calculated as follows:
quantity - max(refunded_quantity, fulfilled_quantity) - pending_fulfilled_quantity - open_fulfilled_quantity
-
fulfillment_service: The handle of a fulfillment service that stocks the product variant belonging to a line item.
This is the handle of a third-party fulfillment service in the following scenarios:
Scenario 1
- The product variant is stocked by a single fulfillment service.
- The FulfillmentService is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
Scenario 2
- Multiple fulfillment services stock the product variant.
- The last time that the line item was unfulfilled, it was awaiting fulfillment by a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value
manual
.
manual
.The relationship between a product variant and a fulfillment service was changed in the
2022-07
API version. A ProductVariant can be stocked by multiple fulfillment services. As a result, we recommend that you use the InventoryLevel resource if you need to determine where a product variant is stocked.If you previously set this field, then we recommend that you instead connect inventory items to locations. Each Location is associated with a single FulfillmentService. The value of this field after setting it will be as described above.
If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available.
Altering the locations which stock a product variant won't change the value of this field for existing orders.
Learn more about managing inventory quantities and states.
- fulfillment_status: How far along an order is in terms line items fulfilled. Valid values:
null
,fulfilled
,partial
, andnot_eligible
. - grams: The weight of the item in grams.
- id: The ID of the line item.
- price: The price of the item before discounts have been applied in the shop currency.
- price_set: The price of the line item in shop and presentment currencies.
- product_id: The ID of the product that the line item belongs to. Can be
null
if the original product associated with the order is deleted at a later date. - quantity: The number of items that were purchased.
- current_quantity: The line item's quantity, minus the removed quantity.
- requires_shipping: Whether the item requires shipping.
- sku: The item's SKU (stock keeping unit).
- title: The title of the product.
- variant_id: The ID of the product variant.
- variant_title: The title of the product variant.
- vendor: The name of the item's supplier.
- name: The name of the product variant.
- gift_card: Whether the item is a gift card. If
true
, then the item is not taxed or considered for shipping charges. - properties: An array of custom information for the item that has been added to the cart. Often used to provide product customization options.
- taxable: Whether the item was taxable.
- tax_lines: A list of tax line objects, each of which details a tax applied to the item.
title
: The name of the tax.price
: The amount added to the order for this tax in the shop currency after discounts are applied.price_set
: The amount added to the order for this tax in shop and presentment currencies after discounts are applied.rate
: The tax rate applied to the order to calculate the tax price.channel_liable
: Whether the channel that submitted the tax line is liable for remitting. A value ofnull
indicates unknown liability for the tax line.
- tip_payment_gateway: The payment gateway used to tender the tip, such as
shopify_payments
. Present only on tips. - tip_payment_method: The payment method used to tender the tip, such as
Visa
. Present only on tips. - total_discount: The total amount of the discount allocated to the line item in the shop currency. This field must be explicitly set using draft orders, Shopify scripts, or the API. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. - total_discount_set: The total amount allocated to the line item in the presentment currency. Instead of using this field, Shopify recommends using
discount_allocations
, which provides the same information. -
discount_allocations: An ordered list of amounts allocated by discount applications. Each discount allocation is associated with a particular discount application.
amount
: The discount amount allocated to the line in the shop currency.discount_application_index
: The index of the associated discount application in the order'sdiscount_applications
list.amount_set
: The discount amount allocated to the line item in shop and presentment currencies.
-
origin_location: The location of the line item’s fulfillment origin. This field is due to be deprecated. Consider using ' "FulfillmentOrder#assigned_location_id instead.
id
: The location ID of the line item’s fulfillment origin. Used by Shopify to calculate applicable taxes. This is not the ID of the location where the order was placed. You can use the FulfillmentOrder resource to determine the location an item will be sourced from.country_code
: The two-letter code (ISO 3166-1 format) for the country of the item's supplier.province_code
: The alphanumeric abbreviation for the region of the item's supplier.name
: The name of the item's supplier.address1
: The street address of the item's supplier.address2
: The suite number of the item's supplier.city
: The city of the item's supplier.zip
: The zip of the item's supplier.
- duties: A list of duty objects, each containing information about a duty on the line item.
An array of tax line objects, each of which details a tax applicable to the order. Each object has the following properties:
Show tax_lines properties
- price: The amount added to the order for this tax in the shop currency after discounts are applied.
- rate: The rate of tax to be applied.
- title: The name of the tax.
- channel_liable: Whether the channel that submitted the tax line is liable for remitting. A value of
null
indicates unknown liability for the tax line.
/admin/api/unstable/orders. json
Response
Anchor to POST request, Cancel an orderpostCancel an order
buyer_membership_orders
, orders
, marketplace_orders
.For multi-currency orders, the currency
property is required whenever the amount
property is provided. For more information, refer to the Transaction resource.
Anchor to Parameters of Cancel an orderParameters
The amount to refund. If set, Shopify attempts to refund the specified amount, depending on its status. Shopify refunds through a manual gateway in cases where the original transaction was not made in Shopify. Refunds through a manual gateway are recorded as a refund on Shopify, but the customer is not refunded.
The currency of the refund that's issued when the order is canceled. Required for multi-currency orders whenever the amount
property is provided.
Whether to send an email to the customer notifying them of the cancellation.
The reason for the order cancellation. Valid values: customer
, inventory
, fraud
, declined
, and other
.)
The refund transactions to perform. Required for some more complex refund situations. For more information, see the Refund API.
Whether to restock refunded items back to your store's inventory.
Cancel an order
Cancel an order
Cancel and refund an order using the amount
property
Cancel and refund an order using the amount
property
Show amount properties
The amount to refund. If set, Shopify attempts to refund the specified amount, depending on its status. Shopify refunds through a manual gateway in cases where the original transaction was not made in Shopify. Refunds through a manual gateway are recorded as a refund on Shopify, but the customer is not refunded.
The currency of the refund that's issued when the order is canceled. Required for multi-currency orders whenever the amount
property is provided.
Cancel and refund an order using the refund
property
Cancel and refund an order using the refund
property
Show refund properties
The refund transactions to perform. Required for some more complex refund situations. For more information, see the Refund API.
Canceling an order that is paid and has fulfillments fails with an error
Canceling an order that is paid and has fulfillments fails with an error
When an order has multiple refundable transactions, refunding an amount less than its net payment without a refund
property fails with an error
When an order has multiple refundable transactions, refunding an amount less than its net payment without a refund
property fails with an error
Show amount properties
The amount to refund. If set, Shopify attempts to refund the specified amount, depending on its status. Shopify refunds through a manual gateway in cases where the original transaction was not made in Shopify. Refunds through a manual gateway are recorded as a refund on Shopify, but the customer is not refunded.
The currency of the refund that's issued when the order is canceled. Required for multi-currency orders whenever the amount
property is provided.
/admin/api/unstable/orders/450789469/cancel. json
Response
Anchor to POST request, Close an orderpostClose an order
orders
access scope.Closes an order. A closed order is one that has no more work to be done. All items have been fulfilled or refunded.
Anchor to Parameters of Close an orderParameters
Close an order
Close an order
/admin/api/unstable/orders/450789469/close. json
Response
Anchor to POST request, Re-open a closed orderpostRe-open a closed order
orders
access scope.Re-opens a closed order
Re-open a closed order
Re-open a closed order
/admin/api/unstable/orders/450789469/open. json
Response
Anchor to GET request, Retrieve a list of ordersgetRetrieve a list of orders
orders
, marketplace_orders
.Retrieves a list of orders that meet the specified criteria. Note: This endpoint implements pagination by using links that are provided in the response header. To learn more, refer to Make paginated requests to the REST Admin API.
Show orders attributed to a certain app, specified by the app ID. Set as current
to show orders for the app currently consuming the API.
Show orders created at or before date.
Show orders created at or after date.
Retrieve only certain fields, specified by a comma-separated list of fields names.
Filter orders by their financial status.
Show financial_status properties
authorized: Show only authorized orders
pending: Show only pending orders
paid: Show only paid orders
partially_paid: Show only partially paid orders
refunded: Show only refunded orders
voided: Show only voided orders
partially_refunded: Show only partially refunded orders
any: Show orders of any financial status.
unpaid: Show authorized and partially paid orders.
expired: Show expired orders.
Filter orders by their fulfillment status.
Show fulfillment_status properties
shipped: Show orders that have been shipped. Returns orders with
fulfillment_status
offulfilled
.partial: Show partially shipped orders.
unshipped: Show orders that have not yet been shipped. Returns orders with
fulfillment_status
ofnull
.any: Show orders of any fulfillment status.
unfulfilled: Returns orders with
fulfillment_status
ofnull
orpartial
.
Retrieve only orders specified by a comma-separated list of order IDs.
The maximum number of results to show on a page.
Filter orders by name
.
Show orders imported at or before date.
Show orders imported at or after date.
Retrieve all orders
Retrieve all orders
Filter orders by their status.
Show status properties
open: Show only open orders.
closed: Show only closed orders.
cancelled: Show only canceled orders.
any: Show orders of any status, including archived orders.
Retrieve all orders after the specified ID
Retrieve all orders after the specified ID
Show orders after the specified ID.
Retrieve all orders but show only certain properties
Retrieve all orders but show only certain properties
Retrieve only certain fields, specified by a comma-separated list of fields names.
Retrieve orders last updated after 2005-07-31 15:57:11 in the EDT timezone
Retrieve orders last updated after 2005-07-31 15:57:11 in the EDT timezone
Show orders last updated at or after date.
Retrieve specific orders
Retrieve specific orders
Retrieve only orders specified by a comma-separated list of order IDs.
/admin/api/unstable/orders. json?status= any
Response
Anchor to GET request, Retrieve a specific ordergetRetrieve a specific order
orders
, marketplace_orders
.Retrieve an order by specifying the ID. All fields of an order are returned unless specific fields are named. The GET orders endpoint returns open orders by default.
Retrieve only certain fields, specified by a comma-separated list of fields names.
Get only particular fields
Get only particular fields
Retrieve only certain fields, specified by a comma-separated list of fields names.
Retrieve a single order
Retrieve a single order
/admin/api/unstable/orders/450789469. json?fields= id, line_items, name, total_price
Response
Anchor to GET request, Retrieve an order countgetRetrieve an order count
orders
access scope.Retrieve the total number of orders that meet the specified criteria.
Orders created before date specified.
Orders created after date specified.
Orders of a given financial status.
Show financial_status properties
authorized: Authorized orders.
pending: Pending orders.
paid: Paid orders.
partially_paid: Partially paid orders.
refunded: Refunded orders.
voided: Voided orders.
partially_refunded: Partially refunded orders.
any: Orders of any financial status.
unpaid: Authorized and partially paid orders.
expired: Expired orders.
Orders of a given fulfillment status.
Show fulfillment_status properties
shipped: Orders that have been shipped. Returns orders with
fulfillment_status
offulfilled
.partial: Partially shipped orders.
unshipped: Orders that have not yet been shipped. Returns orders with
fulfillment_status
ofnull
.any: Orders of any fulfillment status.
unfulfilled: Orders with
fulfillment_status
ofnull
orpartial
.
Orders of a given status.
Show status properties
open: Open orders.
closed: Closed orders.
any: Orders of any status.
Orders last updated before date specified.
Orders last updated after date specified.
Count all orders
Count all orders
Orders of a given status.
Show status properties
open: Open orders.
closed: Closed orders.
any: Orders of any status.
/admin/api/unstable/orders/count. json?status= any
Response
Anchor to PUT request, Update an orderputUpdate an order
orders
, marketplace_orders
.This operation allows for updating properties of an order including buyer_accepts_marketing
,
email
, phone
, note
, tags
, metafields
and shipping_address_attributes
.
It is not for editing the items of an order.
After an order is created, you can change only a few of its attributes using the API. You can't change the items or the quantities in an order using the REST API, but you can change them using the GraphQL Admin API.
Anchor to Parameters of Update an orderParameters
Add a metafield to an order
Add a metafield to an order
Add a note to order
Add a note to order
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
An optional note that a shop owner can attach to the order.
Add note attributes to an order
Add note attributes to an order
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
Extra information that is added to the order. Appears in the Additional details section of an order details page. Each array entry must contain a hash with name
and value
keys.
Change an order's email address
Change an order's email address
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
The customer's email address.
Change an order's phone number
Change an order's phone number
Change whether the customer accepts marketing
Change whether the customer accepts marketing
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
Whether the customer consented to receive email updates from the shop.
Remove the customer from an order
Remove the customer from an order
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
Information about the customer. The order might not have a customer and apps should not depend on the existence of a customer
object. This value might be null
if the order was created through Shopify POS. For more information about the customer
object, see the Customer resource.
Update the shipping address of an order
Update the shipping address of an order
Show order properties
The ID of the order, used for API purposes.
This is different from the order_number
property, which is the ID
used by the shop owner and customer.'
The mailing address to where the order will be shipped. This address is optional and will not be available on orders that do not require shipping. It has the following properties:
Show shipping_address properties
- address1: The street address of the shipping address.
- address2: An optional additional field for the street address of the shipping address.
- city: The city, town, or village of the shipping address.
- company: The company of the person associated with the shipping address.
- country: The name of the country of the shipping address.
- country_code: The two-letter code (ISO 3166-1 format) for the country of the shipping address.
- first_name: The first name of the person associated with the shipping address.
- last_name: The last name of the person associated with the shipping address.
- latitude: The latitude of the shipping address.
- longitude: The longitude of the shipping address.
- name: The full name of the person associated with the payment method.
- phone: The phone number at the shipping address.
- province: The name of the region (for example, province, state, or prefecture) of the shipping address.
- province_code: The alphanumeric abbreviation of the region of the shipping address.
- zip: The postal code (for example, zip, postcode, or Eircode) of the shipping address.
/admin/api/unstable/orders/450789469. json
Response
Anchor to DELETE request, Delete an orderdelDelete an order
orders
access scope.Deletes an order. Orders that interact with an online gateway can't be deleted.
Anchor to Parameters of Delete an orderParameters
Delete an order
Delete an order