彩虹易支付对接(开发文档)

协议规则

传输方式:HTTP

数据格式:JSON

签名算法:MD5

字符编码:UTF-8

页面跳转支付

此接口可用于用户前台直接发起支付,使用form表单跳转或拼接成url跳转。

URL地址:/submit.php

请求方式:POST 或 GET(推荐POST,不容易被劫持或屏蔽)

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
商户ID pid Int 1001
支付方式 type String alipay 支付方式列表
商户订单号 out_trade_no String 20160806151343349
异步通知地址 notify_url String http://www.pay.com/notify_url.php 服务器异步通知地址
跳转通知地址 return_url String http://www.pay.com/return_url.php 页面跳转通知地址
商品名称 name String VIP会员 如超过127个字节会自动截取
商品金额 money String 1.00 单位:元,最大2位小数
业务扩展参数 param String 没有请留空 支付后原样返回
签名字符串 sign String 202cb962ac59075b964b07152d234b70 签名算法点此查看
签名类型 sign_type String MD5 默认为MD5

API接口支付

此接口可用于服务器后端发起支付请求,会返回支付二维码链接或支付跳转url。

URL地址:/mapi.php

请求方式:POST

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
商户ID pid Int 1001
支付方式 type String alipay 支付方式列表
商户订单号 out_trade_no String 20160806151343349
异步通知地址 notify_url String http://www.pay.com/notify_url.php 服务器异步通知地址
跳转通知地址 return_url String http://www.pay.com/return_url.php 页面跳转通知地址
商品名称 name String VIP会员 如超过127个字节会自动截取
商品金额 money String 1.00 单位:元,最大2位小数
用户IP地址 clientip String 192.168.1.100 用户发起支付的IP地址
设备类型 device String pc 根据当前用户浏览器的UA判断,
传入用户所使用的浏览器
或设备类型,默认为pc
设备类型列表
业务扩展参数 param String 没有请留空 支付后原样返回
签名字符串 sign String 202cb962ac59075b964b07152d234b70 签名算法点此查看
签名类型 sign_type String MD5 默认为MD5

返回结果(json):

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
返回信息 msg String 失败时返回原因
订单号 trade_no String 20160806151343349 支付订单号
支付跳转url payurl String https://mp.uuhk.cn/pay/wxpay/202010903/ 如果返回该字段,则直接跳转到该url支付
二维码链接 qrcode String weixin://wxpay/bizpayurl?pr=04IPMKM 如果返回该字段,则根据该url生成二维码
小程序跳转url urlscheme String weixin://dl/business/?ticket=xxx 如果返回该字段,则使用js跳转该url,可发起微信小程序支付

注:payurl、qrcode、urlscheme 三个参数只会返回其中一个

支付结果通知

通知类型:服务器异步通知(notify_url)、页面跳转通知(return_url)

请求方式:GET

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
商户ID pid Int 1001
易支付订单号 trade_no String 20160806151343349021 易支付订单号
商户订单号 out_trade_no String 20160806151343349 商户系统内部的订单号
支付方式 type String alipay 支付方式列表
商品名称 name String VIP会员
商品金额 money String 1.00
支付状态 trade_status String TRADE_SUCCESS 只有TRADE_SUCCESS是成功
业务扩展参数 param String
签名字符串 sign String 202cb962ac59075b964b07152d234b70 签名算法点此查看
签名类型 sign_type String MD5 默认为MD5

收到异步通知后,需返回success以表示服务器接收到了订单通知

MD5签名算法

1、将发送或接收到的所有参数按照参数名ASCII码从小到大排序(a-z),sign、sign_type、和空值不参与签名!

2、将排序后的参数拼接成URL键值对的格式,例如 a=b&c=d&e=f,参数值不要进行url编码。

3、再将拼接好的字符串与商户密钥KEY进行MD5加密得出sign签名参数,sign = md5 ( a=b&c=d&e=f + KEY ) (注意:+ 为各语言的拼接符,不是字符!),md5结果为小写。

4、具体签名与发起支付的示例代码可下载SDK查看。

支付方式列表

调用值 描述
alipay 支付宝
wxpay 微信支付
qqpay QQ钱包
bank 网银支付
jdpay 京东支付
paypal PayPal

