# Handling of transactional complaints

Revised Records

time Revised content Remarks
March 25, 2024 1. Added statuses "Platform determines merchant liability, platform refunds in -312"

2, "Merchant processing -201," "Platform determining merchant liabilities, upload processing credentials -206" expiration time from 72h to 48h
Entry into force on 25 March 2024

The following interfaces are provided to Weixin Mini Program developers for receiving, querying and handling Mini Program user transaction complaints.The full process for complaints about small-ticket transactions is as follows:

The transactional complaints processing capacity includes:

  1. Receive complaint information pushed

  2. Check out the Complaints List information

  3. Merchant responded to complaint

  4. Supplementary credentials for businesses

  5. Vendors submit processing credentials

  6. Businesses complain

# Complaint Information Pushed

If there are new complaints, changes in the progress of the complaint, and updates the complaint information, the platform will push the complaint information to the message server configured by the Weixin Mini Program developer. View message Server configuration

<xml>
    <ToUserName><![CDATA[toUser]]></ToUserName>
    <FromUserName><![CDATA[fromUser]]></FromUserName>
    <CreateTime>1546924844</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[complaint_callback]]></Event>
    <BussiCallBackInfo>
        <appid>123</appid>
        <option_type>123</option_type>
        <complaint_order_id>123</complaint_order_id><status>123</status>
        <create_time>123</create_time><expire_time>123</expire_time><type>123</type><order_id>123</order_id>
        <out_trade_no>123</out_trade_no><phone_number>123</phone_number><open_id>123</open_id><customer_material_content>123</customer_material_content><customer_material_media_id_list>123</customer_material_media_id_list> // 投诉内容图片cdn(出于安全性考虑,目前该图片url有过期时间,如需查看图片,需每次重新调用该接口获取,防止图片过期导致无法查看)
        ​<pay_time>123</pay_time><total_cost>123</total_cost><product_name>123</product_name><history><time>123</time><content>123</content><media_id_list>123</media_id_list>
        </history><history><time>123</time><content>123</content><media_id_list>123<media_id_list></history>
    </BussiCallBackInfo>
</xml>
Field Name Field Dxplaination
appid Weixin Mini Program AppID
option_type Notification Type of Event: First-time Complaint Initiation / Complaint Progress Update
complaint_order_id Complaints List Number
status Status of the Complaint List
create_time When the complaint was initiated
expire_time Current Status of Complaint Expiration Time
type Type of complaint problem, with enumeration values Refer to the table below
order_id The WeChat payment order number complained of
out_trade_no Merchant Order Number
phone_number Contact details for complainant
open_id Complainant openid
customer_material_content Complaint Details - Text
customer_material_media_id_list Complaint Details - Images (For security reasons, the image URL currently has an expiration time. To view the image, you need to re-invoke the interface each time to retrieve the image to prevent the image from expiring and being unable to view it)
pay_time The time of the orders that were complained of was trading
total_cost The amount of the orders complained of
product_name Description of the item on the order that was complained about
history Complaint progress, time progress change time, content progress change text, media_id_list progress change picture

# Check out the details of the complaint form

# Request method

GET

# Request URL

https://api.weixin.qq.com/wxaapi/minishop/complaintOrderDetail?complaintOrderId=xxx&access_token=xxx

# Example of returned results

{
    errcode: 0,
    errmsg: "ok",
    complaintOrder: {
        complaintOrderId: "sadfasdf",//订单id
        openId: "dfasefasefase", //openId
        createTime: 1658903527, //投诉发起时间
        phoneNumber: 13599125777, //联系方式
        type: 12,  //投诉问题分类
        status: 1,//订单状态,枚举值
        customerMaterial:{
            content: ", //投诉内容
            mediaIdList: ["fsadfasdfsaf"], // 投诉内容图片cdn(出于安全性考虑,目前该图片url有过期时间,如需查看图片,需每次重新调用该接口获取,防止图片过期导致无法查看)
        },
        orderId: "2342", //微信支付订单号
        outTradeNo: "sdfsfd",   //商家订单号
        productName: "sdf", //商品名称
        payTime: 1658903465,   //支付时间
        totalCost: "¥0.01",    //交易金额
        expireTime: 1658903564, //投诉单当前状态到期时间,0为不存在
        headImgUrl: "http://xxx.xxx/xxx",//头像URL
        nickName: "xxxxxx",//微信昵称
        appealState: 403, //申诉状态,枚举值
    },
    // 投诉进度
    item:[{
        itemType: 1, //投诉节点状态
        time: 1658903527,  //时间
        content: "", //内容
        mediaIdList: ["https://asdfasdf"],  //图片cdn列表
        phoneNumber: 13599125777, //手机号
        blameResult: 0,
        nickName: "",
        appealItemType: 401, // 投诉节点申诉状态(item处于申诉阶段才有)
    }],
    returnBill: {
        returnId: "23234234234",    //退货id
        waybillId: "YDxxxxd", //运单号
        deliveryName: "韵达快递", //运力公司
        orderStatus: 4 //运单状态
    }
} 

