商城点卡支付接口口选什么阿

电商网站使用支付宝转账付款功能代替支付宝支付接口 - 开源中国社区
当前访客身份:游客 [
当前位置:
发布于 日 18时,
现在支付宝商户对于商家接入支付宝即时到账接口管理比较严格,一般都是需要支付宝企业账户才能申请开通即时到账接口的。这对于大部分个人商家来说,无疑不利于快速回笼资金。本接口通过一个变通的方式,利用支付宝系统中的转账付款功能,来跟自己的商城实现对接,让客户在下单后直接跳转到支付宝的转账付款页面,通过转账付款的方式来给自己的支付宝账号付款。客户在转账付款界面无需自已填写订单相关信息,程序自动填写。如:收款账号、付款金额、付款备注等信息。客户在网站下单后只管支付就行了。
代码片段(5)
1.&[代码]EcShop的支付宝转账付款程序文件&&&&
* ECSHOP 支付宝转账付款功能,配合我们的支付通软件,可实现全自动订单付款状态更新、会员自动充值功能!
现在支付宝商户对于商家接入支付宝即时到账接口管理比较严格,一般都是需要企业账户才能申请开通即时到账接口的。这对于大部分个人商家来说,无疑不利于快速回笼资金。本接口通过一个变通的方式,利用支付宝系统中的转账付款功能,来跟自己的商城实现对接,让客户在下单后直接跳转到这个支付宝的转账付款页面,然后输入自己的账号密码,就可以给自己的账号付款了。配合我们提供的【支付通】软件,可以实现24小时自动更新网站订单状态,自动为会员充值等功能。请进入我们的官方网站下载软件并使用吧!网址:http://easypay.myshopex.com/
* ====================================================================================================
* 版权所有
支付通,并保留所有权利。
* 网站地址: http://easypay.myshopex.com/
* ====================================================================================================
* $Author: 老曹 QQ:
* $Id: alipayeasypay.php $
if (!defined('IN_ECS'))
die('Hacking attempt');
$payment_lang = ROOT_PATH . 'languages/' .$GLOBALS['_CFG']['lang']. '/payment/alipayeasypay.php';
if (file_exists($payment_lang))
global $_LANG;
include_once($payment_lang);
/* 模块的基本信息 */
if (isset($set_modules) && $set_modules == TRUE)
$i = isset($modules) ? count($modules) : 0;
/* 代码 */
$modules[$i]['code']
= basename(__FILE__, '.php');
/* 描述对应的语言项 */
$modules[$i]['desc']
= 'alipayeasypay_desc';
/* 是否支持货到付款 */
$modules[$i]['is_cod']
/* 是否支持在线支付 */
$modules[$i]['is_online']
/* 作者 */
$modules[$i]['author']
= 'yiditushe(老曹)';
/* 网址 */
$modules[$i]['website'] = 'http://easypay.myshopex.com/';
/* 版本号 */
$modules[$i]['version'] = '1.0.0';
/* 配置信息 */
$modules[$i]['config']
array('name' =& 'alipayeasypay_account',
'type' =& 'text',
'value' =& ''),
array('name' =& 'alipayeasypay_key',
'type' =& 'text',
'value' =& ''),
array('name' =& 'alipayeasypay_mobile',
'type' =& 'text',
'value' =& ''),
class alipayeasypay
* 构造函数
* @return void
function alipayeasypay()
function __construct()
$this-&alipayeasypay();
* 生成支付代码
支付方式信息
function get_code($order, $payment)
if (!defined('EC_CHARSET'))
$charset = 'utf-8';
$charset = EC_CHARSET;
$parameter = array(
'optEmail'
=& $payment['alipayeasypay_account'],
'payAmount'
=& $order['order_amount'],
if($order['order_id']){
$parameter['title']= $order['order_sn']."|".$order['log_id'];
$parameter['memo']= ("订单号:".$order['order_sn']);
$parameter['title']= $order['log_id']."|".$order['log_id'];
$parameter['memo']= ("会员充值:".$order['user_name']);
if($payment['alipayeasypay_mobile']){
$parameter['smsNo']= $payment['alipayeasypay_mobile'];
$button = '&div style="text-align:" &&form id="__allpayForm" accept-charset="gbk" method="post" onsubmit="document.charset=\'gbk\';" target="_blank" action="https://shenghuo.alipay.com/send/payment/fill.htm"&';
foreach ($parameter as $keys =& $value) {
$button .="&input type='hidden' name='$keys' value='$value' /&";
$button .= '&input type="submit" id="__paymentButton" value="' . $GLOBALS['_LANG']['pay_button'] . '" /&';
$button .= '&/form&&/div&';
* 响应操作
function respond()
if (!empty($_POST))
foreach($_POST as $key =& $data)
$_GET[$key] = $
= get_payment($_GET['code']);
$sig = $_GET['sig'];//签名
$tradeno = $_GET['tradeNo'];//交易号
$desc = $_GET['desc'];//交易名称(付款说明)
$time = $_GET['time'];//付款时间
$username = $_GET['username'];//客户名称
$userid = $_GET['userid'];//客户id
$money = $amount = $_GET['amount'];//交易额
$status = $_GET['status'];//交易状态
$order_sn_logid = str_replace("付款-", "", $desc);
$key = $payment['alipayeasypay_key'];
//验证签名
if(strtoupper(md5("$tradeno|$desc|$time|$username|$userid|$amount|$status|$key")) == $sig){
//这里做订单业务,在下面写您的代码即可
//检查付款金额和支付单的金额是否一致,不一致的话,报错处理
/* 检查支付的金额是否相符 */
list($order_sn, $log_id) = explode("|", $order_sn_logid);
if (!check_money($log_id, $money)){
echo "支付金额不一致";
/* 改变订单状态 */
order_paid($log_id, 2);
echo "ok";
echo "验证签名失败";
2.&[图片] 2.jpg&&&&
3.&[图片] 3.jpg&&&&
4.&[图片] 4.jpg&&&&
5.&[图片] 5.jpg&&&&
开源中国-程序员在线工具:
相关的代码(480)
49回/61132阅
17回/54183阅
[JavaScript]
14回/52999阅
92回/52198阅
94回/51015阅
17回/45060阅
5回/40693阅
50回/38670阅
6回/37824阅
18回/32369阅
这个法不错。
2楼:开源无憾 发表于
3楼:有色白水 发表于
这个方法其实完全走不通,连起码的企业户都没有,怎么让买家信任你啊
4楼:九阁网趣 发表于
引用来自“有色白水”的评论这个方法其实完全走不通,连起码的企业户都没有,怎么让买家信任你啊mark 先。其实有时候,是不需要买家信任的-。。-
5楼:酒逍遥 发表于
骗子网站 可能会大量使用此方法...因为这个是即时到账的...
商家收了钱不发货的话买家一点办法也没有..
除非真的是某些不需要买家信任的商品才有可能.&
6楼:风弥 发表于
好想不错, mark下~
7楼:倚地屠蛇 发表于
引用来自“有色白水”的评论这个方法其实完全走不通,连起码的企业户都没有,怎么让买家信任你啊引用来自“一头猪”的评论mark 先。其实有时候,是不需要买家信任的-。。-有些批发分销类网站,基本都是固定的代理商到网站下单拿货,代理加盟费都交了,相互都是很信任的关系了。这个时候即时有正规的支付宝支付接口,也可以用这种方法来节省掉一笔不小的支付宝接口手续费。
8楼:九阁网趣 发表于
引用来自“有色白水”的评论这个方法其实完全走不通,连起码的企业户都没有,怎么让买家信任你啊引用来自“一头猪”的评论mark 先。其实有时候,是不需要买家信任的-。。-引用来自“倚地屠蛇”的评论有些批发分销类网站,基本都是固定的代理商到网站下单拿货,代理加盟费都交了,相互都是很信任的关系了。这个时候即时有正规的支付宝支付接口,也可以用这种方法来节省掉一笔不小的支付宝接口手续费。就是就是~
9楼:你若安好 发表于
怎么获取支付宝的交易记录 好像还是需要公司账号才能成开发者掉API?
10楼:倚地屠蛇 发表于
引用来自“你若安好”的评论怎么获取支付宝的交易记录 好像还是需要公司账号才能成开发者掉API?
模拟登录支付宝页面去刷呗。
11楼:壹爱 发表于
& 广告嫌疑啊。。虽说这个方法是不错。
12楼:林泳坛 发表于
我是不会付款的,
13楼:hmh 发表于
我几年前就想到和实现过了。我明天找出来开源下! 不过知道还能用不。
14楼:zhangya4548 发表于
太广告了,无非也就是也就是一个模拟提交而已,网上早就出来了的
15楼:wolf2999 发表于
一些骗子网站是不是就这样搞出来的!
16楼:跟猪谈理想 发表于
电商搞这个, 真无语了, 首先 可信度大大降低, 然后转账不能使用信用卡。
17楼:netwinder 发表于
18楼:white_ideal 发表于
我想问这个怎么用。。。
19楼:今晚一起打老虎 发表于
前辈我想问问 付款成功后 怎么通过交易号查询啊 我不会php 能不能给个java的 谢谢了&
20楼:脚本1 发表于
正是我想的
开源从代码分享开始
倚地屠蛇的其它代码几种常用的商城网站在线支付接口申请条件介绍_无忧支付网
囊括国内所有第三方支付公司信息
为客户提供最优质的支付接口服务
24小时服务电话
支付接口申请介绍
您当前的位置: >
几种常用的商城网站在线支付接口申请条件介绍
添加时间: 20:20
  建立在线商城网站,是为了让用户通过互联网进行商品的购买,除货到付款可以让物流公司代为收款外,另一种支付渠道就是通过用户的银行卡或各种第三方支付账户来进行商品费用的支付。
  网站如果希望用户通过在线付款的方式进行付款,就需要申请一种或多种用于进行人民币支付的支付接口。在线支付接口提供商可以是某个商业银行、银联在线支付或者支付宝、财付通等第三方的支付机构。下面是对这几种方式的简单介绍。
  一、直联商业银行接口
  直接使用商业银行提供的商户支付功能,需要使用者到提供商户功能的商业银行营业厅进行咨询、提交公司资料并进行审核开通。银行在配置支付所需接口参数并为使用者开通功能后,使用者需要根据银行提供的开发文档进行相关接口程序的开发,集成到商城网站在线购物的支付流程中。
  直接使用商业银行接口时,可能会遇到各种技术问题,以及因单个银行接口使用不广泛和跨行支付时也会遇到很多问题,一般需要单独与多个银行进行单独签约,所以大部分需要在线交易的网站,使用单独签约多个商业银行进行支付的很少。这种方式很单一,我们不考虑。
  二、银联在线支付
  &银联在线支付&是中国银联联合商业银行共同推出的集成化、综合性、开放性网上支付平台,全面支持各类型银联卡,涵盖认证支付、快捷支付、普通支付和网银支付等多种支付方式,其中认证、快捷和普通支付无需开通网银,即可为银联卡持卡人的购物缴费、商旅预订、慈善捐款、转账还款等提供&安全、快捷、多选择、全球化&的支付服务。
  申请条件:&银联在线支付&签约需要联系当地银联商务公司,提交公司营业执照、税务登记证、法人身份证、ICP许可证等相关资料进行审核,通过后银联总部将对支付参数进行配置,完成后商城技术开发人员即可通过银联提供的开发文档进行支付功能的开发,让用户在购买产品时通过银联在线支付或到其提供的各个商业银行的网银支付页面进行付款。
  收费标准:
  商户端软件费:&&&& 4000元(一次性收费)。
  ChinaPay会员年费: 3000元/年。
  每笔交易手续费: 1.8%,单笔最低0.2元。
  银联申请表(银联在线网站上可下载)
  申请须知:
  1、本表适用于商户接入&银联在线支付&互联网前台业务,且由商户开发接口直接和银联在线支付系统(UPOP系统)对接。
  2、收单机构应按照本表所列项目获取商户真实、完整信息,相关产品功能由收单机构根据商户申请进行确认。收单机构需将本表盖章后提交,并自行确定本表是否要求商户盖章。如发现本表填写信息不实,银联保留对相关商户关停银联在线支付功能的权利。
  3、商户简称将用于向持卡人发送短信验证码时使用,字数应在8个汉字以内。在支付页面和信用卡持卡人账单上出现的商户名称信息,由&商户工商注册名称&+&(商户网站名称)&组合而成,便于持卡人识别。
  4、业务联系人将接收银联发送的商户入网受理通知邮件和工作密钥、作为商户服务网站初始管理员,技术联系人将接收银联技术人员关于交易异常的通知。其他联系人信息,如风险联系人、清算联系人等,请商户及时登录商户服务网站自助登记和更新,以便顺畅收到银联以邮件和短信方式发送的通知。
  5、虚拟商品是指无实物性质,非实名登记,且无需线下配送的商品。销售虚拟商品的商户应在表中注明所售虚拟商品的名称。
  6、平台类商户是指搭建网络商城平台,并代表加入该平台的商品或服务的直接提供者(二级商户)与收单机构建立银行卡受理契约关系的特约商户。
  7、防钓鱼功能是为防范钓鱼网站(网页)对客户账户的欺骗和攻击,防止用户交易跳转到钓鱼网站(网页)而产生交易损失的功能。防钓鱼功能有域名检查和IP校验两种实现方式。银联默认为商户开启域名检查方式的防钓鱼功能,商户需提供全部URL,在域名变更(更改或新增)时,须提前通知银联同步更新,以防影响交易。商户如选择IP校验方式的防钓鱼功能,须开发相应功能,并在交易中上送IP地址。
  8、银联在线支付互联网前台业务包括实时支付(含认证支付、快捷支付、小额支付、储值卡支付、网银支付等组合)、预授权支付和担保支付等支付功能,及银联在线支付通行证等辅助功能。中国银联根据商户及收单机构申请及风险评估开通相关功能,并将不定期对各类产品功能进行补充调整及优化完善。
  9、在商户服务网站使用退货(含消费撤销)功能,需使用操作员或管理员的手机进行手机动态验证码验证;增加或变更操作员的业务权限时,也需要使用管理员的手机进行手机动态验证码验证,因此商户须加强对管理员手机及用户信息的安全管理。默认由业务联系人作为初始的网站管理员,业务联系人手机号码作为用于认证的手机号码。
  10、在获得用户授权的情况下,银联会向开通银联在线支付通行证的商户提供部分用户注册信息,以便于银联用户购买或使用商户网站提供的产品或服务。商户应对用户信息严格保密,不得将该等信息用于正常交易以外的任何其他商业或非商业目的,如商户违反上述要求,应对造成的损失承担一切法律责任。同时,银联有权终止提供通行证服务并不对此承担任何责任。
  11、在通行证功能的交易报文返回URL地址缺省时或中国银联主动发起报文至商户时,默认使用此表中URL地址。
  12、清算方式说明【非常重要】:清算模式应由收单机构根据既有模式和商户差异化需求综合确定,收单机构如有疑问,可咨询当地银联分公司业务人员。
  (1)直联清算:收单机构须预先在银联的商户管理平台上录入商户账户、商户扣率和收单侧分润规则等清算信息;由银联清算系统据以计算商户和各分润角色各自应得资金,形成结算报表和商户对账文件。
  (2)间联清算:银联将收单侧应得资金总额清算至收单机构,由收单机构自行计算商户和收单侧各分润角色应得资金,形成结算报表和商户对账文件。
  13、建议按照商户所属各行业配置交易限额,收单机构也可在一定区间内另行提出需求。
  航空售票、酒店商旅、教育收费,建议单卡单笔10000,单卡日累计10000;
  数码电子:建议单卡单笔5000,单卡日累计5000;
  虚拟商品(游戏点卡、充值等):单卡单笔500,单卡日累计2000;
  彩票类:单卡单笔500,单卡日累计500;
  其他一般类商户:建议单卡单笔2000,单卡日累计5000.
  三、第三方支付机构
  最常用的第三方支付机构如新浪支付微博钱包、支付宝、财付通、快钱、环迅支付、易宝支付等。他们拥有中国人民银行颁发的非金融机构第三方支付许可证。可以为用户提供支付业务服务。现在支付宝占市场比48.7%,如果用第三方支付首先会选择支付宝。
  商城使用者(商户)通过申请第三方支付的接口并嵌入到网站中,网站用户在支付时将跳转到支付机构的网上收银台或直联银行的银行支付网关进行支付,用户支付完毕后,款项将到达商户在第三方支付的账号中,商户就可以申请提现,将资金转移到商户的银行卡中。我们需要的服务是&批量付款到支付宝账户&,方便顾客网站账户余额提现到支付宝账户。
  批量付款到支付宝账户:您可一次性给多个不同的支付宝账户打款,转账资金即时到账,快捷便利
  申请条件:
  1.申请本产品需提供淘宝同名店铺链接地址或已签约支付宝即时到账 、担保交易和双功能收款中任一产品(本服务暂不支持淘宝商城卖家使用)。
  2.您申请前必须拥有支付宝账号,且通过支付宝实名认证审核;
  3.您需确保提交的材料真实合法,申请提交后支付宝将会进行商户资料的资质审核;
  4.如个人签约需满足合作六个月以上,近三个月全部成功交易大于1000笔,金额超过5万元。
  产品优势:
  方便向多个不同支付宝账户打款,便捷快速;
  转账无限额,可随时进行大额资金转账;
  转账资金即时到账,实现资金快速流转。
  收费标准:
  单笔费率0.5%,最低1元/笔,最高25元/笔
  服务期限:1年
  企业支付宝认证申请材料:
  1、邮箱账号(比较稳定的邮箱)
  2、公司的营业执照副本影印件;
  3、公司的对公银行账户,基本户、一般户均可;
  4、公司法定代表人的身份信息,包括法定代表人姓名、证件号码、身份证影印件。
  5、填写代理人信息,上传代理人身份证图片
  6、商家认证委托书、加盖公章
  影印件要求必须为彩色原件扫描件或数码照。
  办理对公银行账户准备资料:
  1、公章、财务章、法人人名章
  2、法人、经办人身份证
  3、营业执照、税务登记证、组织机构代码证
  4、到填写开户申请书、印签卡片,交纳开户费,一般是200元。
  材料齐全,银行核实无误后,一般一个月可以领取开户许可证。&&& 当我们在商城购物时,可能会用到在线支付,你会发现无论你是哪个银行的银行卡接口中都会支持,在做项目开发时,也经常会用到支付接口,我们当然希望支持所 有的网银,但这需要我们针对每个银行开发一套接口吗?不是不可以而是没必要,使用第三方的支付接口就可以满足,第三方支付平台已经与各大银行进行签约,网 站主只需要在此平台申请一个账号即可支持几乎所有的种类的银行卡信用卡的交易,当然是可能支付少量的手续费的。什么是第三方支付呢?
&&&&所谓第三方支付,就是一些和各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。在通过第三方支付平台的交易中,买方选购商品后,使用第三方平台提供的账户进行货款支付,由第三方通知卖家货款到达。
&&&&目前提供第三方支付的机构很多,常见的有支付宝、财付通、快钱、网银在线、易宝支付、云网等各大支付平台。网站如果需要实现第三方支付首先应该向
第三方支付平台申请一个账号并签署协议,协议生效后第三方支付平台将为其开通在线支付功能,通过程序将接口集成到网站中。
第三方支付原理图:
以上简要说明了支付过程,当然其中省略了一些步骤(比如购物车,订单等),我们重点来看支付流程。
1用户向商城网站发起确认订单的请求
2商城网站接收到请求保存订单数据到数据库或其他存储介质
3返回订单确认页面,页面上应该显示订单金额等信息
4用户确认支付,发起支付请求。注:支付请求是发送到支付网关(比如支付宝、网银在线)而不是发送到商城网站。
5显示支付页面
6用户填写认证信息(账号密码等)提交
7这里有两个步骤一个是扣款成功后页面跳转到支付结果页面(展示给用户),另一个是支付通知,这两步没有先后顺序可能同时执行,商城网站接收到支付通知后根据验证规则验证信息的有效性,并作出相应的更改操作(例:有效则更改订单为已付款状态,无效则记录非法请求信息)。
&&&&以支付宝为例:如果实现在网站中集成支付宝接口,首先要有一个支付宝账号,接下来向支付宝申请在线支付业务,签署协议。协议生效后有支付宝一方会
给网站方一个合作伙伴ID,和安全校验码,有了这两样东西就可以按照支付宝接口文档开发支付宝接口了,在上图的几个步骤中只有4和7两个步骤在商城与支付
网关之间有信息交互。在步骤4中指将数据发送到支付网关(支付宝),在步骤7中是的通知验证部分,验证网关请求网站某地址,网站按验证规则对信息进行验证
记录并作出响应,我们几乎在开发任何支付接口时,重点是这两部分的开发,明白支付接口原理,开发在线支付接口就不难了。
&&&&支付宝目前提供了,担保交易、标准即时到帐、双功能等几种接口,只是在功能上有些差异,网站集成方式是一样的。以标准即时到帐接口为例,在与支付宝签署协议后,还需要几个步骤才能完成集成。
进入支付宝后台在商家服务菜单下有两个链接:
分别可以查询到PID和Key,依次点击我的产品,技术服务将会显示:
选择&我要自助集成&接下来会看到下载技术文档的链接,点击下载技术文档。
&&&&在下载后的文件中有标准支付宝交易服务接口、商家工具、接口集成指南等接文档,另外还有几种语言写的demo。我们可以根据接口文档按规则全新开
发,也可以再demo基础上修改集成到网站,需要注意的是开发支付接口需要在公网(服务器必须可以通过外网访问)才可以完成整个调试过程,如果服务器在外
网访问不到,则无法接收到支付通知。
看一下demo中每个文件的作用:
& ├alipay_notify.php┈┈┈┈支付宝通知处理类文件
& ├alipay_service.php ┈┈┈支付宝请求处理类文件
& ├alipay_config.php┈┈┈┈┈┈基础信息配置文件
& ├index.php┈┈┈┈┈┈┈┈┈┈快速付款入口模板文件
& ├notify_url.php ┈┈┈┈┈┈┈服务器异步通知页面文件
& ├return_url.php ┈┈┈┈┈┈┈页面跳转同步通知文件
这里已经下载好了(会附加在本文附件中),为了便于调试增加修改了若干文件,并增加了一张数据表保存订单信息(见附件),我们修改一下配置文件完成一个测试过程。
alipay_config.php是基础信息配置文件,我们需要将在支付宝后台获取的PID与Key写入到配置文件中。
&&&&其中方框内的数据是我们需要重点修改的。支付通知地址与返回地址的区别,前面已经提到,在步骤7中有两项:支付结果页面与支付通知信息,支付结果页面是用户支付完成后会自动跳转到这个地址这里是返回地址($return_url)。
&&&&支付通知地址同样是用户支付完成后,支付宝会请求该地址($notify_url),但是支付通知是支付宝服务器直接请求,不会被用户看到。这两
个地址必须是以http开头的完整路径格式为了完成测试过程,这里已经将/pay/alipay/notify_url.php改写,
将$notify_url设置为可访问到此文件的URL即可。这几项配置好后再根据数据库脚本(pay/orders.sql)创建一张数据表。并根据数
据库的配置信息修改mysql_config.php。通过对支付宝提供的demo做简单修改就可以完成创建支付请求(步骤4)了,这里更改了支付首页等
页面(见附件pay目录)。我们先测试一下:
点击&下订单&按钮
根据上图的流程现在已经走到了步骤3,此时已经生成了订单号(为了便于测试使用了时间戳作为订单号),并且将订单信息写入到数据库。我们看一下数据库:
数据库中增加了一条&订单信息&。
如果点击&确认支付&按钮或者确认支付
链接将会跳转到支付宝页面,点击按钮时通过表单POST方式将信息提交到支付网关,由于支付请求数据无需让用户看到,这里都写在隐藏域中了。确认支付
链接是通过URL传参,因为支付宝接口允许以POST或者GET方式提交,所以两种方式都可以。把参数提交给支付网关后,页面跳转到到支付页面。我们看到
如下图所示:
我们看到支付宝为我们提供了两种支付方式,一种是通过支付宝账户支付,另一种是通过银行卡支付。例如选择使用银行卡支付,填写邮箱或手机号即可跳转到下一
个页面进行选择银行,支付宝几乎支持所有的银行卡支付,同时有信用卡和网点方式付款,选择对应的银行下一步按提示付款即可。付款完成后页面会返回到我们在
配置文件中配置的$return_url地址,同时&订单状态&也会发生改变。
注:测试时如果没有在外网测试(即支付通知地址无法在外网访问)则支付通知无法被请求到,无法自动完成订单状态的修改。
&&&&& 也有的开发者在浏览器的跳转页面做订单状态的更改(不推荐这样做,因为浏览器端服务器无法控制,比如突然断网,浏览器关闭等)
支付宝接口规范可参考附件和示例文件,里面已经有了比较详细的说明,比如要对支付通知进行响应等。
如何创建支付请求?
&&&&在前面的测试中我们点击了&确认支付&将信息将信息提交到了支付宝的支付网关,我们可以思考一下应该发送哪些参数给支付网关。关于请求参数列表可
以参考附件中的标准支付宝交易服务接口(专用于防钓鱼网站).Pdf中的3.2.2。需要注意的是并不是我们把这些参数原封不动的提交到支付宝就可以了,
为了保证数据安全支付宝目前使用的是MD5签名防止数据篡改机制。
&&&&在提交数据前需要将需要提交的数据以一定规则(见接口文档)组装成字符串,加上安全校验码(Key)组成一个新字符串,通过MD5生成一个32字节的签名,我们提交支付请求时还需要把这个签名也提交过去。看一下表单源码
支付宝接收到参数后会进行验证请求参数的合法性,验证无误后将显示支付页面,否则提示错误。
如何验证支付通知?
在用户支付完成后,支付宝会请求网站支付通知地址(这个地址应在创建支付请求时作为参数传递过去)。返回参数列表参见标准支付宝交易服务接口(专用于防钓
鱼网站).Pdf3.3.1。支付宝的返回数据中同样有一个签名串(采取和支付请求同样的签名方式),在支付通知文件中首先要对数据进行签名验证。除了验
证签名,还需要将参数中的notify_id提交到支付宝的验证网关支付宝系统这个通知的真实性,通知验证。支付宝系统判断通知是否是自己发送,如果是以
字符串格式返回
true,否则返回false,我们通过验证服务器返回的数据验证请求的真实性,如果都验证通过则可以进行更改订单数据、给用户发送邮件通知等操作。关于
验证签名可以看一下通知文件中的源码。带demo中将参数中的notify_id提交到支付宝是通过POST方式提交并取得返回数据,代码片段:
这里重点就是fsockopen函数,在发送电子邮件时我们已经接触过,通过此函数打开套接字连接,类似于以前学过的fopen函数返回的是一个文
件句柄,之后可以使用文件函数( fgets()、fgetss()、fputs()、fclose()
feof()等)对其进行操作,代码中使用了fputs()(同fwrite())函数,写入数据来模拟表单以POST方式提交数据,最后通过
fgets()函数获取返回的数据保存到数组中,最后进行验证,具体参照附件中的源码。
阅读(...) 评论()}

我要回帖

更多关于 网络支付接口 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信