[支付接口]粤收付-支付通-基础接口对接文档
统一下单【请求方式:GET或者POST均可】【如遇到问题尝试用html表单提交】
| 参数名称 | 参数含义 | 必填 | 说明 |
| fxid | 商户号 | 是 | 由粤收付提供的主账号 |
| fxordernum | 商户订单号 | 是 | 仅允许字母或者数字,不超过22个字符,不要有中文 |
| fxdesc | 交易描述 | 是 | utf-8编码 |
| fxfee | 交易金额 | 是 | 请求的金额(单位为:元) 可以用0.01元 |
| fxcurrency | 交易币种 | 否 | 默认币种为人民币-CNY |
| fxpay | 支付类型 【支付宝:alipay】【微信:weixin】【云闪付:yunshanfu】【聚合收银台:h5】【支付宝H5:alipay_h5】 | 是 | 支付类型参数(搭配参数fxextra组合使用) |
| fxextra | 拓展参数格式如下: {“fxprotocol”:”p2022111****0291″,”fxauthcode”:”28576895****0654″,”fxhtexit”:0,”fxisapp”:0,”fxsubtype”:2,”fxappid”:”wx44c0b1b8****0b68″,”fxopenid”:”o8zAl53ETtHdUpKv****Pf0zh”,”fxbuyeruid”:”20887025****0844″}fxprotocol: 签约协议号 (alipay/weixin代扣专用) fxauthcode: 付款授权码 (alipay/weixin反扫专用) fxhtexit: 托管模式退出控制 (alipay_h5/weixin_h5托管模式专用,alipay_h5/weixin_h5普通模式无效) fxisapp: 是否APP/应用类型,留空代表PC网站或者聚合支付,0代表WAP网站支付,1正数代表APP支付,-1负数代表小程序公众号或生活号支付 (alipay_h5/weixin_h5类型专用) fxsubtype: 子类型,1正数代表小程序,默认值2正数代表公众号或生活号 (fxisapp=-1负数时建议显式指定) fxappid: 微信公众号/小程序AppID (weixin 类型必传) fxopenid: 微信公众号/小程序OpenID (weixin 类型必传) fxbuyeruid: 支付宝JSAPI生活号/小程序buyerUserId (fxisapp=-1负数时必传) | 否 | 支付拓展参数: json格式字串,比如传入指定微信AppID+OpenID,或者指定APP应用类型、实时分账/代扣等等。 根据参数fxpay不同类型应用情景示例如下(参考示例,无需传入多余参数) 当fxpay=alipay,fxextra支持的用法a1.正扫或伪H5情景调用: 不需要传入fxextra (成功返回payurl可自行生成二维码)a2.反扫情景调用: fxextra应传入字串 “{\”fxauthcode\”:\”28576895****0654\”}”a3.代扣情景调用: fxextra应传入字串 “{\”fxprotocol\”:\”p2022111****0291\”}”当fxpay=alipay_h5,fxextra支持的用法b1.PC网站支付情景调用: 不需要传入fxextrab2.WAP网站支付情景调用: fxextra应传入字串 “{\”fxisapp\”:0}”b3.APP支付情景调用: fxextra应传入字串 “{\”fxisapp\”:1}”b4.小程序支付情景调用: fxextra应传入字串 “{\”fxisapp\”:-1,\”fxsubtype\”:1,\”fxbuyeruid\”:\”20887025****0844\”}”b5.生活号支付情景调用: fxextra应传入字串 “{\”fxisapp\”:-1,\”fxsubtype\”:2,\”fxbuyeruid\”:\”20887025****0844\”}”当fxpay=weixin,fxextra支持的用法c1.公众号/伪H5情景调用: fxextra应传入字串 “{\”fxsubtype\”:2,\”fxappid\”:\”wx44c0b1b7****0b00\”,\”fxopenid\”:\”oQ5V55dqfL0nWR5y********xcK4\”}”c2.小程序情景调用: fxextra应传入字串 “{\”fxsubtype\”:1,\”fxappid\”:\”wx44c0b1b7****0b00\”,\”fxopenid\”:\”oQ5V55dqfL0nWR5y********xcK4\”}”c3.反扫情景调用: fxextra应传入字串 “{\”fxauthcode\”:\”1338083412****5845\”}”c4.代扣情景调用: fxextra应传入字串 “{\”fxprotocol\”:\”p2022111****0291\”}”当fxpay=yunshanfu,fxextra支持的用法d1.正扫或伪H5情景调用: 不需要传入fxextra,或者选择性传入fxrisk风控组字串 “{\”fxmemberid\”:\”13100008888\”}”d2.反扫情景调用: fxextra应传入字串 “{\”fxauthcode\”:\”6224680357****1800\”}”当fxpay=h5,fxextra支持的用法e1.聚合版扫码情景调用: fxextra应传入字串 “{\”fxsubtype\”:1}” (成功返回payurl需自行生成二维码)e2.WEB收银台情景调用: 不传入fxextra,或fxextra应传入字串 “{\”fxsubtype\”:2}”其它情景用法请咨询管理员。 |
| fxbackurl | 同步跳转地址 | 是 | 支付成功之后前端跳转的地址,不参与签名。(目前仅支持直付通alipay_h5网站支付/聚合托管H5,其它类型暂不支持,但由于此参数必传,其它类型可以随便传入比如: https://127.0.0.1/ 合法网址格式即可) |
| fxnotifyurl | 异步回调地址 | 是 | 后端接收支付结果的回调地址,此url必须外网可访问,不能带参数。总共有两种回调事件,由fxaction回调参数值区分,分别是payment(用户付款“成功/失败”)、refund(商家退款“成功/失败”),商家需持续监听回调地址事件,并记录每个订单变化(比如收款成功之后,触发退款)。 |
| fxnotifystyle | 异步数据类型 | 否 | 异步返回数据的类型,默认为1-返回数据为表单格式(Content-Type: multipart/form-data),2-返回数据为json字符串数据。 |
| fxattach | 附加信息 | 否 | 原样返回,utf-8编码 |
| fxuserid | 指定子商户号 | 否 | 默认为空-轮询商户,支持指定子商户号(放弃轮询),此项用于H5托管模式/快捷接口。 |
| fxpzid | 指定主商户号 | 否 | 默认为空-多套主账号轮询时需要指定子商户号必须传入(结合参数fxuserid组合使用),此项用于H5托管模式/快捷接口。 |
| fxbankcode | 银行代码 | 否 | 用于网银直连模式,指定银行编号,参考银行附录,仅限网银通道可用。 |
| fxrisk | {“fxmemberid”:”13100008888″,”fxip”:”127.0.0.1″,”fxbaseStation”:”460001039217563″,”fxlongitude”:”-121.213″,”fxlatitude”:”+37.12″} | 否 | 风控参数: json格式字串,比如终端/网站会员ID、支付IP、基站地址、经纬度等,详情请咨询管理员。 |
| fxsign | 签名规则【md5: 商户号+商户订单号+交易金额+异步回调地址+商户秘钥】 | 是 | 通过md5签名算法计算得出签名字串。 |
支付下单标准示例(请用脚本语言模拟如下方式提交参数)
| <form id=”Form1″ name=”Form1″ method=”post” action=”https://182.61.11.3/Gateway”> <input type=”hidden” name=”fxid” value=’6666000136901234’/> <input type=”hidden” name=”fxordernum” value=’1531392180374’/> <input type=”hidden” name=”fxdesc” value=’交易描述’/> <input type=”hidden” name=”fxfee” value=’10.00’/> <input type=”hidden” name=”fxpay” value=’alipay’/> <input type=”hidden” name=”fxnotifyurl” value=’http://localhost:8001/notifyUrl’/> <input type=”hidden” name=”fxbackurl” value=’http://localhost:8001/backUrl’/> <input type=”hidden” name=”fxattach” value=’Pay’/> <input type=”hidden” name=”fxsign” value=’3990af9dbffc4e0ac6d307aee9b034d8’/></form> |
统一下单返回【数据格式:json】
| 参数名称 | 参数含义 | 必填 | 说明 |
| status | 状态 | 是 | 状态【1代表成功】【0代表错误】 |
| payurl | 支付链接 | 否 | 成功返回H5支付链接,或正扫二维码链接(可自行生成二维码,如有申请H5插件的商户可直接跳转访问H5支付链接唤起钱包APP) |
| payinfo | 支付参数 | 否 | 成功返回SDK支付参数,配合原生SDK唤起支付(反扫仅返回字符串“none”,收款结果异步为准) |
| error | 错误信息 | 否 | 错误返回描述信息utf-8编码字符 |
统一下单返回示例
| { “status”:1, “payurl”:”https://182.61.11.3/z/6e0bd96cde2e404b”} |
同步(GET)/ 异步(POST)返回参数
【无论成功失败均会返回数据,根据订单状态为准,可能存在重复推送,需要程序自行去重,可以异步通知为准。数据格式:默认-表单格式 Content-Type: multipart/form-data(java请用request.getInputStream获取参数)】
| 参数名称 | 参数含义 | 必填 | 说明 |
| fxstatus | 订单状态 | 是 | 4 退款成功,1 支付成功,0 等待支付,-1 交易取消/或者失败,-2 支付超时,-3 尝试退款,-4 退款失败 |
| fxid | 商户号 | 是 | 由粤收付提供的主账号 |
| fxordernum | 商户订单号 | 是 | 商户传入的订单号 |
| fxpreuserid | 渠道商户号 | 是 | 第三方收款商户号 |
| fxpreordernum | 渠道订单号 | 是 | 由合作第三方生成的订单号 |
| fxmemberid | 渠道用户号 | 是 | 第三方绑定用户号 (银联快捷交易专用) |
| fxbankordernum | 通道订单号 | 是 | 比如银联/微信支付/支付宝交易订单号 |
| fxdesc | 交易描述 | 是 | utf-8编码 |
| fxfee | 交易金额 | 是 | 收款金额(单位:元) |
| fxcurrency | 交易币种 | 是 | 默认币种为人民币-CNY |
| fxtime | 支付时间 | 是 | 支付成功的时间,unix时间戳。 |
| fxattach | 附加信息 | 否 | 原样返回,utf-8编码 |
| fxsign | 验签规则【md5: 订单状态+商户号+商户订单号+商户秘钥】 | 是 | 通过md5签名算法计算得出签名字串。 |
| error | 错误信息 | 否 | 取消或者失败状态下才返回描述信息utf-8编码字符 |
【商户接收推送之后,必须响应HTTP状态代码200,并且固定输出字串“success”代表成功处理回调】
温馨提醒: 建议收到回调推送支付成功,再次调用“订单查询”确认结果。另外异步回调推送可能因为三方或者网络原因推送失败,为了防止推送掉单,建议商户自行实现定时查询任务程序,比如调用统一下单之后超过5分钟没有收到回调,主动利用同步模式fxsync=1调用订单查询接口确认结果。
关于对账: 定期登录官方后台完成对账。
订单查询/订单退款【提交参数GET或者POST均可】
| 参数名称 | 参数含义 | 必填 | 说明 |
| fxid | 商户号 | 是 | 由粤收付提供的主账号 |
| fxordernum | 商户订单号 | 是 | 仅允许字母或者数字,不超过22个字符,不要有中文 |
| fxaction | 执行指令 | 是 | 指令支持【orderquery】【orderrefund】 |
| fxsync | 同步订单 设置-1 默认-0 | 否 | 结合查询【orderquery】指令使用,目的用于主动同步三方订单数据防止支付掉单 (轻意不要使用,回调超时再用) |
| fxsign | 签名规则【md5: 商户号+商户订单号+执行指令+商户秘钥】 | 是 | 通过md5签名算法计算得出签名字串。 |
订单查询/订单退款返回【数据格式:json】
| 参数名称 | 参数含义 | 必填 | 说明 |
| fxstatus | 订单状态 | 是 | 4 退款成功,1 支付成功,0 等待支付,-1 交易取消/或者失败,-2 支付超时,-3 尝试退款,-4 退款失败【执行退款“orderrefund”指令返回“-3”时以异步通知为准】 |
| fxid | 商户号 | 否 | 由粤收付提供的主账号 |
| fxordernum | 商户订单号 | 否 | 平台返回商户提交的订单号 |
| fxpreuserid | 第三方商户号 | 否 | 第三方收款商户号 |
| fxpreordernum | 第三方订单号 | 否 | 由合作第三方生成的订单号 |
| fxbankordernum | 通道订单号 | 否 | 比如银联/微信支付/支付宝交易订单号 |
| fxdesc | 交易描述 | 否 | utf-8编码 |
| fxfee | 交易金额 | 否 | 收款金额(单位:元) |
| fxcurrency | 交易币种 | 否 | 默认币种为人民币-CNY |
| fxtime | 支付时间 | 否 | 支付成功的时间,unix时间戳。 |
| fxattach | 附加信息 | 否 | 原样返回,utf-8编码 |
| fxsign | 验签规则【md5: 订单状态+商户号+商户订单号+商户秘钥】 | 否 | 通过md5签名算法计算得出签名字串。 |
| error | 错误信息 | 否 | 错误返回描述信息utf-8编码字符(此项存在,代表调用发生错误) |
银行附录
| 银行名称 | 银行编号 |
| 中国银行 | BOC |
| 中国工商银行 | ICBC |
| 中国建设银行 | CCB |
| 中国农业银行 | ABC |
| 中国邮政银行 | PSBC |
| 交通银行 | BCM |
| 招商银行 | CMB |
| 光大银行 | CEB |
| 兴业银行 | CIB |
| 华夏银行 | HXB |
| 广发银行 | GDB |
| 浦发银行 | SPDB |
| 平安银行 | SZPAB |
| 中国民生银行 | CMBC |
