php 个人账户转账,支付宝单笔转账到支付宝个人账户接口 ( PHP 版 )_weixin_39942351的博客-程序员秘密

技术标签: php 个人账户转账  

alipay.fund.trans.toaccount.transfer(单笔转账到支付宝账户接口)

单笔转账到支付宝账户接口是基于支付宝的资金处理能力,为了满足支付宝商家向其他支付宝账户转账的需求,针对有部分开发能力的商家,提供通过 API 接口完成支付宝账户间的转账的功能。 该接口适用行业较广,比如商家间的货款结算,商家给个人用户发放佣金等。

注意事项:

1.目前仅支持账户余额渠道付款。

2.转账额度

1)单日转出累计额度为 100 万元。

2)转账给个人支付宝账户,单笔最高5 万元;转账给企业支付宝账户,单笔最高 10 万元。

特殊逻辑注意点:

1)如果商户重复请求转账,支付宝会幂等返回成功结果,商户必须对重复转账的业务做好幂等处理;如果不判断,

存在潜在的风险,商户自行承担因此而产生的所有损失。

2)如果调用 alipay.fund.trans.toaccount.transfer 掉单时,或返回结果code = 20000时,或返回结果code = 40004,sub_code = SYSTEM_ERROR 时,请调用alipay.fund.trans.order.query 发起查询,如果未查询到结果,请保持原请求不变再次请求 alipay.fund.trans.toaccount.transfer 接口。

3)商户处理转账结果时,对于错误码的处理,只能使用sub_code 作为后续处理的判断依据,

不可使用 sub_msg 作为后续处理的判断依据。

参数解读:

1.amount 转账金额,只支持 2 位小数,小数点前最大支持13 位,金额必须大于等于 0.1 元。

2.payer_show_name 付款方姓名(最长支持 100 个英文/ 50 个汉字)。显示在收款方的账单详情页。如果该字段不传则默认显示付款方的支付宝认证姓名或单位名称。

3.payee_real_name 收款方真实姓名(最长支持 100 个英文 / 50 个汉字),如果本参数不为空,则会校验该账户在支付宝登记的实名是否与收款方真实姓名一致。

4.remark 转账备注(支持 200 个英文 / 100 个汉字)。当付款方为企业账户,且转账金额达到(大于等于)50000元,remark 不能为空。收款方可见,会展示在收款用户的收支详情中。

下载服务端SDKhttps://docs.open.alipay.com/54/103419/

注:适用于 php 5.5 以上的开发环境

请求地址正式环境:https://openapi.alipay.com/gateway.do

单笔转账到支付宝账户接口文档https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer/

公共请求参数

8ebb8591019c94db324e23d69780914e.png

请求参数

6efabaa9d50dfa3a50a60b694d05e8fa.png

请求示例<?php

require_once "aop/AopClient.php";

require_once "aop/request/AlipayFundTransToaccountTransferRequest.php";

$aop = new AopClient ();

$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';

$aop->appId = 'your app_id';

$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串';

//  转帐的是使用支付宝公钥的验签,默认使用的是初始化客户端时候的公钥,需要把初始化客户端的公钥修改为支付宝的公钥。应用公钥实际没有用处。

//  $aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';

$aop->apiVersion = '1.0';

$aop->signType = 'RSA2';

$aop->postCharset='UTF-8';

$aop->format='json';

$request = new AlipayFundTransToaccountTransferRequest ();

$request->setBizContent("{" .

"\"out_biz_no\":\"3142321423259\"," .

"\"payee_type\":\"ALIPAY_LOGONID\"," .

"\"payee_account\":\"[email protected]\"," .

"\"payee_real_name\":\"小张\",".

"\"amount\":\"0.2\"," .

"\"remark\":\"单笔转账测试\"" .

"}");

$result = $aop->execute ($request);

$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";

$resultCode = $result->$responseNode->code;

if(!empty($resultCode)&&$resultCode == 10000){

echo "转账成功!";

} else {

echo "转账失败!";

}

响应示例{

"alipay_fund_trans_toaccount_transfer_response": {

"code": "10000",

"msg": "Success",

"out_biz_no": "3142321423259",

"order_id": "20180427110070001502210085187233",

"pay_date": "2013-01-01 08:08:08"

},

"sign": "N5DHM+s6dWL9ys3d  ***********  erFaTbIe4w=="

}

927a3af9f88c613f2be5b8d82661efce.png

Fatal error: Uncaught exception 'Exception' with message 'check sign Fail!

转帐的是使用支付宝公钥的验签,默认使用的是初始化客户端时候的公钥,需要把初始化客户端的公钥修改为支付宝的公钥。应用公钥实际没有用处。注释掉 //  $aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';//  $aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39942351/article/details/115575365

智能推荐

C语言的逗号!_只愿与一人十指紧扣_新浪博客_dream_uping的博客-程序员秘密

#include intmain( ) {inti;i=(1,9);//取得是逗号后面的!printf("i:%d\n",i); return0;}

郭德纲恶心人台词大全_系统信息的博客-程序员秘密