# Return the meaning of the parameter

Order Details

parameter Introductions
complaintOrderId Order id
openid User's openid
createTime When the complaint was initiated
phoneNumber Contact information
type Complaint issues are classified, with enumeration values referred to the table below
customerMaterial.content The content of the complaint
customerMaterial.mediaIdList Complaint content Image cdn (For security reasons, the image URL currently has an expiration time, so to view the image you need to re-invoke the interface every time to prevent the image from expiring and being unable to view it)
orderId WeChat Payment Order Number
outTradeNo Merchant Order Number
productName Product Name
payTime Payment time
totalCostStr Amount of transaction
status The status of the complaint form, with enumeration values, refer to the table below
returnId Return id, generated by interface
orderStatus Order Status, enumeration values Refer to the table below
waybillId Shipping order number
deliveryName Capacity companies
appealState Status of complaint. The enumerated values are used in the following table: 0 - not in the complaint stage, 401 - pending business complaint, 402 - longer than complaint time, 403 - in complaint, 117 - successful complaint, 118 - failed complaint

List of problem types (type)

value Introductions
611 Shipping Problem - Not shipping on the agreed time
612 Shipping Problem - Vendor Refused to Ship
613 Shipping Problems - Less Shipping / Missing Shipping
614 Shipping problems - logistics information is not updated for a long time
621 Customer Service Questions - Customer Service does not reply
622 Customer Service Problems - Customer Service Abuse / Harassment / Intimidation
631 Commitment not fulfilled - Giveaway commitment not fulfilled
632 Commitment not fulfilled - Logistics commitment not fulfilled
633 Commitments not fulfilled - Other
641 Product Problem - Description Not Correct
642 Product Problems - Product Damage
643 Product Issues - Other
650 Unusual charge problems - the vehicle goes out of power or fails
651 Unusual charge problem - successful lock closure still billing
652 Unusual charge problem - the deduction amount is not correct
653 Problem with unusual charges - regular parking still deducts dispatch charges
654 Unusual Charge Problems - Other
655 Cycling Card Problem - Purchased a Cycling Card and still charged
656 Cycling Card Problems - Cycling Card Refunds
657 Deposit / balance refund issues - Deposit refund
658 Deposit / balance refund issues - balance refund
659 Customer Service Questions - Customer Service does not reply
660 Unusual charge problem - the charger does not pop up and has been charged
661 Unusual charge problem - the charger cannot be used properly
662 Unusual charge problem - returned, still billed
663 Unusual charge problem - length of billing is not recognized
664 Unusual Charge Problems - Other
665 Deposit refund problem - unusual deposit refund
666 Other Questions - Customer Service does not respond
667 Other problems - few points of return cannot be returned
668 Other problems - mis-operated purchase, need to consume
670 Fraud Problem - Fake Advertising
671 Problem with fraud - the number of episodes didn't match the promise
672 Problem with fraud - payment amount does not match the page
673 Problem with fraud - episode content doesn't match the hype
674 Fraud Issues - Marketing Activities Issues
675 Reimbursement issues - Repeated Reimbursement
676 Charges issue - no reason to charge
677 Issues with deductions - inconsistent criteria for deductions
678 Deduction Problem - Missing payment by Minors
679 Other Questions
610001 The number / duration of views does not match the promise
610002 The content of the episode was not consistent with the publicity.
610003 The content cannot be played
610004 Missing payment by a minor
610005 Other

List of Complaints Status (status)