设备类型列表

调用值 描述
pc 电脑浏览器
mobile 手机浏览器
qq 手机QQ内浏览器
wechat 微信内浏览器
alipay 支付宝客户端

[API]查询商户信息

URL地址:/api.php?act=query&pid={商户ID}&key={商户密钥}

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
操作类型 act String query 此API固定值
商户ID pid Int 1001
商户密钥 key String 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i

返回结果:

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
商户ID pid Int 1001 商户ID
商户密钥 key String(32) 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i 商户密钥
商户状态 active Int 1 1为正常,0为封禁
商户余额 money String 0.00 商户所拥有的余额
结算方式 type Int 1 1:支付宝,2:微信,3:QQ,4:银行卡
结算账号 account String admin@pay.com 结算的支付宝账号
结算姓名 username String 张三 结算的支付宝姓名
订单总数 orders Int 30 订单总数统计
今日订单 order_today Int 15 今日订单数量
昨日订单 order_lastday Int 15 昨日订单数量

[API]查询结算记录

URL地址:/api.php?act=settle&pid={商户ID}&key={商户密钥}

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
操作类型 act String settle 此API固定值
商户ID pid Int 1001
商户密钥 key String 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i

返回结果:

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
返回信息 msg String 查询结算记录成功!
结算记录 data Array 结算记录列表

[API]查询单个订单

URL地址:/api.php?act=order&pid={商户ID}&key={商户密钥}&out_trade_no={商户订单号}

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
操作类型 act String order 此API固定值
商户ID pid Int 1001
商户密钥 key String 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i
系统订单号 trade_no 选择 String 20160806151343312
商户订单号 out_trade_no 选择 String 20160806151343349

提示:系统订单号 和 商户订单号 二选一传入即可,如果都传入以系统订单号为准!

返回结果:

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
返回信息 msg String 查询订单号成功!
易支付订单号 trade_no String 2016080622555342651 易支付订单号
商户订单号 out_trade_no String 20160806151343349 商户系统内部的订单号
支付方式 type String alipay 支付方式列表
商户ID pid Int 1001 发起支付的商户ID
创建订单时间 addtime String 2016-08-06 22:55:52
完成交易时间 endtime String 2016-08-06 22:55:52
商品名称 name String VIP会员
商品金额 money String 1.00
支付状态 status Int 0 1为支付成功,0为未支付
业务扩展参数 param String 默认留空
支付者账号 buyer String 默认留空

[API]批量查询订单

URL地址:/api.php?act=orders&pid={商户ID}&key={商户密钥}

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
操作类型 act String orders 此API固定值
商户ID pid Int 1001
商户密钥 key String 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i
查询订单数量 limit Int 20 返回的订单数量,最大50
页码 page Int 1 当前查询的页码

返回结果:

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
返回信息 msg String 查询结算记录成功!
订单列表 data Array 订单列表

[API]提交订单退款

需要先在商户后台开启订单退款API接口开关,才能调用该接口发起订单退款

URL地址:/api.php?act=refund

请求方式:POST

请求参数说明:

字段名 变量名 必填 类型 示例值 描述
商户ID pid Int 1001
商户密钥 key String 89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i
易支付订单号 trade_no 特殊可选 String 20160806151343349021 易支付订单号
商户订单号 out_trade_no 特殊可选 String 20160806151343349 订单支付时传入的商户订单号,商家自定义且保证商家系统中唯一
退款金额 money String 1.50 大多数通道需要与原订单金额一致

注:trade_no、out_trade_no 不能同时为空,如果都传了以trade_no为准

返回结果:

字段名 变量名 类型 示例值 描述
返回状态码 code Int 1 1为成功,其它值为失败
返回信息 msg String 退款成功
版权声明:
1:本文仅供学习和参考,不做任何收益和价值保障,请知晓。
2:本内容转载于网络,版权归原作者所有,不拥有所有权,不承担相关法律责任。
3:本站所有资源均来源于网络,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
4:如有侵权,请联系我们1109539043#qq.com(#改为@)删除。
技术分享

Win11右键默认显示更多设置教程(站长亲测有效)

2023-12-14 10:50:58

技术分享

centos 7 修改home分区,分区合并

2024-1-1 15:32:04

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索