评论

新版交易组件接入的指引与Q&A(本文不在更新,看文章内新地址)

如有对接入流程有疑问可在社区发帖咨询或留言回复说明问题。注:跟帖回复不描述清楚详细问题不回复

本文不在更新,请看新版自定义交易组件接入指引

看帖不点赞,bug千千万

需要先申请开通“交易组件场景专用商户号”才可以完成新版交易组件场景接入(申请场景经营商户号这是必要条件),进行接入时一定要按照文档流程顺序进行接入,不要新旧接口混合调用,否则无法正常跑通完整流程,切记!切记!切记!

先配个图证明新版接入已完成

有新问题可以留言,有准确答案(方案)后补充更新

一、升级版自定义交易组件接入说明

1、组件介绍

若商家此前已经完成视频号接入小程序,在小程序中调用升级版自定义交易组件组件后,可在保留原有的界面、功能及交易链路的情况下接入微信视频号场景。通过调用商品上传、订单生成、状态同步等接口,实现在视频号场景中交易资金流、售后、交易纠纷、客服等能力的标准化。

2、功能特点

  1. 可在视频号场景实现商品展示和带货等功能
  2. 未来可支持更多直播营销玩法(券、 秒杀、预售等)
  3. 支持小程序客服组件,商家能更方便收到用户的客服咨询
  4. 订单中心显示更完善的订单信息,用户可自行查看订单状态
  5. 支持用户在视频号订单中心继续付款、发起售后

3、上线案例

  • 升级版自定义交易组件为商户提供保障用户体验的直播电商全链路能力:
  1. 可以使用微信支付商户号,资金结算更规范。
  2. 小程序和视频号的订单进行了双向打通,用户可以任选在小程序或视频号订单中心处理订单,例如重新发起支付、确认收货等,大大提升用户体验。
  3. 通过打通小程序客服组件,增强了商家处理商品咨询的能力。

4、接入流程及官方文档

注意:整个接入流程需要15-30个工作日不等,建议提前准备商品的品牌、资质、类目信息,与开发调试并行,避免延误直播带货计划。
详情见:接入视频号指引

5、关键流程逻辑

  • 注意“橙色”为新加入部分:

二、接入过程中常见问题

有新问题可以留言,有准确答案(方案)后补充更新

Q1:新版交易组件需要重新申请商户号吗?是否可以使用原有商户号?

A1:不可以,新版交易组件必须要申请开通场景专用商户号

Q2:新版场景专用商户号费率是多少,是否有优惠,结算周期是多久?

A2:商户号费率为0.6%,无费率优惠,结算周期为7+7日,即用户收货后7天后结算。

Q3:申请新商户号时,最后一步签约遇到“微信实名信息与管理员信息不一致”是什么原因?

A3:申请新的场景专用商户号时,“超级管理员”这一项不支持修改,默认为小程序“超级管理员”实名信息,如需修改,需要为该用户前往成员管理为小程序绑定超级管理员。

Q4:申请新的商户号时,为什么不能修改主体信息?

A4:“当前主体”这一项不支持修改,因为商户号主体必须和该小程序注册主体保持一致。

Q5:通过新版自定义交易组件申请的场景专用商户号是否对跨境类小程序(自助报关)有影响?

A5:会,二级商户当前暂不支持自助清关接口调用,留意后续更新通知

Q6:自定义交易组件“升级版”跟升级前的自定义交易组件有什么区别,哪些接口需要升级?

A6:

  1. 新支付接口,必须走新商户号。
  2. 取消订单, 小程序(小程序内以及发现-小程序我的订单)和视频号双向可取消,之前只可以在小程序上取消,然后同步给视频号状态。
  3. 申请退款,小程序和视频号双向可申请退款。
  4. 申请退货退款,小程序和视频号双向可申请退货退款,之前只有小程序上操作。
  5. 未付款订单,小程序和视频号 可在各自订单中心重新支付,同步状态。
  6. 确认收货,小程序和视频号双向可确认收货。
  7. 同步发货状态接口更新。

