---
url: "https://pay.weixin.qq.com/doc/v3/partner/4015781296.md"
title: "修改商品券"
doc_id: 4015781296
---

>更新时间：2025.08.20

服务商可以通过该接口修改商品券信息。

注意： 修改只会对新发的券生效，历史已经发放给用户的券不会改变。

前置条件：商品券处于 `EFFECTIVE` 状态




## 接口说明

支持商户：【普通服务商】

请求方式：【PATCH】 `/v3/marketing/partner/product-coupon/product-coupons/{product_coupon_id}`

请求域名：【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

　　　　　【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点，指引[点击查看](https://pay.weixin.qq.com/doc/v3/merchant/4012075113.md)

接口限频：20/秒（商户号维度）

## 请求参数

### Header 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| Authorization | string | true | 请参考 [签名认证](https://pay.weixin.qq.com/doc/v3/merchant/4012365342.md#%E8%AF%B7%E6%B1%82%E6%8E%A5%E5%8F%A3%E5%90%8E%E7%AB%AF%E7%AD%BE%E5%90%8D) 生成认证信息 |
| Accept | string | true | 请设置为 `application/json` |
| Content-Type | string | true | 请设置为 `application/json` |
### Path 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| product_coupon_id | string | true | 【商品券ID】 商品券的唯一标识， [创建商品券](https://pay.weixin.qq.com/doc/v3/partner/4015781289.md) 时由微信支付生成 |
### Body 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| out_request_no | string(40) | true | 【修改请求单号】 品牌修改商品券的请求流水号，品牌侧需保持唯一性，可使用 数字、大小写字母、下划线 `_`、短横线 `-` 组成，长度在6-40个字符之间 |
| display_info | object | true | 【展示信息】 商品券展示信息 |
| display_info.name | string(15) | true | 【商品券名称】 商品券名称，长度为3-15个UTF-8字符 |
| display_info.image_url | string | true | 【商品券图片】 商品图片的链接地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>请参考 [商品券图片设计规范](https://docs.qq.com/doc/DQ2VkYmVUYWpIY2VQ) 进行设计</li><li>要求图片宽高比1:1，建议尺寸1080\*1080</li><li>大小不超过2M</li><li>建议图片格式：透明PNG格式</li><li>需要注意保留透明边距（上下左右各120px）</li></ul> |
| display_info.background_url | string | true | 【商品券背景图】 商品背景图片的URL地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>要求图片宽高比65:77，建议尺寸1170\*1326</li><li>大小不超过2M</li><li>建议图片格式：JPG/PNG格式</li><li>需要注意保留「商品名称」与「商品图」的安全区域</li></ul> |
| display_info.detail_image_url_list | array[string] | false | 【商品券详情图列表】 商品详情图URL地址列表，用于最多可上传8张图片，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>要求图片宽高比65:77，建议尺寸1170\*1326</li><li>大小不超过2M</li><li>建议图片格式：JPG/PNG格式</li></ul> |
| display_info.original_price | integer | false | 【商品原价】 单位为分，用于对外展示，最大为 10000000。不填写时默认为 0 |
| display_info.combo_package_list | array[object] | false | 【适用商品组合】 当 `scope` 为 `SINGLE` 必填，用于对外展示，其他优惠范围选填。最多配置 50 个组合 |
| display_info.combo_package_list.name | string(15) | true | 【适用商品名】 长度不超过15个UTF-8字符 |
| display_info.combo_package_list.pick_count | integer | true | 【可选单品数量】 用户可以从 `choice_list` 中选择的选项数量，例如 10 选 3，则这里填 3 |
| display_info.combo_package_list.choice_list | array[object] | true | 【单品列表】 套餐内包含的选项列表，记录每个单品的信息，最多99个单品，且不能少于设置的 `pick_count` 数量 |
| display_info.combo_package_list.choice_list.name | string(15) | true | 【单品名称】 长度不超过15个UTF-8字符 |
| display_info.combo_package_list.choice_list.price | integer | true | 【单品价格】 单位为分，必须大于0。 |
| display_info.combo_package_list.choice_list.count | integer | true | 【单品数量】 最多99个 |
| display_info.combo_package_list.choice_list.image_url | string | false | 【单品图片】 单品图片URL地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址，接入领券组件和核销组件的品牌方建议填写。<br><ul><li>要求图片宽高比1:1，建议尺寸1080\*1080</li><li>大小不超过2M</li><li>建议图片格式：透明PNG格式</li><li>需要注意保留透明边距（上下左右各120px）</li></ul> |
| display_info.combo_package_list.choice_list.mini_program_appid | string | false | 【单品跳转小程序AppID】 品牌方或服务商可展示单品的小程序AppID，小程序需与品牌方或服务商存在绑定关系，接入领券组件和核销组件的品牌方或服务商建议填写。需和 `mini_program_path` 一同填写。 |
| display_info.combo_package_list.choice_list.mini_program_path | string | false | 【单品跳转小程序路径】 单品展示信息在小程序内的跳转路径，接入领券组件和核销组件的品牌方或服务商建议填写。需和 `mini_program_appid` 一同填写。 |
| brand_id | string | true | 【品牌ID】 微信支付为品牌方分配的唯一标识，该品牌应与服务商存在授权关系 |
## 应答参数

200 OK

| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| product_coupon_id | string(40) | true | 【商品券ID】 商品券的唯一标识，由微信支付生成 |
| scope | string | true | 【优惠范围】 商品券优惠范围<br>可选取值<br><ul><li>`ALL`:  全场商品可用券，此时券类型 `type` 仅可配置为 `NORMAL` 或 `DISCOUNT`</li><li>`SINGLE`:  部分商品可用券，此时券类型 `type` 配置不受限制，即可配置为 `NORMAL`、 `DISCOUNT` 或 `EXCHANGE`</li><li>`CATEGORY`:  品类券。适用于商户对某一品类商品提供优惠的场景；系统侧不维护商品/品类清单，具体可用商品范围由商户在 `display_info` 描述、图片等字段中向用户告知，并在核销时由商户自行判定。此时券类型 `type` 仅可配置为 `NORMAL` 或 `DISCOUNT`</li></ul> |
| type | string | true | 【商品券类型】 商品券的优惠类型<br>可选取值<br><ul><li>`NORMAL`:  满减券</li><li>`DISCOUNT`:  折扣券</li><li>`EXCHANGE`:  兑换券，仅在 `scope` 为 `SINGLE` 时可配置</li></ul> |
| usage_mode | string | true | 【使用模式】 商品券使用模式<br>可选取值<br><ul><li>`SINGLE`:  单券，即用户只能使用一次，使用后券失效</li><li>`PROGRESSIVE_BUNDLE`:  多次优惠，由一组批次组成，每阶梯次序对应一个批次。用户按顺序使用，每次核销后发放下一张券，直到用完为止</li></ul> |
| single_usage_info | object | false | 【单券模式信息】 单券模式配置信息，仅当 `usage_mode` 为 `SINGLE` 时提供，其他场景不提供。 |
| single_usage_info.normal_coupon | object | false | 【满减券使用规则】 本商品券内所有批次均以此规则提供满减优惠，当且仅当 `type` 为 `NORMAL` 且 `scope` 为 `ALL` 或 `CATEGORY` 时必填，其他类型不应填写。 |
| single_usage_info.normal_coupon.threshold | integer | true | 【门槛金额】 使用门槛金额，单位为分，达到该门槛后可享受满减优惠。门槛可以为0，即无门槛。例如：<br><ul><li>满 100 元可用填 `10000`</li><li>满 0.01 元可用填 `1`</li></ul> |
| single_usage_info.normal_coupon.discount_amount | integer | true | 【固定减免金额】 固定减免金额，单位为分，必须大于0。 |
| single_usage_info.discount_coupon | object | false | 【折扣券使用规则】 本商品券内所有批次均以此规则提供折扣优惠，当且仅当 `type` 为 `DISCOUNT` 且 `scope` 为 `ALL` 或 `CATEGORY` 时必填，其他类型不应填写。 |
| single_usage_info.discount_coupon.threshold | integer | true | 【门槛金额】 使用门槛金额，单位为分，达到该门槛后可享受折扣优惠。门槛可以为0，即无门槛。例如：<br><ul><li>满 100 元可用填 `10000`</li><li>满 0.01 元可用填 `1`</li></ul> |
| single_usage_info.discount_coupon.percent_off | integer | true | 【固定减免百分比】 表示减免金额为总金额的百分比，必须大于0。例如：填入 `30` 表示减免 30%，即打 7 折 |
| progressive_bundle_usage_info | object | false | 【多次优惠模式信息】 多次优惠模式配置信息，当且仅当 `usage_mode` 为 `PROGRESSIVE_BUNDLE` 时提供，其他模式不提供。 |
| progressive_bundle_usage_info.count | integer | true | 【可使用次数】 多次优惠领取后用户可使用次数，最少3次，最多15次 |
| progressive_bundle_usage_info.interval_days | integer | false | 【多次优惠使用间隔天数】 多次优惠多次使用之间需要间隔的天数，最高7天。例如：<br><ul><li>间隔 `0` 天表示不限制，使用后当天仍然可以继续使用下一次优惠</li><li>间隔 `1` 天表示使用后当天不再可用，下一次优惠需要等到次日 00:00:00 才能使用</li><li>间隔 `2` 天表示使用后当天和次日不再可用，下一次优惠需要等到第三天 00:00:00 才能使用</li><li>依此类推……</li></ul><br>默认情况下为 `0` 天，即不限制，使用后当天仍然可以继续使用下一次优惠 |
| display_info | object | true | 【展示信息】 商品券展示信息 |
| display_info.name | string(15) | true | 【商品券名称】 商品券名称，长度为3-15个UTF-8字符 |
| display_info.image_url | string | true | 【商品券图片】 商品图片的链接地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>请参考 [商品券图片设计规范](https://docs.qq.com/doc/DQ2VkYmVUYWpIY2VQ) 进行设计</li><li>要求图片宽高比1:1，建议尺寸1080\*1080</li><li>大小不超过2M</li><li>建议图片格式：透明PNG格式</li><li>需要注意保留透明边距（上下左右各120px）</li></ul> |
| display_info.background_url | string | true | 【商品券背景图】 商品背景图片的URL地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>要求图片宽高比65:77，建议尺寸1170\*1326</li><li>大小不超过2M</li><li>建议图片格式：JPG/PNG格式</li><li>需要注意保留「商品名称」与「商品图」的安全区域</li></ul> |
| display_info.detail_image_url_list | array[string] | false | 【商品券详情图列表】 商品详情图URL地址列表，用于最多可上传8张图片，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址。<br><ul><li>要求图片宽高比65:77，建议尺寸1170\*1326</li><li>大小不超过2M</li><li>建议图片格式：JPG/PNG格式</li></ul> |
| display_info.original_price | integer | false | 【商品原价】 单位为分，用于对外展示，最大为 10000000。不填写时默认为 0 |
| display_info.combo_package_list | array[object] | false | 【适用商品组合】 当 `scope` 为 `SINGLE` 必填，用于对外展示，其他优惠范围选填。最多配置 50 个组合 |
| display_info.combo_package_list.name | string(15) | true | 【适用商品名】 长度不超过15个UTF-8字符 |
| display_info.combo_package_list.pick_count | integer | true | 【可选单品数量】 用户可以从 `choice_list` 中选择的选项数量，例如 10 选 3，则这里填 3 |
| display_info.combo_package_list.choice_list | array[object] | true | 【单品列表】 套餐内包含的选项列表，记录每个单品的信息，最多99个单品，且不能少于设置的 `pick_count` 数量 |
| display_info.combo_package_list.choice_list.name | string(15) | true | 【单品名称】 长度不超过15个UTF-8字符 |
| display_info.combo_package_list.choice_list.price | integer | true | 【单品价格】 单位为分，必须大于0。 |
| display_info.combo_package_list.choice_list.count | integer | true | 【单品数量】 最多99个 |
| display_info.combo_package_list.choice_list.image_url | string | false | 【单品图片】 单品图片URL地址，仅支持通过【 [图片上传API](https://pay.weixin.qq.com/doc/v3/partner/4015781275.md)】获取的图片URL地址，接入领券组件和核销组件的品牌方建议填写。<br><ul><li>要求图片宽高比1:1，建议尺寸1080\*1080</li><li>大小不超过2M</li><li>建议图片格式：透明PNG格式</li><li>需要注意保留透明边距（上下左右各120px）</li></ul> |
| display_info.combo_package_list.choice_list.mini_program_appid | string | false | 【单品跳转小程序AppID】 品牌方或服务商可展示单品的小程序AppID，小程序需与品牌方或服务商存在绑定关系，接入领券组件和核销组件的品牌方或服务商建议填写。需和 `mini_program_path` 一同填写。 |
| display_info.combo_package_list.choice_list.mini_program_path | string | false | 【单品跳转小程序路径】 单品展示信息在小程序内的跳转路径，接入领券组件和核销组件的品牌方或服务商建议填写。需和 `mini_program_appid` 一同填写。 |
| out_product_no | string | false | 【外部商品ID】 商户创建商品券时主动传入的外部商品ID，原样返回 |
| state | string | true | 【商品券状态】 商品券状态<br>可选取值<br><ul><li>`AUDITING`:  审批中，审批完成前商品券不可用</li><li>`EFFECTIVE`:  生效中，商品券已生效，可以正常使用</li><li>`DEACTIVATED`:  已失效，品牌方主动调用失效接口使商品券失效</li></ul> |
| deactivate_request_no | string(128) | false | 【失效请求单号】 当且仅当 `state` 为 `DEACTIVATED` 时提供，返回品牌方调用【 [失效商品券API](https://pay.weixin.qq.com/doc/v3/partner/4015781290.md)】时传入的请求流水号 |
| deactivate_time | string | false | 【失效时间】 当且仅当 `state` 为 `DEACTIVATED` 时提供，遵循 [rfc3339标准格式](https://www.rfc-editor.org/rfc/rfc3339.html)，格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE，yyyy-MM-DD表示年月日，T出现在字符串中，表示time元素的开头，HH:mm:ss表示时分秒，TIMEZONE表示时区（+08:00表示东八区时间，领先UTC 8小时，即北京时间）。例如：2015-05-20T13:29:35+08:00表示，北京时间2015年5月20日 13点29分35秒。 |
| deactivate_reason | string(150) | false | 【失效原因】 当且仅当 `state` 为 `DEACTIVATED` 时提供，返回品牌方调用【 [失效商品券API](https://pay.weixin.qq.com/doc/v3/partner/4015781290.md)】时传入的失效原因 |
| brand_id | string | true | 【品牌ID】 微信支付为品牌方分配的唯一标识，该品牌应与服务商存在授权关系 |
## 错误码

以下是本接口返回的错误码列表。详细错误码规则，请参考[微信支付接口规则-错误码和错误提示](https://pay.weixin.qq.com/doc/v3/partner/4012081726.md#%E9%94%99%E8%AF%AF%E7%A0%81%E5%92%8C%E9%94%99%E8%AF%AF%E6%8F%90%E7%A4%BA)

| 状态码 | 错误码 | 描述 | 解决方案 |
| --- | --- | --- | --- |
| 400 | PARAM\_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
| 400 | INVALID\_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 [接口规则](https://pay.weixin.qq.com/doc/v3/merchant/4012081709.md) |
| 401 | SIGN\_ERROR | 验证不通过 | 请参阅 [签名常见问题](https://pay.weixin.qq.com/doc/v3/merchant/4012072670.md) |
| 500 | SYSTEM\_ERROR | 系统异常，请稍后重试 | 请稍后重试 |
| 400 | INVALID\_REQUEST | 传入参数不符合业务规则 | 请参考文档中对每个字段的要求以及组合要求，确认请求参数是否满足 |
| 404 | NOT\_FOUND | 未找到 product\_coupon\_id 对应的商品券 | 请确认 product\_coupon\_id 存在且属于当前品牌 |
| 429 | RATELIMIT\_EXCEEDED | 请求超过接口频率限制 | 请稍后使用原参数重试 |

请求示例

- [curl 示例](https://pay.weixin.qq.com/doc/v3/partner/4015781296-curl.md)
- [Java 示例](https://pay.weixin.qq.com/doc/v3/partner/4015781296-java.md)
- [Go 示例](https://pay.weixin.qq.com/doc/v3/partner/4015781296-go.md)


应答示例

> 200 OK

调整商品券标题

```
{
  "product_coupon_id" : "1000000013",
  "scope" : "ALL",
  "type" : "DISCOUNT",
  "usage_mode" : "SINGLE",
  "single_usage_info" : {
    "discount_coupon" : {
      "threshold" : 10000,
      "percent_off" : 20
    }
  },
  "display_info" : {
    "name" : "全场满100立打8折-新名字",
    "image_url" : "https://wxpaylogo.qpic.cn/wxpaylogo/xxxxx/xxx",
    "background_url" : "https://wxpaylogo.qpic.cn/wxpaylogo/xxxxx/xxx",
    "detail_image_url_list" : [
      "https://wxpaylogo.qpic.cn/wxpaylogo/xxxxx/xxx"
    ]
  },
  "state" : "EFFECTIVE",
  "out_product_no" : "Product_1234567890",
  "brand_id" : "120344"
}

```
