---
url: "https://pay.weixin.qq.com/doc/v3/partner/4015792574.md"
title: "开具通用行业电子发票"
doc_id: 4015792574
---

>更新时间：2025.12.03

商户完成收款后，调用本接口开具通用行业电子发票并插入微信用户的卡包。请求的交易信息必须真实存在。

注意：本接口成功返回仅代表开票请求已被受理，当开票完成时，微信支付会根据商户配置的回调地址进行回调通知，商户也可以通过【查询电子发票】接口获取开票结果及开票信息。蓝字发票开具失败时，可以通过更换fapiao\_information.fapiao\_id，重新填写发票信息进行重试。每个申请单可至多重试4次。




## 接口说明

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

请求方式：【POST】 `/v3/new-tax-control-fapiao/fapiao-applications/issue-general`

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

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

## 请求参数

### 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` |
| Wechatpay-Serial | string | true | 【微信支付公钥ID】或【微信支付平台证书序列号】  请求参数中的敏感字段，需要使用微信支付公钥加密（推荐），请参考 [获取微信支付公钥ID说明](https://pay.weixin.qq.com/doc/v3/merchant/4013038816.md#Q:-%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%BE%AE%E4%BF%A1%E6%94%AF%E4%BB%98%E5%85%AC%E9%92%A5ID?) 以及 [微信支付公钥加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/merchant/4013053257.md)；也可以使用微信支付平台证书公钥加密，参考 [获取平台证书序列号](https://pay.weixin.qq.com/doc/v3/merchant/4013053294.md)、 [平台证书加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/merchant/4013053264.md) |
### Body 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| sub_mchid | string(32) | true | 【子商户号】 微信支付分配的子商户号，服务商模式下必传 |
| fapiao_apply_id | string(32) | true | 【发票申请单号】 发票申请单号，唯一标识一次开票行为。当需要开具交易信息为非微信支付渠道的发票时，为调用 [【获取用户抬头填写链接】](https://pay.weixin.qq.com/doc/v3/partner/4015770776.md) 接口时指定的发票申请单号 |
| buyer_information | object | true | 【购买方信息】 购买方信息，即发票抬头。若商户使用微信官方抬头，可从 [【获取用户填写抬头信息】](https://pay.weixin.qq.com/doc/v3/partner/4015784260.md) 接口获取用户填写的抬头；也可自行收集发票抬头 |
| buyer_information.type | string | true | 【购买方类型】 购买方类型<br>可选取值<br><ul><li>`INDIVIDUAL`:  个人、其他</li><li>`ORGANIZATION`:  单位</li></ul> |
| buyer_information.name | string(256) | true | 【名称】 购买方名称 |
| buyer_information.taxpayer_id | string(32) | false | 【纳税人识别号】 购买方纳税人识别号，购买方类型为ORGANIZATION时必填 |
| buyer_information.address | string(128) | false | 【地址】 购买方地址 |
| buyer_information.telephone | string(32) | false | 【电话】 购买方电话 |
| buyer_information.bank_name | string(128) | false | 【开户银行名称】 购买方开户银行名称 |
| buyer_information.bank_account | string(32) | false | 【银行账号】 购买方银行账号 |
| buyer_information.phone | string | false | 【手机号】 用户手机号。注意：该字段为密文字段，作为请求字段需加密，使用微信支付公钥加密（推荐），参考[获取微信支付公钥ID说明](https://pay.weixin.qq.com/doc/v3/partner/4013038589.md#Q:-%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%BE%AE%E4%BF%A1%E6%94%AF%E4%BB%98%E5%85%AC%E9%92%A5ID?)以及[微信支付公钥加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/partner/4013059044.md)；也可以使用微信支付平台证书公钥加密，参考[获取平台证书序列号](https://pay.weixin.qq.com/doc/v3/partner/4013059181.md)、[平台证书加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/partner/4013059053.md)；作为响应字段需解密，参考[如何使用API证书解密敏感字段](https://pay.weixin.qq.com/doc/v3/partner/4013059060.md) |
| buyer_information.email | string | false | 【邮箱地址】 用户邮箱地址。注意：该字段为密文字段，作为请求字段需加密，使用微信支付公钥加密（推荐），参考[获取微信支付公钥ID说明](https://pay.weixin.qq.com/doc/v3/partner/4013038589.md#Q:-%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%BE%AE%E4%BF%A1%E6%94%AF%E4%BB%98%E5%85%AC%E9%92%A5ID?)以及[微信支付公钥加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/partner/4013059044.md)；也可以使用微信支付平台证书公钥加密，参考[获取平台证书序列号](https://pay.weixin.qq.com/doc/v3/partner/4013059181.md)、[平台证书加密敏感信息指引](https://pay.weixin.qq.com/doc/v3/partner/4013059053.md)；作为响应字段需解密，参考[如何使用API证书解密敏感字段](https://pay.weixin.qq.com/doc/v3/partner/4013059060.md) |
| buyer_information.amount | integer | false | 【订单金额】 微信支付订单金额，仅在微信支付场景下有效，单位：分 |
| buyer_information.out_trade_no | string(32) | false | 【商户订单号】 商户订单号，仅在微信支付场景下有效 |
| buyer_information.fapiao_bill_type | string | false | 【开具的发票类型】 用户选择提交开具发票的类型<br>可选取值<br><ul><li>`COMM_FAPIAO`:  增值税普通发票</li><li>`VAT_FAPIAO`:  增值税专用发票</li></ul> |
| buyer_information.user_apply_message | string(100) | false | 【留言信息】 用户申请开票时提交的留言信息 |
| fapiao_information | object | true | 【需要开具的数电发票信息】 需要开具的通用行业数电发票信息 |
| fapiao_information.fapiao_id | string(32) | true | 【商户发票单号】 商户发票单号，唯一标识一张要开具的发票。只能是字母、数字、中划线-、下划线\_、竖线&#124;、星号\*这些英文半角字符，且该单号在每个商户下必须唯一。当申请单下没有状态为开具中/已开具/冲红中的发票时，可以新增fapiao\_id开票。1个fapiao\_apply\_id下最多支持5个fapiao\_id |
| fapiao_information.total_amount | integer | true | 【总价税合计】 总价税合计，所有发票行单行金额合计的累加，展示在发票的价税合计处，单位：分 注意：所有发票的总价税合计之和不能超过交易的总金额 |
| fapiao_information.items | array[object] | true | 【发票行信息】 发票行信息 |
| fapiao_information.items.tax_code | string(32) | true | 【税局侧规定的货物或应税劳务、服务税收分类编码】 税局侧规定的货物或应税劳务、服务税收分类编码。可自行指定符合税务部门规定的货物或应税劳务、服务编码 |
| fapiao_information.items.goods_name | string(128) | true | 【货物或应税劳务、服务名称】 由商户自定义的货物或应税劳务、服务名称 |
| fapiao_information.items.specification | string(20) | false | 【规格型号】 规格型号，展示在发票中间的规格型号列 |
| fapiao_information.items.unit | string(32) | false | 【单位】 单位，展示在发票中间的单位列。若是折扣行，则不填 |
| fapiao_information.items.quantity | integer | false | 【数量】 数量，展示在发票中间的数量列，单位为10-8，100000000表示数量为1。非折扣行不填时默认为100000000，表示数量为1。若是折扣行，则不填 |
| fapiao_information.items.total_amount | integer | true | 【单行金额合计】 单行金额和税费的和，折扣行的金额为负数，非折扣行的金额为正数，单位:分 |
| fapiao_information.items.tax_rate | integer | true | 【税率】 税率，单位为万分之一，如1300代表13%。<br>现在支持的税率为0、1%、1.5%、3%、5%、6%、9%、10%、11%、13%、16%、17% |
| fapiao_information.items.discount | boolean | true | 【是否折扣行】 指定该发票行是否折扣行，折扣行必须是被折扣行的下一行 |
| fapiao_information.items.preferential_policy_code | integer | false | 【优惠政策标识】 优惠政策标识。1:简易征收; 2:稀土产品; 3:免税; 4:不征税; 5:先征后退; 6:100%先征后退; 7:50%先征后退; 8:按3%简易征收; 9:按5%简易征收; 10:按5%简易征收减按1.5%计征; 11:即征即退30%; 12:即征即退50%; 13:即征即退70%; 14:即征即退100%; 15:超税负3%即征即退; 16:超税负8%即征即退; 17:超税负12%即征即退; 18:超税负6%即征即退 |
| fapiao_information.export_business_policy_code | integer | false | 【出口业务适用政策代码】 1:退税政策; 2:免税政策; 3:征税政策 |
| fapiao_information.vat_refund_levy_code | integer | false | 【增值税即征即退代码】 1:软件产品; 2:资源综合利用产品; 3:管道运输服务; 4:有形动产融资租赁服务; 5:有形动产融资性售后回租服务; 6:新型墙体材料; 7:风力发电产品; 8:光伏发电产品; 9:动漫软件产品; 10:飞机维修劳务; 11:黄金; 12:铂金 |
| fapiao_information.billing_person_id | string(64) | true | 【开票人ID】 税局乐企系统登记的开票人ID |
| fapiao_information.billing_person | string(64) | false | 【开票人名称】 税局乐企系统登记的开票人名称的脱敏格式，格式为：除最后一个字外其它字用\*填充的姓名+空格+身份证后四位 |
| fapiao_information.fapiao_bill_type | string | true | 【发票类型】 商户提交申请开票的发票类型<br>可选取值<br><ul><li>`COMM_FAPIAO`:  增值税普通发票</li><li>`VAT_FAPIAO`:  增值税专用发票</li></ul> |
| fapiao_information.transaction_information | array[object] | true | 【交易信息】 发票对应的交易信息，最大支持传入10条交易信息 |
| fapiao_information.transaction_information.pay_channel | string | true | 【支付渠道】 发票对应交易所属的交易渠道<br>可选取值<br><ul><li>`WECHAT_PAY`:  微信支付</li></ul> |
| fapiao_information.transaction_information.transaction_id | string(64) | false | 【支付订单号】 发票对应交易的支付订单号，支付系统生成的订单号。微信支付交易渠道时，支付订单号、支付商户订单号必须传递其中一个参数 |
| fapiao_information.transaction_information.out_trade_no | string(64) | false | 【支付商户订单号】 发票对应交易的商户订单号，商户系统内部订单号。微信支付交易渠道时，支付订单号、支付商户订单号必须传递其中一个参数 |
| fapiao_information.transaction_information.amount | integer | true | 【交易金额】 发票对应交易信息的交易金额，单位：分 |
| fapiao_information.remark | string | false | 【发票备注】 发票备注 |
## 应答参数

无应答包体
## 错误码

以下是本接口返回的错误码列表。详细错误码规则，请参考[微信支付接口规则-错误码和错误提示](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 | 请求参数符合参数格式，但不符合业务规则 | 请使用正确的参数重新调用 |
| 400 | RESOURCE\_ALREADY\_EXISTS | 发票申请单已存在 | 请稍后调用【查询电子发票】接口获取开票结果 |
| 400 | INVALID\_REQUEST | 当前发票开具中，不可申请重开发票 | 请在调用【查询电子发票】接口获取发票状态 |
| 400 | INVALID\_REQUEST | 当前发票冲红中，不可申请重开发票 | 请在调用【查询电子发票】接口获取发票状态 |
| 400 | INVALID\_REQUEST | 申请开票次数，超过最大限制 | 请在调用【查询电子发票】接口获取当前发票已冲红后，换发票申请单号重试开票 |
| 400 | INVALID\_REQUEST | 开票请求已被受理，请调用【查询电子发票】接口获取开票结果 | 开票请求已被受理，请调用【查询电子发票】接口获取开票结果 |
| 400 | INVALID\_REQUEST | 交易单已申请开票，两次申请的交易金额不相同 | 修改交易单金额重试 |
| 400 | INVALID\_REQUEST | 交易可剩余开票金额不足 | 修改交易订单或者开票金额重试 |
| 403 | NO\_AUTH | 商户乐企不动产租赁发票能力未授权 | 确认商户是否发起不动产租赁发票能力邀请授权，以及电子税局确认操作。确认无误，请稍后重试 |
| 403 | NO\_AUTH | 商户无权限 | 请检查是否已经开通电子发票产品相关功能权限 |
| 403 | RULE\_LIMIT | 商户尚未配置电子发票卡券模板信息 | 请先调用【创建电子发票卡券模板】接口成功后再重新调用 |
| 403 | RULE\_LIMIT | 商户不可对该货物或应税劳务、服务编码开具发票 | 请检查参数中的货物或应税劳务、服务编码是否在【获取商品和服务税收分类对照表】接口返回的数据中 |
| 403 | RULE\_LIMIT | 商户提交的购买方信息与用户填写的发票抬头不一致 | 请检查参数中的购买方信息与【获取用户填写抬头信息】接口返回的发票抬头信息是否一致 |
| 403 | RULE\_LIMIT | 微信支付订单所属商户与当前商户不一致（仅微信支付场景） | 请检查微信支付订单号是否属于子商户 |
| 404 | RESOURCE\_NOT\_EXISTS | 用户尚未完成发票抬头填写（仅非微信支付场景） | 请在调用【获取用户填写抬头信息】接口成功后再以相同发票申请单号重新调用 |
| 429 | FREQUENCY\_LIMITED | 频率超限 | 请降低请求接口频率 |

请求示例

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


应答示例

> 202 Accepted

```
'无应答包体'

```