Q7:自定义交易组件验收流程走完后, 在MP后台点击完成依旧提示"检测到你未完成此项步骤, 请确认后重试"是什么原因?

A7:需要通过调用新接口进行验收才可以通过。

Q8:调用自定义交易组件创建售后接口ecaftersale/add时报47001错误{“errcode”:47001,“errmsg”:"data format error "}

A8:请检查“product_info”字段,注意对应类型为“object”。

Q9:调用自定义交易组件创建售后接口ecaftersale/add时报错2747002,参数错误{“errcode”:2747002,“errmsg”:"参数错误 "}

A9:1.请检查“orderamt”参数,传参金额应不含邮费。
2.新旧接口不可混合调用,新接口不支持对旧接口生成的订单创建售后。
3.一个商品仅可以有一笔在流程的售后单,已创建或售后完结也会报次错误。

Q10:调用自定义交易组件“同意退货”接口ecaftersale/acceptreturn时报错“同意退货失败没有默认退货地址,需要在接口中传入” {“errcode”:9700210,“errmsg”:“errmsg” =>”同意退货失败没有默认退货地址,需要在接口中传入"}

A10:需要调用“更新商家信息”接口,补充默认退货地址

Q11:调用自定义交易组件“添加商品”接口shop/spu/add时报错“该账号客服方式必须包含微信客服/小程序客服” {“errcode”:1040042,“errmsg”:"该账号客服方式必须包含微信客服/小程序客服”}

A11:需要在MP后台配置微信客服/小程序客服后,然后通过“更新商家信息”接口更新商家信息
调用“获取商家信息”接口应返回一下内容才为成功,“service_agent_type”字段需要同时包含0,1,2三个值

Q12:调用自定义交易组件“创建订单”接口shop/order/add时报错“不支持的发货方式” {“errcode”:1010036,“errmsg”:"不支持的发货方式“}

A12:视频号场景当前只支持“正常快递”方式,其他请留意后续更新。

Q13:自定义交易组件“创建售后单”接口中“refund_reason_type”字段 定义见枚举值定义 “emAfterSalesReason ”,“emAfterSalesReason”对应枚举值是什么?

A13:INCORRECT_SELECTION = 1; // 拍错/多拍
NO_LONGER_WANT = 2; // 不想要了
NO_EXPRESS_INFO = 3; // 无快递信息
EMPTY_PACKAGE = 4; // 包裹为空
REJECT_RECEIVE_PACKAGE = 5; // 已拒签包裹
NOT_DELIVERED_TOO_LONG = 6; // 快递长时间未送达
NOT_MATCH_PRODUCT_DESC = 7; // 与商品描述不符
QUALITY_ISSUE = 8; // 质量问题
SEND_WRONG_GOODS = 9; // 卖家发错货
THREE_NO_PRODUCT = 10; // 三无产品
FAKE_PRODUCT = 11; // 假冒产品
OTHERS = 12; // 其它

Q14:自定义交易组件“获取售后单详情”接口中“status”字段 定义见枚举值定义 “AfterSalesState ”,“AfterSalesState”对应枚举值是什么?

A14:AFTERSALESTATUS_INVALID = 0;
USER_CANCELD = 1; // 用户取消申请
MERCHANT_PROCESSING = 2; // 商家受理中
MERCHANT_REJECT_REFUND = 4; // 商家拒绝退款
MERCHANT_REJECT_RETURN = 5; // 商家拒绝退货退款
USER_WAIT_RETURN = 6; // 待买家退货
RETURN_CLOSED = 7; // 退货退款关闭
MERCHANT_WAIT_RECEIPT = 8; // 待商家收货
MERCHANT_OVERDUE_REFUND = 12; // 商家逾期未退款
MERCHANT_REFUND_SUCCESS = 13; // 退款完成
MERCHANT_RETURN_SUCCESS = 14; // 退货退款完成
PLATFORM_REFUNDING = 15; // 平台退款中
PLATFORM_REFUND_FAIL = 16; // 平台退款失败
USER_WAIT_CONFIRM = 17; // 待用户确认
MERCHANT_REFUND_RETRY_FAIL = 18; // 商家打款失败,客服关闭售后
MERCHANT_FAIL = 19; // 售后关闭

Q15:自定义交易组件申请视频号专用商户号后,唤起支付报错: “商户号该产品权限未开通”

A15:需要先调用“生成订单”接口,然后调用“生成支付参数”接口获取调取支付所需参数,不要调用微信支付统一下单接口获取调用支付参数

Q16:调用自定义交易组件“同意退款”接口shop/ecaftersale/acceptrefund时报错“同意退款失败” {“errcode”:9700209,“errmsg”:"同意退款失败 退款失败“}

A:该问题是订单流转状态不对导致,请严格按照文档流程进行操作调用;新旧接口混合调用也会报此错误。

Q17:二级商户号订单支付流程与原有订单支付流程有什么区别?

A17:主要区别是:二级商户号订单调起支付所需参数是通过“生成支付参数”获取,无需同步支付结果;原流程调起支付是需要通过微信支付统一下单获取,需要同步支付结果。

Q18:调用自定义交易组件售后相关接口:“创建售后单”、“用户取消售后单”、“用户上传物流信息”、“获取售后单列表”、“获取售后单详情”、“同意退款“、”同意退货“、“拒绝售后”、“上传退款凭证”、“更新售后单”等接口时报错{“errcode”: 48001,“errmsg”: “api unauthorized”}

A18:未开通视频号场景经营商户号,需要先开通场景经营商户号才可以调用。

Q19:自定义交易组件二级商户单调起支付时报错“JSAPI缺少参数total_fee”

A19:生成支付参数失败,没返回正确的预支付 ID,重新调用生成支付参数接口获取新的支付参数即可

Q20:调用自定义交易组件接口报错{“errcode”:61007,“errmsg”:“api is unauthorized to component”}

A20:没有完成服务商授权。

Q21:已经开通了自定义交易组件,调用接口还是报错48001

A21:接口鉴权有本地缓存,一般最多10分钟,请稍后再试。

Q22:调用自定义组件接口报错“json异常”

A22:结构体比较复杂,请检查字段层级。划重点: json不支持注释!!!json不支持注释!!!json不支持注释!!!

Q23:调用自定义组件接口报错{“errcode”:1000000,“errmsg”:“订单状态流转异常”}

A23: 订单严格按照:创建、支付、发货、收货的事件流转,如果已经取消,则不能继续流转。

Q24:调用自定义组件上传图片接口报错{“errcode”:1070008,“errmsg”:"获取图片失败,请使用流式上传 "}

A24:一般是图片url在微信侧获取不刀,可能为图片cdn设置了白名单或者cdn服务商把微信出口ip 给“ban”了

Q25:调用自定义组件上传图片接口报错{“errcode”:1070001,“errmsg”:"文件/图片为空 "}

A25:检查请求报文协议,需Content-Type: multipart/form-data

Q26:调用自定义组件上传图片接口报错{“errcode”:1000035,“errmsg”:"无效链接 "}

A26:请检查图片链接是否为有效链接

Q27:自定义交易组件接入后没有收到事件回调消息

A27:使用公众平台调试工具确保回调链路正常。事件消息如下

Q28:视频号橱窗管理获取不到对应小程序

A28:1、检查是否开通视频号场景;2、检查是否绑定了推广员(非小程序超管需要绑定推广员)

持续更新中~~~

最后一次编辑于  2022-04-14  
点赞 60
收藏
评论

83 个评论

  • zmx
    zmx
    2022-04-07

    生成订单接口注: 1:调用该接口成单后,如果想要修改订单,需要调用更新订单相关接口; 2:生成业务订单时,微信测会对金额进行校验,请确保金额相关信息满足: sum(sku_real_price) + freight = order_price = sku.sale_price * cnt +freight-discounted_price+additional_price 否则将生成订单失败,其中sku_real_price为订单中某一类SKU的实付款(单个SKU标价SKU个数 - 单个SKU优惠价格SKU个数)。

    这点描述的乱起八糟的. 应该是 sku_real_price = sale_price * product_cnt

    2022-04-07
    赞同
    回复
  • 🍯
    🍯
    2022-04-07

    通过小程序的requestOrderPayment下单而不是调用https://api.weixin.qq.com/shop/order/add的订单可以嘛

    2022-04-07
    赞同
    回复 6
    • zmx
      zmx
      2022-04-07
      requestOrderPayment需要的支付信息,必须是shop/order/getpaymentparams返回的支付信息, hop/order/getpaymentparams想要返回信息,必须调用/shop/order/add返回order_id.  所以是:不可以.
      2022-04-07
      回复
    • 🍯
      🍯
      2022-04-07回复Memory
      通过小程序下的订单通过接口获取可以获取出订单信息,并且支付状态也能同步成功,也不行的嘛
      2022-04-07
      回复
    • 🍯
      🍯
      2022-04-07回复Memory
      受控交易是什么意思
      2022-04-07
      回复
    • ^O^
      ^O^
      2022-04-07
      如果走视频号的下单流程  到了生成支付参数的时候把参数传给小程序调起支付 开发者工具里面没有任何反应
      2022-04-07
      回复
    • 🍯
      🍯
      2022-04-08回复Memory
      生成订单提示过期时间非法是什么情况
      2022-04-08
      回复
    查看更多(1)
  • MONKEY
    MONKEY
    2022-04-06

    有几个场景想咨询一下,望大佬不吝赐教~

    1、用户在商户小程序中,购买了1个商品(数量是2件),这时如果用户在小程序中申请了其中1件退款并通过了,此时这个商品在微信侧的订单中还可以申请吗?

    2、用户在商户小程序中,购买了1个商品(数量是2件),用户在微信侧订单申请退款的时候,是只能一次性申请2件吗?还是可以自行加减数量申请呢?

    3、商户的小程序业务中,用户退款后,是没有自行寄回这个操作的。这个在用户选择的时候,可以不展示“自行退货”的按钮吗?(微信侧的用户操作按钮选项,可以由商家本来的业务逻辑控制展示吗?)


    2022-04-06
    赞同
    回复 10
    • MONKEY
      MONKEY
      2022-04-07回复Memory
      🌹谢谢回答~ 


      第三点可能我们理解的不对。


      问题背景:
      1、业务方小程序内,订单发货给用户,用户售后-“退货”时,只支持上门取件,没有用户自行寄回的操作;
      2、用户在微信侧订单中,申请了售后,点击“退货”按钮,页面会弹出Action sheet弹窗,选择“上门取件”和“自行寄回”两种退货方式。

      问题诉求:
      当用户在微信侧订单中点击“退货”按钮时,是否可以控制不显示“自行寄回”按钮。如果不支持控制的话,这种场景该怎么处理😂?
      2022-04-07
      回复
    • MONKEY
      MONKEY
      2022-04-07回复Memory
      明白了,感谢。
      你第一条场景跑完的话,烦请再同步一下结果哈~
      2022-04-07
      回复
    • MONKEY
      MONKEY
      2022-04-07回复Memory
      客服组件在升级中是非必要的吗?接口升级了,客服组件接不接入应该没有强制要求吧😂?
      2022-04-07
      回复
    • MONKEY
      MONKEY
      2022-04-08回复Memory
      嗨,你们商品审核通过了吗?😼
      另外一个问题请教:
      你们走过纠纷的场景流程吗?
      用户发起“平台审核/介入”的话,业务方的小程序内需要有对应的功能映射吗?还是像流程图里面描述的一样,只是同步信息调接口,微信那边会处理,处理完之后做状态同步就行呢?
      2022-04-08
      回复
    • MONKEY
      MONKEY
      2022-04-08回复Memory
      这~
      那看来就是要接了...😪
      2022-04-08
      回复
    查看更多(5)
  • Cjiang
    Cjiang
    2022-04-06

    2022-04-06
    赞同
    回复
  • Leeo
    Leeo
    2022-04-06

    yyds

    2022-04-06
    赞同
    回复
  • 杰
    2022-04-06

    获取维权详情 的status 我刚获取的是 23 ,这个是个啥状态~~~~

    2022-04-06
    赞同
    回复 9
    查看更多(4)
  • zmx
    zmx
    2022-04-06

    可以更加人性化解释下这段话表达的意思吗?

    2022-04-06
    赞同
    回复 11
    • zmx
      zmx
      2022-04-06回复Memory
      推荐使用全量订单上传,不需要根据场景值进行判断. 什么是全量订单上传?
      2022-04-06
      回复
    • zmx
      zmx
      2022-04-06回复Memory
      全量订单  上传  的意思就是,不管是视频号场景订单 还是非视频号场景订单 都去请求shop/order/add生成订单接口, 只不过视频好场景去请求支付参数,非视频号场景去请求原来的支付,这样理解对吗?
      2022-04-06
      回复
    • zmx
      zmx
      2022-04-06回复Memory
      那上面的 1, "1,非受控商户号订单(order.fund_type = 0)需要通过后台api同步订单并获取ticket,最后通过增加ticket参数拉起收银台;" , 是不是描述的有问题,如果我是普通场景,去请求shop/order/add生成订单接口,就没有返回ticket的了
      2022-04-06
      回复
    • zmx
      zmx
      2022-04-06回复Memory
      另外一个问题,"判断场景情况,若为需要检验的场景则调用校验逻辑" 这句话说的,调用校验逻辑的意思是 什么意思, 他指的校验逻辑是什么操作?
      2022-04-06
      回复
    • zmx
      zmx
      2022-04-07回复Memory
      wx.requestOrderPayment里面有个参数是order_detail.pay_info.prepay_id .   shop/order/getpaymentparams返回的 payment_params有个package:prepay_id=123 . requestOrderPayment那个prepay_id 填prepay_id=123  还是填123
      2022-04-07
      回复
    查看更多(6)
  • Sorrow ruin °
    Sorrow ruin °
    2022-04-06

    作为第三方服务商,升级自定义组件后如何调试测试啊?支持取消【自定义组件】,再重新跑流程吗?不支持的话我们怎么调试测试呢

    2022-04-06
    赞同
    回复 2
    • Bonjour°墨小白。
      Bonjour°墨小白。
      2022-04-13回复Memory
      取消时提示操作失败,,,
      2022-04-13
      回复
    • Bonjour°墨小白。
      Bonjour°墨小白。
      2022-04-13回复Memory
      那我们作为第三方服务商没法重新从头跑流程啊,新改版的涉及支付等接口,不敢直接怼上!尴尬啊~~
      2022-04-13
      回复
  • 华鹰
    华鹰
    2022-04-04

    创建售后接口一直报参数错误,orderamt金额不包含运费(商品金额0.1元),能看出还有什么问题导致参数错误吗,字段一遍一遍对,就是不知道哪里有问题。

    2022-04-04
    赞同
    回复 4
    • 华鹰
      华鹰
      2022-04-06回复Memory
      {"order_id":3302359405580387072,"out_order_id":"202204032054521112","out_aftersale_id":"282789","openid":"oZY1i5NJmmrwiDqYxPCXVsfuTM4c","type":1,"product_info":{"out_product_id":"436985","out_sku_id":"2359479","product_cnt":1},"refund_reason":"其他","refund_reason_type":12,"orderamt":10}
      2022-04-06
      回复
    • 华鹰
      华鹰
      2022-04-06
      今天报订单不存在,我根据外部订单号可以查到对应的订单
      2022-04-06
      回复
    • 华鹰
      华鹰
      2022-04-06
      解决了
      2022-04-06
      回复
    • 567个小矮人
      567个小矮人
      2022-04-14回复华鹰
      同问,提示订单不存在,而且视频号订单中心没有显示订单  但是通过接口可以查询到订单信息
      2022-04-14
      回复
  • 神经蛙
    神经蛙
    2022-04-02

    1024

    2022-04-02
    赞同
    回复

正在加载...

登录 后发表内容