个人免签收款系统-支付宝,直接入账到个人账号

最近研究个人支付宝,微信收款原理,

原来很简单,

就是搞个APP,监听手机支付宝,微信收款推送消息,然后提取其中的金额,来回调到服务端更新该订单状态,再回调用户端接口。

假如你想个人收款码收款。

1.你先得准备多个微信,或支付宝收款码。

2.安装监听的APP

3.然后服务端程序回调接口。

流程完成。

问题来了,如何知道哪个订单是哪个人支付的呢。

这里就要做处理了,以5分钟为一个单位,5分钟内支付的金额必须是唯一的。当然,这个单位也可以更短,可以2,3,4分钟。都可以,总之就是在这期间内,金额必须唯一。

比如,有人要支付1元,系统要检查这5分钟内,是否有人支付1元的订单,如果有,这个人,你就给他加0.01,让支付1.01元即可。支付成功后,就根据这个1.01来找到那个订单。

大致原理就是这样。

  var l = DateTime.Now;
            var pt = l.AddMinutes(-5);
            var ef = l.AddMinutes(5);
            //5分钟内支付金额不能重复
            var realcoin = mod.coin;
            while (this._pay.Exists(p => p.logid == mod.mid && p.statu == (int)EnumOrder.未支付 && p.efftime >= pt && p.meth == mod.meth && p.realcoin == realcoin))
            {
                realcoin += 0.01m;
            }
            var data = new Personal_Payinfo
            {
                keyid = StringHelper.GetKeyID(),
                logid = mid.id,
                logname = mid.logname,
                coin = mod.coin,
                meth = mod.meth,
                payno = mod.payId,
                realcoin = realcoin,
                extion = mod.extion,
                createtime = l,
                efftime = ef,
                returnUrl = mod.returnUrl,
                notifyUrl = mod.notifyUrl
            };

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值