Menu
draftOrder
Retrieves a draft order by its ID. A draft order is an order created by a merchant on behalf of their customers.
Use it in a workflow
- Add a step and choose the Shopify connector.
- Pick the draftOrder action (under Draft).
- Fill in the fields below, then reference the result from later steps as
{{draftorder.response.data}}.
Query
This is the query the action sends by default. Edit it in the step's Query field to change which fields come back.
query DraftOrder($id: ID!) {
draftOrder(id: $id) {
acceptAutomaticDiscounts
allVariantPricesOverridden
allowDiscountCodesInCheckout
amountDueLaterSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
amountDueNowSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
anyVariantPricesOverridden
appliedDiscount {
amount
amountSet {
presentmentMoney
shopMoney
}
amountV2 {
amount
currencyCode
}
description
title
value
valueType
}
billingAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
billingAddressMatchesShippingAddress
completedAt
createdAt
currencyCode
customAttributes {
key
value
}
customer {
amountSpent {
amount
currencyCode
}
canDelete
companyContactProfiles {
company
createdAt
customer
id
isMainContact
lifetimeDuration
locale
title
updatedAt
}
createdAt
dataSaleOptOut
defaultAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
defaultEmailAddress {
emailAddress
marketingOptInLevel
marketingState
marketingUnsubscribeUrl
marketingUpdatedAt
openTrackingLevel
openTrackingUrl
sourceLocation
validFormat
}
defaultPhoneNumber {
marketingCollectedFrom
marketingOptInLevel
marketingState
marketingUpdatedAt
phoneNumber
sourceLocation
whatsAppMarketingConsent
}
displayName
email
emailMarketingConsent {
consentUpdatedAt
marketingOptInLevel
marketingState
sourceLocation
}
firstName
hasTimelineComment
id
identityProviderSubjects {
createdAt
id
providerName
subject
updatedAt
}
lastName
lastOrder {
additionalFees
alerts
app
attribution
billingAddress
billingAddressMatchesShippingAddress
canMarkAsPaid
canNotifyCustomer
cancelReason
cancellation
cancelledAt
capturable
cartDiscountAmount
cartDiscountAmountSet
cartToken
channel
channelInformation
checkoutToken
clientIp
closed
closedAt
confirmationNumber
confirmed
createdAt
currencyCode
currentCartDiscountAmountSet
currentShippingPriceSet
currentSubtotalLineItemsQuantity
currentSubtotalPriceSet
currentTaxLines
currentTotalAdditionalFeesSet
currentTotalDiscountsSet
currentTotalDutiesSet
currentTotalPriceSet
currentTotalTaxSet
currentTotalWeight
customAttributes
customer
customerAcceptsMarketing
customerJourney
customerJourneySummary
customerLocale
discountCode
discountCodes
displayAddress
displayFinancialStatus
displayFulfillmentStatus
disputes
dutiesIncluded
edited
email
estimatedTaxes
fulfillable
fulfillmentsCount
fullyPaid
hasTimelineComment
id
landingPageDisplayText
landingPageUrl
legacyResourceId
merchantBusinessEntity
merchantEditable
merchantEditableErrors
merchantOfRecordApp
name
netPayment
netPaymentSet
note
number
originalTotalAdditionalFeesSet
originalTotalDutiesSet
originalTotalPriceSet
paymentCollectionDetails
paymentGatewayNames
paymentTerms
phone
physicalLocation
poNumber
presentmentCurrencyCode
processedAt
productNetwork
publication
purchasingEntity
referralCode
referrerDisplayText
referrerUrl
refundDiscrepancySet
refundable
registeredSourceUrl
requiresShipping
restockable
retailLocation
returnStatus
risk
riskLevel
shippingAddress
shippingLine
shopifyProtect
sourceIdentifier
sourceName
staffMember
subtotalLineItemsQuantity
subtotalPrice
subtotalPriceSet
tags
taxExempt
taxLines
taxesIncluded
test
totalCapturable
totalCapturableSet
totalCashRoundingAdjustment
totalDiscounts
totalDiscountsSet
totalOutstandingSet
totalPrice
totalPriceSet
totalReceived
totalReceivedSet
totalRefunded
totalRefundedSet
totalRefundedShippingSet
totalShippingPrice
totalShippingPriceSet
totalTax
totalTaxSet
totalTipReceived
totalTipReceivedSet
totalWeight
transactionsCount
unpaid
updatedAt
}
legacyResourceId
lifetimeDuration
locale
market {
catalogsCount
conditions
currencySettings
delivery
discountsCount
enabled
handle
id
name
priceInclusions
priceList
primary
status
type
webPresence
}
mergeable {
errorFields
isMergeable
mergeInProgress
reason
}
multipassIdentifier
note
numberOfOrders
phone
productSubscriberStatus
smsMarketingConsent {
consentCollectedFrom
consentUpdatedAt
marketingOptInLevel
marketingState
sourceLocation
}
state
statistics {
predictedSpendTier
rfmGroup
}
tags
taxExempt
taxExemptions
taxSettings {
taxId
}
unsubscribeUrl
updatedAt
validEmailAddress
verifiedEmail
}
defaultCursor
deposit
discountCodes
email
hasTimelineComment
id
invoiceEmailTemplateSubject
invoiceSentAt
invoiceUrl
legacyResourceId
lineItemsSubtotalPrice {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
marketName
marketRegionCountryCode
name
note2
order {
additionalFees {
id
name
price
taxLines
}
alerts {
actions
content
dismissibleHandle
icon
severity
title
}
app {
icon
id
name
}
attribution {
displayName
handle
icon
}
billingAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
billingAddressMatchesShippingAddress
canMarkAsPaid
canNotifyCustomer
cancelReason
cancellation {
staffNote
}
cancelledAt
capturable
cartDiscountAmount
cartDiscountAmountSet {
presentmentMoney
shopMoney
}
cartToken
channel {
accountId
accountName
activeRegions
app
handle
id
marketsCount
name
navigationItems
overviewPath
resourceFeedback
specificationHandle
supportsFuturePublishing
}
channelInformation {
app
channelDefinition
channelId
displayName
id
}
checkoutToken
clientIp
closed
closedAt
confirmationNumber
confirmed
createdAt
currencyCode
currentCartDiscountAmountSet {
presentmentMoney
shopMoney
}
currentShippingPriceSet {
presentmentMoney
shopMoney
}
currentSubtotalLineItemsQuantity
currentSubtotalPriceSet {
presentmentMoney
shopMoney
}
currentTaxLines {
channelLiable
price
priceSet
rate
ratePercentage
source
title
}
currentTotalAdditionalFeesSet {
presentmentMoney
shopMoney
}
currentTotalDiscountsSet {
presentmentMoney
shopMoney
}
currentTotalDutiesSet {
presentmentMoney
shopMoney
}
currentTotalPriceSet {
presentmentMoney
shopMoney
}
currentTotalTaxSet {
presentmentMoney
shopMoney
}
currentTotalWeight
customAttributes {
key
value
}
customer {
amountSpent
canDelete
companyContactProfiles
createdAt
dataSaleOptOut
defaultAddress
defaultEmailAddress
defaultPhoneNumber
displayName
email
emailMarketingConsent
firstName
hasTimelineComment
id
identityProviderSubjects
lastName
lastOrder
legacyResourceId
lifetimeDuration
locale
market
mergeable
multipassIdentifier
note
numberOfOrders
phone
productSubscriberStatus
smsMarketingConsent
state
statistics
tags
taxExempt
taxExemptions
taxSettings
unsubscribeUrl
updatedAt
validEmailAddress
verifiedEmail
}
customerAcceptsMarketing
customerJourney {
customerOrderIndex
daysToConversion
firstVisit
lastVisit
moments
}
customerJourneySummary {
customerOrderIndex
daysToConversion
firstVisit
lastVisit
momentsCount
ready
}
customerLocale
discountCode
discountCodes
displayAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
displayFinancialStatus
displayFulfillmentStatus
disputes {
id
initiatedAs
status
}
dutiesIncluded
edited
email
estimatedTaxes
fulfillable
fulfillmentsCount {
count
precision
}
fullyPaid
hasTimelineComment
id
landingPageDisplayText
landingPageUrl
legacyResourceId
merchantBusinessEntity {
address
archived
companyName
displayName
id
legalEntityId
primary
shopifyPaymentsAccount
}
merchantEditable
merchantEditableErrors
merchantOfRecordApp {
icon
id
name
}
name
netPayment
netPaymentSet {
presentmentMoney
shopMoney
}
note
number
originalTotalAdditionalFeesSet {
presentmentMoney
shopMoney
}
originalTotalDutiesSet {
presentmentMoney
shopMoney
}
originalTotalPriceSet {
presentmentMoney
shopMoney
}
paymentCollectionDetails {
additionalPaymentCollectionUrl
vaultedPaymentMethods
}
paymentGatewayNames
paymentTerms {
draftOrder
due
dueInDays
id
order
overdue
paymentTermsName
paymentTermsType
translatedName
}
phone
physicalLocation {
activatable
address
addressVerified
createdAt
deactivatable
deactivatedAt
deletable
fulfillmentService
fulfillsOnlineOrders
hasActiveInventory
hasUnfulfilledOrders
id
isActive
isFulfillmentService
isPrimary
legacyResourceId
localPickupSettingsV2
name
shipsInventory
suggestedAddresses
updatedAt
}
poNumber
presentmentCurrencyCode
processedAt
productNetwork
publication {
app
autoPublish
catalog
id
name
operation
supportsFuturePublishing
}
purchasingEntity
referralCode
referrerDisplayText
referrerUrl
refundDiscrepancySet {
presentmentMoney
shopMoney
}
refundable
registeredSourceUrl
requiresShipping
restockable
retailLocation {
activatable
address
addressVerified
createdAt
deactivatable
deactivatedAt
deletable
fulfillmentService
fulfillsOnlineOrders
hasActiveInventory
hasUnfulfilledOrders
id
isActive
isFulfillmentService
isPrimary
legacyResourceId
localPickupSettingsV2
name
shipsInventory
suggestedAddresses
updatedAt
}
returnStatus
risk {
assessments
recommendation
}
riskLevel
shippingAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
shippingLine {
carrierIdentifier
code
currentDiscountedPriceSet
custom
deliveryCategory
discountAllocations
discountedPrice
discountedPriceSet
id
isRemoved
originalPrice
originalPriceSet
phone
price
requestedFulfillmentService
shippingRateHandle
source
taxLines
title
}
shopifyProtect {
eligibility
status
}
sourceIdentifier
sourceName
staffMember {
accountType
active
email
exists
firstName
id
initials
isShopOwner
lastName
locale
name
phone
privateData
}
subtotalLineItemsQuantity
subtotalPrice
subtotalPriceSet {
presentmentMoney
shopMoney
}
tags
taxExempt
taxLines {
channelLiable
price
priceSet
rate
ratePercentage
source
title
}
taxesIncluded
test
totalCapturable
totalCapturableSet {
presentmentMoney
shopMoney
}
totalCashRoundingAdjustment {
paymentSet
refundSet
}
totalDiscounts
totalDiscountsSet {
presentmentMoney
shopMoney
}
totalOutstandingSet {
presentmentMoney
shopMoney
}
totalPrice
totalPriceSet {
presentmentMoney
shopMoney
}
totalReceived
totalReceivedSet {
presentmentMoney
shopMoney
}
totalRefunded
totalRefundedSet {
presentmentMoney
shopMoney
}
totalRefundedShippingSet {
presentmentMoney
shopMoney
}
totalShippingPrice
totalShippingPriceSet {
presentmentMoney
shopMoney
}
totalTax
totalTaxSet {
presentmentMoney
shopMoney
}
totalTipReceived {
amount
currencyCode
}
totalTipReceivedSet {
presentmentMoney
shopMoney
}
totalWeight
transactionsCount {
count
precision
}
unpaid
updatedAt
}
paymentTerms {
draftOrder
due
dueInDays
id
order {
additionalFees
alerts
app
attribution
billingAddress
billingAddressMatchesShippingAddress
canMarkAsPaid
canNotifyCustomer
cancelReason
cancellation
cancelledAt
capturable
cartDiscountAmount
cartDiscountAmountSet
cartToken
channel
channelInformation
checkoutToken
clientIp
closed
closedAt
confirmationNumber
confirmed
createdAt
currencyCode
currentCartDiscountAmountSet
currentShippingPriceSet
currentSubtotalLineItemsQuantity
currentSubtotalPriceSet
currentTaxLines
currentTotalAdditionalFeesSet
currentTotalDiscountsSet
currentTotalDutiesSet
currentTotalPriceSet
currentTotalTaxSet
currentTotalWeight
customAttributes
customer
customerAcceptsMarketing
customerJourney
customerJourneySummary
customerLocale
discountCode
discountCodes
displayAddress
displayFinancialStatus
displayFulfillmentStatus
disputes
dutiesIncluded
edited
email
estimatedTaxes
fulfillable
fulfillmentsCount
fullyPaid
hasTimelineComment
id
landingPageDisplayText
landingPageUrl
legacyResourceId
merchantBusinessEntity
merchantEditable
merchantEditableErrors
merchantOfRecordApp
name
netPayment
netPaymentSet
note
number
originalTotalAdditionalFeesSet
originalTotalDutiesSet
originalTotalPriceSet
paymentCollectionDetails
paymentGatewayNames
paymentTerms
phone
physicalLocation
poNumber
presentmentCurrencyCode
processedAt
productNetwork
publication
purchasingEntity
referralCode
referrerDisplayText
referrerUrl
refundDiscrepancySet
refundable
registeredSourceUrl
requiresShipping
restockable
retailLocation
returnStatus
risk
riskLevel
shippingAddress
shippingLine
shopifyProtect
sourceIdentifier
sourceName
staffMember
subtotalLineItemsQuantity
subtotalPrice
subtotalPriceSet
tags
taxExempt
taxLines
taxesIncluded
test
totalCapturable
totalCapturableSet
totalCashRoundingAdjustment
totalDiscounts
totalDiscountsSet
totalOutstandingSet
totalPrice
totalPriceSet
totalReceived
totalReceivedSet
totalRefunded
totalRefundedSet
totalRefundedShippingSet
totalShippingPrice
totalShippingPriceSet
totalTax
totalTaxSet
totalTipReceived
totalTipReceivedSet
totalWeight
transactionsCount
unpaid
updatedAt
}
overdue
paymentTermsName
paymentTermsType
translatedName
}
phone
platformDiscounts {
allocations {
id
quantity
reductionAmount
reductionAmountSet
target
}
automaticDiscount
bxgyDiscount
code
discountClass
discountClasses
discountNode {
discount
id
}
id
presentationLevel
shortSummary
summary
title
totalAmount {
amount
currencyCode
}
totalAmountPriceSet {
presentmentMoney
shopMoney
}
}
poNumber
presentmentCurrencyCode
purchasingEntity
ready
reserveInventoryUntil
shippingAddress {
address1
address2
city
company
coordinatesValidated
country
countryCode
countryCodeV2
firstName
formattedArea
id
lastName
latitude
longitude
name
phone
province
provinceCode
timeZone
validationResultSummary
zip
}
shippingLine {
carrierIdentifier
code
currentDiscountedPriceSet {
presentmentMoney
shopMoney
}
custom
deliveryCategory
discountAllocations {
allocatedAmount
allocatedAmountSet
discountApplication
}
discountedPrice {
amount
currencyCode
}
discountedPriceSet {
presentmentMoney
shopMoney
}
id
isRemoved
originalPrice {
amount
currencyCode
}
originalPriceSet {
presentmentMoney
shopMoney
}
phone
price
requestedFulfillmentService {
callbackUrl
fulfillmentOrdersOptIn
handle
id
inventoryManagement
location
requiresShippingMethod
serviceName
trackingSupport
type
}
shippingRateHandle
source
taxLines {
channelLiable
price
priceSet
rate
ratePercentage
source
title
}
title
}
status
subtotalPrice
subtotalPriceSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
tags
taxExempt
taxLines {
channelLiable
price
priceSet {
presentmentMoney
shopMoney
}
rate
ratePercentage
source
title
}
taxesIncluded
totalDiscountsSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
totalLineItemsPriceSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
totalPrice
totalPriceSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
totalQuantityOfLineItems
totalShippingPrice
totalShippingPriceSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
totalTax
totalTaxSet {
presentmentMoney {
amount
currencyCode
}
shopMoney {
amount
currencyCode
}
}
totalWeight
transformerFingerprint
updatedAt
visibleToCustomer
warnings {
errorCode
field
message
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"id": "string"
}
Response
Read the result with {{draftorder.response.data.data.draftOrder}}. If the API returns errors, the step fails and they are at {{draftorder.response.data.errors}}.
Need more? See the Shopify guide for connection setup and behaviour shared by every action.
Was this page helpful?