stable本次发布有变化全部展示
来自 Shopee 官方资料快照 ·
- 当前资料结构化阅读页
- 固定快照已留存,可追溯
- 官方原文可核对
资料正文
§1 v2.returns.get_return_list
Use this api to get detail information of many return by shop id.
§2 Overview
Overview
| Field | Value |
|---|---|
| Module | Returns |
| API type | Shop |
| HTTP method | GET |
| Path | /api/v2/returns/get_return_list |
| Production URL | https://partner.shopeemobile.com/api/v2/returns/get_return_list |
| Sandbox URL | https://partner.test-stable.shopeemobile.com/api/v2/returns/get_return_list |
| Rate limit | [0, 0, 0] |
| Permission | ERP System; Seller In House System; Customer Service; Swam ERP |
§3 Request parameters
Request parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| page_no | int64 | Yes | 1 | Specifies the starting entry of data to return in the current call. Default is 0. if data is more than one page, the offset can be some entry to start next call. |
| page_size | int64 | Yes | 10 | if many items are available to retrieve, you may need to call GetReturnList multiple times to retrieve all the data. Each result set is returned as a page of entries. Default is 40. Use the Pagination filters to control the maximum number of entries (<= 100) to retrieve per page (i.e., per call), the offset number to start next call. This integer value is usUed to specify the maximum number of entries to return in a single ""page"" of data. |
| create_time_from | timestamp | No | 1655392442 | The create_time_from and create_time_to fields specify a date range for retrieving orders (based on the order create time). The create_time_from field is the starting date range. The maximum date range that may be specified with the create_time_from and create_time_to fields is 15 days. |
| create_time_to | timestamp | No | 1655392542 | The create_time_from and create_time_to fields specify a date range for retrieving orders (based on the order create time). The create_time_from field is the starting date range. The maximum date range that may be specified with the create_time_from and create_time_to fields is 15 days. |
| update_time_from | timestamp | No | 1655392442 | The update_time_from and update_time_to fields specify a date range for retrieving orders (based on the last return updated time). The update_time_from field is the starting date range. The maximum date range that may be specified with the update_time_from and update_time_to fields is 15 days. update_time_from should be >= create_time_from |
| update_time_to | timestamp | No | 1655392542 | The update_time_from and update_time_to fields specify a date range for retrieving orders (based on the last return updated time). The update_time_from field is the starting date range. The maximum date range that may be specified with the update_time_from and update_time_to fields is 15 days. update_time_from should be >= create_time_from |
| status | string | No | REQUESTED | This is for filtering return request by return status. See "Data Definition - ReturnStatus" |
| negotiation_status | string | No | TERMINATED | This is for filtering return request by counter status. See "Data Definition - NegotiationStatus" |
| seller_proof_status | string | No | PENDING | This is for filtering return request by proof status. See "Data Definition - SellerProofStatus" |
| seller_compensation_status | string | No | NOT_REQUIRED | This is for filtering return request by compensation status. See "Data Definition - SellerCompensationStatus" |
§4 Response parameters
Response parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| request_id | string | 33e099960cdf420393ca5d5c35016f6d | The identifier for an API request for error tracking | |
| error | string | error code | ||
| message | string | error description | ||
| response | object | Amount of the refund. | ||
| response.more | boolean | true | Whether has next page | |
| response.return | object[] | |||
| response.return.image | string[] | ["https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826"] | Image URLs of return. | |
| response.return.reason | string | PHYSICAL_DMG | Indicates the original return reason submitted by the buyer when initiating the return request.; Applicable values: See Data Definition- ReturnReason and Reassessed Request Reason.; Note: There may be cases where Shopee Agent updates the return request with a "Reassessed Return Reason" after reviewing more details about the buyer's return request and potentially after requesting evidence from the seller. If the platform updates the return reason during this process, the reassessed outcome will be provided separately in the reassessed_request_reason field. | |
| response.return.text_reason | string | return reason | Reason that buyer provide. | |
| response.return.reassessed_request_reason | string | ITEM_MISSING | Indicates the return reason reassessed by the platform as more suitable.; There may be cases where Shopee Agent updates the return request with a "Reassessed Return Reason" after reviewing more details about the buyer's return request and potentially after requesting evidence from the seller.; Applicable values: See Data Definition- ReturnReason and Reassessed Request Reason. If no reassessment has been made, the value will be NONE. | |
| response.return.return_sn | string | 200203171852695 | The serial number of return. | |
| response.return.refund_amount | float | 1409.0 | Amount of the refund. | |
| response.return.currency | string | SGD | Currency of the return. | |
| response.return.create_time | timestamp | 1580721513 | The time of return create. | |
| response.return.update_time | timestamp | 1580729377 | The time of modify return. | |
| response.return.status | string | CANCELLED | Enumerated type that defines the current status of the return. Applicable values: See Data Definition- ReturnStatus. | |
| response.return.due_date | timestamp | 1580721513 | The last time seller deal with this return. | |
| response.return.tracking_number | string | RNSHS00177569 | The tracking number assigned by the shipping carrier for item shipment. | |
| response.return.dispute_reason | string[] | ["UNKNOWN"] | The reason of seller dispute return. While the return has been disputed, this field is useful. Applicable values: See Data Definition- ReturnDisputeReason. | |
| response.return.dispute_text_reason | string[] | ["reason"] | The reason that seller provide. While the return has been disputed, this field is useful. | |
| response.return.needs_logistics | boolean | true | Items to be sent back to seller. Can be either integrated/non-integrated. | |
| response.return.amount_before_discount | float | 1409.0 | Order price before discount. | |
| response.return.user | object | |||
| response.return.user.username | string | abcdefg | Buyer's nickname, will be masked as "****" if it is a non-integrated return in TW region. | |
| response.return.user.email | string | ***********r1@shopee.com | Buyer's email, will be empty if it is a non-integrated return in TW region. | |
| response.return.user.portrait | string | https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826 | Buyer's portrait, will be empty if it is a non-integrated return in TW region. | |
| response.return.item | object[] | |||
| response.return.item.model_id | int64 | 0 | Shopee's unique identifier for a variation of an item. | |
| response.return.item.name | string | agsabdmnambd | Name of item in local language. | |
| response.return.item.images | string[] | ["https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826"] | Image URLs of item. | |
| response.return.item.amount | int64 | 1 | Amount of this item. | |
| response.return.item.item_price | float | 1409.9 | The price of item. | |
| response.return.item.is_add_on_deal | boolean | false | To indicate if this item belongs to an addon deal. | |
| response.return.item.is_main_item | boolean | false | To indicate if this item is main item or sub item. True means main item, false means sub item. | |
| response.return.item.add_on_deal_id | int64 | 0 | The unique identity of an addon deal. | |
| response.return.item.item_id | int64 | 2147533133 | The id of item. | |
| response.return.item.item_sku | string | USB | The sku of item. | |
| response.return.item.variation_sku | string | RED | The variation sku of item | |
| response.return.order_sn | string | 200203C6W0AR27 | Shopee's unique identifier for an order. | |
| response.return.return_ship_due_date | timestamp | 1655438336 | The due date for buyer to ship order. | |
| response.return.return_seller_due_date | timestamp | 1655438336 | The due date for seller to deal with this return when buyer have shipped order. | |
| response.return.negotiation_status | string | PENDING_RESPOND | Counter status. See "Data Definition - NegotiationStatus" | |
| response.return.seller_proof_status | string | PENDING | Proof status. See "Data Definition - SellerProofStatus" | |
| response.return.seller_compensation_status | string | PENDING_REQUEST | Compensation status. See "Data Definition - SellerCompensationStatus" | |
| response.return.return_refund_type | string | RRAOC | To indicate whether the return is RRBOC (Return/Refund request raised before Order Complete) or RRAOC (Return/Refund request raised after Order Complete). | |
| response.return.return_solution | int32 | 0 | To indicate the most updated solution of the Return/Refund request (NOTE: this is not the solution during negotiation). Applicable value: - 0: Return and Refund; - 1: Refund Only | |
| response.return.is_seller_arrange | boolean | false | To indicate whether the return_sn is using the “Seller Arrange” return method. This would only be True for TW and BR. | |
| response.return.is_shipping_proof_mandatory | boolean | false | To indicate whether uploading shipping proof is mandatory for seller to confirm "Arrange Pickup" when is_seller_arrange = true. | |
| response.return.return_refund_request_type | int32 | 0 | To indicate the type of return refund request, whether it is a Normal RR request, an In-transit RR request, and a Return on the Spot: 0: Normal RR (RR is raised by the buyer after delivery done / estimated delivery date); 1: In-transit RR (RR is raised by the buyer while item is still in-transit to buyer); 2: Return-on-the-Spot (RR is raised by the driver after buyer rejected parcel at delivery); For more details, see Data Definition- Return Refund Request Type. | |
| response.return.validation_type | string | seller_validation | To indicate whether seller or warehouse will expect to receive the return parcel from buyer and validate the condition of the parcel: - seller_validation; - warehouse_validation; For more details, see Data Definition- ValidationType. | |
| response.return.is_arrived_at_warehouse | int32 | 3 | [Only for validation_type = warehouse_validation] Indicates the parcel’s check-in status at the warehouse. This field helps sellers quickly determine whether the parcel has arrived at the warehouse or has been rejected.; Applicable values: 1: Pending Inbound; 2: Rejected; 3: Inbound; 4: Cancelled | |
| response.return.follow_up_action_list | object[] | [Only for validation_type = warehouse_validation] Warehouse handling actions for each item in the parcel. | ||
| response.return.follow_up_action_list.item_id | int64 | 2700126223 | Unique identifier of the item. | |
| response.return.follow_up_action_list.model_id | int64 | 2000458802 | Unique identifier of the model under the item. | |
| response.return.follow_up_action_list.qty | int32 | 2 | Quantity of items or models under the same current status. | |
| response.return.follow_up_action_list.current_status | int32 | 2 | Current status for the item/model within the warehouse.; Applicable values: 1:Dispose; 2:Return to Seller; 7:Received and Putaway; 8:Return to Buyer; 9:Shortage; Note: Since Resell is currently applicable only to Failed Delivery parcels, the following values will not be returned for now, and will be returned once Resell becomes applicable to Return Refund parcels in the future: 3:Putaway for Resell; 4:Resell Outbound; 5:Resell Failed; 6:Resell Exit | |
| response.return.follow_up_action_list.related_order_sn_list | string[] | [] | List of order_sn generated from the Resell process. Returned only when current_status = 4 (Resell Outbound).; Note: Since Resell is currently applicable only to Failed Delivery parcels, this field will remain empty for now, and valid values will be returned once Resell becomes applicable to Return Refund parcels in the future. | |
| response.return.follow_up_action_list.resell_failed_next_step | string | "" | Next step after a Resell failure. Returned only when current_status = 5 (Resell Failed).; Note: Since Resell is currently applicable only to Failed Delivery parcels, this field will remain empty for now, and valid values will be returned once Resell becomes applicable to Return Refund parcels in the future. | |
| response.return.is_partial_quantity_return | boolean | true | To indicate whether the return includes items with partial quantities. | |
| response.return.is_refund_amount_adjusted | boolean | true | To indicate whether the actual refund amount is less than the maximum allowable refund. |
§5 Common parameters
Common parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| partner_id | int | 1 | Partner ID is assigned upon registration is successful. Required for all requests. | |
| timestamp | timestamp | 1610000000 | This is to indicate the timestamp of the request. Required for all requests. Expires in 5 minutes. | |
| access_token | string | c09222e3fc40ffb25fc947f738b1abf1 | The token for API access, using to identify your permission to the api. Valid for multiple use and expires in 4 hours. | |
| shop_id | int | 600000 | Shopee's unique identifier for a shop. Required param for most APIs. | |
| sign | string | e318d3e932719916a9f9ebb57e2011961bd47abfa54a36e040d050d8931596e2 | Signature generated by partner_id, api path, timestamp, access_token, shop_id and partner_key via HMAC-SHA256 hashing algorithm. More details: https://open.shopee.com/documents?module=87&type=2&id=58&version=2 |
§6 Request samples
Request samples
§7 Java
Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.get("https://partner.shopeemobile.com/api/v2/returns/get_return_list?access_token=access_token&create_time_from=1655392442&create_time_to=1655392542&negotiation_status=TERMINATED&page_no=1&page_size=10&partner_id=partner_id&seller_compensation_status=NOT_REQUIRED&seller_proof_status=PENDING&shop_id=shop_id&sign=sign&status=REQUESTED×tamp=timestamp&update_time_from=1655392442&update_time_to=1655392542")
.asString();
§8 PHP
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://partner.shopeemobile.com/api/v2/returns/get_return_list?access_token=access_token&create_time_from=1655392442&create_time_to=1655392542&negotiation_status=TERMINATED&page_no=1&page_size=10&partner_id=partner_id&seller_compensation_status=NOT_REQUIRED&seller_proof_status=PENDING&shop_id=shop_id&sign=sign&status=REQUESTED×tamp=timestamp&update_time_from=1655392442&update_time_to=1655392542',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
§9 cURL
cURL
curl --location --request GET 'https://partner.shopeemobile.com/api/v2/returns/get_return_list?access_token=access_token&create_time_from=1655392442&create_time_to=1655392542&negotiation_status=TERMINATED&page_no=1&page_size=10&partner_id=partner_id&seller_compensation_status=NOT_REQUIRED&seller_proof_status=PENDING&shop_id=shop_id&sign=sign&status=REQUESTED×tamp=timestamp&update_time_from=1655392442&update_time_to=1655392542'
§10 Python
Python
import requests
url = "https://partner.shopeemobile.com/api/v2/returns/get_return_list?access_token=access_token&create_time_from=1655392442&create_time_to=1655392542&negotiation_status=TERMINATED&page_no=1&page_size=10&partner_id=partner_id&seller_compensation_status=NOT_REQUIRED&seller_proof_status=PENDING&shop_id=shop_id&sign=sign&status=REQUESTED×tamp=timestamp&update_time_from=1655392442&update_time_to=1655392542"
payload={}
headers = {
}
response = requests.RPCRequest("GET",url,headers=headers, data=payload, allow_redirects=False)
print(response.text)
§11 Response sample
Response sample
§12 JSON
JSON
{
"request_id": "33e099960cdf420393ca5d5c35016f6d",
"error": "-",
"message": "-",
"response": {
"more": true,
"return": [
{
"image": [
"https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826"
],
"reason": "PHYSICAL_DMG",
"text_reason": "return reason",
"return_sn": "200203171852695",
"refund_amount": 1409,
"currency": "SGD",
"create_time": 1580721513,
"update_time": 1580729377,
"status": "CANCELLED",
"due_date": 1580721513,
"tracking_number": "RNSHS00177569",
"dispute_reason": [
"UNKNOWN"
],
"dispute_text_reason": [
"reason"
],
"needs_logistics": true,
"amount_before_discount": 1409,
"user": {
"username": "abcdefg",
"email": "***********r1@shopee.com",
"portrait": "https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826"
},
"item": [
{
"model_id": 0,
"name": "agsabdmnambd",
"images": [
"https://cf.shopee.sg/file/166f23cbfb31bd882f51cfe7f90d3826"
],
"amount": 1,
"item_price": 1409.9,
"is_add_on_deal": false,
"is_main_item": false,
"add_on_deal_id": 0,
"item_id": 2147533133,
"item_sku": "USB",
"variation_sku": "RED"
}
],
"order_sn": "200203C6W0AR27",
"return_ship_due_date": 1655438336,
"return_seller_due_date": 1655438336,
"negotiation_status": "PENDING_RESPOND",
"seller_proof_status": "PENDING",
"seller_compensation_status": "PENDING_REQUEST",
"return_refund_type": "RRAOC",
"return_solution": 0,
"is_seller_arrange": false,
"is_shipping_proof_mandatory": false,
"return_refund_request_type": 0,
"validation_type": "seller_validation",
"is_arrived_at_warehouse": 3,
"follow_up_action_list": [
{
"item_id": 2700126223,
"model_id": 2000458802,
"qty": 2,
"current_status": 2,
"related_order_sn_list": [],
"resell_failed_next_step": ""
}
]
}
]
}
}
§13 Error example
Error example
§14 JSON
JSON
{
"request_id": "369807d9111b2b3a70d4e838e827b048",
"error": "error_auth",
"message": "Invalid access_token."
}
§15 Errors
Errors
| Error | Description | Solution |
|---|---|---|
| error_banned | Core server error. | |
| error_perm | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_limit | Core server error. | |
| error_deleted | Core server error. | |
| error_disabled | Core server error. | |
| error_param | Core server error. | |
| error_exception | Core server error. | |
| error_exist | Core server error. | |
| error_expire | Core server error. | |
| error_fraud | Core server error. | |
| error_limit | Core server error. | |
| error_perm | Core server error. | |
| error_invitation | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_locked | Core server error. | |
| error_perm | Core server error. | |
| error_need_voice_otp | Core server error. | |
| error_param | Core server error. | |
| error_need_otp | Core server error. | |
| error_message_censored | Core server error. | |
| error_network | Core server error. | |
| error_not_exists | Core server error. | |
| error_not_login | Core server error. | |
| error_out_stockm | Core server error. | |
| error_param_format | Core server error. | |
| error_password_change | Core server error. | |
| error_perm | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_param | Core server error. | |
| error_limit | Core server error. | |
| error_unknown | Core server error. | |
| error_account | Core server error. | |
| error_version | Core server error. | |
| error_param | The period between create_time_from and created_time_of must not more than 15 days. | |
| error_param | The create_time_to should be later than create_time_from. | |
| error_perm | invalid dispute_reason. | |
| error_param | no partner_id | |
| error_data | lack of param | |
| error_param | The update_time_from must be after create_time_from. | |
| error_perm | there is invalid params. | |
| error_data | Something wrong. Please try later. [20] | |
| error_network | Inner http call failed | |
| error_network | Inner error, please try later. [4]. | |
| error_inner | Inner error, please try later. [0]. | |
| error_data | Inner error, please try later. [5]. | |
| error_data | parse data failed | |
| error_data | data not exist | |
| error_param | parameter invalid | |
| error_param | Inner error, please try later. [1]. | |
| error_data | Query offer info failed. Please try later. | |
| error_data | Query order info failed. Please try later. | |
| error_data | Query proof info failed. Please try later. | |
| error_data | Query return info failed. Please try later. | |
| error_data | Get user info failed. Please try later. | |
| error_perm | invalid email : {email}. | |
| error_param | Return SN or ID is invalid. | |
| error_param | The information you queried is not found. | |
| error_param | Wrong parameters, detail: {msg}. | |
| error_server | Something wrong. Please try later. | |
| error_shop | shopid is invalid | |
| error_param | request not from gateway | |
| error_data | The return you queried doesn't exist. | |
| error_permission | You don't have permission to view this return data. | |
| error_permission | Please link shop and partner on seller center. | |
| error_param | The update_time_from must be after create_time_from. | |
| error_param | The period between update_time_from and update_time_to must not more than 15 days. | |
| error_param | The update_time_to should be later than update_time_from. | |
| error_param | The period between update_time_from and update_time_to must not more than 15 days. |
§16 Common errors
Common errors
| Error | Description | Solution |
|---|---|---|
| error_auth | partner_id is invalid | |
| error_auth | The App is deleted, and you'll be unable to make any API call. | |
| error_auth | App developer’s permissions for authorizations have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| error_param | There is no partner_id in query. | |
| error_param | Invalid partner_id. | |
| error_param | no timestamp | |
| error_param | Invalid timestamp | |
| error_param | There is no sign in query. | |
| error_sign | Wrong sign. | |
| invalid_partner_id | Invalid partner_id, please have a check. | |
| error_auth | No permission to current api. | |
| error_api_call_restricted | The App permission for api call have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| api_suspended | The API is offline. Please call v2 API instead. | |
| error_limit | The total API call number made by your APP has reached the daily API call limit, please try again after 00: 00 (UTC+08:00) | |
| error_rate_limit | Too many requests. You have reached the rate limit. Please try again later. | |
| source_ip_undeclared | Request Source IP ({ip}) is undeclared. Please declare all your IP addresses in the Shopee Open Platform Console > App list > IP Address Whitelist | |
| error_param | Permission denied. This API is currently offline or the request path is incorrect. | |
| error_param | Partner_id is invalid, should be an integer between 0 and 4294967295. | |
| error_param | no timestamp. | |
| error_param | Timestamp is invalid, should be an integer between 0 and 4294967295. | |
| error_param | Timestamp is expired. | |
| error_partner_key_expired | Your API partner key has expired, please reset the Live API Partner Key in Console to get a new valid partner key to call open api. | |
| error_api_permission | This app type has no permission to this API. | |
| error_param | There is no access_token in query. | |
| error_auth | Invalid access_token. | |
| error_auth | Invalid partner_id or shopid. | |
| shop_no_linked | Partner and shop has no linked. | |
| shop_banned | The shop account has been banned. Permissions for shop authorization and API calls have been suspended until the shop account is restored. | |
| invalid_acceess_token | Invalid access_token, please have a check. | |
| partner_shop_no_link | Invalid partner_id or shop_id, please have a check. | |
| error_ashop_api_permission | The shop is Affiliate shop has no permission to call this API. | |
| error_kyc_auth | No permission. Please inform the seller to complete the Seller Registration on Shopee Seller Center first, then this shop can call for this API. | |
| error_auth | System error, please try again later. | |
| error_param | There is no shop_id in query. | |
| error_param | shop_id is invalid, should be an integer between 0 and 4294967295. |
§17 Update log
Update log
| Date | Change |
|---|---|
| 2026-08-31 | Add is_partial_quantity_return and is_refund_amount_adjusted |
| 2025-12-19 | Add reassessed_request_reason response field |
| 2025-11-28 | Add is_arrived_at_warehouse and follow_up_action_list response fields |
| 2025-09-29 | Add return_refund_request_type and validation_type response fields |
| 2025-09-19 | Add is_seller_arrange and is_shipping_proof_mandatory response fields |
