公司在与公交系统合作时,要求开发公交代码小程序。 当然是利用了小程序的免密支付功能。
怎么做? 首先联系腾讯的BD进行咨询。 他会教你如何注册和申请,因为我们公司是服务商模式。
也就是说,我公司的微信商户账号将作为主商户,公交公司的商户账号将作为子商户。 最终申请后,这四个账户一定要区分清楚。
对公账号ID是我司作为主商户申请时使用的对公账号ID。
这里的子商户公众号ID就是公交公司商户号对应的应用。
商户编号 本公司商户编号
子商户号码:巴士公司的商户号码l
因为我们公司是主要服务商,所以我们可以在其下建立多个子商户(这里的公交公司就是一个子商户)。 如何绑定这两个商家的关系呢? 您可以到微信商户平台和服务商模式下查看。 如果您不知道,可以联系腾讯的BD。
小程序启动合同签署过程。 你可以看一下开发文档。 您可以向BD索取文件地址。 我也把地址贴在这里。

这是一个解释。 由于是公共交通小程序,小程序使用的以及后续申请扣费时使用的商户密钥属于公交公司,而不是服务提供商公司。
首先是从公交小程序跳转到签约小程序。
wx.navigateToMiniProgram({ appId:'wxbd687630cd02ce1d', path:'pages/index/index', extraData:{ appid:'wx426a3015555a46be', contract_code:'122', contract_display_account:'张三', mch_id:'1223816102', sub_mch_id:'1223816104', notify_url:'https://www.qq.com/test/papay', plan_id:'106', request_serial:'123', timestamp:1414488825, sign:'FF1A406564EE701064450CA2149E2514' }, success(res) { // 成功跳转到签约小程序 }, fail(res) { // 未成功跳转到签约小程序 } })
这里的跳转和路径是硬编码的,不应更改。 至于参数,则是从后台获取的。 在后台获取时请注意。 文档中并没有说明签名的加密类型是md5。 或者HMAC-,其实它的签名类型是md5
文档基本上都看懂了,还有一个地方,就是微信的提前还款接口。 这个界面的例子中有一个技巧。 我踩到了,这不算是我踩到的。 是我们公司的一个小前端人。 姑娘拉我踩一下,它的例子是这样的
跳转到还款小程序 var extraData = { appid:wxcbda96de0b165486, sub_appid:wxcbda96de0b165482, mch_id:1900009231, sub_mch_id:1900009232, openid:'oUpF8uMEb4qRXf22hE3X68TekukE', nonce_str:5K8264ILTKCH16CQ2502SI8ZNMTM67VS, sign_type:'HMAC-SHA256', sign:EE088059BBC9141264F8D14293AD6C4BB94CEA8C08AA98FBF93E262D445F8FF5};
然后小姐姐按了ctrl+vc| ctrl+v。 之后她又搞了半天,都无法跳转到还款小程序。 她请我帮她做这件事。 一开始我以为是我给她的。 数据有问题,试了很多次(一是怕理解有问题,二是怕签名可能有错误)。 我浪费了近一个小时才发现上面示例代码中的app-id="",这里小程序的app-id明显多了一个空格。 我真诚地想向编写微信API的人的母亲问好。
就是这样。 同时,跳转到小程序,需要在小程序的app.json文件中添加相应的配置。 别忘了,好吧