https://work.weixin.qq.com/api/doc#15219
支付流程
API接口定義
下單成功通知消息
當企業在應用市場購買付費應用完成下單后,企業微信后台會推送下單成功通知到服務商的指令回調URL。
請求方式: POST (HTTPS)
請求地址: https://127.0.0.1/suite/receive?msg_signature=3a7b08bb8e6dbce3c9671d6fdb69d15066227608×tamp=1403610513&nonce=380320359
請求包體:
<xml>
<SuiteId><![CDATA[ww4asffe99e54c0f4c]]></SuiteId>
<PaidCorpId><![CDATA[wxf8b4f85f3a794e77]]></PaidCorpId>
<InfoType><![CDATA[open_order]]></InfoType>
<TimeStamp>1403610513</TimeStamp>
<OrderId><![CDATA[ORDERID]]></OrderId>
<OperatorId><![CDATA[OPERATORID]]></OperatorId>
</xml>
參數說明:
參數 | 說明 |
---|---|
SuiteId | 第三方應用的SuiteId |
PaidCorpId | 購買方corpid |
InfoType | 固定為 open_order |
TimeStamp | 時間戳 |
OrderId | 訂單號,付費訂單的唯一標志。服務商可據此拉取購買信息。該OrderId由企業微信生成,不超過32個字符 |
OperatorId | 下單操作者userid |
改單通知消息
當服務商管理員修改訂單價格之后,企業微信后台會推送改單通知到服務商的指令回調URL。
修改訂單價格后,會產生新的訂單號,服務商在改單之后要用新的訂單號來查詢訂單詳情,以及關聯授權應用。
請求方式: POST (HTTPS)
請求地址: https://127.0.0.1/suite/receive?msg_signature=3a7b08bb8e6dbce3c9671d6fdb69d15066227608×tamp=1403610513&nonce=380320359
請求包體:
<xml>
<SuiteId><![CDATA[ww4asffe99e54c0f4c]]></ SuiteId>
<PaidCorpId><![CDATA[wxf8b4f85f3a794e77]]></PaidCorpId>
<InfoType><![CDATA[change_order]]></InfoType>
<TimeStamp>1403610513</TimeStamp>
<OldOrderId><![CDATA[ORDERID]]></OldOrderId>
<NewOrderId><![CDATA[ORDERID]]></NewOrderId>
</xml>
參數說明:
參數 | 說明 |
---|---|
SuiteId | 第三方應用的SuiteId |
PaidCorpId | 購買方corpid |
InfoType | 固定為 change_order |
TimeStamp | 時間戳 |
OldOrderId | 原訂單號 |
NewOrderId | 改單后新的訂單號,服務商可據此拉取購買信息。該OrderId由企業微信生成,不超過32個字符,每次修改價格都會產生新的訂單號 |
支付成功通知消息
當企業對某一個訂單完成付款后,企業微信后台會推送付款成功通知到服務商的指令回調URL。
請求方式: POST (HTTPS)
請求地址: https://127.0.0.1/suite/receive?msg_signature=3a7b08bb8e6dbce3c9671d6fdb69d15066227608×tamp=1403610513&nonce=380320359
請求包體:
<xml>
<SuiteId><![CDATA[ww4asffe99e54c0f4c]]></ SuiteId>
<PaidCorpId><![CDATA[wxf8b4f85f3a794e77]]></PaidCorpId>
<InfoType><![CDATA[pay_for_app_success]]></InfoType>
<TimeStamp>1403610513</TimeStamp>
<OrderId><![CDATA[ORDERID]]></OrderId>
</xml>
參數說明:
參數 | 說明 |
---|---|
SuiteId | 第三方應用的SuiteId |
PaidCorpId | 購買方corpid |
InfoType | 固定為 pay_for_app_success |
TimeStamp | 時間戳 |
OrderId | 訂單號,付費訂單的唯一標志。服務商可據此拉取購買信息。該OrderId由企業微信生成,不超過32個字符 |
服務商拉取付費狀態
請求方式: POST(HTTPS)
請求地址: https://qyapi.weixin.qq.com/cgi-bin/service/get_order?suite_access_token=SUITE_ACCESS_TOKEN
請求包體:
{
"orderid" : "2018091822ks1sd3s"
}
參數說明:
參數 | 是否必須 | 說明 |
---|---|---|
orderid | 是 | 訂單號 |
返回結果:
{
"errcode" : 0,
"errmsg" : "ok",
"orderid" : "2018091822ks1sd3s",
"order_status" : 1,
"order_type" : 1,
"paid_corpid" : "wwfedd7e5292d63a35",
"operator_id" : "zhangsan",
"suiteid" : "wx67cce113441cc7a6",
"appid" : 1,
"edition_id" : "RLS65535",
"edition_name" : "協同版",
"price" : 10000000,
"user_count" : 1000,
"order_period": 365,
"order_time" : 1533702999,
"paid_time" : 1533702910
}
參數說明:
參數 | 說明 |
---|---|
errcode | 錯誤碼 |
errmsg | 錯誤碼說明 |
orderid | 訂單號 |
order_status | 訂單狀態。0-未支付,1-已支付,2-已關閉, 3-未支付且已過期, 4-申請退款中, 5-申請退款成功 |
order_type | 訂單類型。0-普通訂單,1-擴容訂單,2-續期,3-版本變更 |
paid_corpid | 客戶企業的corpid |
operator_id | 下單操作人員userid |
suiteid | 應用id |
appid | 應用id。(僅舊套件有該字段) |
edition_id | 購買版本ID |
edition_name | 購買版本名字 |
price | 實付款金額,單位分 |
user_count | 購買的人數 |
order_period | 購買的時間,單位天 |
order_time | 下單時間 |
paid_time | 付款時間 |
服務商拉取付費訂單列表
請求方式: POST(HTTPS)
請求地址: https://qyapi.weixin.qq.com/cgi-bin/service/get_order_list?suite_access_token=SUITE_ACCESS_TOKEN
請求包體:
{
"start_time" : 1542091572,
"end_time" : 1542177972,
"test_mode" : 1
}
參數說明:
參數 | 是否必須 | 說明 |
---|---|---|
start_time | 是 | 起始時間 |
end_time | 是 | 終止時間 |
test_mode | 否 | 指定拉取正式或測試模式的訂單。默認正式模式。0-正式模式,1-測試模式。 |
返回結果:
{
"errcode" : 0,
"errmsg" : "ok",
"order_list": [
{
"orderid" : "2018091822ks1sd3s",
"order_status" : 1,
"order_type" : 1,
"paid_corpid" : "wwfedd7e5292d63a35",
"operator_id" : "zhangsan",
"suiteid" : "wx67cce113441cc7a6",
"appid" : 1,
"edition_id" : "RLS65535",
"edition_name" : "協同版",
"price" : 10000000,
"user_count" : 1000,
"order_period": 365,
"order_time" : 1533702999,
"paid_time" : 1533702910
}]
}
參數說明:
參數 | 說明 |
---|---|
errcode | 錯誤碼 |
errmsg | 錯誤碼說明 |
order_list | 訂單列表 |
orderid | 訂單號 |
order_status | 訂單狀態。訂單狀態。0-未支付,1-已支付,2-已關閉, 3-未支付且已過期, 4-申請退款中, 5-申請退款成功 |
order_type | 訂單類型。0-普通訂單,1-擴容訂單,2-續期,3-版本變更 |
paid_corpid | 客戶企業的corpid |
operator_id | 下單操作人員userid |
suiteid | 應用id |
appid | 應用id。(僅舊套件有該字段) |
edition_id | 購買版本ID |
edition_name | 購買版本名字 |
price | 實付款金額,單位分 |
user_count | 購買的人數 |
order_period | 購買的時間,單位天 |
order_time | 下單時間 |
paid_time | 付款時間 |
獲取永久授權碼
請求方式:POST(HTTPS)
請求地址: https://qyapi.weixin.qq.com/cgi-bin/service/get_permanent_code?suite_access_token=SUITE_ACCESS_TOKEN
請求包體:
{
"auth_code": "auth_code_value"
}
參數說明:
參數 | 是否必須 | 說明 |
---|---|---|
auth_code | 是 | 臨時授權碼,會在授權成功時附加在redirect_uri中跳轉回第三方服務商網站,或通過回調推送給服務商。長度為64至512個字節 |
返回結果:
{
"errcode":0 ,
"errmsg":"ok" ,
"access_token": "xxxxxx",
"expires_in": 7200,
"permanent_code": "xxxx",
"dealer_corp_info": {...},
"auth_corp_info": {...},
"auth_info": {...},
"auth_user_info": {...},
"edition_info":
{
"agent":
[
{
"agentid":1,
"edition_id": "RLS65535",
"edition_name": "協同版",
"app_status" : 3,
"user_limit": 200,
"expired_time": 1541990791
}
]
}
}
參數說明:
參數 | 說明 |
---|---|
access_token | 授權方(企業)access_token,最長為512字節 |
expires_in | 授權方(企業)access_token超時時間 |
permanent_code | 企業微信永久授權碼,最長為512字節 |
auth_corp_info | 授權方企業信息 |
auth_info | 授權信息。如果是通訊錄應用,且沒開啟實體應用,是沒有該項的。通訊錄應用擁有企業通訊錄的全部信息讀寫權限 |
auth_user_info | 授權管理員的信息 |
edition_info | 企業當前生效的版本信息 |
edition_id | 版本id |
edition_name | 版本名稱 |
app_status | 付費狀態。 0-沒有付費; 1-限時試用; 2-試用過期; 3-付費版本有效期內; 4-付費版本過期; 5-不限時試用; 6-付費版本有效期內,但是實際使用人數超標,且超標未超過7天; 7-付費版本有效期內,但是實際使用人數超標,且持續超標超過7天 |
user_limit | 用戶上限。特別注意,如果是固定總價的購買,該參數固定為 4294967295, 含義為不限用戶數 |
expired_time | 版本到期時間(根據購買版本,可能是試用到期時間或付費使用到期時間)。特別注意,4294967295代表不限時間 |
獲取企業授權信息
該API用於通過永久授權碼換取企業微信的授權信息。
請求方式: POST(HTTPS)
請求地址: https://qyapi.weixin.qq.com/cgi-bin/service/get_auth_info?suite_access_token=SUITE_ACCESS_TOKEN
請求包體:
{
"auth_corpid": "auth_corpid_value",
"permanent_code": "code_value"
}
參數說明:
參數 | 是否必須 | 說明 |
---|---|---|
auth_corpid | 是 | 授權方corpid |
permanent_code | 是 | 永久授權碼,通過get_permanent_code獲取 |
返回結果:
{
"errcode":0 ,
"errmsg":"ok" ,
"auth_corp_info": { ... },
"auth_info": { ... },
"edition_info":
{
"agent":
[
{
"agentid":1,
"edition_id": "RLS65535",
"edition_name": "協同版",
"app_status" : 3,
"user_limit": 200,
"expired_time": 1541990791
}
]
}
}
參數說明:
參數 | 說明 |
---|---|
auth_corp_info | 授權方企業信息 |
auth_info | 授權信息。如果是通訊錄應用,且沒開啟實體應用,是沒有該項的。通訊錄應用擁有企業通訊錄的全部信息讀寫權限 |
edition_info | 企業當前生效的版本信息 |
edition_id | 版本id |
edition_name | 版本名稱 |
app_status | 付費狀態。 0-沒有付費; 1-限時試用; 2-試用過期; 3-購買期內; 4-購買過期; 5-不限時試用; 6-購買期內,但是人數超標, 注意,超標后還可以用7天; 7-購買期內,但是人數超標, 且已經超標試用7天 |
user_limit | 用戶上限。特別注意,如果是固定總價的購買,該參數固定為 4294967295, 含義為不限用戶數 |
expired_time | 版本到期時間(根據購買版本,可能是試用到期時間或付費使用到期時間)。特別注意,4294967295代表不限時間 |
退款事件回調
當某個客戶發起有效的退款,經服務商在管理端同意后(或過期自動完成退款),會觸發回調事件給服務商,服務商收到退款事件后,需自行通過相關接口重新獲取這個客戶最新的購買狀態
請求方式: POST (HTTPS)
請求地址: https://127.0.0.1/suite/receive?msg_signature=3a7b08bb8e6dbce3c9671d6fdb69d15066227608×tamp=1403610513&nonce=380320359
請求包體:
<xml>
<SuiteId><![CDATA[ww4asffe99e54c0f4c]]></ SuiteId>
<PaidCorpId><![CDATA[wxf8b4f85f3a794e77]]></PaidCorpId>
<InfoType><![CDATA[refund]]></InfoType>
<TimeStamp>1403610513</TimeStamp>
<OrderId><![CDATA[ORDERID]]></OrderId>
</xml>
參數說明:
參數 | 說明 |
---|---|
SuiteId | 第三方應用的SuiteId |
PaidCorpId | 購買方corpid |
InfoType | 固定為refund |
TimeStamp | 時間戳 |
OrderId | 訂單號,付費訂單的唯一標志。服務商可據此拉取購買信息。該OrderId由企業微信生成,不超過32個字符 |