该接口提供所有支付宝支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。
需要调用查询接口的情况:
当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知;
调用支付接口后,返回系统错误或未知交易状态情况;
调用alipay.trade.pay,返回INPROCESS的状态;
调用alipay.trade.cancel之前,需确认支付状态; ## 公共请求参数 | **参数** | **类型** | **是否必选** | **最大长度** | **描述** | **示例值** | | --- | --- | --- | --- | --- | --- | | app_id | String | 必选 | 32 | 支付宝分配给开发者的应用ID | 2014072300007148 | | method | String | 必选 | 128 | 接口名称 | alipay.trade.query | | format | String | 可选 | 40 | 仅支持JSON | JSON | | charset | String | 必选 | 10 | 请求使用的编码格式,如utf-8,gbk,gb2312等 | utf-8 | | sign_type | String | 必选 | 10 | 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 | RSA2 | | sign | String | 必选 | 344 | 商户请求参数的签名串,详见[签名](https://ideservice.alipay.com/cms/site/02khjm) | 详见示例 | | timestamp | String | 必选 | 19 | 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" | 2014-07-24 03:07:50 | | version | String | 必选 | 3 | 调用的接口版本,固定为:1.0 | 1.0 | | app_auth_token | String | 可选 | 40 | 详见[应用授权概述](https://ideservice.alipay.com/cms/site/04h2nx) | | | biz_content | String | 必选 | | 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 | | ## 业务请求参数 **以下参数 二选一 传入**
**out_trade_no**string(64)
【描述】订单支付时传入的商户订单号,和支付宝交易号不能同时为空。 trade_no,out_trade_no如果同时存在优先取trade_no
【示例值】20150320010101001
**trade_no**string(64)
【描述】支付宝交易号,和商户订单号不能同时为空
【示例值】2014112611001004680 073956707
**org_pid**可选string(16)
【描述】银行间联模式下有用,其它场景请不要使用; 双联通过该参数指定需要查询的交易所属收单机构的pid;
【示例值】2088101117952222
**query_options**可选string[](128)
【描述】查询选项,商户传入该参数可定制本接口同步响应额外返回的信息字段,数组格式。
【枚举值】
交易结算信息: trade_settle_info
交易支付使用的资金渠道: fund_bill_list
交易支付时使用的所有优惠券信息: voucher_detail_list
交易支付使用单品券优惠的商品优惠信息: discount_goods_detail
商家优惠金额: mdiscount_amount
医保信息: medical_insurance_info
碰一下支付信息: tap_pay_info
收起
【示例值】["trade_settle_info"] ## 常见请求示例 ### cURL ``` curl 'https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.query&format=json&sign=${sign}&app_id=${appid}&version=1.0&sign_type=RSA2×tamp=${now}' \ -F 'app_auth_token=${app_auth_token}' \ -F 'biz_content={ "out_trade_no":"20150320010101001", "trade_no":"2014112611001004680 073956707", "org_pid":"2088101117952222", "query_options":[ "trade_settle_info" ] }' ``` ### Java ``` package com.java.sdk.demo; import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; import com.alipay.api.DefaultAlipayClient; import com.alipay.api.AlipayConfig; import com.alipay.api.response.AlipayTradeQueryResponse; import com.alipay.api.request.AlipayTradeQueryRequest; import com.alipay.api.domain.AlipayTradeQueryModel; import com.alipay.api.FileItem; import java.util.Base64; import java.util.ArrayList; import java.util.List; public class AlipayTradeQuery { public static void main(String[] args) throws AlipayApiException { // 初始化SDK AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig()); // 构造请求参数以调用接口 AlipayTradeQueryRequest request = new AlipayTradeQueryRequest(); AlipayTradeQueryModel model = new AlipayTradeQueryModel(); // 设置订单支付时传入的商户订单号 model.setOutTradeNo("20150320010101001"); // 设置支付宝交易号 model.setTradeNo("2014112611001004680 073956707"); // 设置银行间联模式下有用 model.setOrgPid("2088101117952222"); // 设置查询选项 List queryOptions = new ArrayList(); queryOptions.add("trade_settle_info"); model.setQueryOptions(queryOptions); request.setBizModel(model); // 第三方代调用模式下请设置app_auth_token // request.putOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->"); AlipayTradeQueryResponse response = alipayClient.execute(request); System.out.println(response.getBody()); if (response.isSuccess()) { System.out.println("调用成功"); } else { System.out.println("调用失败"); // sdk版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接 // String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response); // System.out.println(diagnosisUrl); } } private static AlipayConfig getAlipayConfig() { String privateKey = "<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->"; String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->"; AlipayConfig alipayConfig = new AlipayConfig(); alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do"); alipayConfig.setAppId("<-- 请填写您的AppId,例如:2019091767145019 -->"); alipayConfig.setPrivateKey(privateKey); alipayConfig.setFormat("json"); alipayConfig.setAlipayPublicKey(alipayPublicKey); alipayConfig.setCharset("UTF-8"); alipayConfig.setSignType("RSA2"); return alipayConfig; } } ``` ### C# ``` using System; using System.Collections.Generic; using Aop.Api; using Aop.Api.Request; using Aop.Api.Response; using Aop.Api.Domain; using Aop.Api.Util; namespace SdkDemoTest { public class AlipayTradeQuery { public static void Main(string[] args) { // 初始化SDK IAopClient alipayClient = new DefaultAopClient(GetAlipayConfig()); // 构造请求参数以调用接口 AlipayTradeQueryRequest request = new AlipayTradeQueryRequest(); AlipayTradeQueryModel model = new AlipayTradeQueryModel(); // 设置订单支付时传入的商户订单号 model.OutTradeNo = "20150320010101001"; // 设置支付宝交易号 model.TradeNo = "2014112611001004680 073956707"; // 设置银行间联模式下有用 model.OrgPid = "2088101117952222"; // 设置查询选项 List queryOptions = new List(); queryOptions.Add("trade_settle_info"); model.QueryOptions = queryOptions; request.SetBizModel(model); // 第三方代调用模式下请设置app_auth_token // request.PutOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->"); AlipayTradeQueryResponse response = alipayClient.Execute(request); if(!response.IsError) { Console.WriteLine("调用成功"); } else { Console.WriteLine("调用失败"); } } private static AlipayConfig GetAlipayConfig() { string privateKey = "<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->"; string alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->"; AlipayConfig alipayConfig = new AlipayConfig(); alipayConfig.ServerUrl = "https://openapi.alipay.com/gateway.do"; alipayConfig.AppId = "<-- 请填写您的AppId,例如:2019091767145019 -->"; alipayConfig.PrivateKey = privateKey; alipayConfig.Format = "json"; alipayConfig.AlipayPublicKey = alipayPublicKey; alipayConfig.Charset = "UTF-8"; alipayConfig.SignType = "RSA2"; return alipayConfig; } } } ``` ###
PHP ``` setBizContent(json_encode($model,JSON_UNESCAPED_UNICODE)); // 如果是第三方代调用模式,请设置app_auth_token(应用授权令牌) $responseResult = $alipayClient->execute($request, null, "<-- 请填写应用授权令牌 -->", null); $responseApiName = str_replace(".","_",$request->getApiMethodName())."_response"; $response = $responseResult->$responseApiName; if(!empty($response->code)&&$response->code==10000){ echo("调用成功"); } else{ echo("调用失败"); } function getAlipayConfig() { $privateKey = '<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->'; $alipayPublicKey = '<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->'; $alipayConfig = new AlipayConfig(); $alipayConfig->setServerUrl('https://openapi.alipay.com/gateway.do'); $alipayConfig->setAppId('<-- 请填写您的AppId,例如:2019091767145019 -->'); $alipayConfig->setPrivateKey($privateKey); $alipayConfig->setFormat('json'); $alipayConfig->setAlipayPublicKey($alipayPublicKey); $alipayConfig->setCharset('UTF-8'); $alipayConfig->setSignType('RSA2'); return $alipayConfig; } ``` ###
Node.js ``` const { AlipaySdk } = require("alipay-sdk"); const alipaySdk = new AlipaySdk({ appId: "<-- 请填写您的AppId,例如:2019091767145019 -->", privateKey: "<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->", alipayPublicKey: "<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->", gateway: "https://openapi.alipay.com/gateway.do", appAuthToken: "<-- 请填写应用授权令牌 -->", }); const result = await alipaySdk.exec("alipay.trade.query", { bizContent: { out_trade_no: "20150320010101001", trade_no: "2014112611001004680+073956707", org_pid: "2088101117952222", query_options: ["trade_settle_info"], }, }); ``` ## 公共响应参数 | **参数** | **类型** | **是否必选** | **最大长度** | **描述** | **示例值** | | --- | --- | --- | --- | --- | --- | | code | String | 必选 | - | 网关返回码,[详见文档](https://ideservice.alipay.com/cms/site/02km9f) | 40004 | | msg | String | 必选 | - | 网关返回码描述,[详见文档](https://ideservice.alipay.com/cms/site/02km9f) | Business Failed | | sub_code | String | 可选 | - | 业务返回码,参见具体的API接口文档 | ACQ.TRADE_HAS_SUCCESS | | sub_msg | String | 可选 | - | 业务返回码描述,参见具体的API接口文档 | 交易已被支付 | | sign | String | 必选 | - | 签名,[详见文档](https://ideservice.alipay.com/cms/site/02kf5q) | DZXh8eeTuAHoYE3w1J+POiPhfDxOYBfUNn1lkeT/V7P4zJdyojWEa6IZs6Hz0yDW5Cp/viufUb5I0/V5WENS3OYR8zRedqo6D+fUTdLHdc+EFyCkiQhBxIzgngPdPdfp1PIS7BdhhzrsZHbRqb7o4k3Dxc+AAnFauu4V6Zdwczo= | ## 业务响应参数 收起所有属性
**out_trade_no**必选string(64)
【描述】商家订单号
【示例值】6823789339978248
**trade_status**必选string(32)
【描述】交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功)、TRADE_FINISHED(交易结束,不可退款)
【示例值】TRADE_CLOSED
**total_amount**必选price(11)
【描述】交易的订单金额,单位为元,两位小数。该参数的值为支付时传入的total_amount
【示例值】88.88
**req_goods_detail|支付请求的商品明细列表**必选GoodsDetail[]
【描述】支付请求的商品明细列表
**goods_id**必选string(32)
【描述】商品的编号,该参数传入支付券上绑定商品goods_id, 倘若无支付券需要消费,该字段传入商品最小粒度的商品ID(如:若商品有sku粒度,则传商户sku粒度的ID)
【示例值】apple-01
**goods_name**必选string(256)
【描述】商品名称
【示例值】ipad
**quantity**必选number(32)
【描述】商品数量
【示例值】1
**price**必选price(9)
【描述】商品单价,单位为元
【示例值】2000
**alipay_goods_id**可选string(32)
【描述】支付宝定义的统一商品编号
【示例值】20010001
**goods_category**可选string(24)
【描述】商品类目
【示例值】34543238
**categories_tree**可选string(128)
【描述】商品类目树,从商品类目根节点到叶子节点的类目id组成,类目id值使用|分割
【示例值】124868003|126232002|126252004
**body**可选string(1000)
【描述】商品描述信息
【示例值】特价手机
**show_url**可选string(400)
【描述】商品的展示地址
【示例值】http://www.alipay.com/xxx.jpg
**goods_ean_id**可选string(32)
【描述】商品69条码
【示例值】6972829161111
**out_item_id**可选string(100)
【描述】商家侧小程序商品ID,指商家提报给小程序商品库的商品。当前接口的extend_params.trade_component_order_id字段不为空时该字段必填,且与交易组件订单参数保持一致。了解小程序商品请参考:[https://ideservice.alipay.com/cms/site/06uila?pathHash=63b6fba7](https://ideservice.alipay.com/cms/site/06uila?pathHash=63b6fba7)
【示例值】outItem_01
**out_sku_id**可选string(64)
【描述】商家侧小程序商品ID,指商家提报给小程序商品库的商品。当前接口的extend_params.trade_component_order_id字段不为空时该字段必填,且与交易组件订单参数保持一致。了解小程序商品请参考:[https://ideservice.alipay.com/cms/site/06uila?pathHash=63b6fba7](https://ideservice.alipay.com/cms/site/06uila?pathHash=63b6fba7)
【示例值】outSku_01
**period_scene**必选string(64)
【描述】该字段用于描述当前账期交易的场景。
【示例值】账期交易的场景。
**trans_currency**特殊可选string(8)
【描述】标价币种,该参数的值为支付时传入的trans_currency,支持英镑:GBP、港币:HKD、美元:USD、新加坡元:SGD、日元:JPY、加拿大元:CAD、澳元:AUD、欧元:EUR、新西兰元:NZD、韩元:KRW、泰铢:THB、瑞士法郎:CHF、瑞典克朗:SEK、丹麦克朗:DKK、挪威克朗:NOK、马来西亚林吉特:MYR、印尼卢比:IDR、菲律宾比索:PHP、毛里求斯卢比:MUR、以色列新谢克尔:ILS、斯里兰卡卢比:LKR、俄罗斯卢布:RUB、阿联酋迪拉姆:AED、捷克克朗:CZK、南非兰特:ZAR、人民币:CNY、新台币:TWD。当trans_currency 和 settle_currency 不一致时,trans_currency支持人民币:CNY、新台币:TWD
【示例值】TWD
**settle_currency**特殊可选string(8)
【描述】订单结算币种,对应支付接口传入的settle_currency,支持英镑:GBP、港币:HKD、美元:USD、新加坡元:SGD、日元:JPY、加拿大元:CAD、澳元:AUD、欧元:EUR、新西兰元:NZD、韩元:KRW、泰铢:THB、瑞士法郎:CHF、瑞典克朗:SEK、丹麦克朗:DKK、挪威克朗:NOK、马来西亚林吉特:MYR、印尼卢比:IDR、菲律宾比索:PHP、毛里求斯卢比:MUR、以色列新谢克尔:ILS、斯里兰卡卢比:LKR、俄罗斯卢布:RUB、阿联酋迪拉姆:AED、捷克克朗:CZK、南非兰特:ZAR
【示例值】USD
**settle_amount**特殊可选price(11)
【描述】结算币种订单金额
【示例值】2.96
**pay_currency**特殊可选string(8)
【描述】订单支付币种
【示例值】CNY
**pay_amount**特殊可选string(11)
【描述】支付币种订单金额
【示例值】8.88
**settle_trans_rate**特殊可选string(11)
【描述】结算币种兑换标价币种汇率
【示例值】30.025
**trans_pay_rate**特殊可选string(11)
【描述】标价币种兑换支付币种汇率
【示例值】0.264
**send_pay_date**特殊可选date(32)
【描述】本次交易打款给卖家的时间
【示例值】2014-11-27 15:45:57
**buyer_pay_amount**特殊可选price(11)
【描述】买家实付金额,单位为元,两位小数。该金额代表该笔交易买家实际支付的金额,不包含商户折扣等金额
【示例值】8.88
**invoice_amount**特殊可选price(11)
【描述】交易中用户支付的可开具发票的金额,单位为元,两位小数。该金额代表该笔交易中可以给用户开具发票的金额
【示例值】12.11
**point_amount**特殊可选price(11)
【描述】积分支付的金额,单位为元,两位小数。该金额代表该笔交易中用户使用积分支付的金额,比如集分宝或者支付宝实时优惠等
【示例值】10
**receipt_amount**特殊可选string(11)
【描述】实收金额,单位为元,两位小数。该金额为本笔交易,商户账户能够实际收到的金额
【示例值】15.25
**store_id**特殊可选string(32)
【描述】商户门店编号
【示例值】NJ_S_001
**terminal_id**特殊可选string(32)
【描述】商户机具终端编号
【示例值】NJ_T_001
**store_name**特殊可选string(512)
【描述】请求交易支付中的商户店铺的名称
【示例值】证大五道口店
**buyer_user_id**特殊可选string(16)
【描述】买家在支付宝的用户id
新商户建议使用buyer_open_id替代该字段。对于新商户,buyer_user_id字段未来计划逐步回收,存量商户可继续使用。如使用buyer_open_id,请确认 应用-开发配置-openid配置管理 已启用。无该配置项,可查看[openid配置申请](https://ideservice.alipay.com/cms/site/0ai9ok?pathHash=de631c06)。
【示例值】2088101117955611
**buyer_open_id**特殊可选string(128)
【描述】买家支付宝用户唯一标识 详情可查看[openid简介](https://ideservice.alipay.com/cms/site/0ai2i6?pathHash=13dd5946)
【示例值】01501o8f93I3nJAGB1jG4ONxtxV25DCN3Gec3uggnC4CJU0
**industry_sepc_detail_gov**特殊可选string(4096)
【描述】行业特殊信息-统筹相关
【示例值】{"registration_order_pay":{"brlx":"1","cblx":"1"}}
**industry_sepc_detail_acc**特殊可选string(4096)
【描述】行业特殊信息-个账相关
【示例值】{"registration_order_pay":{"brlx":"1","cblx":"1"}}
**charge_amount**特殊可选string(11)
【描述】该笔交易针对收款方的收费金额;单位:元。 只在银行间联交易场景下返回该信息;
【示例值】8.88
**charge_flags**特殊可选string(64)
【描述】费率活动标识。 当交易享受特殊行业或活动费率时,返回该场景的标识。具体场景如下: trade_special_00:订单优惠费率; industry_special_on_00:线上行业特殊费率0; industry_special_on_01:线上行业特殊费率1; industry_special_00:线下行业特殊费率0; industry_special_01:线下行业特殊费率1; bluesea_1:蓝海活动优惠费率标签; 注:只在机构间联模式下返回,其它场景下不返回该字段;
【示例值】bluesea_1
**settlement_id**特殊可选string(64)
【描述】支付清算编号,用于清算对账使用; 只在银行间联交易场景下返回该信息;
【示例值】2018101610032004620239146945
**trade_settle_info**特殊可选TradeSettleInfo
【描述】返回的交易结算信息,包含分账、补差等信息。 只有在query_options中指定时才返回该字段信息。
**trade_unsettled_amount|剩余待结算金额**特殊可选price(9)
【描述】直付通账期、直连账期下返回,其他场景为空,表示一笔订单剩余待结算金额
【示例值】1.1
**trade_settle_detail_list**可选TradeSettleDetail[](10)
【描述】交易结算明细信息
**operation_type**必选string(32)
【描述】结算操作类型。有以下几种类型: replenish(补差)、replenish_refund(退补差)、transfer(分账)、transfer_refund(退分账)、settle(结算)、settle_refund(退结算)、on_settle(待结算)。
【枚举值】
分账: transfer
退分账: transfer_refund
补差: replenish
退补差: replenish_refund
结算: settle
退结算: settle_refund
待结算: on_settle
收起
【示例值】replenish
**operation_dt**必选date(32)
【描述】操作日期
【示例值】2019-05-16 09:59:17
**amount**必选price(11)
【描述】实际操作金额,单位为元,两位小数。该参数的值为分账或补差或结算时传入
【示例值】10.00
**operation_serial_no**可选string(64)
【描述】商户操作序列号。商户发起请求的外部请求号。
【示例值】2321232323232
**trans_out**可选string(64)
【描述】转出账号
【示例值】2088111111111111
**trans_in**可选string(64)
【描述】转入账号
【示例值】2088111111111111
**ori_trans_out**可选string(64)
【描述】商户请求的转出账号
【示例值】2088111111111111
**ori_trans_in**可选string(64)
【描述】商户请求的转入账号
【示例值】2088111111111111
**auth_trade_pay_mode**特殊可选string(64)
【描述】预授权支付模式,该参数仅在信用预授权支付场景下返回。信用预授权支付:CREDIT_PREAUTH_PAY
【枚举值】
信用预授权支付: CREDIT_PREAUTH_PAY
【示例值】CREDIT_PREAUTH_PAY
**discount_amount**特殊可选string(11)
【描述】平台优惠金额。单位:元。
【示例值】88.88
**subject**特殊可选string(256)
【描述】订单标题; 只在银行间联交易场景下返回该信息;
【示例值】Iphone6 16G
**body**特殊可选string(1000)
【描述】订单描述; 只在银行间联交易场景下返回该信息;
【示例值】Iphone6 16G
**alipay_sub_merchant_id**特殊可选string(32)
【描述】间连商户在支付宝端的商户编号; 只在银行间联交易场景下返回该信息;
【示例值】2088301372182171
**ext_infos**特殊可选string(1024)
【描述】交易额外信息,特殊场景下与支付宝约定返回。 json格式。
【示例值】{"action":"cancel"}
**buyer_user_type**特殊可选string(18)
【描述】买家用户类型。CORPORATE:企业用户;PRIVATE:个人用户。
【枚举值】
企业用户: CORPORATE
个人用户: PRIVATE
【示例值】PRIVATE
**mdiscount_amount**特殊可选string(11)
【描述】商家优惠金额。单位:元。
【示例值】88.88
**hb_fq_pay_info**特殊可选HbFqPayInfo
【描述】若用户使用花呗分期支付,且商家开通返回此通知参数,则会返回花呗分期信息。json格式其它说明详见花呗分期信息说明。 注意:商家需与支付宝约定后才返回本参数。
**user_install_num**可选string(5)
【描述】用户使用花呗分期支付的分期数
【示例值】3
**fq_inst_id|花呗分期机构ID**可选string(32)
【描述】提供分期服务的机构ID
【示例值】ALIPAY
**fulfillment_detail_list|履约详情列表**特殊可选FulfillmentDetail[]
【描述】履约详情列表。 只有入参的query_options中指定fulfillment_detail_list并且所查询的交易存在履约明细时才返回该字段信息。
【必选条件】履约详情列表。 只有入参的query_options中指定fulfillment_detail_list并且所查询的交易存在履约明细时才返回该字段信息。
**fulfillment_amount|履约金额**必选price(12)
【描述】履约金额
【示例值】80.00
**out_request_no|履约商户请求号**必选string(64)
【描述】商户发起履约请求时,传入的out_request_no,标识一次请求的唯一id
【示例值】20200320010101001
**gmt_payment|履约支付时间**必选date(32)
【描述】履约支付时间
【示例值】2021-03-17 09:45:57
**pre_auth_pay_amount|预先授权金额**特殊可选string(12)
【描述】当用户使用芝麻信用先享后付时,会返回该字段,代表整笔交易的原始待履约金额,单位元。
【必选条件】当用户使用芝麻信用先享后付时,会返回该字段。
【示例值】12.46
**purchase_entity|购汇实体**特殊可选string(16)
【描述】支付宝钱包跨境支付交易的购汇主体,ALIPAYHK-境外香港购汇实体,3008境内购汇实体
【枚举值】
境外香港购汇实体: ALIPAYHK
境内购汇实体: 3008
【必选条件】支付宝钱包跨境支付场景会返回该字段
【示例值】3008
**trade_no**可选string(64)
【描述】支付宝交易号
【注意事项】在未生成真实交易时,不返回,需要商户多次调用该接口或支付通知,获取最终的交易号
【示例值】2013112011001004330000121536
**buyer_logon_id**可选string(100)
【描述】买家支付宝账号
【注意事项】在未生成真实交易时,不返回,需要商户多次调用该接口或支付通知,获取最终的用户信息
【示例值】159****5620
**additional_status|交易附加状态**可选string(64)
【描述】交易附加状态: SELLER_NOT_RECEIVED(买家已付款,卖家未收款);
【示例值】SELLER_NOT_RECEIVED
**fund_bill_list**可选TradeFundBill[]
【描述】交易支付使用的资金渠道。 只有在签约中指定需要返回资金明细,或者入参的query_options中指定时才返回该字段信息。
**fund_channel**必选string(32)
【描述】交易使用的资金渠道,详见 [支付渠道列表](https://ideservice.alipay.com/cms/site/009zkj)
【示例值】ALIPAYACCOUNT
**amount**必选price(32)
【描述】该支付工具类型所使用的金额。单位:元。
【示例值】10
**real_amount**可选price(11)
【描述】渠道实际付款金额。单位:元。
【示例值】11.21
**passback_params**可选string(512)
【描述】公用回传参数。 返回支付时传入的passback_params参数信息
【示例值】merchantBizType%3d3C%26merchantBizNo%3d2016010101111
**credit_pay_mode**可选string(64)
【描述】信用支付模式。表示订单是采用信用支付方式(支付时买家没有出资,需要后续履约)。"creditAdvanceV2"表示芝麻先用后付模式,用户后续需要履约扣款。 此字段只有信用支付场景才有值,商户需要根据字段值单独处理。此字段以后可能扩展其他值,建议商户使用白名单方式识别,对于未识别的值做失败处理,并联系支付宝技术支持人员。
【枚举值】
芝麻先用后付模式: creditAdvanceV2
【示例值】creditAdvanceV2
**credit_biz_order_id**可选string(64)
【描述】信用业务单号。信用支付场景才有值,先用后付产品里是芝麻订单号。
【示例值】ZMCB99202103310000450000041833
**hyb_amount**可选string(11)
【描述】惠营宝回票金额。单位:元。
【示例值】10.24
**bkagent_resp_info**可选BkAgentRespInfo
【描述】间联交易下,返回给机构的信 息
**bindtrx_id**可选string(64)
【描述】原快捷交易流水号
【示例值】123412341234
**bindclrissr_id**可选string(14)
【描述】枚举值,01 银联;02 网联;03 连通等
【示例值】01
**bindpyeracctbk_id**可选string(14)
【描述】付款机构在清算组织登记或分配的机构代码
【示例值】123123123123
**bkpyeruser_code**可选string(128)
【描述】用户在银行付款账号的标记化处理编号
【示例值】123451234512345
**estter_location**可选string(32)
【描述】设备推测位置
【示例值】+37.28/-121.268
**biz_settle_mode**可选string(64)
【描述】账期结算标识,指已完成支付的订单会进行账期管控,不会实时结算。该参数目前会在使用小程序交易组件场景下返回
【枚举值】
账期模式: PERIOD
【示例值】PERIOD
**async_pay_apply_status**可选string(8)
【描述】异步支付受理状态,仅异步支付模式且query_options指定async_pay_info时返回。S:受理成功,支付宝内部会在一定期限内捞起任务推进支付,直到支付成功或超出可重试期限;其它:受理结果未知,可重试查询。
【枚举值】
异步支付受理成功: S
【示例值】S
**cashier_type|收银台类型**可选string(64)
【描述】收银台类型。 用户支付的收银台类型,取值如下: APP:支付宝APP收银台支付; WAP:支付H5收银台支付; 注:只有在无线产品支付接口请求中query_options指定cashier_type才返回该字段。
【示例值】APP
**tap_pay_info|碰一下支付信息**可选TapPayInfo
【描述】碰一下支付信息
**payment_medium_type|支付介质类型**必选string(16)
【描述】碰一下支付的支付介质类型,标识当前支付为碰一下支付
【示例值】TAP_PAY
**total_discount_name|碰一下共减名称**可选string(256)
【描述】碰一下支付的碰一下共减金额展示名称
【示例值】碰一下共减
**total_discount_amount|碰一下共减金额**可选string(16)
【描述】碰一下支付的碰一下共减优惠金额
【示例值】2.00
**unpaid_reason|未支付原因**可选string(64)
【描述】有限条件下返回当前订单未支付原因
【示例值】其他原因 ## 响应示例 ### 正常示例 ``` { "alipay_trade_query_response": { "code": "10000", "msg": "Success", "trade_no": "2013112011001004330000121536", "out_trade_no": "6823789339978248", "buyer_logon_id": "159****5620", "trade_status": "TRADE_CLOSED", "additional_status": "SELLER_NOT_RECEIVED", "total_amount": "88.88", "trans_currency": "TWD", "settle_currency": "USD", "settle_amount": "2.96", "pay_currency": "CNY", "pay_amount": "8.88", "settle_trans_rate": "30.025", "trans_pay_rate": "0.264", "send_pay_date": "2014-11-27 15:45:57", "buyer_pay_amount": "8.88", "invoice_amount": "12.11", "point_amount": "10", "receipt_amount": "15.25", "store_id": "NJ_S_001", "terminal_id": "NJ_T_001", "fund_bill_list": [ { "fund_channel": "ALIPAYACCOUNT", "amount": "10", "real_amount": "11.21" } ], "store_name": "证大五道口店", "buyer_open_id": "01501o8f93I3nJAGB1jG4ONxtxV25DCN3Gec3uggnC4CJU0", "buyer_user_id": "2088101117955611", "industry_sepc_detail_gov": "{\"registration_order_pay\":{\"brlx\":\"1\",\"cblx\":\"1\"}}", "industry_sepc_detail_acc": "{\"registration_order_pay\":{\"brlx\":\"1\",\"cblx\":\"1\"}}", "charge_amount": "8.88", "charge_flags": "bluesea_1", "settlement_id": "2018101610032004620239146945", "trade_settle_info": { "trade_settle_detail_list": [ { "operation_type": "replenish", "operation_serial_no": "2321232323232", "operation_dt": "2019-05-16 09:59:17", "trans_out": "208811****111111", "trans_in": "208811****111111", "amount": "10.00", "ori_trans_out": "2088111111111111", "ori_trans_in": "2088111111111111" } ], "trade_unsettled_amount": "1.1" }, "auth_trade_pay_mode": "CREDIT_PREAUTH_PAY", "discount_amount": "88.88", "subject": "Iphone6 16G", "body": "Iphone6 16G", "alipay_sub_merchant_id": "2088301372182171", "ext_infos": "{\"action\":\"cancel\"}", "passback_params": "merchantBizType%3d3C%26merchantBizNo%3d2016010101111", "buyer_user_type": "PRIVATE", "mdiscount_amount": "88.88", "hb_fq_pay_info": { "user_install_num": "3", "fq_inst_id": "ALIPAY" }, "credit_pay_mode": "creditAdvanceV2", "credit_biz_order_id": "ZMCB99202103310000450000041833", "hyb_amount": "10.24", "bkagent_resp_info": { "bindtrx_id": "123412341234", "bindclrissr_id": "01", "bindpyeracctbk_id": "123123123123", "bkpyeruser_code": "123451234512345", "estter_location": "+37.28/-121.268" }, "biz_settle_mode": "PERIOD", "req_goods_detail": [ { "goods_id": "apple-01", "alipay_goods_id": "20010001", "goods_name": "ipad", "quantity": 1, "price": "2000", "goods_category": "34543238", "categories_tree": "124868003|126232002|126252004", "body": "特价手机", "show_url": "http://www.alipay.com/xxx.jpg", "goods_ean_id": "6972829161111", "out_item_id": "outItem_01", "out_sku_id": "outSku_01" } ], "fulfillment_detail_list": [ { "fulfillment_amount": "80.00", "out_request_no": "20200320010101001", "gmt_payment": "2021-03-17 09:45:57" } ], "period_scene": "账期交易的场景。", "async_pay_apply_status": "S", "cashier_type": "APP", "tap_pay_info": { "payment_medium_type": "TAP_PAY", "total_discount_name": "碰一下共减", "total_discount_amount": "2.00" }, "pre_auth_pay_amount": "12.46", "purchase_entity": "3008", "unpaid_reason": "其他原因" }, "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" } ``` ### 异常示例 ``` { "alipay_trade_query_response": { "code": "20000", "msg": "Service Currently Unavailable", "sub_code": "isp.unknow-error", "sub_msg": "系统繁忙" }, "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" } ``` ## 公共错误码 [前往查看](https://ideservice.alipay.com/cms/site/02km9f) ## 业务错误码 | **错误码** | **错误描述** | **解决方案** | | --- | --- | --- | | ACQ.ENTERPRISE_PAY_BIZ_ERROR | 因公付业务异常 | 重新发起查询请求,如果多次重试后仍返回同样的错误,请联系支付宝小二处理 | | ACQ.INVALID_PARAMETER | 参数无效 | 检查请求参数,修改后重新发起请求 | | ACQ.SYSTEM_ERROR | 系统错误 | 重新发起请求 | | ACQ.TRADE_NOT_EXIST | 查询的交易不存在 | 检查传入的交易号是否正确,修改后重新发起请求 |