发起付款接口


有2种方法发起支付:1.跳转到我们支付页;2.获取json支付页信息,自定义支付页

跳转支付页接口URL:
http://www.mafupay.cn/index/pay/make
传参方式:Post

使用方法:用表单post的方式,post参数并跳转到此网址,显示我们的支付页。


获取支付json数据接口URL:
http://www.mafupay.cn/index/pay/make
传参方式:Post

说明:用curl的post方式传参数,并直接获取json返回值,显示在您自定义的支付页上。


请求参数:
# 参数名 含义 类型 说明
1 uid 商户uid string(10) 必填。您的商户唯一标识,注册后在设置里获得。
2 money 价格 string(10) 必填。单位:元。精确小数点后2位
3 pay_way 支付渠道 string(1) 必填。1:支付宝;2:微信支付
4 format 支付类型 string(1) 必填。1:json返回 推荐;2:网页支付
4 notify_url 通知回调网址 string(255) 必填。用户支付成功后,我们服务器会主动发送一个post消息到这个网址。由您自定义。不要urlencode。例:http://www .aaa.com/qpay_notify
5 return_url 跳转网址 string(255) 必填。用户支付成功后,我们会让用户浏览器自动跳转到这个网址。由您自定义。不要urlencode。例:http://www.aaa .com/qpay_return
6 order_id 商户自定义订单号 string(50) 必填。我们会据此判别是同一笔订单还是新订单。我们回调时,会带上这个参数。例:201710192541
7 way_id 收款账号ID string(100) 必填。随机填0,指定收款账号就填您的后台收款账号ID
8 goodsname 商户自定义商品名称 string(100) 选填。我们会显示在您后台的订单列表中,方便后台对账。强烈建议填写。
9 remark 备注 string(100) 选填。我们会显示在您后台的订单列表中,方便后台对账。强烈建议填写。
10 key 新秘钥 string(32) 必填。把使用到的所有参数按参数名字母升序排序(ascii码正序),连后台给你的旧key密钥一起(key放最后,这里的key是后台的密钥),把参数值拼接在一起(空参数不参与签名)。做md5-32位加密,取字符串小写。得到新的key。网址类型的参数值不要urlencode。

key的计算获取:如用到了所有参数,就按这个顺序拼接:format=format&goodsname=goodsname&money=money& notify_url=notify_url&order_id=order_id&pay_way=pay_way&remark=remark&return_url=return_url&uid=uid&way_id=way_id&key=key(这里的key是后台给你的密钥)

注意:Token在安全上非常重要,一定不要显示在任何网页代码、网址参数中。只可以放在服务端。计算key时,先在服务端计算好,把计算出来的key传出来。严禁在客户端计算key,严禁在客户端存储Token。

Json请求的返回值:
{
   //提示给用户的文字信息,会根据不同场景,展示不同内容
   "msg":"付款即时到账 未到账可联系我们",
   "data":{
	   //二维码信息,如果没返回,说明存在错误,参考msg的信息
	   "qrcode":"HTTPS://QR.ALIPAY.COM/FKX08406GFWYYSF0YRNC10",
	   //支付渠道:1-支付宝;2-微信
	   "pay_way":"1",
	   //显示给用户的订单金额(一定要把这个价格显示在支付页上,而不是订单金额)
	   "realprice":0.05,
	   //订单过期时间
	   "order_expire_time":180
   },
   //code 0成功 500失败。
   "code":0,
   //判断支付成功后,要同步跳转的URL
   "url":"https://www.mafupay.cn/"
}
						   

付款成功回调通知


用户付款成功后,我们会向您在发起付款接口传入的notify_url网址发送通知。您的服务器只要返回小写字符串“success”(不包括引号),就表示回调已收到。如果返回不是success,我们会再尝试回调3次,每次间隔1分钟。

传参方式:Post
参数内容:
# 参数名 含义 类型 说明
1 orderno 平台生成的订单ID号 string 一定存在。是此订单在本服务器上的唯一编号
2 order_id 您的自定义订单号 string 一定存在。是您在发起付款接口传入的您的自定义订单号
3 money 订单定价 float 一定存在。是您在发起付款接口传入的订单价格
4 real_money 实际支付金额 float 一定存在。表示用户实际支付的金额。一般会和price值一致,如果同时存在多个用户支付同一金额,就会和price存在一定差额,差额一般在1-2分钱上下,越多人同时付款,差额越大。
5 pay_way 您的支付方式 string(1) 如果您在发起付款类型 1支付宝 2微信。
6 account_id 您在平台的收款账号id string(32) 一定存在。
7 product_id 您在平台的产品id string(32) 一定存在。
8 uid 您的商户ID string(32) 一定存在。
+ goodsname 商品名称 string(32) 一定存在。是您在发起付款接口传入的商品名称
10 remark 备注 string(32) 一定存在。是您在发起付款接口传入的备注
11 key 密钥 string(32) 一定存在。我们把使用到的所有参数,连您的Token一起,按参数名字母升序排序。把参数值拼接在一起。做md5-32位加密,取字符串小写。得到key。您需要在您的服务端按照同样的算法,自己验证此key是否正确。只在正确时,执行您自己逻辑中支付成功代码。

key的拼接顺序:如用到了所有参数,就按这个顺序拼接:account_id=account_id&goodsname=goodsname&money=money&order_id=order_id&orderno=orderno&pay_way=pay_way&product_id=product_id&real_money=real_money&remark=remark&uid=uid&key=key

付款成功自动跳转


咨询热线:
400-4800-6000
在线客服:
毛经理
李经理
毛经理:
李经理: