这个一个阶段总结帖,结论是通过官方技术咨询+自身实际接口测试得出的结论
先说下现在测试唯一能通过能实现服务商给特约商户发放代金券的流程
第一步 发邮件进行跨商户发券申请 (当然给商户开通代金券相关产品服务,商户绑定app_id这些基础操作还是要做的)
第二步 登录服务商后台人工操作创建代金券(注:可发券商户 填写特约商户号)激活 获取 stock_id (代金券批次id)
第三步 发放代金券3种方式1.二维码(可以直接下载)2.接口调用发放 (注:使用特约商户的商户证书去发放)
暂时小结
1.如果你的需求是 服务商代制券 服务商代发放 接口无法实现
通过接口 服务商身份去调用接口帮特约商户创建代金券 激活代金券 都没问题 发放你会发现报错app_id与商户号不匹配
操蛋的是 你怎么可能让特约商户的app_id和你调用接口的服务商商户号进行绑定? 如果你不死心来社区提问 他们要么给你贴个文档 要么告诉你没搞清楚关系,你很难收到正面或有用的回复 (参考我以前的贴子和同事发帖的回复,以及社区自己搜服务商发券关键字看见的帖子),我这边接口测试得出的结论是无法实现。来张官方技术回复证明 (吐槽下支付的在线技术排队 一排就是20人以后 一等就是一天)
后面在线技术客服被我给问的都无语了 (掩面逃...)
2.如果你们的需求是 服务商代创建代金券 特约商户发 接口无法完整实现
对你没看错 就是这个梗 实现了但没完全实现 , 为什么这么说勒 经接口测试 就算给特约商户开通了跨商户发券 发券接口belong_merchant 填写的是特约商户号 创建 激活 接口依然没问题 但是发券接口依然会不负众望的报错 :批次不支持跨商户发券 经过在线技术沟通(没错我又去排了一天队)直接上图
那么我又说实现了是什么意思勒?有趣就在这里 你可以在服务商平台人工发券(填写好可发券商户号) 激活后 拿到代金券批次号 再用特约商户的证书去请求发券接口 就可以发券成功~!但是这样对于服务商来说十分不友好了 半自动化的操作 + 保存和管理大量的特约商户的证书密钥 成本太大
以上就是进一个星期瞎忙活的结果暂时总结了 . 以上仅仅是个人测试 个人通过在线技术沟通得出的结果 。如果你有不同的意见和解决方案欢迎指正.
首先还是要感谢楼主的总结,有一些细节可能描述得不对,作为服务商,商户是全权委托服务商来进行制券和发券的,问题的症结就在于使用谁的openid来发,通常是商户的公众号,因为发放代金券通常是一个活动,肯定是商户自己的公众号或者小程序,比如JSAPI和小程序支付都是有sub_appid的
但是偏偏发放代金券接口就是这么奇葩,他只能用服务商的appid来发,那么openid就必须是服务商的openid,这就扎心了,商户做活动怎么可能用服务商公众号来走oauth得到openid,这不是扯么
而服务商后台既然可以配置特约商户的公众号,我不明白为何这里不能使用特约商户自己的公众号appid和openid,这完全就是没有站在开发者和商户的角度考虑问题,因此目前这个问题基本无解,要想达到这个目标目前只能如下
1、商户H5活动走两次oauth,第一次走服务商的拿到服务商公众号的openid,第二次走商户自己的oauth得到商户自己的openid进行活动的后续
2、拿服务商的appid和openid进行发放代金券操作
3、使用商户自己的appid和openid记录会员其他操作,比如消息模板等
微信内部已经开始僵化,根本听不进去意见
只能说楼主分享自身经验的行为还是值得鼓励的,虽然他们服务商们完全不认可你的结论。
看你的贴子,你还是放弃别用微信支付了。
看你的帖子,就知道你没有登录过服务商平台
看你的帖子,就知道你不是服务商