---
url: "https://pay.weixin.qq.com/doc/v3/partner/4012534427.md"
title: "扣费受理"
doc_id: 4012534427
---

>更新时间：2025.03.11

商户请求扣费受理接口，会完成订单受理。微信支付进行异步扣款，支付完成后，会将订单支付结果发送给商户。




## 接口说明

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

请求方式：【POST】 `/v3/vehicle/transactions/parking`

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

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

## 请求参数

### Header 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| Authorization | string | true | 请参考 [签名认证](https://pay.weixin.qq.com/doc/v3/partner/4012365870.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` |
### Body 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| appid | string(32) | true | 【公众账号ID】 AppID是商户在微信申请公众号或移动应用成功后分配的账号ID，登录平台为mp.weixin.qq.com或open.weixin.qq.com |
| sub_appid | string(32) | false | 【子公众账号ID】子公众账号ID，服务商模式下选传，用于扣费信息的商户信息展示， |
| sub_mchid | string(32) | true | 【子商户号】微信支付分配的子商户号，服务商模式下必传 |
| description | string(128) | true | 【服务描述】商户自定义字段，用于交易账单中对扣费服务的描述。 |
| attach | string(128) | false | 【附加数据】附加数据，在查询API和支付通知中原样返回，可作为自定义参数使用 |
| out_trade_no | string(32) | true | 【商户订单号】商户系统内部订单号，只能是数字、大小写字母\_-\*且在同一个商户号下唯一 |
| trade_scene | string(16) | true | 【交易场景】交易场景值，目前支持 ：PARKING：车场停车场景 |
| goods_tag | string(32) | false | 【订单优惠标记】代金券或立减优惠功能的参数，说明详见 [代金券或立减优惠](https://pay.weixin.qq.com/doc/v3/partner/4012087801.md) |
| notify_url | string(256) | true | 【回调通知URL】接受扣款结果异步回调通知的URL，注意回调URL只接受HTTPS |
| profit_sharing | string(16) | false | 【分账标识】Y：是，需要分账<br>N：否，不分账<br>字母要求大写，不传默认不分账，分账详细说明见 [直连分账API](https://pay.weixin.qq.com/doc/v3/merchant/4012067962.md)、 [服务商分账API文档](https://pay.weixin.qq.com/doc/v3/partner/4012072582.md) |
| amount | object | true | 【订单金额】订单金额信息 |
| amount.total | integer | true | 【订单金额】订单总金额，单位为分，只能为整数 |
| amount.currency | string(16) | false | 【货币类型】符合ISO 4217标准的三位字母代码，目前只支持人民币：CNY |
| parking_info | object | false | 【停车场景信息】当交易场景为PARKING时，需要在该字段添加停车场景信息 |
| parking_info.parking_id | string(32) | true | 【入场ID】微信支付分停车服务为商户分配的入场ID，商户通过入场通知接口获取入场ID |
| parking_info.plate_number | string(32) | true | 【车牌号】车牌号，仅包括省份+车牌，不包括特殊字符。 |
| parking_info.plate_color | string | true | 【车牌颜色】车牌颜色<br>可选取值：<br><ul><li>`BLUE`: 蓝色</li></ul><br><ul><li>`GREEN`: 绿色</li></ul><br><ul><li>`YELLOW`: 黄色</li></ul><br><ul><li>`BLACK`: 黑色</li></ul><br><ul><li>`WHITE`: 白色</li></ul><br><ul><li>`LIMEGREEN`: 黄绿色</li></ul> |
| parking_info.start_time | string(32) | true | 【入场时间】用户入场时间，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| parking_info.end_time | string(32) | true | 【出场时间】用户出场时间，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| parking_info.parking_name | string(32) | true | 【停车场名称】所在停车位车场的名称 |
| parking_info.charging_duration | integer | true | 【计费时长】计费的时间长，单位为秒 |
| parking_info.device_id | string(32) | true | 【停车场设备ID】停车场设备ID |
## 应答参数

200 OK

| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| appid | string(32) | true | 【公众账号ID】AppID是商户在微信申请公众号或移动应用成功后分配的账号ID，登录平台为mp.weixin.qq.com或open.weixin.qq.com |
| sub_appid | string(32) | false | 【子商户公众账号ID】子商户申请的公众号或移动应用AppID，需要在服务商的商户平台为子商户绑定 |
| sp_mchid | string(32) | true | 【商户号】微信支付分配的商户号 |
| sub_mchid | string(32) | true | 【子商户号】微信支付分配的子商户号 |
| description | string(128) | true | 【服务描述】商户自定义字段，用于交易账单中对扣费服务的描述。 |
| create_time | string(32) | true | 【订单创建时间】订单成功创建时返回，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| out_trade_no | string(32) | true | 【商户订单号】商户系统内部订单号，只能是数字、大小写字母\_-\*且在同一个商户号下唯一 |
| transaction_id | string(32) | false | 【微信支付订单号】微信支付订单号 |
| trade_state | string(32) | true | 【交易状态】SUCCESS—支付成功<br>ACCEPTED—已接收，等待扣款<br>PAY\_FAIL–支付失败(其他原因，如银行返回失败)<br>REFUND—转入退款 |
| trade_state_description | string(256) | false | 【交易状态描述】对当前订单状态的描述和下一步操作的指引 |
| success_time | string(32) | false | 【支付完成时间】订单支付完成时间，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| bank_type | string(16) | false | 【付款银行】银行类型，采用字符串类型的银行标识。BPA：该笔订单由微信进行垫付 |
| user_repaid | string(1) | false | 【用户是否已还款】枚举值：<br>Y：用户已还款<br>N：用户未还款<br>注意：使用此字段前需先确认bank\_type字段值为BPA以及 trade\_state字段值为SUCCESS。 |
| attach | string(128) | false | 【附加数据】附加数据，在查询API和支付通知中原样返回，可作为自定义参数使用 |
| trade_scene | string(32) | true | 【交易场景】交易场景值，目前支持 ：PARKING：车场停车场景 |
| parking_info | object | false | 【停车场景信息】返回信息中的trade\_scene为PARKING，返回该场景信息 |
| parking_info.parking_id | string(32) | true | 【入场ID】微信支付分停车服务为商户分配的入场ID，商户通过入场通知接口获取入场ID |
| parking_info.plate_number | string(32) | true | 【车牌号】车牌号，仅包括省份+车牌，不包括特殊字符。 |
| parking_info.plate_color | string | true | 【车牌颜色】车牌颜色<br>可选取值：<br><ul><li>`BLUE`: 蓝色</li></ul><br><ul><li>`GREEN`: 绿色</li></ul><br><ul><li>`YELLOW`: 黄色</li></ul><br><ul><li>`BLACK`: 黑色</li></ul><br><ul><li>`WHITE`: 白色</li></ul><br><ul><li>`LIMEGREEN`: 黄绿色</li></ul> |
| parking_info.start_time | string(32) | true | 【入场时间】用户入场时间，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| parking_info.end_time | string(32) | true | 【出场时间】用户出场时间，遵循 [rfc3339](https://datatracker.ietf.org/doc/html/rfc3339) 标准格式，格式为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秒。 |
| parking_info.parking_name | string(32) | true | 【停车场名称】所在停车位车场的名称 |
| parking_info.charging_duration | integer | true | 【计费时长】计费的时间长，单位为秒 |
| parking_info.device_id | string(32) | true | 【停车场设备ID】停车场设备ID |
| payer | object | true | 【支付者信息】支付者信息 |
| payer.openid | string(32) | true | 【用户在AppID下的标识】 用户在AppID下的唯一标识 |
| payer.sub_openid | string(32) | false | 【用户在Sub\_AppID下的标识】 用户在Sub\_AppID下的标识，商户扣费时传入了Sub\_AppID，则会返回该用户在Sub\_AppID下的标识 |
| amount | object | true | 【订单金额信息】订单金额信息 |
| amount.total | integer | true | 【订单金额】订单总金额，单位为分，只能为整数，详见支付金额 |
| amount.currency | string(16) | true | 【货币类型】符合ISO 4217标准的三位字母代码，目前只支持人民币：CNY |
| amount.payer_total | integer | false | 【用户实际支付金额】用户实际支付金额，单位为分，只能为整数，详见支付金额 |
| amount.discount_total | integer | false | 【折扣】订单折扣 |
| promotion_detail | array[object] | false | 【优惠信息】优惠信息 |
| promotion_detail.coupon_id | string(32) | true | 【券ID】券或者立减优惠ID |
| promotion_detail.name | string(128) | false | 【优惠名称】优惠名称 |
| promotion_detail.scope | string(32) | false | 【优惠范围】GLOBAL-全场代金券，<br>SINGLE-单品优惠 |
| promotion_detail.type | string(16) | false | 【优惠类型】枚举值：<br>CASH：充值型代金券<br>NOCASH：免充值型代金券 |
| promotion_detail.stock_id | string(32) | false | 【活动ID】在微信商户后台配置的批次ID |
| promotion_detail.amount | integer | true | 【优惠券面额】用户享受优惠的金额 |
| promotion_detail.wechatpay_contribute | integer | false | 【微信出资】特指由微信支付商户平台创建的优惠，出资金额等于本项优惠总金额，单位为分 |
| promotion_detail.merchant_contribute | integer | false | 【商户出资】特指商户自己创建的优惠，出资金额等于本项优惠总金额，单位为分 |
| promotion_detail.other_contribute | integer | false | 【其他出资】其他出资方出资金额，单位为分 |
| promotion_detail.currency | string(16) | false | 【优惠币种】CNY：人民币，境内商户号仅支持人民币。 |
## 错误码

### 公共错误码

| 状态码 | 错误码 | 描述 | 解决方案 |
| --- | --- | --- | --- |
| 400 | PARAM\_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
| 400 | INVALID\_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 [接口规则](https://pay.weixin.qq.com/doc/v3/partner/4012081726.md) |
| 401 | SIGN\_ERROR | 验证不通过 | 请参阅 [签名常见问题](https://pay.weixin.qq.com/doc/v3/partner/4012082324.md) |
| 500 | SYSTEM\_ERROR | 系统异常，请稍后重试 | 请稍后重试 |

### 业务错误码

| 状态码 | 错误码 | 描述 | 解决方案 |
| --- | --- | --- | --- |
| 400 | ALREADY\_EXISTS | out\_trade\_no冲突 | out\_trade\_no冲突，不同的订单请保证 out\_trade\_no 唯一 |
| 400 | INVALID\_REQUEST | 非法商户，服务商模式下请确认子商户正确 | 微信支付分停车服务不支持当前商户访问，请确认商户已获得本产品权限。服务商模式下请同时确认子商户无误且已获得本产品权限 |
| 400 | INVALID\_REQUEST | 商户号和公众号没有绑定关系 | 检查请求中的AppID与商户号（服务商模式下则为服务商商户号）是否匹配，然后重试 |
| 400 | INVALID\_REQUEST | 商户号、子商户号以及子公众号没有绑定关系 | 检查请求中的 `sub_appid`，sub\_mchid与服务商商户号是否匹配，然后重试 |
| 400 | INVALID\_REQUEST | 用户状态异常 | 风控失败或者用户账户冻结 |
| 400 | INVALID\_REQUEST | 停车入场ID不存在 | 商户传参的停车入场ID是非法，请填写微信支付分停车服务分配的停车入场ID |
| 400 | INVALID\_REQUEST | 场景信息和停车入场ID不匹配 | 场景信息内容与入场ID不对应 |
| 400 | INVALID\_REQUEST | 扣款额度超出限制 | 请检查确保发起扣款的订单额度不超过微信支付分停车支持的单笔及单日扣款额度 |
| 403 | NO\_AUTH | 当前商户无法扣款 | 当前扣款商户无权限扣款，请确认当前扣款商户已开通微信支付分停车产品权限 |
| 403 | NOT\_ENOUGH | 用户欠款过多，暂停交易 | 用户在微信支付分停车服务中欠款过多，不能进行扣款 |
| 429 | RATELIMIT\_EXCEEDED | 达到调用速率限制 | 接口调用频率过快，请降低请求频率 |
| 500 | SYSTEM\_ERROR | 出现内部服务器错误 | 5开头的错误码均为系统错误，请使用相同的参数稍后重试 |

请求示例

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


应答示例

> 200 OK

```
{
  "appid" : "wxcbda96de0b165486",
  "sub_appid" : "wxcbda96de0b165489",
  "sp_mchid" : "1230000109",
  "sub_mchid" : "1900000109",
  "description" : "停车场扣费",
  "create_time" : "2017-08-26T10:43:39+08:00",
  "out_trade_no" : "20150806125346",
  "transaction_id" : "1009660380201506130728806387",
  "trade_state" : "SUCCESS",
  "trade_state_description" : "支付失败，请重新下单支付",
  "success_time" : "2017-08-26T10:43:39+08:00",
  "bank_type" : "CMC",
  "user_repaid" : "Y",
  "attach" : "深圳分店",
  "trade_scene" : "PARKING",
  "parking_info" : {
    "parking_id" : "5K8264ILTKCH16CQ250",
    "plate_number" : "粤B888888",
    "plate_color" : "BLUE",
    "start_time" : "2017-08-26T10:43:39+08:00",
    "end_time" : "2017-08-26T10:43:39+08:00",
    "parking_name" : "欢乐海岸停车场",
    "charging_duration" : 3600,
    "device_id" : "12313"
  },
  "payer" : {
    "openid" : "oUpF8uMuAJOM2pxb1Q",
    "sub_openid" : "oUpF8uMuAJOM2pxb1Q"
  },
  "amount" : {
    "total" : 888,
    "currency" : "CNY",
    "payer_total" : 100,
    "discount_total" : 100
  },
  "promotion_detail" : [
    {
      "coupon_id" : "109519",
      "name" : "单品惠-6",
      "scope" : "SINGLE",
      "type" : "CASH",
      "stock_id" : "931386",
      "amount" : 5,
      "wechatpay_contribute" : 1,
      "merchant_contribute" : 1,
      "other_contribute" : 1,
      "currency" : "CNY"
    }
  ]
}

```
