Skip to content

Reject Return

POST
/return_refund/202606/returns/{return_id}/reject

Use this API to reject a buyer’s refund-only, return-and-refund, or replacement request, or to offer a partial refund after the package is received. The valid decision depends on the current request type and status. Before calling this API, make sure the request is still awaiting the seller action that matches the decision you send.

return_id
required
string

The unique identifier of the return request to be rejected by the seller.

shop_cipher
required
string

Identifies the shop. Obtain it from the Get Authorized Shops API.

idempotency_key
string
<= 255 characters

A unique value generated by the client that the server uses to recognize repeated requests. Generate a collision-resistant value, such as a UUID, and reuse the same value when retrying the same request. If omitted, the server generates a key for the request; callers that need idempotent retries should provide and reuse their own key. Maximum length: 255 characters.

Media typeapplication/json
object
decision
required

Seller’s decision for the request, available values:

  • REJECT_REFUND: seller reject a refund-only request
  • REJECT_RETURN: seller reject the initial return-and-refund request
  • REJECT_RECEIVED_PACKAGE: seller reject return-and-refund request after the buyer has already shipped or handed over the item.
  • REJECT_REPLACEMENT: seller reject replacement request
  • OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG: seller offer partial refund regarding to the package item quality check
string
Allowed values: REJECT_REFUND REJECT_RETURN REJECT_RECEIVED_PACKAGE REJECT_REPLACEMENT OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG
reject_reason
required

Seller’s reason for rejecting the aftersales request. For OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, first call Get Review Decision (GET /return_refund/202606/review_decision) for the same aftersales request: pass this request’s return_id as return_or_cancel_id and set check_decisions to OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG. In the response, select the data.line_items[] entry for the affected return line item, then select its decisions[] entry whose decision is OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, and submit one of that decision’s available_reject_reasons[].name values in this field. For other decisions, use the Get Decision Eligibility endpoint to retrieve the currently available rejection options for the same request and submit the returned rejection reason name. Note: Available decisions and rejection reasons depend on the current request status, so retrieve eligibility again before calling this API.

string
comment

Seller’s comment about the rejection decision. For OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, the comment must not exceed 500 characters.

string
images

Images provided by the seller to support the decision. For OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, a maximum of 6 images is allowed.

Array<object>
object
image_id
required

Image ID.

string
mime_type

MIME type.

string
height

Image height. Unit: px

integer format: int64
width

Image width. Unit: px

integer format: int64
partial_refund_amount

Partial refund amount and currency. Required when decision is OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG.

object
partial_refund_total

Partial refund amount. When decision is OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, this field is required and must be a numeric string representing an amount greater than 0.

string
currency

Currency of the partial refund amount. When decision is OFFER_PARTIAL_REFUND_AFTER_RECEIVING_PKG, this field is required and must match the return order’s currency.

string
Example
{
"decision": "REJECT_RECEIVED_PACKAGE",
"reject_reason": "seller_reject_apply_package_has_not_exceeded_estimated_delivery_time",
"comment": "I have reached an agreement with the buyer",
"images": [
{
"image_id": "tos-maliva-i-o3syd03w52-us/57a1c8908fe74572861ea5e50887d8d1",
"mime_type": "image/png",
"height": 200,
"width": 200
}
],
"partial_refund_amount": {
"partial_refund_total": "4.66",
"currency": "USD"
}
}

Success

Media typeapplication/json
object
code

Status code; 0 means success.

integer format: int64
message

Success or failure message.

string
request_id

Request log ID.

string
data
object
Example
{
"code": 0,
"data": {},
"message": "Success",
"request_id": "202203070749000101890810281E8C70B7"
}