codecamp
微信小程序 插件接入指南

小程序插件功能介绍

插件,是可被添加到小程序内直接使用的功能组件。开发者可以像开发小程序一样开发一个插件,供其他小程序使用。同时,小程序开发者可直接在小程序内使用插件,无需重复开发,为用户提供更丰富的服务。

如需开发插件,请阅读开发插件部分;如需使用插件,请阅读使用插件部分。

开发插件

开放范围及服务类目

开放范围:企业、媒体、政府及其他组织主体

开发者可选择当前小程序账号已选类目中的一个,作为插件的服务类目。以下为当前已开放的插件服务类目,将逐步开放更多类目。

一级类目 二级类目 特殊说明
物流服务 邮政、装卸搬运、收件/派件、快递柜、查件、仓储服务、货物运输
教育服务 婴幼儿教育、学历教育(培训机构)、学历教育(学校)、素质教育、教育平台、驾校培训、特殊人群教育、出国留学、教育装备
医疗服务 就医服务、互联网医院 仅医疗类小程序可使用
政务民生 交通违法、博物馆、出入境、邮政、交管、城市道路、税务、司法、气象、户政、治安、环保、民政、教育、水电、市场监督管理、体育/福利彩票、检验检疫、交通、商务、航空、街道居委、农林畜牧海洋、社科档案、应急、科学技术与地质、统计、经济发展与改革、政务服务大厅、医疗、体育、水利、信访、城管、监狱戒毒、海关、住建、人力资源、文化、社保、政务民生、边防、国安、公证、检察、法院、纪检审计、财政、公积金、党/团/组织、食品监督管理、新闻出版及广电、知识产权、烟草管理、网信
金融业 征信业务、保险、银行、公募基金、证券/期货、证券/期货投资咨询 需在插件页面展示服务提供方,如:当前服务由xxx提供
交通服务 公交/地铁、长途汽车、停车服务、代驾服务、租车、顺风车/拼车、加油站服务、骑车、高速服务、网约车、航空、火车/高铁/动车、导航地图、水运、充电服务
房地产服务 物业管理、房屋中介、房屋装修
生活服务 生活缴费、家政服务、丽人服务、宠物(非医院类)、婚庆服务、休闲娱乐、百货/超市/便利店、求职/招聘
餐饮服务 餐厅排队、点餐平台、外卖平台、餐饮服务场所/餐饮服务管理企业
旅游服务 签证办理、景区服务、旅游退税、住宿服务、出境WiFi、旅游管理单位
文娱 其他视频、电台、小说 1.此类目插件首次提交代码审核,需经当地互联网主管机关审核确认,预计审核时长7天左右;
2.视频类目插件仅限非个人主体小程序使用;
3.插件暂未开放文娱-视频广场类目;
4.接入使用视频类目插件的小程序开发者,应当遵循小程序使用“视频类插件”的相关规范
文娱 音乐、有声读物、动漫
工具 记账、投票、日历、天气、备忘录、办公、计算器、网络代理、健康管理、报价/比价、发票查询、预约/报名、图片处理、信息查询
商家自营 服装内衣、鞋靴、箱包皮具、海淘、母婴用品、玩具、3C数码、家用电器、美妆、个护家清、珠宝玉石、时尚首饰、眼镜、钟表、运动户外、乐器、园艺/鲜花、工艺品、家居家纺、办公/文具、农资、宠物食品/用品、家装/五金/建材、机械电子产品、食品饮料
电商平台 电商平台
it科技 基础电信运营商、电信业务代理商 仅限已有【it科技-基础电信运营商】或【it科技-电信业务代理商】类目小程序使用
社交 笔记、问答、社区/论坛、陌生人交友 1. 插件首次提交代码审核,需经当地互联网主管机关审核确认,预计审核时长7天左右。
2. 此类目下插件仅限社交类目小程序使用。
社交 直播 1. 插件首次提交代码审核,需经当地互联网主管机关审核确认,预计审核时长7天左右。
2. 直播插件仅限电商平台、部分教育类目小程序使用
商业服务 法律服务平台、会展服务、广告/设计、公关/推广/市场调查、一般财务服务、企业管理、环保回收/废品回收、摄影/扩印、软件/建站/技术开发、出国移民
体育 体育场馆服务、体育培训、在线健身
汽车服务 汽车经销商/4S店、汽车厂商、维修保养、汽车报价/比价、汽车用品

插件开发接入流程

以下为插件开发接入流程:

  1. 开通插件功能
  2. 填写开发信息并开发
  3. 完善基本信息
  4. 提交审核、发布
  5. 管理插件使用申请

开通插件功能

小程序开发者无需重新注册账号,可直接在小程序管理后台开通插件功能,完成基本信息填写后完成开通。

