Menu
orderEditAddCustomItem
Adds a custom line item to an existing Order. Custom line items represent products or services not in your catalog, such as gift wrapping, installation fees, or one-off charges.
Use it in a workflow
- Add a step and choose the Shopify connector.
- Pick the orderEditAddCustomItem action (under Order).
- Fill in the fields below, then reference the result from later steps as
{{ordereditaddcustomitem.response.data}}.
Query
This is the mutation the action sends by default. Edit it in the step's Query field to change which fields come back.
mutation OrderEditAddCustomItem($id: ID!, $title: String!, $locationId: ID, $price: MoneyInput!, $quantity: Int!, $taxable: Boolean, $requiresShipping: Boolean) {
orderEditAddCustomItem(
id: $id
title: $title
locationId: $locationId
price: $price
quantity: $quantity
taxable: $taxable
requiresShipping: $requiresShipping
) {
calculatedLineItem {
calculatedDiscountAllocations {
allocatedAmountSet
discountApplication
}
customAttributes {
key
value
}
discountAllocations {
allocatedAmount
allocatedAmountSet
discountApplication
}
discountedUnitPriceSet {
presentmentMoney
shopMoney
}
editableQuantity
editableQuantityBeforeChanges
editableSubtotalSet {
presentmentMoney
shopMoney
}
hasStagedLineItemDiscount
id
image {
altText
height
id
originalSrc
src
thumbhash
width
}
originalUnitPriceSet {
presentmentMoney
shopMoney
}
quantity
restockable
restocking
sku
stagedChanges
title
uneditableSubtotalSet {
presentmentMoney
shopMoney
}
variant {
availableForSale
availablePublicationsCount
barcode
compareAtPrice
createdAt
defaultCursor
deliveryProfile
displayName
id
inventoryItem
inventoryPolicy
inventoryQuantity
legacyResourceId
position
price
product
publishedOnCurrentChannel
publishedOnCurrentPublication
requiresComponents
selectedOptions
sellableOnlineQuantity
sellingPlanGroupCount
sellingPlanGroupsCount
showUnitPrice
sku
storefrontId
taxCode
taxable
title
unitPrice
unitPriceMeasurement
updatedAt
}
variantTitle
}
calculatedOrder {
cartDiscountAmountSet {
presentmentMoney
shopMoney
}
committed
id
notificationPreviewHtml
notificationPreviewTitle
originalOrder {
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
}
shippingLines {
id
price
stagedStatus
title
}
subtotalLineItemsQuantity
subtotalPriceSet {
presentmentMoney
shopMoney
}
taxLines {
channelLiable
price
priceSet
rate
ratePercentage
source
title
}
totalOutstandingSet {
presentmentMoney
shopMoney
}
totalPriceSet {
presentmentMoney
shopMoney
}
}
orderEditSession {
id
}
userErrors {
field
message
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"id": "string",
"title": "string",
"price": {
"amount": "string",
"currencyCode": "USD"
},
"quantity": 0,
"locationId": "string",
"taxable": false,
"requiresShipping": false
}
Response
Read the result with {{ordereditaddcustomitem.response.data.data.orderEditAddCustomItem}}. If the API returns errors, the step fails and they are at {{ordereditaddcustomitem.response.data.errors}}.
Need more? See the Shopify guide for connection setup and behaviour shared by every action.
Was this page helpful?