资金代付HTTP联动通知文档

返回文档首页

功能说明

如果配置了资金代付HTTP联动设置,当完成对资金的代付后,原力支付服务会向指定的目标发送HTTP协议的通知数据,报告资金代付结果情况.

通知服务器HOST

取决于您的HTTP联动设置中所配置的服务器地址和端口
请注意确保防火墙设置已经允许通过该网络地址端口进行访问.
您可在原力支付客户端<交易联动设置><HTTP联动设置>中配置此参数

通知服务器ACTION

取决于您的HTTP联动设置中所配置的服务器ACTION
您可在原力支付客户端<交易联动设置><HTTP联动设置>中配置此参数

通知方法: POST方法

通知参数

MerchantID 商户的标识,标识了该交易订单的所属商家.
更多商户标识可以在控制台<获得产品支付入口>中查看.
TransferNo 此资金代付操作的唯一标识号
TransferMethod 付款方的支付来源账户
ALP    --从支付宝账户余额代付
WXP   --从微信账户余额代付
TransferAmount 代付的资金额度,人民币元为单位,如1.00元,您总应该验证此代付金额是否正确无误,避免资损.
TransferType 指示了此次代付的方式
LoginName   --通过微信号,支付宝登录账号进行代付
AccountID    --通过微信支付宝账户唯一标识进行代付,
支付宝的唯一标识是2088开头的,微信的唯一标识是28位字符串
TransferAccount 实际的收款方账户,根据TransferType参数填写.
TransferBeginTime 资金代付的开始时间
TransferEndinTime 资金代付的完成时间
TransferRealName 代付的收款方真实姓名,UTF8+URLEncode编码
TransferCustomParam 代付的自定义数据,在这个参数中保存着您的业务参数.
如果您设置了代付完成时使用HTTP联动通知,则此参数会在
HTTP联动通知回调中进行回传.
TransferTimestamp 代付通知信息的时间戳
TransferStatus 代付的状态,WAIT(等待),CANCEL(取消),SUCCESS(成功),FAILED(失败)
TransferStatusDesc 代付的状态具体描述信息,UTF8+URLEncode编码
TransferToken 代付的凭据
TransferSignMode 此资金代付通知的签名模式,支持的签名模式有如下:
MD5 --使用MD5进行简单签名
RSA_SHA256 --使用基于RSA非对称加密的SHA256签名算法,非常安全
TransferSignature 此资金代付通知的签名数据体.签名数据体是用商户的私钥对通知数据进行签名的,
只有商户对应的公钥才能验签,要获得商户公钥,请在<商户管理>页面中导出.
具体验签方法请看<验签算法>说明.

通知应答

如果已经成功处理了此通知,您应该返回HTTP状态码200和OK
如果未返回如上应答,原力支付服务会在5分钟之内以10秒一次的间隔重新发送此通知,直到通知被正确响应为止

备注

此通知用于在代付完成时候向您的其他业务系统发送通知,以便能够进一步对代付业务进行处理.
代付通知的数据分为两种格式,这取决于您在HTTP联动设置中所设置的格式.
一种是HTTP FORM表单格式(application/x-www-form-urlencoded),一种是JSON格式(application/json)

当代付成功或失败时,可能会收到多次相同TransferNo代付完成通知,所以您应该检查此通知的TransferNo是否之前已经处理过了,避免多次代付处理而导致资损. 注意在接收回调之前请确保防火墙访问放行,系统会以Referer:FORCEPOLYPAY投递回调通知

为了保证交易通知的安全性,防止其他人假冒原力支付系统向您发送代付成功的通知,
您应该通过TransferSignMode,TransferSignature对通知数据进行验签.具体验签实现方法请阅读下面<验签算法>说明.
另外您也可以启动支付服务后通过访问http://<支付服务地址端口>/transfersignpage.csp 手工输入参数进行验签,同时可以观察验签步骤.此外原力支付系统还提供了<通知验签接口> 您可以通过使用此接口来进行验签.
您也可以使用ForcePaySDK调用本地API来进行验签