开具电子发票
更新时间:2023.10.12商户完成收款后,调用本接口开具电子发票并插入微信用户的卡包。若是非微信支付场景,需要先通过【获取用户授权链接】接口获取用户授权链接,并等待用户完成授权才能调用本接口;若是微信支付场景,则无需额外获取用户授权。 注意:本接口成功返回仅代表开票请求已被受理,当开票完成时,微信支付会根据商户配置的回调地址进行回调通知,商户也可以通过【查询电子发票】接口获取开票结果及开票信息。
# 接口说明
支持商户:
【普通服务商】
请求方式:
【POST】/v3/new-tax-control-fapiao/fapiao-applications
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看
# 请求参数
Header HTTP头参数
- sub_mchid 选填【子商户号】 微信支付分配的子商户号,服务商模式下必传
- scene 必填【开票场景】 开票场景
可选取值:WITH_WECHATPAY
: 微信支付场景WITHOUT_WECHATPAY
: 非微信支付场景
- fapiao_apply_id 必填【发票申请单号】 发票申请单号,唯一标识一次开票行为。当开票场景为WITHOUT_WECHATPAY时,为调用【获取用户授权链接】接口时指定的发票申请单号;当开票场景为WITH_WECHATPAY时,为与本次开票关联的微信支付订单号,且必须是属于相应商户的订单(服务商模式下该订单必须属于子商户;直连模式下该订单必须属于直连商户)
- buyer_information 必填【购买方信息】 购买方信息,即发票抬头。若商户使用微信官方抬头,可从【获取用户授权信息】接口获取用户填写的抬头;也可自行收集发票抬头
- 属性
- fapiao_information 必填【需要开具的发票信息】 需要开具的发票信息。注意:同一个开票申请单最多申请5张发票
- 属性
Body 包体参数
请求示例
POST
# 应答参数
无应答包体
应答示例
202 Accepted
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_REQUEST | 请求参数符合参数格式,但不符合业务规则 | 请使用正确的参数重新调用 |
400 | RESOURCE_ALREADY_EXISTS | 发票申请单已存在 | 请稍后调用【查询电子发票】接口获取开票结果 |
401 | SIGN_ERROR | 签名错误或签名信息不完整 | 请检查签名参数和方法是否都符合签名算法要求 |
403 | NO_AUTH | 商户无权限 | 请检查是否已经开通电子发票产品相关功能权限,若是服务商模式,还需确认子商户是否接受了服务商的邀请 |
403 | RULE_LIMIT | 商户尚未配置电子发票卡券模板信息 | 请先调用【创建电子发票卡券模板】接口成功后再重新调用 |
403 | RULE_LIMIT | 商户不可对该货物或应税劳务、服务编码开具发票 | 请检查参数中的货物或应税劳务、服务编码是否在【获取商品和服务税收分类对照表】接口返回的数据中 |
403 | RULE_LIMIT | 商户提交的购买方信息与用户填写的发票抬头不一致 | 请检查参数中的购买方信息与【获取用户填写的抬头】接口返回的发票抬头信息是否一致 |
403 | RULE_LIMIT | 微信支付订单所属商户与当前商户不一致(仅微信支付场景) | 请检查微信支付订单号是否属于商户,若是服务商模式则检查是否属于子商户 |
404 | RESOURCE_NOT_EXISTS | 用户尚未完成发票抬头填写(仅非微信支付场景) | 请在调用【获取用户填写的抬头】接口成功后再以相同发票申请单号重新调用 |
429 | FREQUENCY_LIMITED | 频率超限 | 请降低请求接口频率 |
文档是否有帮助