如果您喜欢这些文章,欢迎点击此处订阅本Blog<!-- google_ad_client = "pub-7343546549496470";/* 728x90, 大横幅正文上方 */google_ad_slot = "4725362798";google_ad_width = 728;google_ad_height =

Hadoop failed on connection exception: java.net.ConnectException: Connection refused错误解决_可变集合的博客-程序员秘密

先用下面的命令查看一下端口号有没有开启sudo netstat -ntlp如果没找到自己要连接的端口号,就去core-site.xml看看自己配的是不是这个端口号。我配的不是8020,跟8020连了半天死活连不上。&lt;property&gt; &lt;name&gt;fs.defaultFS&lt;/name&gt; &lt;value&gt;hdfs://hadoop131:9820&lt;/value&gt;&lt;/property&gt;连接的端口

matlab循环读取txt文件_时钟树上的小猴子的博客-程序员秘密_matlab循环读取txt文件

一般情况下,假如我要读取一个名为a.txt的文件,只需要利用下面的语句:a=load('a.txt');现在假如我需要循环读取saif_1.txt,saif_2.txt,,,一直到saif_10.txt,他们都是10*1的矩阵,对他们进行转置操作后,再合并到一个文件中,可以利用下面的语句:for N=1:10a=load(['saif_',num2str(N),'.txt']);......

c++中double转换成string型(浮点数的格式化)_weixin_30929295的博客-程序员秘密

在日常编程中--包括对话框、关系数据库、金融程序、SMS程序及一切处理数据文件的程序,需要控制小数点后的小数位的情况非常普遍,本文中将要讲 解如何用简单的方法来控制小数位,另外,还要揭开字符串及数据精度的一点点小秘密。问题的引出如有一个函数,其可接受一个long double参数,并将参数转换为字符串,结果字符串应保留两位小数,例如,浮点值123.45678应该生成“123.45”这样的字...

检查Android网络连接状态(转载)_路过人间本尊的博客-程序员秘密

在软件自测过程中我发现如果没有打开手机网络,系统会异常关闭,所以就想到有必要在用户登录之前判断手机的网络连接状态。如果用户打开了网络连接,则可以正常登录;反之,登录和注册按钮不可用,并弹出“打开网络”的提示消息。实现步骤如下:1、  首先在AndroidManifest.xml文件中加入相应权限[html] view plaincopy

随便推点

知识点 - 支配树_Best KeyBoard的博客-程序员秘密

知识点 - 支配树解决问题类型:有向图中求解,必经点,必经边。前置知识学会构建dfs树,对于dfn序有简单的了解对于树上两点路径有初步的认识,知道LCA的概念知道带权并查集的合并方法(合并子树时需要使用)概念支配点很久很久以前,有一张有向图,有向图有一个起点SSS,有一个叫小X的强盗,占据一个点拦路打劫。当小X占据了x点后,若从SSS出发就到不了yyy点了,那么xxx就是yy...

python原始套接字实现简单的sniffer_黑仔丶的博客-程序员秘密_python原始套接字

what:raw socket,即原始套接字,可以接收本机网卡上的数据帧或者数据包,对于监听网络的流量和分析是很有作用的。where:一共可以有4种方式创建这种socket:1.socket(PF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROTO_ICMP)发送接收ip数据包socket(AF_INET, SOCK_RAW, IPPROTO...

dart中的抽象类、多态、接口、泛型、late、required_yang_web的博客-程序员秘密

抽象类抽象类通过abstract 关键字来定义抽象类不能被实例化,只有继承它的子类可以抽象类里面的抽象方法 在继承的时候必须要定义这些方法如果子类继承抽象类必须得实现里面的抽象方法如果把抽象类当做接口实现的话必须得实现抽象类里面定义的所有属性和方法。多态多态就是父类定义一个方法不去实现,让继承他的子类去实现,每个子类有不同的表现。多个子类继承一个父类,每个子类的抽象方法逻辑不一样late延迟初始化 定义变量没有赋值的时候需要在前面加laterequire参数不能为空imp

linux functions传入参数,Functions_weixin_39567222的博客-程序员秘密

因为underscore本来就是为了充分发挥JavaScript的函数式编程特性,所以也提供了大量JavaScript本身没有的高阶函数。bindbind()有什么用?我们先看一个常见的错误用法:'use strict';var s = ' Hello ';s.trim();// 输出'Hello'var fn = s.trim;fn();// Uncaught TypeError: Strin...

O/R Mapping基础_jhaij的博客-程序员秘密

O/R Mapping基础1、模型(1)模型用来表示真实世界的实体在科学和工程技术领域,模型是一个很有用途的概念,它可以用来模拟一个真实的系统。在软件开发领域,模型用来表示真实世界的实体。(2)不同类型的模型在软件开发的不同阶段,需要为目标系统创建不同类型的模型。l         在分析阶段----需要创建概念模型l         在设计阶段----需要创建域模

【ansys workbench】16.对称问题、平面问题和自由度_糊涂懿的博客-程序员秘密_ansys对称模型二分之一

本篇博客是根据阅读公众号“机械人读书笔记”而来的学习笔记~

推荐文章

热门文章

相关标签