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.)
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 Code | Description |
---|---|
ACTIVATION_FAILURE | Activation failure |
AMZ-PG-APP-STYLE | Style not as expected |
AMZ-PG-APP-TOO-LARGE | Too large |
AMZ-PG-APP-TOO-SMALL | Too small |
AMZ-PG-BAD-DESC | Different from website description |
AMZ-PG-MISORDERED | Ordered wrong style/size/color |
AMZ-PG-WJ-BAD-CLASP | Broken or malfunctioning clasp |
AMZ-PG-WJ-BATTERY | Dead battery/does not work |
AMZ-PG-WJ-LOOSE-STONE | Missing or loose stone |
AMZ-PG-WJ-NO-CERT | Missing promised certification |
AMZ-PG-WJ-NO-DOCS | Missing paperwork/manual/warrantee |
AMZ-PG-WJ-TARNISHED | Tarnished/unacceptable condition |
AMZ-PG-WJ-TOO-LARGE | Wrong size: too large/long |
AMZ-PG-WJ-TOO-SMALL | Wrong size: too small/short |
CARRIER_BILL_NOT_AS_EXPECTED | Carrier bill not as expected |
CARRIER_SWITCHING_COST | Current carrier switching cost (termination fee) |
CR-DAMAGED_BY_CARRIER | Damaged during shipping |
CR-DAMAGED_BY_FC | Damaged due to inappropriate packaging |
CR-DEFECTIVE | Defective/Does not work properly |
CR-EXTRA_ITEM | Arrived in addition to what was ordered |
CR-FOUND_BETTER_PRICE | Better price available |
CR-MISSED_ESTIMATED_DELIVERY | Missed estimated delivery date |
CR-MISSING_ITEM_IN_SET | Missing item in the set |
CR-MISSING_PARTS | Missing or broken parts |
CR-NO_REASON_GIVEN | No reason given |
CR-NOT_COMPATIBLE | Incompatible or not useful for intended purpose |
CR-ORDERED_WRONG_ITEM | Bought by mistake |
CR-QUALITY_UNACCEPTABLE | Performance or quality not adequate |
CR-SWITCHEROO | Different from what was ordered |
CR-UNAUTHORIZED_PURCHASE | Unauthorized purchase |
CR-UNWANTED_ITEM | No longer needed/wanted |
DID_NOT_LIKE_COLOR | Didn't like color |
DID_NOT_LIKE_FABRIC | Didn't like fabric |
EXCESSIVE_INSTALLATION | Couldn't install |
NEVER_ARRIVED | Item never arrived |
NOT_AS_PHOTO | Item not as shown by photo on website |
NOT_COMFORTABLE | Shoe is uncomfortable |
NOT_COMPATIBLE_WITH_PHONE | Not compatible with my phone |
NOT_COMPATIBLE_WITH_SERVICE | Not compatible with my service |
NUMBER_PORTING_ISSUES | Number porting issues |
PART_NOT_COMPATIBLE | Part not compatible with existing system |
POOR_FIT | Item doesn't fit |
POOR_SERVICE_COVERAGE | Poor service coverage |
PRODUCT_NOT_ITALIAN | Product or manual isn't in Italian |
PRODUCT_NOT_SPANISH | Product or manual isn't in Spanish |
REBATE_ELIGIBILITY | Rebate eligibility issue |
SERVICE_PACKAGE_NOT_AS_NEEDED | Service package not as needed |
TA-CR-ARRIVED_TOO_LATE | Arrived too late |
TA-CR-DAMAGED_ON_ARRIVAL | Damaged upon arrival |
TA-CR-NOT_AS_PICTURED | Different from website description |
TA-CR-OTHER | Other reason |
TA-CR-QUALITY | Performance or quality not adequate |
UND-FAILED_DELIVERY_ATTEMPTS | Failed delivery attempts |
UND-INSUFFICIENT_ADDRESS | Insufficient or incorrect address |
UND-MISSING-LABEL | Missing label |
UND-MISSORT | Mis-sort |
UND-REFUSED | Refused |
UND-UNCLAIMED | Unclaimed |
UND-UNKNOWN | Unknown reason |
WRONG_SIZE | Wrong 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.
- 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 anitem
and asummary
.summary
: A title, description, list of resolution types, and a window, as follows:title
anddescription
: 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 theRETURN
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.
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.)
Mutations
Name | Description |
---|---|
updateOrder | Updates an existing Buy with Prime order. |
Queries
Name | Description |
---|---|
reversalOffers | Provides a reversal offer for a given Buy with Prime product. For examples, see Get Reversal Offers. |
order | Gets 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
Event | When Event is Published |
---|---|
RETURN_COMPLETED | Represents that a Buy with Prime return that was initiated earlier was successfully completed. |
RETURN_PACKAGE_DELIVERED | Represents that a returned Buy with Prime item was delivered to the fulfillment center. |
RETURN_PACKAGE_DELIVERY_FAILED | Represents that a returned Buy with Prime item failed to be delivered to the fulfillment center. |
RETURN_PACKAGE_IN_TRANSIT | Represents that a returned Buy with Prime item was dropped off at the carrier location. |
RETURN_ITEM_GRADED | Represents that the grading of a returned Buy with Prime item at the fulfillment center is complete. |
RETURN_STARTED | Represents that a return of one or more purchased Buy with Prime items was successfully initiated. |
Related topics
Updated about 17 hours ago