---
url: "https://pay.weixin.qq.com/doc/v2/partner/4011939781.md"
title: "微信支付二维码规范"
doc_id: 4011939781
---

>更新时间：2025.03.21

## 1. 范围

本规范规定了微信支付二维码的质量要求，包括二维码生成、展示、验收和安全要求。

本规范适用于微信支付组织内部、商户、服务商使用二维码实现收款、绑定设备或营销等功能的产品中二维码设计、展示和维护。

## 2. 规范性引用文件

QRCode 国家标准（GB/T 18284-2000）

## 3. 术语和定义

微信支付二维码：微信支付提供给用户或商户产品中包含的二维码，或商户和服务商自行生成提供微信支付相关功能的二维码。例如收款二维码、付款二维码、绑定设备码或营销功能二维码等。

容错等级：二维码设计有容错功能，当二维码局部区域被遮挡或污损时仍可以正常识别解码。二维码容错等级分为4等（L、M、Q、H），等级越高对应可恢复的码字比例越高。

## 4. 二维码介绍

现有商户H5收银页面未做适配大字体时会出现信息溢出、遮挡、重叠等情况，严重影响了用户的阅读和操作，应避免以下几类情况发生。

### 4.1. 二维码码制介绍

常用的二维码码制有：QR Code、汉信码、PDF417二维条码、Datamatrix二维条码、Code 49、Code 16K、Code one等。样例如图1所示：

|     |     |     |     |
| --- | --- | --- | --- |
| QR码 | 汉信码 | PDF417码 | Datamatrix码 |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/aa517f77cf005c31db984bbd24a26251.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/b38aee4234b11ab9eaafbdc16817ff2b.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/5e75d9d1e8ca3465f2e6909b68fc3036.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/51aa881179cf4d116c949d5a956d6921.png) |

QR二维码的相关背景知识可参考：[https://www.qrcode.com/zh/index.html](https://www.qrcode.com/zh/index.html)

### 4.2. 微信支付码制标准

微信支付收款二维码采用的码制为快速响应矩阵码（简称QR Code），下文说的二维码特指QR码。商户可通过引用符合QR码国家标准（GB/T 18284-2000）的第三方库生成收款二维码（注意：不支持Micro QR和IQR码标准）。

此外，如使用微信小程序提供对外服务，可将微信支付二维码更换为小程序码（如图3所示），在小程序内实现微信支付相关功能。

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/e87d6224cc1b140d8dc11ed64f1f8e9b.png)<br>图2：QR码样例 | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/c9a53b4ded47f104bd51812f63f5ef77.png)<br>图3：小程序码样例 |

## 5. 二维码使用场景

### 5.1.微信支付提供给商户的二维码

微信支付提供给商户二维码链接或图片，例如生活缴费提供给商户打印在缴费单上的缴费二维码，如图4所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/32d22f35cfb37646c7aaeff8d10722eb.png)

图4：生活缴费二维码生成工具

微信支付提供模版下载二维码图片，如微信面对面收款二维码（如图5所示）和付款二维码（如图6所示）:

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/da4b9544f3b5eb0f112d547a80b1bae9.png)<br>图5：面对面收款二维码 | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/d6d3c071c157704e5ff554cde9869717.png)<br>图6：付款二维码 |

微信支付对外提供实体物料上的二维码，如微信买单码牌的二维码，如图7所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/4591b1f84dec0b3fe8e6a6f6cdd06ed1.png)

图7：微信买单二维码码牌

微信支付营销宣传物料或海报中使用的二维码，如海报中心加好友二维码，如图8所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/40f6f2f559be25e2db4e74df4310b193.png)

图8：微信海报中的二维码

微信支付对外提供设备上做绑定的二维码，如收款机具绑定码，收款音箱等，如图9所示:

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/b32b8e94b0ce45563f4d66b87a52001a.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/4ead9ede5fa80682d82abcffde38e04d.png) |
| 图9：收款机具绑定二维码 | 图9：收款机具绑定二维码 |

### 5.2.商户自行生成二维码场景

订单小票二维码：商户将二维码打印在订单小票（如图10所示）或缴费单（如图11所示）上，用户扫描后可完成支付:

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/5636ff609e74143ffb053f67fe4ecfeb.png)<br>图10：超市订单小票 | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/09f6e27eadc3f117dc352d9335f7c287.png)<br>图11：医院就诊缴费单 |

WEB网页收款二维码：用户在商户WEB页面下单后，直接扫描网页上显示的订单二维码完成付款，如图12所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/08ed90b8f7e8d80a1eebe98771191395.png)

图12：WEB页面收款二维码

自助点餐二维码：用户扫描带有桌号的二维码后打开H5或小程序，选择商品确认下单，最后直接完成支付，如图13所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/2a57e2aaf627288ace320d05e1912712.png)

图13：自助点餐二维码,扫此码可关注公众号,需打码

