Process Returns

📘

Important

The Buy with Prime API is offered as a preview and might change as we receive feedback and iterate on the interfaces. We are sharing this early documentation to help you learn about the Buy with Prime API as we write and iterate on the content.

A Buy with Prime return is an action that a customer takes to return previously-delivered items that they purchased in a Buy with Prime order.

From an implementation perspective, there are two types of returns:

  • Returns requested through Buy with Prime: For example, a customer might go to the online returns center or to the Buy with Prime shopper order details page, where they request to return an item.
  • External returns: For example, the return might be initiated by your order management system, your merchant admin portal, and so on. The associated Buy with Prime order initially has no record of these returns. Therefore, after you create a return on your end, you call the Buy with Prime API to add the external return to the Buy with Prime order.

This topic outlines terminology and Buy with Prime API operations that you use to manage Buy with Prime returns.

Terminology

The following sections describe terminology related to returns.

Return

A Buy with Prime return is an action that a customer takes to return previously-delivered items that they purchased in a Buy with Prime order.

Currently, you can create Buy with Prime returns for eligible items only within the Buy with Prime merchant console, and customers can create returns within the online returns center.

If you subscribe to Buy with Prime return events, you're notified of returns by event types that start with RETURN, such as the RETURN_STARTED event, RETURN_COMPLETED event, and so on. For details about what to do when you receive one of these events, see Steps to Process Returns.

When you process returns, you call the order query for more information about the return. The response provides information such as return status updates, return item details, return creation time, and so on. This information helps you understand the overall return process and status. The following image shows the fields of the order query response that are pertinent to returns. (Click the image to enlarge it.)

Order query response fields related to returns

Order query response fields related to returns

Return alias

You can associate each external return with one or more identifiers called aliases, which are in the returns.details.aliases field of the order. If you use aliases for a return, it is crucial to ensure that the aliases that you provide for the return are unique and aren't already associated with other returns in the order.

Each alias has an aliasId and an aliasType. We strongly recommend that you provide a unique aliasId that you can use when you call the updateOrder mutation to add or update return details.

You can add and update external return aliases related to the order by calling the updateOrder mutation. To update external return aliases in a Buy with Prime order, you pass a new, complete list of aliases. The new list of aliases will replace the existing list of aliases. For example, to delete all aliases, pass an empty list of aliases.

For requests and responses of different ways to update external return aliases, see the following examples:

Return reason code

A return reason code specifies the reason for the return. Amazon has the following set of default return reason codes.

