开发文档

助您快速集成至网站收款

测试帐号

PID:20220715225121
PKEY:3Tu7T8ngub52eZ4qPvvsaUuJLKR3Xlwn

说明:

1、测试金额应为小额,建议单笔测试交易1元以内;
2、正向测试交易完成后,应当日完成对应反向交易(退款);
3、7支付平台不提供事后人工退款服务;

统一下单(跳转收银台)

请求URL
https://7-pay.cn/pay.php
请求方法
POST/GET
请求参数
参数名称类型是否必填描述范例
body商品名称String商品名称不超过100字iphonexs max
fee订单金额String保留两位小数5.67
pay_type付款方式String支付宝:alipay 微信支付:wxpay,如果不填则默认支付宝alipay
no订单编号Num每个商品不可重复201911914837526544601
notify_url异步通知页面String交易信息回调页面http://www.aaa.com/bbb.php
pid商户唯一标识String一串字母数字组合201901151314084206659771
remark附加内容String会通过notify_url原样返回金色 256G
return_url跳转页面String交易完成后浏览器跳转http://www.aaa.com/ccc.php
sign签名(参考本页签名算法)String用于验证信息正确性,采用md5加密28f9583617d9caf66834292b6ab1cc89

用法举例

https://7-pay.cn/pay.php?body=iphone xs Max 一台&fee=0.03&no=201911914837526544601&notify_url=http://www.aaa.com/notify_url.php&pid=201901151314084206659771&remark=金色 256G&return_url=http://www.baidu.com&sign=28f9583617d9caf66834292b6ab1cc89

生成收款链接工具


成功返回
直接跳转到付款页面
说明:该页面为收银台,直接访问这个url即可进行付款
失败返回
{"code":"error","msg":"具体的错误信息"}

统一下单(API)

请求URL
https://7-pay.cn/creat.php
请求方法
POST/GET
请求参数
参数名称类型是否必填描述范例
body商品名称String商品名称不超过100字iphonexs max
fee订单金额String保留两位小数5.67
pay_type付款方式String支付宝:alipay 微信支付:wxpay,如果不填则默认支付宝alipay
no订单编号Num每个商品不可重复201911914837526544601
notify_url异步通知页面String交易信息回调页面http://www.aaa.com/bbb.php
pid商户唯一标识String一串字母数字组合201901151314084206659771
remark附加内容String会通过notify_url原样返回金色 256G
sign签名(参考本页签名算法)String用于验证信息正确性,采用md5加密28f9583617d9caf66834292b6ab1cc89

用法举例

https://7-pay.cn/creat.php?body=iphone xs Max 一台&fee=0.03&no=201911914837526544601&notify_url=http://www.aaa.com/notify_url.php&pid=201901151314084206659771&remark=金色 256G&sign=28f9583617d9caf66834292b6ab1cc89

生成收款链接工具


成功返回
{"code":"success","url":"https://qr.alipay.com/bax03255spngf2oj66ll55d8","img":"https://v2.7-pay.cn/qrcode.php?url=https://qr.alipay.com/bax03255spngf2oj66ll55d8"}
说明:url为付款网址,img为付款二维码图片地址,在电脑端请使用付款二维码让用户扫码,在手机端可以直接访问该url使用支付宝/微信APP付款
失败返回
{"code":"error","msg":"具体的错误信息"}

发起退款

请求URL
https://7-pay.cn/refund.php
请求方法
POST/GET
请求参数
参数名称类型是否必填描述范例
no订单编号Num每个商品不可重复201911914837526544601
pid商户唯一标识String一串字母数字组合201901151314084206659771
sign签名(参考本页签名算法)String用于验证信息正确性,采用md5加密28f9583617d9caf66834292b6ab1cc89

用法举例

https://7-pay.cn/refund.php?no=201911914837526544601&pid=201901151314084206659771&sign=28f9583617d9caf66834292b6ab1cc89

说明:仅支持全额退款


成功返回
{"code":"success","msg":"已退款"}
失败返回
{"code":"error","msg":"具体的错误信息"}

查询订单状态

请求URL
https://7-pay.cn/query.php
请求方法
POST/GET
请求参数
参数名称类型是否必填描述范例
no订单编号Num每个商品不可重复201911914837526544601
pid商户唯一标识String一串字母数字组合201901151314084206659771
sign签名(参考本页签名算法)String用于验证信息正确性,采用md5加密28f9583617d9caf66834292b6ab1cc89

