---
url: "https://pay.weixin.qq.com/doc/v3/merchant/4020801836.md"
title: "错误码"
doc_id: 4020801836
---

>更新时间：2026.06.12

# 支付即服务错误码



## 一、错误码速查表（TOP 15）

| 错误码 | 错误信息 |
| --- | --- |
| 269546538 | 商户号不存在 |
| 272749082 | 服务人员 id 不存在 |
| 272750609 | 子商户产品权限未开通 |
| 269546505 | 商户证书已过期 |
| 270924345 | content-type 不正确 |
| 272750620 | 门店 ID 不存在 |
| 268441788 | 子商户未授权父商户的产品权限 |
| 268435463 | 参数过短 |
| 272749073 | 服务人员记录已存在 |
| 272750603 | 非企业微信提供的头像 URL |
| 270924346 | 签名信息非法 |
| 270924289 | 频率过快 |
| 272749081 | 订单分配记录已存在 |
| 268435461 | 参数非法 |
| 270924291 | 头部信息不完整 |

* * *

## 二、错误码详细排查

### 269546538 — 商户号不存在

排查步骤：

1. 仔细核对商户号（10 位纯数字），前后不能有空格

2. 业务侧入参校验： `^[0-9]{10}$`，不匹配直接拒绝

3. 区分测试 / 灰度 / 生产环境的商户号

4. 检查请求头 `Authorization` 中签名使用的 `mchid` 与代码中传递的 `mchid` 是否一致


* * *

### 272749082 — 服务人员 id 不存在

排查步骤：

1. `guide_id` 必须是「服务人员注册」接口返回的 ID

2. 检查 `guide_id` 是否传错（被截断 / 编码污染 / 大小写混淆）

3. 检查调用方商户号与 `guide_id` 的归属——必须用同一商户号调用

4. 服务商代调用时确认 `sub_mchid` 与 `guide_id` 归属一致

5. 员工已离职 / 被删除的旧 `guide_id` 不可复用


* * *

### 272750609 — 子商户产品权限未开通

排查步骤：

1. 登录子商户对应的商户平台 → 产品中心 → 我的产品，确认「支付即服务」状态

2. 子商户需主动开通产品并完成产品设置

3. 开通后约几分钟到几小时生效

4. 服务商可以协助引导子商户开通，但开通操作必须由子商户自行完成


* * *

### 269546505 — 商户证书已过期

排查步骤：

1. 登录商户平台 → 账户中心 → API 安全 → API 证书查看到期时间

2. 重新下载新证书，更新到所有服务节点

3. 建议在证书过期前 30 天监控告警


* * *

### 270924345 — Content-Type 不正确

排查步骤：

1. 打印实际发送的请求头，确认 `Content-Type: application/json`

2. Body 必须是 JSON 字符串

3. PATCH 请求同样要求 JSON Content-Type

4. 建议使用官方 SDK


* * *

### 272750620 — 门店 ID 不存在

排查步骤：

1. `store_id` 是微信支付商户平台门店管理中给门店分配的 ID，不是商户自有的门店编号

2. 登录商户平台 → 业务中心 → 门店管理，查看现有门店的 `store_id`

3. 可通过商户平台手动新建门店或使用门店管理 API 批量创建

4. `store_id` 是 integer 类型（不是字符串），注意传参类型

5. 服务商场景下子商户的 `store_id` 在子商户自己的商户平台维护


* * *

### 268441788 — 子商户未授权父商户的产品权限

排查步骤：

1. 子商户开通后需要主动操作授权给服务商

2. 路径：子商户商户平台 → 产品中心 → 支付即服务 → 服务商授权 → 添加授权服务商号

3. 授权动作必须由子商户完成，授权后约几分钟生效


* * *

### 268435463 — 参数过短

排查步骤：

1. 看响应体 `detail.field` 定位是哪个字段过短

2. 不要传空串 `""`，可选字段直接不传 key

3. 业务侧入参做长度校验


* * *

### 272749073 — 服务人员记录已存在

排查步骤：

1. 系统按 `corpid` \+ `userid` \+ `store_id` 三元组唯一性约束

2. 已注册的员工需更新信息时使用「服务人员更新」接口（ `PATCH /v3/smartguide/guides/{guide_id}`）

3. 业务侧应在注册前先调「服务人员查询」接口检查

4. 同一员工在不同门店可以分别注册（ `store_id` 不同就是新记录）


* * *

### 272750603 — 非企业微信提供的头像 URL

排查步骤：

1. 企业微信商家模式下， `avatar` 必须是企微通讯录上员工头像的 URL（域名为企微指定域名）

2. 自行托管的图片 URL（如商户自有 CDN）不被接受

3. 头像 URL 通过企业微信「通讯录管理」API 获取后透传，不要做任何处理


* * *

### 270924346 — 签名信息非法

排查步骤：

1. `Authorization` 头必须以 `WECHATPAY2-SHA256-RSA2048 ` 开头（注意空格）

2. 必须包含五个字段： `mchid` / `nonce_str` / `signature` / `timestamp` / `serial_no`

3. 字段间用英文逗号分隔，字段值用英文双引号包裹

4. `signature` 用商户 API 证书私钥做 SHA256withRSA 签名，标准 Base64 编码

5. 注册 / 更新接口还需要单独的 `Wechatpay-Serial` 头（用于敏感字段加密）

6. 建议使用官方 SDK 自动生成 Authorization


* * *

### 270924289 — 频率过快

排查步骤：

1. 降低请求频率，使用指数退避策略（1s / 3s / 10s）

2. 批量注册服务人员时控制并发度

3. 同一 `guide_id` 的更新操作串行化

4. 重试加 jitter 避免集中触发


* * *

### 272749081 — 订单分配记录已存在

排查步骤：

1. 同一笔订单只能分配一个服务人员，不能重复分配

2. 业务侧应在订单完成支付前确定分配的服务人员，并持久化「订单 \- guide\_id」映射

3. 如果是异常重试导致的重复分配，把该错误码当作「已分配成功」处理

4. 业务侧加分布式锁（按 `out_trade_no` 维度）防止并发分配


* * *

### 268435461 — 参数非法

排查步骤：

1. 看响应体 `detail.field` 定位具体非法字段

2. 关键字段校验：

   - `corpid` 18 位企微企业 ID

   - `userid` ≤ 64 字符，字母 / 数字 / `_` / `-`

   - `store_id` integer 类型

   - `mobile` 11 位国内手机号

   - `qr_code` / `avatar` 合法 HTTPS URL

   - `out_trade_no` ≤ 32 字符，字符集 `[a-zA-Z0-9_\-\|\*]`
3. 敏感字段加密： `name` / `mobile` 必须用微信支付公钥或平台证书加密

4. 加密算法：RSA/ECB/OAEPWithSHA-1AndMGF1Padding

5. 检查 `Wechatpay-Serial` 头是否与加密使用的公钥 / 证书匹配

6. 建议使用官方 SDK 处理敏感字段加密


* * *

### 270924291 — 头部信息不完整

排查步骤：

1. 打印实际发送的所有请求头检查

2. 必填请求头： `Authorization` / `Accept` / `User-Agent`，POST/PATCH 还需 `Content-Type`

3. 注册和更新接口额外必填 `Wechatpay-Serial` 头（用于敏感字段加密）

4. GET 请求不需要 `Content-Type`

5. 多层代理 / 网关可能删除部分头，做链路抓包定位