收银台收款二维码：商户提供收银台码牌上的二维码， 用户扫描后可输入金额完成支付，如图14所示:

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/abf8f67782f578a2dfebbf1ae9e20972.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/92513c474d6f4f0999ee46b393c1f96d.png) |
| 图14：收银台收款二维码 | 图14：收银台收款二维码 |

自助设备上的收款二维码：展示在设备上，用户扫描后付款，如图15所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/a1b2c498dc355052efa749660734064d.png)

图15：充电宝借还机器关注公众号二维码

停车场缴费牌收款二维码：展示停车场的墙壁上，在用户扫描二维码打开H5页面，输入车牌信息完成付款，如图16所示:

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/ff26a3bf85c0c47dde1ba250e7a7cf04.png)

图16：停车场收款二维码

## 6. 二维码技术要求

二维码能否扫描会受到图案完整度、图案复杂度、颜色对比度、扫描距离、环境光线、扫描设备分辨率等因素的影响。编码信息越多，二维码图案越复杂。超长内容的二维码图案会非常复杂，需要足够清晰的大图才能完整展示。

### 6.1.二维码生成标准

#### 6.1.1.设置内容格式

1.微信支付API返回给商户的二维码内容:

统一使用“weixin://wxpay/自定义数据”格式协议，Native支付的二维码内容样例：weixin://wxpay/bizpayurl/up?pr=NwY5Mz9

2.商户自定义H5链接二维码:

H5链接符合URL格式规范“https://域名/自定义数据”，自定义数据可由商户根据场景需要设置对应的内容。

#### 6.1.2.设置内容长度

随内容长度增加二维码密度会增大，当二维码显示尺寸被限制时，点阵太密会导致二维码难识别，甚至无法识别，二维码识别效果对比如表1所示。

表1：同尺寸下不同内容长度的二维码

| 二维码 | 字符数 | 可识别程度 |
| --- | --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/28e58f2060f7db08c580670fe36e9ec6.png) | 30个字符 | 可识别 |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/0a221749d6c69ed4b7755e83937e1af4.png) | 50个字符 | 可识别 |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/7e81e3c61f1a09730de0efc7308b90d3.png) | 100个字符 | 较难识别 |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/f1a2945a16b0e64681da21d1b199e27a.png) | 200个字符 | 较难识别 |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/638684fe36fcec47092a16ef124d3f0d.png) | 1000个字符 | 无法识别 |

生成二维码时，应根据二维码显示区域边长设置合理的内容长度，内容长度标准见表2所示。

表2：二维码边长对应的内容长度要求

| 二维码边长 | 内容长度 |
| --- | --- |
| 2 ~ 3cm | 小于等于30个字符 |
| 3 ~ 4cm | 小于等于50个字符 |
| 4 ~ 6cm | 小于等于80个字符 |
| 6cm以上 | 小于等于100个字符 |

如果实际内容长度超过以上要求，请按以下措施减少字符长度：

URL域名：建议不超过15个字符，使用简短的三级域名，不使用复杂的多级域名

URL路径：使用简短的路径名，不使用多级目录

URL参数：减少传递参数个数；缩短参数名长度；缩短参数值长度 如果以上措施仍无法满足实际场景要求，可将链接转为较短的链接，方法见附录7.2节短链接最佳实践。

#### 6.1.3.设置容错等级

二维码容错等级分为4等（L、M、Q、H），等级越高对应可恢复的码字比例越高，具体每个等级可恢复的字符比例为L：7%，M：15%，Q：25%，H：30%。相同长度的内容，容错等级越高，二维码密度越大。

1、二维码展示在屏幕、质量较好的纸上或者有保护的码牌，使用低容错等级（建议使用L等级）；

2、二维码打印在普通纸张展示，建议使用中容错等级（建议使用M等级）

3、放置在有遮挡场景展示时，建议使用高容错等级（Q或H等级）；

#### 6.1.4.设置分辨率

二维码展示在不同媒介上，对分辨率有不同的要求，为保证二维码能够清晰呈现并被扫描识别；作为屏幕使用时，建议二维码图像分辨率不小于72dpi，如图17所示。印刷使用时建议二维码图像分辨率为300dpi或以上，如图18所示。

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/ec2430e2fa103ea10f816e50b508520a.png)

图17：屏幕显示分辨率设置

![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/5dccf174b8ec6ac6962152ef21b959fd.png)

图18：印刷分辨率设置

### 6.2.二维码展示标准

#### 6.2.1.对比度

对比度、进光量影响摄像头的成像速度及扫码效率，当二维码在不同媒介使用时，显示效果可能不一样，如图19所示。为兼顾各种场景展示实现可扫描，建议二维码点阵为黑色，背景为白色，不推荐使用灰色或彩色二维码。

|     |     |     |
| --- | --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/f4423b8c0e506e6e98172ba3338c2e8f.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/b0de606b98357e01782c1b3648170a8c.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/ed4e4a675d023ba5e89d6730c515589c.png) |
| 正确样例 | 错误样例 | 错误样例 |