value Introductions
101 The platform customer service process is in progress
102 Users cancel the application
103 The platform customer service process is in progress
104 The platform customer service process is in progress
105 The platform customer service process is in progress
106 Vendors need to supplement their credentials
107 The platform customer service process is in progress
108 Subject to additional credentials from both parties
109 The platform customer service process is in progress
112 The complaint was closed.
115 The complaint was closed.
116 The complaint was closed.
201 To be processed
202 The merchant didn't respond longer than expected, pending confirmation from the user
203 Response has been received, pending confirmation by the user
204 Response has been received, pending confirmation by the user
205 The complaint was closed.
206 The platform has been determined to be a commercial responsibility, pending upload processing credentials
207 In the platform customer service verification certificate
208 Outstanding credentials were not uploaded over time
209 The complaint has been closed.
305 The platform customer service process is in progress
307 The platform customer service process is in progress
308 The platform has been adjudicated as a commercial responsibility and is pending return of the product by the user.
309 The platform has been adjudicated as a commercial responsibility and is pending return of the product by the user.
310 The platform customer service process is in progress
311 Exceptions in issuance
312 The platform determines the liability of the merchant, and the platform refunds

Capacity single state enumeration (orderStatus)

value Introductions
0 Order has been placed for a package.
1 We have received the item.
2 In transit
3 The mission took place
4 Confirmed
5 abnormal
6 Receipt on behalf of the signature
7 The acquisition failed.
8 Receipt failed
10 No orders were placed
11 Cancelled
12 Deleted
13 The withdrawal was made
14 Has been returned
15 The capacity party canceled
99 No confirmation of status

Appealstate enumeration:

value Introductions
0 We did not enter the complaint phase
401 Wait for a complaint from a business
402 More than the time of the appeal
403 The complaint is in progress
117 The appeal was successful
118 The complaint failed.

Complaint Progress (item):

parameter Introductions
itemType Type of each node, enumeration value Refer to the table below
time time
content Content Text
mediaIdList Picture cdn resource list
phoneNumber Mobile phone number
blameResult When itemType is (31,32), determine whether the description of the return is passed, 1 corresponds to the copy to be returned by the user, and 0 corresponds to the copy to be uploaded to process the certificate
nickName Operator's nickname
appealItemType Status of complaints at a complaint stage node, enumeration value Refer to the table below

ItemType Valid Value:

value describe
1 Users initiate complaints
2 Users add comments
3 Merchant's Additional Message
7 Supplementary credentials for users
8 Supplementary credentials for businesses
11 Users apply for platform customer service assistance
12 Users withdraw complaints
13 The platform customer service process is in progress
14 Credentials to be supplemented by users
16 Vendors need to supplement their credentials
18 The platform requires additional credentials from both parties.
26 The platform verifies and handles unusual credentials, and complaints are closed, so merchants are asked to contact users themselves to solve the problem, and ensure the user experience.
30 The platform has verified that this complaint is not the responsibility of the merchant and the complaint has been closed.
31 The platform has verified that this complaint is the responsibility of the merchant, to be uploaded to handle the certificate (blameResult is 0) / the platform has verified this complaint is the responsibility of the merchant, and to be returned by the user (blameResult is 1)
32 The platform has verified that this complaint is the responsibility of the merchant, to be uploaded to handle the certificate (blameResult is 0) / the platform has verified this complaint is the responsibility of the merchant, and to be returned by the user (blameResult is 1)
33 The platform has verified that this complaint is not the responsibility of the merchant and the complaint has been closed.
36 The platform verified the processing credentials and the complaint was closed.
37 The platform verifies and handles unusual credentials, and complaints are closed, so merchants are asked to contact users themselves to solve the problem, and ensure the user experience.
101 Vendors failed to respond to complaints over time
104 The user agrees with the result of the processing and the complaint is closed
107 The merchant failed to submit complaint handling credentials over time, and the platform customer service is in the process.
108 Users failed to confirm the results of the merchant's response over time, and the complaint was closed
109 The merchant has responded to the complaint
110 Businesses submit credentials for complaint handling
111 User replenishment credentials are over time
112 Vendor's Supplementary Credentials Were Overdue
113 The parties' supplementary credentials were overdue
118 Voluntary automatic compensation

AppleItemType Valid Value:

value Introductions
0 We did not enter the complaint phase
401 Wait for a complaint from a business
402 More than the time of the appeal
403 The complaint is in progress
117 The appeal was successful
118 The complaint failed.

# Merchant responded to complaint

# Request method

POST

# Request URL

https://api.weixin.qq.com/wxaapi/minishop/bussiRespondComplaint?access_token=xxx

# Example of request parameters

{
    "content": "", // 回应的内容
    "complaintOrderId": 123456, // 单号
    "mediaIdList": [], // 图片的id
    "bussiHandle": 1,// 操作1是同意和解,2是拒绝和解
}

# The meaning of the request parameter

parameter type Required to fill in Introductions
content string content and mediaIdList must be selected. Response content (must be filled in both the image array and the content)
complaintOrderId number yes Odd Numbers
mediaIdList Array|content and mediaIdList must be selected. https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html
bussiHandle number yes Action: 1 is to agree to a settlement, 2 is to refuse a dispute

# Return the example correctly

{
   "errcode": 0 // 0:成功 
}

# Return the meaning of the parameter

parameter type Introductions
errcode number Return code
errmsg string Error message

Return code:

Return code Introductions
0 success
1 A single number does not exist.
10001 Parameter exception, the errmsg field shows the specific description

# Supplementary credentials for businesses

# Request method

POST

# Request URL

https://api.weixin.qq.com/wxaapi/minishop/bussiSupplyProof?access_token=xxx

# Example of request parameters

{
    "content": "",
    "complaintOrderId": 123456, // 单号
    "mediaIdList": [], // 图片的idlist
}

# The meaning of the request parameter

parameter type Required to fill in Introductions
content string content and mediaIdList must be selected. Response content (must be filled in both the image array and the content)
complaintOrderId number yes Odd Numbers
mediaIdList Array|content or mediaIdList https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html

# Return the example correctly

{
   "errcode": 0 // 0:成功 
}

# Return the meaning of the parameter

parameter type Introductions
errcode number Return code
errmsg string Error message

Return code:

Return code Introductions
0 success
1 A single number does not exist.
10001 Parameter exception, the errmsg field shows the specific description

# Vendors submit proof of refund

# Request method

POST

# Request URL

https://api.weixin.qq.com/wxaapi/minishop/bussiSupplyRefund?access_token=xxx

# Example of request parameters

//提交退款凭证
{
    "content": "",
    "complaintOrderId": 123456, // 单号
    "mediaIdList": [], // 图片的idlist
}


//退货场景下,提交退款凭证
{
    "content": "",
    "complaintOrderId": 123456, //单号
    "mediaIdList": [], // 图片的idlist
    "acceptReturn": 1,   //1确认收货,2签收异常(退货状态下必填)
    "returnId": '2342342' //退货id,通过查询投诉单详情接口获取(退货状态下必填)
}

# The meaning of the request parameter

parameter type Required to fill in Introductions
content string content and mediaIdList must be selected. Response content (must be filled in both the image array and the content)
complaintOrderId number yes Odd Numbers
mediaIdList Array|content and mediaIdList must be selected. Image id list Image id list, you can refer to this https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html
acceptReturn number Required in return status Confirm whether the shipment is being received
returnId number Required in return status The return order number needs to be obtained via the complaint order details interface

# Return the example correctly

{
   "errcode": 0 // 0:成功 
}

# Return the meaning of the parameter

parameter type Introductions
errcode number Return code
errmsg string Error message

Return code:

Return code Introductions
0 success
1 A single number does not exist.
10001 Parameter exception, the errmsg field shows the specific description

# Businesses complain

# Request method

POST

# Request URL

https://api.weixin.qq.com/wxaapi/minishop/busiAppeal?access_token=xxx

# Example of request parameters

// Submit complaints
{
    "content": "",
    "complaintOrderId": 123456, //单号
    "mediaIdList": [], // 图片的idlist
}

# The meaning of the request parameter

parameter type Required to fill in Introductions
content string Both content and mediaIdList are required Complaint form (must be filled in both the picture array and the content)
complaintOrderId number yes Odd Numbers
mediaIdList Array|Both content and mediaIdList are required Image id list Image id list, you can refer to this https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html

# Return the example correctly

{
   "errcode": 0 // 0:成功 
}

# Return the meaning of the parameter

parameter type Introductions
errcode number Return code
errmsg string Error message

Return code:

Return code Introductions
0 success
1 A single number does not exist.
2 The incoming mediaIdList or content format is incorrect
1002 The current state does not support this operation
10001 Parameter exception, the errmsg field shows the specific description