个人免签支付解决方案:无需签约的支付接口及多种实现方法详解

2024-12-25
来源:网络整理

什么是个人免签缴费

个人免签支付是面向个人的支付接口。一般支付接口需要申请营业执照。个人很难申请,或者不具备申请资格。他们必须与支付提供商签订合同。免签,顾名思义,不需要合同。然后还有个人免签支付的市场,就是解决个人无法轻易申请支付接口的问题。

有很多免签证选择

APP监控支付码的支付结果,然后修改页面的支付结果。第二次清算。款项先到官方支付接口的商户,由商户为您结算。微信插件可以全自动监控支付码的创建和支付流程,让关账变得轻而易举。

其实解决方案有很多种,但是上面的解决方案都有很多缺点。当然,这些解决方案仍然被很多人使用。没有其他办法,但它们确实是解决问题的一个办法。在这篇文章中,我还通过简单的技术开发,开发了第一个APP监控支付码的免签支付方式。

APP监控支付码的支付结果

整个过程很简单:

访问网址 -> 查询数据库2分钟内未支付的订单金额 -> 如果2分钟内未支付的订单金额包含与当前订单金额相同的,则需要在当前金额上加0.01元,以区分唯一性订单 -> 用户扫描二维码支付 -> 手机APP监控该订单的支付 -> 异步发送支付金额到服务器 -> 服务器修改数据库中订单金额的支付状态 - >二维码扫描页面不断轮询订单的支付状态。如果发现订单已支付,请修改页面支付结果->完成支付。

上代码

.php

该页面用于创建订单,其中$=0.01;表示创建0.01元的订单。在创建订单之前,程序会查询数据库以确定是否存在当前金额的未支付订单。若有,则需支付的金额为当前订单金额+0.01元。

为什么要这样做?由于APP监控只能监控到款金额,无法监控订单号,因此无法区分该金额是您支付的还是他人支付的。

所以在当前订单的有效期内,需要注意两件事。首先,你的程序的访问量不能太高,不允许高并发。适合小众、小规模、小流量的业务使用。短时间内人流较多、订单较多,难以准确监控支付结果。

set_table('mqpay_order')->findAll(['order_status' => 1]); // 遍历订单 $orderNoExpire = array(); for ($i = 0; $i < count($getOrderList); $i++) { // 订单时间 $order_time = json_decode(json_encode($getOrderList[$i]))->order_time; // 订单金额 $order_money = json_decode(json_encode($getOrderList[$i]))->order_money; // 获取2分钟未支付的订单 if(countTimes(time(),strtotime($order_time)) <= 2){ // 如果存在 $orderNoExpire[] = $order_money; } } // 判断是否有2分钟未支付的订单 if(count($orderNoExpire) == 0){ $needPay = $order_price; }else{ // 获取2分钟未支付的订单的最大金额+0.01 $needPay = max($orderNoExpire) + 0.01; } // 创建订单 creatOrder($order_num,$order_price,$needPay,$db); // 创建订单 function creatOrder($order_num,$order_price,$needPay,$db){ // 订单参数 $createOrder = [ 'order_num' => $order_num, 'order_price' => $order_price, 'order_money' => $needPay, ]; // 创建 $createOrderResult = $db->set_table('mqpay_order')->add($createOrder); if($createOrderResult){ // 成功 echo '

里客云科技
支付金额
¥'.$needPay.'

请识别上方赞赏码

点击其他金额输入'.$needPay.'元

输入的金额必须要完全一致

'.$order_num.'

'.$needPay.'

我们通过机器人监测本次支付
支付后会立刻显示支付结果
支付后没显示支付结果请联系人工处理
人工微信号:sansure2016

'; }else{ // 失败 echo '
里客云科技
创建订单失败!
'; } } // 计算时间戳的差值

在线赞助源码_赞赏码免签支付源码_赞赏源码码支付免签是真的吗

