支付集成组件

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.支付集成

1.1.功能简介

通过此组件提供的REST服务,用户可以通过支付宝即时转账、扫码支付、网银支付,微信扫码,畅捷支付渠道来完成支付。

支持的支付渠道如下:

1),支付宝快捷支付功能

付款方需要登录支付宝账户,通过支付宝即时转账功能,来完成支付。

2),支付宝扫码支付功能

付款方通过支付宝客户端,扫描支付页面显示的二维码完成支付。

3),支付宝网银支付功能

付款方通过登录支付宝支持的网上银行完成支付。

4),支付宝担保支付功能

付款方可以选择担保支付的功能来完成网上购物。

5),微信扫码支付功能

付款方通过微信移动客户端,扫描支付页面的二维码来完成支付。

5),畅捷支付功能

付款方选择畅捷支付方式之后,由畅捷支付引导用户完成支付

注:以上服务,需要商家购买对应支付平台的支付业务服务

1.2.工作流程

1)、支付宝支付的数据交互流程

(1) 构造请求数据

商户根据【支付宝提供的接口规则】传入数据,程序根据传入的数据进行数据签名加密等操作,构造出符合支付宝接口规则的数据。

(2) 发送请求数据

把构造完成的数据集合,通过页面链接跳转或表单提交的方式传递给支付宝。

(3) 支付宝对请求数据进行处理

支付宝得到这些集合后,会先进行安全校验等验证,一系列验证通过后便会处理这次发送过来的数据请求。

(4) 返回处理的结果数据

对于处理完成的交易,支付宝会以两种方式把数据反馈给商户网站。

●程序上自动进行,重新构造URL地址链接,通过自动跳转的方式跳回商户在请求时设定好的页面路径地址(参数return_url,如果商户没有设定,则不会进行该操作);

●支付宝服务器主动发起通知,调用商户在请求时设定好的页面路径(参数notify_url,如果商户没有设定,则不会进行该操作)。

(5) 对获取的返回结果数据进行处理

商户在同步通知处理页面(参数return_url指定页面文件)或服务器异步通知页面(参数notify_url指定页面文件)获取支付宝返回的结果数据后,可以结合自身网站的业务逻辑进行数据处理(如:订单更新、自动充值到会员账号中等)。

2)、微信扫码支付的交互流程

(1) 构造请求数据

后台按照微信支付【统一下单API】的接口规则构造请求数据

(2) 发送请求数据

把构造完成的数据集合,模拟浏览器post提交传递给微信支付服务器。

(3) 返回处理的结果数据

微信支付服务器在对第二步传递的数据进行一系列校验分析处理后,会返回一个

XML报文,在这个报文里包含了一个code_url

(4)根据返回的数据,构造二维码

根据第三步生成的code_url,在页面上生成一个二维码,引导用户来完成支付

3)、畅捷支付的交互流程

(1) 构造请求数据

按照API文档规则构造请求数据

(2) 发送请求数据

在JSP中,将构造好的数据提交到对应的Action。

(3) 返回处理的结果数据

畅捷支付服务器,会将支付数据发送到在(1)中设置好的notifyUrl中,用户可对返回结果进行响应

1.3.API接口

1.3.1.支付宝快捷支付接口

描述

通过支付宝即时到帐服务,完成快捷支付的功能

请求方法

/pay/bill?pay_type=ALI&key=vaule

请求方式

HTTP POST

请求参数说明

1.3.

2.支付宝网银支付接口

描述

通过支付宝支持的网上银行,完成网银支付功能请求方法

/pay/bill?pay_type=ALI_BANK&key=vaule 请求方式

HTTP POST

请求参数说明

1.3.3.支付宝担保交易接口

描述

用户开通支付宝担保交易服务之后,通过此服务,完成担保交易请求方法

/pay/bill?pay_type=ALI_GU&key=vaule

请求方式

HTTP POST

1.3.4.微信扫码支付接口

描述

通过微信的扫码支付渠道,完成支付功能

请求方法

/pay/bill?pay_type=WX_SCAN&key=vaule

请求方式

HTTP POST

请求参数说明

1.3.5.畅捷支付接口

描述

通过畅捷支付提供的支付能力,商户向畅捷通发起支付订单请求,完成支付请求方法

/pay/bill?pay_type=CHANJETPAY&key=vaule

请求方式

HTTP POST

签名信息描述:所有值,为空的时候也参与。

md5签名的方式为:

bgUrl=¬ifyUrl=&businessId=&platIdtfy=&merchantId=&orderId=&orderDate=&bankT ype=&payeeBankAccount=&payeeBankType=&payeeBankName=&payeeName=&deviceId=&p ayerName=&payerCardType=&payerContactMbl=&payerContactMal=&orderAmount=&amtTyp e=&orderTime=&expireTime=&goodsId=&productName=&productNum=&productDesc=&redo Flag=&merPriv=&expand=&expand2=&key=商户密钥

1.4.开发步骤

1),引入支付组件Jar包,

如果是maven工程,可以直接使用如下依赖:

相关文档
最新文档