Skip to main content
object

Requires read_returns access scope or read_marketplace_returns access scope.

The Return object represents the intent of a buyer to ship one or more items from an order back to a merchant or a third-party fulfillment location. A return is associated with an order and can include multiple return line items. Each return has a status, which indicates the state of the return.

Use the Return object to capture the financial, logistical, and business intent of a return. For example, you can identify eligible items for a return and issue customers a refund for returned items on behalf of the merchant.

Learn more about providing a return management workflow for merchants. You can also manage exchanges, reverse fulfillment orders, and reverse deliveries on behalf of merchants.

•DateTime

The date and time when the return was closed.

•DateTime!
non-null

The date and time when the return was created.

•ReturnDecline

Additional information about the declined return.

•ExchangeLineItemConnection!
non-null

The exchange line items attached to the return.

Arguments

•Boolean
Default:false

Include exchange line items that have been removed from the order by an order edit, return, etc. Items that have been removed have a zero (LineItem.currentQuantity).

•ReturnProcessingStatusFilterInput

Filter exchange line items by processing status.

•Int

The first n elements from the paginated list.

•String

The elements that come after the specified cursor.

•Int

The last n elements from the paginated list.

•String

The elements that come before the specified cursor.

•Boolean
Default:false

Reverse the order of the underlying list.


•ID!
non-null

A globally-unique ID.

•String!
non-null

The name of the return.

•Order!
non-null

The order that the return belongs to.

•RefundConnection!
non-null

The list of refunds associated with the return.

Arguments

•Int

The first n elements from the paginated list.

•String

The elements that come after the specified cursor.

•Int

The last n elements from the paginated list.

•String

The elements that come before the specified cursor.

•Boolean
Default:false

Reverse the order of the underlying list.


•DateTime

The date and time when the return was approved.

•ReturnLineItemTypeConnection!
non-null

The return line items attached to the return.

Arguments

•ReturnProcessingStatusFilterInput

Filter return line items by processing status.

•Int

The first n elements from the paginated list.

•String

The elements that come after the specified cursor.

•Int

The last n elements from the paginated list.

•String

The elements that come before the specified cursor.

•Boolean
Default:false

Reverse the order of the underlying list.


•[ReturnShippingFee!]!
non-null

The return shipping fees for the return.

Anchor to reverseFulfillmentOrdersreverseFulfillmentOrders
•ReverseFulfillmentOrderConnection!
non-null

The list of reverse fulfillment orders for the return.

Arguments

•Int

The first n elements from the paginated list.

•String

The elements that come after the specified cursor.

•Int

The last n elements from the paginated list.

•String

The elements that come before the specified cursor.

•Boolean
Default:false

Reverse the order of the underlying list.


•StaffMember

The staff member that created the return.

•ReturnStatus!
non-null

The status of the return.

Anchor to suggestedFinancialOutcomesuggestedFinancialOutcome
•SuggestedReturnFinancialOutcome

A suggested financial outcome for the return.

Arguments

•[SuggestedOutcomeReturnLineItemInput!]!
required

The line items from the return to include in the outcome.

•[SuggestedOutcomeExchangeLineItemInput!]!
required

The exchange line items from the return to include in the outcome.

•RefundShippingInput

The shipping amount from the associated order to include as a refund.

•ID

ID of the tip line item.

•[RefundDutyInput!]

The duties from the associated order to include as a refund.

Anchor to refundMethodAllocationrefundMethodAllocation
•RefundMethodAllocation
Default:ORIGINAL_PAYMENT_METHODS

Specifies which refund methods to allocate the suggested refund amount to.


•Int!
non-null

The sum of all return line item quantities for the return.

•OrderTransactionConnection!
non-null

The order transactions created from the return.

Arguments

•Int

The first n elements from the paginated list.

•String

The elements that come after the specified cursor.

•Int

The last n elements from the paginated list.

•String

The elements that come before the specified cursor.

•Boolean
Default:false

Reverse the order of the underlying list.


•SuggestedReturnRefund
Deprecated

Arguments

Anchor to returnRefundLineItemsreturnRefundLineItems
•[ReturnRefundLineItemInput!]!
required

The line items from the return to include in the refund.

•RefundShippingInput

The shipping amount from the associated order to include in the refund.

•[RefundDutyInput!]

The duties from to associated order to include in the refund.



Was this section helpful?

•query

Retrieves a return by its ID. A return represents the intent of a buyer to ship one or more items from an order back to a merchant or a third-party fulfillment location.

Use the return query to retrieve information associated with the following workflows:

A return is associated with an order and can include multiple return line items. Each return has a status, which indicates the state of the return.

Arguments

•ID!
required

The globally-unique ID of the return to retrieve.



Was this section helpful?

•mutation

Removes return and/or exchange lines from a return.

Arguments

•ID!
required

The ID of the return for line item removal.

•[ReturnLineItemRemoveFromReturnInput!]

The return line items to remove from the return.

•[ExchangeLineItemRemoveFromReturnInput!]

The exchange line items to remove from the return.


•mutation

Approves a customer's return request. If this mutation is successful, then the Return.status field of the approved return is set to OPEN.

Arguments

•ReturnApproveRequestInput!
required

The input fields to approve a return.


•mutation

Cancels a return and restores the items back to being fulfilled. Canceling a return is only available before any work has been done on the return (such as an inspection or refund).

Arguments

•ID!
required

The ID of the return to cancel.

•Boolean
DeprecatedDefault:false

•mutation

Indicates a return is complete, either when a refund has been made and items restocked, or simply when it has been marked as returned in the system.

Arguments

•ID!
required

The ID of the return to close.


•mutation

Creates a return from an existing order that has at least one fulfilled line item that hasn't yet been refunded. If you create a return on an archived order, then the order is automatically unarchived.

Use the returnCreate mutation when your workflow involves approving or declining requested returns outside of the Shopify platform.

The returnCreate mutation performs the following actions:

  • Creates a return in the OPEN state, and assumes that the return request from the customer has already been approved
  • Creates a reverse fulfillment order, and enables you to create a reverse delivery for the reverse fulfillment order
  • Creates a sales agreement with a RETURN reason, which links to all sales created for the return or exchange
  • Generates sales records that reverse the sales records for the items being returned
  • Generates sales records for any exchange line items

After you've created a return, use the return query to retrieve the return by its ID. Learn more about providing a return management workflow for merchants.

Arguments

•ReturnInput!
required

Specifies the input fields for a return.


•mutation

Declines a return on an order. When a return is declined, each ReturnLineItem.fulfillmentLineItem can be associated to a new return. Use the ReturnCreate or ReturnRequest mutation to initiate a new return.

Arguments

•ReturnDeclineRequestInput!
required

The input fields for declining a customer's return request.


•mutation

Processes a return by confirming which items customers return and exchange, handling their disposition, and optionally issuing refunds. This mutation confirms the quantities for ReturnLineItem and ExchangeLineItem objects previously created on the Return.

For returned items, you specify how to handle them through dispositions such as restocking or disposal. The mutation creates FulfillmentOrder objects for exchange items and records all transactions in the merchant's financial reports. You can optionally issue refunds through financial transfers, apply refund duties, and refund shipping costs.

Learn more about processing returns.

Arguments

•ReturnProcessInput!
required

Specifies the input fields for processing a return.


•mutation

Reopens a closed return.

Arguments

•ID!
required

The ID of the return to reopen.


•mutation

Creates a return request that requires merchant approval before processing. The return has its status set to REQUESTED and the merchant must approve or decline it.

Use this mutation when customers initiate returns that need review. After creating a requested return, use returnApproveRequest to approve it or returnDeclineRequest to decline it.

For returns that should be immediately open for processing, use the returnCreate mutation instead.

Learn more about building return management workflows.

Arguments

•ReturnRequestInput!
required

The input fields for requesting a return.


•mutation
Deprecated

Arguments

•ID!
required

The ID of the return for line item removal.

•[ReturnLineItemRemoveFromReturnInput!]!
required

The return line items to remove from the return.



Was this section helpful?

•interface

Was this section helpful?