function countTimes($begin,$end){ $begintimes = $begin; $endtimes = $end; $timediff = abs($endtimes - $begintimes); $days = intval($timediff / 86400); $remain = $timediff % 86400; $hours = intval($remain / 3600); $remain = $remain % 3600; $mins = intval($remain / 60); $secs = $remain % 60; return $mins; } ?>

.php

用于在订单页面实时监控支付结果。每2秒检查一次数据库,获取订单的支付结果。如果2分钟后没有付款,查询将停止。

set_table('mqpay_order')->find(['order_num'=>$order_num,'order_money'=>$order_money]); // 判断支付结果 if($getOrderPayStatus){ // 支付状态 $order_status = json_decode(json_encode($getOrderPayStatus))->order_status; if($order_status == 2){ // 支付成功 $payResult = array( 'code' => 200, 'msg' => '支付成功' ); }else{ // 未支付 $payResult = array( 'code' => 202, 'msg' => '未支付' ); } }else{ // 无结果 $payResult = array( 'code' => 201, 'msg' => '未支付' ); } // 返回JSON echo json_encode($payResult,JSON_UNESCAPED_UNICODE); ?>

.php

这是一个异步回调。 APP监听软件需要配置该文件的URL以及传递的参数,将监控到的金额POST到您的服务器上,然后修改数据库的支付结果,以达到支付回调的目的。

set_table('mqpay_order')->update(['order_status'=>1,'order_money'=>$money_2],['order_status'=>2,'order_paytime'=>time(),'order_msg'=>$orderMsg]); if($updateOrderResult){ // 成功 $ret = array( 'code' => 200, 'msg' => '支付成功', 'order_num' => $order_num, 'order_money' => $money_2, 'order_msg' => $orderMsg ); }else{ // 失败 $ret = array( 'code' => 200, 'msg' => '支付失败', 'order_num' => $order_num ); } } // 返回JSON echo json_encode($ret,JSON_UNESCAPED_UNICODE); ?>

完整代码

以上三个文件为核心代码,仅用于技术分析和实现原理。完整代码涉及样式、图片、数据库操作类、数据库表SQL语句、监控APP源码和安装包。

演示

页面也很简单,是我设计的。页面简洁、美观。

演示地址:(仅开放一段时间,后续将删除)

监控APP配置

监控APP配置也相当简单。您只需将.php在线URL配置到APP即可。具体操作请看截图:

1、打开APP,选择【发送通道】,点击【 】,选择【GET请求】,输入.php所在服务器的URL,以下参数填写[=[msg]]。

2、选择【转发规则】,点击【应用】,添加转发规则,【APP包名称】选择【是】,包名称输入【com..mm】,选择的发送通道为您创建的通道在上一步中。只需从下面的模板中选择通知内容即可。

至此,APP已经基本完成配置,然后开启APP的自动启动,并添加电池优化白名单,保证APP能够始终在后台运行而不被杀死。

获取鉴赏码

为什么使用鉴赏码而不是支付码?因为支付码更容易受风险控制,所以支付码更适合面对面扫描收款,但不适合在线远程收款,因为你的每一次支付都会记录支付IP地址、地点和信息。其他信息。扫码如果数量过高,系统会判断为远程支付,很容易触发风控。鉴赏码用于网上鉴赏,比支付码相对安全。

得到自己的欣赏代码后,只需将欣赏代码的部分剪掉,替换源码中的zsm.jpg文件即可。升值码可以设置升值指引,可以将指引修改为【请点击其他金额进入】来引导用户。

源码下载

该源代码只有一个页面,没有后端。只适合个人单页部署或者研究、学习、二次开发。它不适合开箱即用。当然,如果你有一些基础知识,也是可以开箱即用的。您可以将其上传到服务器并进行修改。数据库配置,导入数据库表,配置鉴赏码,准备APP异步回调也可以用于单页收款。只要你的金额固定,就可以开箱即用。

5Yqg5b6u5L+h77yac2Fuc3VyZTIwMTbvvIjor7fmiJHllp3mna/lkpbllaHljbPlj6/ojrflj5bmupDnoIHvvIk=

(解密上述编码:...)

这里有隐藏内容,请扫描下方二维码查看

分享