Jason

I'm not only a programmer, but a gentleman

  • 主页
  • 防撤回

Jason

I'm not only a programmer, but a gentleman

  • 主页
  • 防撤回

个人开发者使用支付宝接口

2019-06-26

起因

项目快要上线了, 可爸爸跟我说他的公司马上就要注销了. 询问多次支付宝客服 “企业注销后, 和企业绑定的支付宝账户是否还能正常使用?” 都说不太确定, 并且建议我重新注册主体.

前几天网上搜了 “个人支付平台” , 第一个结果里看了下, 觉得费率还行.
然后注册成为会员的时候 要我先充值100元, 我想都没想就交了. 因为比起找一块办公地注册公司, 一百块简直是不要钱.

结果第二天醒来, 收到一条短信, 说 “您的商家资料已审核通过, 签约的当面付基础版收款已开通”

我靠激动的我, 没想到这个平台帮我注册成了支付宝的个体工商户.

骚操作

我去我的支付宝商家资料里看了下, 发现我有个店铺招牌, 是街边拍的面包店, 经营项目是文具办公用品.

网上搜了下, 也发现了类似教程: 网上随便找个招牌就能申请成为非认证的个人商家

支付宝的个人商家认证分为两种, 有营业执照的和没营业执照的. 没营业执照的可以用当面付基础款(单笔交易额小于1000, 单日小于5万). 有执照的当面付不限额, 还能用手机App支付和手机电脑网页支付的sdk.

然后这个当面付是什么应用场景呢, 就是扫码付, 扫店家提供的二维码或者是店家的扫码枪扫你的.

但这个在移动端用就会很麻烦啊. 没事, 二维码也就是一个url, 只要我的支付宝能访问这个url就能成功进入付款界面

比如我在Chrome里打开 https://qr.alipay.com/bax06025nqfysvv8nhp820ff (这就是二维码对应的url), Chrome能直接帮我跳转到支付宝进行支付

本地化

后来我在安卓上集成的时候 也就是 新建一个WebView, 让他加载上面那种链接, 发现他会报一个错: ERR_UNKNOWN_URL_SCHEME alipays://platformapi/startApp?xxxxx

发现是我这个 WebView 对 alipays:// 这个协议不知道该干嘛.

解决之后发现这里打开网页很慢, 主要是首次访问, 又要下载又要渲染, 加载完了就跳转到支付宝了, 好浪费哦, 可不可以直接跳到支付宝呢.

我尝试直接把 https:// 替换为 alipays:// 发现不行.
我就想, 一定是某段js把这个url转变成了 alipays:// 的形式, 于是对着webpack混淆过的5千行js分析了半个小时, 终于发现, 在network里有条标红了的请求……

我照着它请求的格式自己生成url, 格式是这样的: alipays://platformapi/startapp?saId=10000007&qrcode=" + 二维码url

高高兴兴的测试了下, 发现速度飞快, 跟之前用支付宝提供的只有企业用户能用的手机App支付sdk支付速度一样快, 很开心, 特此记录分享

最后在写博客的时候发现, 在最开始报 ERR_UNKNOWN_URL_SCHEME 的时候, 那个url可以直接拿来用…

记录微信的屏幕消息
用Terminal快速设置代理
© 2022 Jason 浙ICP备17036515号-2
Hexo Theme Yilia by Litten