用法举例

https://7-pay.cn/query.php?no=201911914837526544601&pid=201901151314084206659771&sign=28f9583617d9caf66834292b6ab1cc89


成功返回

已付款:{"code":"success","msg":"已付款","state":"1","title":"账户充值1.00元","money":"1","no":"201901191319214681062940","tradeno":"2019011922001418111011335551","paytype":"alipay","remark":"","time":"2019-01-19 14:43:42","ip":"116.255.166.8","add":"河南省郑州市"}

未付款:{"code":"error","msg":"未付款","state":"0","title":"账户充值1.00元","money":"1","no":"201901191319214681062940","tradeno":"","paytype":"alipay","remark":"","time":"2019-01-19 14:43:42","ip":"116.255.166.8","add":"河南省郑州市"}

参数说明:state:付款状态(0:未付款,1:已付款) / title:订单名称 / money:订单金额 / no:商户订单号 / tradeno:支付宝交易号 / paytype:支付方式 / remark:订单备注 / time:订单时间 / ip:支付者IP地址 / add:支付者地域


失败返回
{"code":"error","msg":"具体的错误信息"}

付款后回调信息验证

请求URL
自己设置的回调URL(notify_url)
请求方法
POST(支付成功后自动向您设置的回调URL发送通知)
请求参数

以json的形式发送

例如:{"title":"iphone xs max","paytype":"alipay","money":"0.50","no":"201901191324552185692680","tradeno":"2019011922001418111011411195","remark":"金色 245G","time":"2019-01-19 13:24:57","sign":"ef6e3c5c6ff45018e8c82fd66fb056dc"}

参数名称类型描述范例
title商品名称String商品名称不超过100字iphone
money订单金额String保留两位小数5.67
no订单编号Num由商户自己生成201901191324552185692680
tradeno交易号String由支付宝、微信生成2019011922001418111011411195
remark附加内容String会通过notify_url原样返回金色 256G
time订单时间String会通过notify_url原样返回2019-12-12 12:12:12
paytype支付方式String包括支付宝、微信、网银等alipay
sign签名(参考本页签名算法)String用于验证接受信息的正确性ef6e3c5c6ff45018e8c82fd66fb056dc

如何验证
请根据签名算法,验证自己生成的签名与参数中传入的签名是否一致,如果一致则说明是由官方向您发送的真实信息
注意事项

1.收到回调信息后请返回“success”,否则程序将判定您的回调地址未正确通知到。

2.同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。

3.推荐的做法是,当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。

4.特别提醒:商户系统对于支付结果通知的内容一定要做签名验证,并校验返回的订单金额是否与商户侧的订单金额一致,防止数据泄漏导致出现“假通知”,造成资金损失。

签名算法

第一步,设所有发送或者接收到的数据为集合M,将集合M内参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA,空值不传递,不参与签名组串

特别注意以下重要规则:

◆ 参数名ASCII码从小到大排序(字典序);

◆ 参数名区分大小写;

◆ 验证调用返回或微信主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。

◆ 微信接口可能增加字段,验证签名时必须支持增加的扩展字段

第二步,在stringA最后拼接上PKEY得到Sign字符串,并对Sign进行MD5运算,再将得到的字符串所有字符转换为小写,得到sign值signValue。

◆ PKEY设置路径:会员中心->收款设置->API安全->PKEY

◆ 签名算法在demo中有示例请参考

◆ 以PHP为例,生成统一下单的签名方法为:

$sign=strtolower(md5("body=iphone&fee=8000&no=20180304928349¬ify_url=http://www.baidu.com&pay_type=alipay&pid=123123&remark=456456&return_url=http://www.baidu.com&key=xxxxxxxxxxxxxxx"))

◆ 以PHP为例,生成回调信息的签名方法为:

$sign=strtolower(md5("money=5.67&no=2019071247120848&paytype=alipay&remark=金色 256G&time=2019-12-12 12:12:12&title=iphonexs max&tradeno=201992713097123790&key=xxxxxxxxxxxxxx"))

SDK/DEMO下载

ASP版:下载

PHP版:下载

JAVA版:下载

有问题 ? 联系我们!

若您遇到产品使用问题,可随时与我们联系。工作时间:工作日 早9:00—晚22:00

客服QQ:450245869 客服微信:shanling1706 QQ交流群:839612737