支付宝如何查询订单支付情况?
程序员文章站
2022-05-12 12:16:14
...
支付宝订单查询文档
根据文档示例,运行下面PHP 代码
$aop = new AopClient ();
$aop->appId = C('alipay.app_id');
$aop->rsaPrivateKeyFilePath = C('alipay.private_key');//RSA私钥
$aop->alipayPublicKey = C('alipay.alipay_public_key');//支付宝公钥
$request = new AlipayTradeQueryRequest ();
$paramArray = array();
$paramArray['out_trade_no'] ='16031438100034854059';
$paramArray['trade_no'] ='2016031421007864720242676619';
$request->biz_content =json_encode($paramArray);
$result = $aop->execute ($request, NULL );
var_dump($result);
返回下面结果
{
"code":"40001",
"msg":"Missing Required Arguments",
"sub_code":"isv.missing-signature-key",
"sub_msg":"缺少签名配置"
}
支付宝应用场景是:APP支付,支付流程已经没问题
回复内容:
支付宝订单查询文档
根据文档示例,运行下面PHP 代码
$aop = new AopClient ();
$aop->appId = C('alipay.app_id');
$aop->rsaPrivateKeyFilePath = C('alipay.private_key');//RSA私钥
$aop->alipayPublicKey = C('alipay.alipay_public_key');//支付宝公钥
$request = new AlipayTradeQueryRequest ();
$paramArray = array();
$paramArray['out_trade_no'] ='16031438100034854059';
$paramArray['trade_no'] ='2016031421007864720242676619';
$request->biz_content =json_encode($paramArray);
$result = $aop->execute ($request, NULL );
var_dump($result);
返回下面结果
{
"code":"40001",
"msg":"Missing Required Arguments",
"sub_code":"isv.missing-signature-key",
"sub_msg":"缺少签名配置"
}
支付宝应用场景是:APP支付,支付流程已经没问题
查询订单详情:
$parameter = array(
'service' => 'single_trade_query',
'partner' => '2088101122136241',//合作者ID
'_input_charset' => strtolower('utf-8'),
'out_trade_no' => '1-1441531218',//商户订单号,唯一
);
ksort($parameter);
reset($parameter);
$param = '';
$sign = '';
foreach ($parameter AS $key => $val)
{
$param .= "$key=" .urlencode($val). "&";
$sign .= "$key=$val&";
}
$param = substr($param, 0, -1);
$sign = substr($sign, 0, -1). '你的支付宝key';
$url = 'https://mapi.alipay.com/gateway.do?'.$param. '&sign='.md5($sign).'&sign_type=MD5';
echo file_get_contents($url);
key在商家服务里面查看:
支付宝没有提供类似于微信支付中查询订单的情况,只能根据支付宝异步通知客户端服务器和支付宝同步通知给app 客户单的情况进行确定,其中同步通知的校验也要放在服务端,若同步校验成功,也可认为成功,当然最好是以异步通知的结果为准,然后在支付宝开放平台上的支持中心也是可以提问的额,而且回复比较及时(一般半天左右)