跳转到内容
返回官网

支付宝订单交易查询

该接口提供所有支付宝支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。 需要调用查询接口的情况: 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知;

一、请求地址

https://kf.fw199.com/gateway/partner/pay/alipay/personal/trade/query

二、请求参数

参数名类型说明示例
appidString合作伙伴Id
timestampString时间戳请求时的时间,unixtime格式
trade_noString支付宝交易号支付宝交易号,和商户订单号不能同时为空
out_trade_noString 商户订单号 订单支付时传入的商户订单号,和支付宝交易号不能同时为空。
trade_no,out_trade_no如果同时存在优先取trade_no
signString签名对各参数使用提供的AppSecret进行签名,签名逻辑具体实现见示例代码

请求示例

@Test
public void PayAlipayPersonalTradeQuery() throws Exception {
Map<String, String> data = new HashMap<String, String>();
data.put("appid", Config.AppId);
Long timestamp = System.currentTimeMillis() / 1000;
data.put("timestamp", timestamp.toString());
data.put("trade_no","2023090622001464271436832807" );
data.put("sign", Utils.Sign(data, Config.AppSecret ));
String result = doHttpRequest(Config.PayAlipayPersonalTradeQueryUrl,data);
System.out.println(result);
}

三、接口返回结果

{
"code": 0,
"message": "ok",
"data": {
"trade_no": "2023090622001464271436832807",
"out_trade_no": "20230906115624999565",
"buyer_logon_id": "sup***@163.com",
"trade_status": "TRADE_SUCCESS",
"total_amount": "1000",
"buyer_pay_amount": "1000",
"point_amount": "0",
"invoice_amount": "1000",
"send_pay_date": "2023-09-06 11:58:51",
"receipt_amount": "1000",
"fund_bill_list": [{ "fund_channel": "ALIPAYACCOUNT", "amount": "1000" }],
"buyer_user_id": "2088002269364279"
},
"trace_id": ""
}

失败的情况

{ "code": 2, "message": "Business Failed,交易不存在", "trace_id": "" }

四、返回参数说明

返回字段中code为0表示成功,非0失败,失败的话message会有失败原因。成功的往左,会有以下字段。

参数类型是否必选最大长度描述示例值
trade_noString必选64支付宝交易号2013112011001004330000121536
out_trade_noString必选64商家订单号6823789339978248
buyer_logon_idString必选100买家支付宝账号1595620
trade_statusString必选32交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功)、TRADE_FINISHED(交易结束,不可退款)TRADE_CLOSED
total_amountPrice必选11交易的订单金额,单位为分, 该参数的值为支付时传入的total_amount8888
buyer_pay_amountPrice特殊可选11买家实付金额,单位为分, 该金额代表该笔交易买家实际支付的金额,不包含商户折扣等金额800
point_amountPrice特殊可选11积分支付的金额,单位为分,该金额代表该笔交易中用户使用积分支付的金额,比如集分宝或者支付宝实时优惠等10
invoice_amountPrice特殊可选11交易中用户支付的可开具发票的金额,单位为分, 该金额代表该笔交易中可以给用户开具发票的金额1211
send_pay_dateDate特殊可选32本次交易打款给卖家的时间2014-11-27 15:45:57
receipt_amountString特殊可选11实收金额,单位为分, 该金额为本笔交易,商户账户能够实际收到的金额15.25
fund_bill_listTradeFundBill[]可选交易支付使用的资金渠道。 只有在签约中指定需要返回资金明细,或者入参的query_options中指定时才返回该字段信息。
buyer_user_idString特殊可选16买家在支付宝的用户id想了解openid?2088101117955611
buyer_open_idString特殊可选128请预留此字段。 请使用buyer_open_id,后续buyer_user_id将不支持新接入使用,存量已对接的也将逐步回收。用户openid简介买家支付宝用户唯一标识.01501o8f93I3nJAGB1jG4ONxtxV25DCN3Gec3uggnC4CJU0