Menu
returnProcess
Processes a return by confirming which items customers return and exchange, handling their disposition, and optionally issuing refunds.
Use it in a workflow
- Add a step and choose the Shopify connector.
- Pick the returnProcess action (under Return).
- Fill in the fields below, then reference the result from later steps as
{{returnprocess.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 ReturnProcess($input: ReturnProcessInput!) {
returnProcess(input: $input) {
return {
closedAt
createdAt
decline {
note
reason
}
id
name
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
}
requestApprovedAt
returnShippingFees {
amountSet
id
}
staffMember {
accountType
active
email
exists
firstName
id
initials
isShopOwner
lastName
locale
name
phone
privateData
}
status
totalQuantity
}
userErrors {
code
field
message
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"input": {
"returnId": "string",
"returnLineItems": [
{
"id": "string",
"quantity": "string",
"dispositions": "string"
}
],
"exchangeLineItems": [
{
"id": "string",
"quantity": "string"
}
],
"refundDuties": [
{
"dutyId": "string",
"refundType": "string"
}
],
"refundShipping": {
"shippingRefundAmount": {
"amount": "string",
"currencyCode": "string"
},
"fullRefund": false
},
"tipLineId": "string",
"note": "string",
"notifyCustomer": false,
"financialTransfer": {
"issueRefund": {
"orderTransactions": "string",
"allowOverRefunding": "string",
"refundMethods": "string"
}
}
}
}
Response
Read the result with {{returnprocess.response.data.data.returnProcess}}. If the API returns errors, the step fails and they are at {{returnprocess.response.data.errors}}.
Need more? See the Shopify guide for connection setup and behaviour shared by every action.
Was this page helpful?