After requesting funds-distribution, call the API to query the funds-distribution result. After requesting to unfreeze the remaining funds, call the API to query the result of unfreezing the remaining funds.
1. Request Parameters
Applicable object:Common modeInstitutional mode
API rules:https://apihk.mch.weixin.qq.com/v3/global/profit-sharing/orders/{out_order_no}
Request method:GET
Path parameter is a path parameter.
Query parameter needs to be passed in the request URL.
Body parameter needs to be passed in the request JSON.
2. Request Parameters
Name
Variable Name
Type
Required
Description
Sub-merchant ID
sub_mchid
string[1, 32]
No
Query Sub-merchant ID allocated by Weixin Pay. It needs to be consistent with the sub-merchant ID in the transaction of Weixin Pay. Note: Only for Institutional mode Example: 1900000109
Weixin Pay transaction ID
transaction_id
string[1, 32]
Yes
Query Weixin Pay transaction ID Example: 4208450740201411110007820472
Merchant order No.
out_order_no
string[1, 64]
Yes
Body The order No. in the merchant system, which is unique. It can only include numbers, capital letters and lowercase letters _-. Note: This order No. is used to identify different requests of funds-distribution commands (including funds-distribution request API/Query funds-distribution result API) initiated from the merchant side. If the funds of one transaction is distributed multiple times, change the [merchant order No.] before requesting funds-distribution. Otherwise it will be considered as a repeated request. Example: P20150806125346
Merchant ID allocated by Weixin Pay Example: 1900000109
Weixin Pay order No.
transaction_id
string[1, 32]
Yes
Weixin Pay transaction ID Example: 4208450740201411110007820472
Merchant order No.
out_order_no
string[1, 64]
Yes
Merchant order No., same as the request parameter. Example: P20150806125346
Weixin order ID
order_id
string[1, 64]
Yes
Weixin order ID, the unique identifier returned by Weixin system. Example: 3008450740201411110007820472
Funds-distribution order state
state
string
Yes
Funds-distribution order state (see result field in receivers for funds-distribution results of each receiver). PROCESSING: Funds-distribution is processing, FINISHED: Funds-distribution is finished, Example: FINISHED
Receiver list
receivers
array[1,50]
Yes
Receiver list When a merchant initiates a funds-distribution request or a unfreeze the remaining funds request, the same transaction funds can be distributed to multiple receivers (including unfreezing funds to the sponsor). The funds-distribution detail describes each funds-distribution state of each receiver.
Receiver list
Name
Variable Name
Type
Required
Description
Distribution currency
currency
string[3, 3]
Yes
Distribution currency, same as the request parameter.
Example: CNY
Funds-distribution amount
amount
int
Yes
Funds-distribution amount, same as the request parameter.
Example: 100
Funds-distribution description
description
string[1, 80]
Yes
Merchant order No., same as the request parameter.
Example: Distribute to merchant 1900000110
Receiver type
type
string
Yes
Receiver type, same as the request parameter. MERCHANT_ID: Merchant ID, PERSONAL_OPENID: Personal OpenID, converted by merchant APPID PERSONAL_SUB_OPENID: Personal Sub_OpenID, converted by sub-merchant APPID
Example: MERCHANT_ID
Receiver account
account
string[1, 64]
Yes
Receiver account, same as the request parameter.
Example: 1900000109
The result of each funds-distribution detail.
result
string
Yes
The result of each funds-distribution detail. PENDING: Funds to be distributed, SUCCESS: Funds-distribution succeeded, CLOSED: Funds-distribution closed,
Example: SUCCESS
Funds-distribution detail fail reason
fail_reason
string
No
Funds-distribution detail fail reasons. Set only when funds-distribution detail result is "CLOSED." NO_RELATION: The funds-distribution relationship has been terminated, SUB_MERCHANT_FRONEN: The sub-merchant account is frozen, MCH_CONTRACT_SETTLE_OFF: The merchant settlement contract is in closed state, MCH_CONTRACT_FROZEN: The merchant settlement contract is frozen, ACCOUNT_ABNORMAL: The receiver account is abnormal, RECEIVER_HIGH_RISK: The receiver is at high risk, RECEIVER_REAL_NAME_NOT_VERIFIED: The receiver has not been real-name verified, NO_AUTH: The funds-distribution permission has been canceled, DEFAULT_ERROR: Default error,
Example: ACCOUNT_ABNORMAL
Funds-distribution detail creation time
create_time
string[1, 64]
Yes
Funds-distribution detail creation time follows the RFC3339 standard format
Example: 2015-05-20T13:29:35.120+08:00
Funds-distribution detail finish time
finish_time
string[1, 64]
No
Funds-distribution detail finish time follows the RFC3339 standard format. Set only when the funds-distribution detail result is "SUCCESS" or "CLOSED".
Example: 2015-05-20T13:29:35.120+08:00
Weixin funds-distribution detail ID
detail_id
string[1, 64]
Yes
Weixin funds-distribution detail ID is the details ID of each funds-distribution business.
Example: 36011111111111111111111
Receiver type
detail_type
string
Yes
The funds-distribution details include two categories of funds: Funds distributed to other receivers and funds unfrozen to sponsor. These two categories can be distinguished by the field. If the detail type is UNFREEZE_TO_SPONSOR, the funds-distribution details will indicate settlement currency, settlement amount and exchange rate and other information. DISTRIBUTE_TO_OTHERS: Distribute funds to other receivers, UNFREEZE_TO_SPONSOR: Unfreeze funds to the sponsor outbound,
Example: DISTRIBUTE_TO_OTHERS
Settlement currency
settlement_ currency
string[3, 3]
No
This field is set only when the detail type is UNFREEZE_TO_SPONSOR.
Example: HKD
Settled amount
settlement_ amount
int
No
The funds amount is finally settled via exchange rate to the sponsor, using the minimum currency unit.
Example: 110
Exchange rate value
rate
int
No
The value is the exchange ratio between the distribution currency and the settlement currency multiplied by the 8th power of 10. If the distribution currency and settlement currency are both CNY, the exchange ratio is 1 and the exchange rate value is 100,000,000; If the settlement currency is USD, assuming that the ratio of USD to CNY is 6.5, the exchange rate value is 650,000,000.
Example: 81000000
Return Example
SUCCESS
1{2"order_id":"7100000751202203238026613597498",3"out_order_no":"MCH13SFDG234155321146",4"receivers":[5{6"account":"999952224",#Note:TheaccountisthesponsormerchantID7"amount":797,8"create_time":"2022-03-23T17:10:13+08:00",9"currency":"CNY",10"description":"Unfreeze the remaining funds to sponsor",11"detail_id":"7200000751202203238026613597602",12"detail_type":"UNFREEZE_TO_SPONSOR",13"rate_value":83640300,14"result":"PENDING",15"settlement_amount":952,16"settlement_currency":"HKD",17"type":"MERCHANT_ID"18},19{20"account":"of8YZ6LPmjDmYAqdobIvwTdQQjR8",21"amount":99,22"create_time":"2022-03-23T17:10:13+08:00",23"currency":"CNY",24"description":"Distribute to xxx user-10%",25"detail_id":"7200000751202203238026613597699",26"detail_type":"DISTRIBUTE_TO_OTHERS",27"result":"PENDING",28"type":"PERSONAL_OPENID"29},30{31"account":"2480248971",32"amount":99,33"create_time":"2022-03-23T17:10:13+08:00",34"currency":"CNY",35"description":"Distribute to xxx merchant-10%",36"detail_id":"7200000751202203238026613597767",37"detail_type":"DISTRIBUTE_TO_OTHERS",38"result":"PENDING",39"type":"MERCHANT_ID"40}41],42"state":"PROCESSING",43"sub_mchid":"999968479",44"transaction_id":"4200000012202203235765130087"45}