图19：二维码对比度展示样例

#### 6.2.2.二维码尺寸

不同场景的使用，建议商户按规范生成二维码，如表3所示。商户也可根据实际情况来调整二维码尺寸，具体尺寸对应内容长度参见6.1.2节设置内容长度。

表3：按场景选择二维码边长

| 使用场景 | 扫描距离 | 建议二维码边长 |
| --- | --- | --- |
| 订单小票 | 0.1～0.2米 | 不小于2cm |
| WEB收款 | 0.2～0.6米 | 不小于2.5cm |
| 自助点餐 | 0.1～0.3米 | 不小于3cm |
| 收银台收款 | 0.2～1米 | 不小于4cm |
| 缴费牌收款 | 0.3-2米 | 不小于10cm |
| 缴费牌收款 | 1.5～5米 | 不小于30cm |

#### 6.2.3.点阵遮挡

二维码有容错率限制，不建议覆盖图形元素。二维码识别中存在三个关键定位点，如果这三个部位被遮挡，将无法识别到二维码，如图20所示。二维码如果需要添加LOGO标识，需使用居中覆盖，如图21所示，建议使用容错等级为M的二维码并保证覆盖面积不超过10%，或者容错能级为H的二维码覆盖面积不超过25%。进行设备识别测试，通过后方可对外发布二维码。

|     |     |
| --- | --- |
| ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/bb0e93cbcb4987001eb31c26b1e981e9.png) | ![](https://gtimg.wechatpay.cn/resource/xres/mmpaydoc/static/img/0d66d17584ba765625a912aeb6eaec37.png) |
| 图20：定位点不可遮挡 | 图21：LOGO居中覆盖 |

### 6.3.二维码验收要求

为满足用户微信支付扫描体验要求，要做好收款二维码的质量检查，收款二维码上线前，需要在实际环境下测试和体验，验收完成再上线。上线后，要对收款二维码做好日常维护。具体检查项目和解决方案见表4。

表4：二维码验收检查项

| 质量项目 | 检查项 | 解决方案 |
| --- | --- | --- |
| 二维码展示 | 二维码打印不清晰或打印区域残缺 | 重新打印清晰的二维码 |
| 二维码展示 | 二维码颜色变淡、污渍遮挡或损毁，无法识别 | 定期检查和更新二维码 |
| 二维码访问 | 内容链接不可访问 | 建立发现网站服务异常机制，能实时修复 |
| 二维码访问 | 扫描显示空白页 | 1、使用HTTPS协议时域名证书异常，建议做检查并及时修复<br>2、链接使用域名，不用IP地址的URL |
| 二维码访问 | 扫描显示不安全网页 | 在公众号后台[设置正确的业务域名](https://kf.qq.com/touch/sappfaq/170821zAJnYv170821RNzEza.html?platform=48) |
| 二维码访问 | 页面提示其他错误 | 根据具体错误进行处理， 定期检查二维码的正确性 |

### 6.4.二维码安全要求

防止二维码被非法替换：对二维码做好保护措施，可使用码牌保护，放置到用户不能接触到的地方；

防伪要求：二维码物料上可添加公司logo；

二维码链接使用HTTPS协议，避免被注入脚本攻击；

网站做好安全维护，防止用户扫码后下载病毒；

## 7. 附录

QR码官方介绍： [QR码官方](https://www.qrcode.com/zh/index.html)

### 7.1.长链转短链最佳实践

二维码内容对应链接参数较多的情况，可以通过key-value机制实现长链接转短链接。短链接中定义唯一ID（唯一ID可由字母+数组组合），链接访问时，后台通过ID映射跳转到带有参数的链接。

长链接URL示例：URL带有多个参数，长度超过本规范建议长度样例：

http://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pages/\*\*\*\*.shtml?param1=1&code=aaa&id=12345

短链接示例：URL相对路径短，只带有一个参数，该参数可以作为唯一标识对应后台的记录（标识生成规则：固定位数，如7位，通过大写字母+小写字母+数字组合）样例：

https://qq.com?p=NwY5Mz9

### 7.2.收款二维码参考样例

微信支付常用二维码的参数情况：

表5：微信支付二维码参考样例参数对比

| 场景 | 二维码内容 | 尺寸 | 字符长度 | 容错等级 | 遮挡 |
| --- | --- | --- | --- | --- | --- |
| 付款码 | 130003404624115863 | 2.9cm | 18个 | L(7%) | 无 |
| 面对面付款 | wxp://f2f0Np0YBB7lPJdp-F-kZUmIMCkbskdbC3tWzSG6\_KPtjNM= | 3.2cm | 54个 | Q(25%) | 有 |
| 微信买单二维码 | https://payapp.weixin.qq.com/materialqr/entry/home?id=065452545384977 | 5cm | 68个 | M(15%) | 无 |