Reason CodeDescription
ACTIVATION_FAILUREActivation failure
AMZ-PG-APP-STYLEStyle not as expected
AMZ-PG-APP-TOO-LARGEToo large
AMZ-PG-APP-TOO-SMALLToo small
AMZ-PG-BAD-DESCDifferent from website description
AMZ-PG-MISORDEREDOrdered wrong style/size/color
AMZ-PG-WJ-BAD-CLASPBroken or malfunctioning clasp
AMZ-PG-WJ-BATTERYDead battery/does not work
AMZ-PG-WJ-LOOSE-STONEMissing or loose stone
AMZ-PG-WJ-NO-CERTMissing promised certification
AMZ-PG-WJ-NO-DOCSMissing paperwork/manual/warrantee
AMZ-PG-WJ-TARNISHEDTarnished/unacceptable condition
AMZ-PG-WJ-TOO-LARGEWrong size: too large/long
AMZ-PG-WJ-TOO-SMALLWrong size: too small/short
CARRIER_BILL_NOT_AS_EXPECTEDCarrier bill not as expected
CARRIER_SWITCHING_COSTCurrent carrier switching cost (termination fee)
CR-DAMAGED_BY_CARRIERDamaged during shipping
CR-DAMAGED_BY_FCDamaged due to inappropriate packaging
CR-DEFECTIVEDefective/Does not work properly
CR-EXTRA_ITEMArrived in addition to what was ordered
CR-FOUND_BETTER_PRICEBetter price available
CR-MISSED_ESTIMATED_DELIVERYMissed estimated delivery date
CR-MISSING_ITEM_IN_SETMissing item in the set
CR-MISSING_PARTSMissing or broken parts
CR-NO_REASON_GIVENNo reason given
CR-NOT_COMPATIBLEIncompatible or not useful for intended purpose
CR-ORDERED_WRONG_ITEMBought by mistake
CR-QUALITY_UNACCEPTABLEPerformance or quality not adequate
CR-SWITCHEROODifferent from what was ordered
CR-UNAUTHORIZED_PURCHASEUnauthorized purchase
CR-UNWANTED_ITEMNo longer needed/wanted
DID_NOT_LIKE_COLORDidn't like color
DID_NOT_LIKE_FABRICDidn't like fabric
EXCESSIVE_INSTALLATIONCouldn't install
NEVER_ARRIVEDItem never arrived
NOT_AS_PHOTOItem not as shown by photo on website
NOT_COMFORTABLEShoe is uncomfortable
NOT_COMPATIBLE_WITH_PHONENot compatible with my phone
NOT_COMPATIBLE_WITH_SERVICENot compatible with my service
NUMBER_PORTING_ISSUESNumber porting issues
PART_NOT_COMPATIBLEPart not compatible with existing system
POOR_FITItem doesn't fit
POOR_SERVICE_COVERAGEPoor service coverage
PRODUCT_NOT_ITALIANProduct or manual isn't in Italian
PRODUCT_NOT_SPANISHProduct or manual isn't in Spanish
REBATE_ELIGIBILITYRebate eligibility issue
SERVICE_PACKAGE_NOT_AS_NEEDEDService package not as needed
TA-CR-ARRIVED_TOO_LATEArrived too late
TA-CR-DAMAGED_ON_ARRIVALDamaged upon arrival
TA-CR-NOT_AS_PICTUREDDifferent from website description
TA-CR-OTHEROther reason
TA-CR-QUALITYPerformance or quality not adequate
UND-FAILED_DELIVERY_ATTEMPTSFailed delivery attempts
UND-INSUFFICIENT_ADDRESSInsufficient or incorrect address
UND-MISSING-LABELMissing label
UND-MISSORTMis-sort
UND-REFUSEDRefused
UND-UNCLAIMEDUnclaimed
UND-UNKNOWNUnknown reason
WRONG_SIZEWrong size/fit
Refund

A Buy with Prime refund is a process by which a customer is reimbursed for an item that they ordered, which is then returned or cancelled. A return always leads to a refund.

For details, see Synchronize Refunds.

Buy with Prime returns lifecycle

Throughout the shopper journey, customers interact with returns in the following ways.

Buy with Prime Shopper Journey

Buy with Prime Shopper Journey for a Return

  • Pre-checkout: As a customer browses products on your site, the site (product detail page, search page, and so on) shows whether a Buy with Prime item is eligible for return. You provide this information by getting a reversal offer.
  • Checkout: On your site's checkout pages, the customer sees whether each of the Buy with Prime items in the order is eligible for a return. As with pre-checkout, you provide this information by getting a reversal offer.
  • Post-order: After the customer places the order and the Buy with Prime items are delivered to the customer, the customer can check the shopper order detail page to see whether each of the Buy with Prime items in the order is eligible for return along with a deadline for the return.
  • Return creation: You or the customer creates a return for return-eligible Buy with Prime items in an order within the return window. Currently, you can create Buy with Prime returns only within the Buy with Prime merchant console, and customers can create returns within the online returns center. Returns can only be created for Buy with Prime items that have been delivered to the customer.
  • Return: The customer drops off the item according to their chosen return transportation method, and the item is then shipped and returned to an Amazon fulfillment center. To handle returns, see Steps to Process Returns.
  • Refund: Every Buy with Prime return is associated with a refund. You issue a refund to the customer when you are notified by the REFUND_REQUESTED event. To handle refunds, see Steps to Process Refunds.
Relationship between orders and returns

A Buy with Prime order with only one item can have only one associated return. However, a Buy with Prime order with multiple items or multiple quantities of the same item can be associated with multiple returns as follows:

  • You or the customer can create different returns for each item separately.
  • You or the customer can create different returns with partial quantities of the same item.
  • You or the customer can create different returns for different items at different points in time.

For example, consider an order in which two units of item A and one unit of item B were delivered. The customer might create the following two returns:

  • Return 1 with the first unit of item A
  • Return 2 with the second unit of item A and one unit of item B

The following example shows a response to a query to get the details of the order.

{
  "data": {
    "order": {
      "id": "example-order-id",
      "returns": {
        "details": [
          {
            "id": "example-return-id-1",
            "createdAt": "2022-02-03T18:17:19Z",
            "updatedAt": "2022-02-03T18:17:19Z",
            "state": "CREATED",
            "returnFor": {
              "returnOrderLineItems": [
                {
                  "lineItem": {
                    "id": "example-line-item-id-1"
                  },
                  "returnedQuantity": {
                    "amount": 1
                  }
                }
              ]
            }
          },
          {
            "id": "example-return-id-2",
            "createdAt": "2022-02-04T18:17:19Z",
            "updatedAt": "2022-02-04T18:17:19Z",
            "state": "CREATED",
            "returnFor": {
              "returnOrderLineItems": [
                {
                  "lineItem": {
                    "id": "example-line-item-id-1"
                  },
                  "returnedQuantity": {
                    "amount": 1
                  }
                },
                {
                  "lineItem": {
                    "id": "example-line-item-id-2"
                  },
                  "returnedQuantity": {
                    "amount": 1
                  }
                }
              ]
            }
           }  
         ]
       }
     }
   }
 }
Reversal

Reversal is a term that the Buy with Prime API uses to encompass the concepts of returns, refunds, and cancellations.

Reversal offer

At a high level, a Buy with Prime reversal offer specifies whether the item (or multiple items that are bought together) can be returned by evaluating a set of conditions specified in the returns policy found at About Our Returns Policies, which you must follow and incorporate into your existing policies. A reversal offer contains the following information (some of which is nested inside the reversal offer object):

  • id: The unique identifier of the reversal offers response.
  • expiresAt: The timestamp by which the reversal offers expire.
  • reversalOfferCollection: A list of items and associated reversal offers. Each item in the list contains the item ID and its associated reversal offers. Each reversal offer has an item and a summary.
  • summary: A title, description, list of resolution types, and a window, as follows:
    • title and description: Strings that you can display to shoppers on the product detail page, the checkout page, and so on. The strings contain return eligibility (returnable/non-returnable) and the return window (for example, 30 days from order delivery).
    • resolutionTypes: The available return resolutions to the shopper. If the RETURN resolution isn’t present, the item isn't eligible for return.
    • window: Eligible time window in which the shopper can return the product. The window is available as an absolute date (such as 2024-01-30T23:59:59Z for a holiday window) or a number of days (for example, 30 days). You can use the resolution types and window to display custom messages or UI elements.
Reversal Offer

API operations

The following figure shows the role of mutations, queries, and events in the Buy with Prime return lifecycle. (Click the image to enlarge it.)

API calls and events in the Buy with Prime Return Lifecycle

API calls and events in the Buy with Prime Return Lifecycle


Mutations

NameDescription
updateOrderUpdates an existing Buy with Prime order.

Queries

NameDescription
reversalOffersProvides a reversal offer for a given Buy with Prime product. For examples, see Get Reversal Offers.
orderGets a Buy with Prime order, in which you can see the returns associated with an order. With this information, you can update the return details in your order management system. For more information, see Get Return Details and Steps to Process Returns.

Events

EventWhen Event is Published
RETURN_COMPLETEDRepresents that a Buy with Prime return that was initiated earlier was successfully completed.
RETURN_PACKAGE_DELIVEREDRepresents that a returned Buy with Prime item was delivered to the fulfillment center.
RETURN_PACKAGE_DELIVERY_FAILEDRepresents that a returned Buy with Prime item failed to be delivered to the fulfillment center.
RETURN_PACKAGE_IN_TRANSITRepresents that a returned Buy with Prime item was dropped off at the carrier location.
RETURN_ITEM_GRADEDRepresents that the grading of a returned Buy with Prime item at the fulfillment center is complete.
RETURN_STARTEDRepresents that a return of one or more purchased Buy with Prime items was successfully initiated.

Related topics