开通入口:小程序管理后台-小程序插件

填写插件基本信息,插件的基本信息将在插件申请流程、小程序基本信息页中展示。

填写开发信息并完成开发

设置插件的服务器域名及Token信息后,即可在开发者工具中开发插件。

开发者工具内设置请见:《插件开发指南》

完善基本信息

插件在提交审核前,请确认已设置插件名称、插件头像、插件简介等信息,并已上传插件开发文档,便于开发者接入插件。

基本信息完善

登录小程序管理后台-小程序插件-基本设置,确认名称、头像、简介、添加方式、客服联系方式等信息都已完备。

插件开发文档编辑、上传

为便于小程序开发者快速接入插件服务,插件开发者可上传、发布插件开发文档,供接入方查看。

(1)编辑

除了插件代码本身,小程序开发者可以另外上传一份插件开发文档。这份文档必须放置在插件项目根目录中的 doc 目录下,目录结构如下:

doc
├── README.md   // 插件文档,应为 markdown 格式
└── picture.jpg // 其他资源文件,仅支持图片

其中,引用到的图片资源不能是网络图片,必须放在这个目录下。

(2)上传

编辑 README.md 之后,可以使用开发者工具预览插件文档和单独上传插件文档。

上传入口位置:README.md文档右下角

(3)发布

在开发者工具中上传文档之后,文档不会立刻发布。此时可以使用账号和密码登录 插件管理后台 ,在 小程序插件 > 基本设置 中预览、发布插件文档。

文档发布后,可多次更新修改。

插件版本管理

开发者可在开发者工具内上传代码并在小程序插件开发助手内完成插件的开发和调试。请注意:插件暂不支持在体验版中体验

在开发者工具上传代码后,开发者可”小程序管理后台-小程序插件-开发管理“内管理插件版本。

插件发布前需要提交微信小程序团队审核,审核通过后才可发布。

提交审核时,插件开发者需要填写以下信息:插件服务类目、标签、预览图及功能描述。

插件服务类目:插件可从当前小程序已通过的服务类目中选择一个。已开放类目表格见插件开放范围及类目

标签:请填写与插件提供的服务相关的标签。

预览图:可上传插件的预览图,发布后将展示在插件详情页帮助用户提前了解插件功能

功能描述:为便于审核团队体验及审核插件功能,请开发者填写基本介绍及插件的使用说明。

使用申请管理

开发者可在”小程序管理后台-小程序插件-申请管理“内处理插件的接入申请。插件开发者可在24小时内选择”通过“或”拒绝“申请方使用插件。

插件支付功能简介

插件内可使用支付能力,帮助插件开发者完成服务闭环。

以下为接入流程

(1)插件所在小程序开通微信支付能力,查看小程序开通微信支付指南

(2)根据使用场景,参照下表选择合适的支付模式

支付模式 适用范围 典型使用场景 接入流程
服务商 插件内涉及为入驻商家提供商品销售、代收款等服务,即销售的商品不是插件开发者提供的。 电商平台为入驻商户提供货架、购物车等服务;餐饮平台为线下入驻商户提供点餐、买单服务 1. 申请成为微信支付服务商,查看《微信支付服务商功能介绍》《微信支付服务商接入指引》
2. 为商户创建子商户号
3. 绑定子商户号及插件所在的小程序账号,查看“服务商商户号与AppID账号关联管理” 指引
4. 在插件内使用子商户号发起支付

(3)在插件管理后台提交插件支付能力申请,审核通过后将可在插件内使用微信支付能力

使用插件

小程序开发者可便捷地把插件添加到自己的小程序内,丰富小程序的服务。当用户在使用小程序时,将可以在小程序内使用插件提供的服务。

开放范围

所有小程序。小程序使用的插件,其插件类目不能超过小程序主体类型当前开放的范围,具体见开放的服务类目表

接入流程

  1. 在小程序管理后台添加插件小程序开发者可在“小程序管理后台-设置-第三方服务-插件管理”中查找需要的插件,并申请使用。插件开发者在24小时内通过后,小程序开发者可在小程序内使用该插件。
  2. 在小程序代码中使用插件详见《插件开发文档》


微信小程序 扫码打开小程序接入指南
起步
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

微信小程序 指南

开放能力

微信小程序 调试

微信小程序 实时日志

微信小程序 小程序测速

微信小程序 基础组件

微信小程序 API

媒体

界面

微信小程序API 绘图

微信小程序 服务端

接口调用凭证

统一服务消息

微信小程序 服务市场

微信小程序 生物认证

微信小程序 云开发

服务端

微信小程序云开发服务端API 数据库

SDK文档

微信小程序 扩展能力

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }