上传出租车电子发票文件
更新时间:2025.02.18服务商调用插卡接口前,需调用本接口上传出租车电子发票文件来获取文件ID。文件ID有效期为3天,有效期内未成功调用插卡接口需重新调用本接口上传发票文件。
接口说明
支持商户:【普通服务商】
请求方式:【POST】/v3/taxi-invoice/cards/upload-file
请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点
【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看
字段说明
请求参数
Header HTTP头参数
Authorization 必填 string
请参考签名认证生成认证信息
Accept 必填 string
请设置为application/json
Content-Type 必填 string
请设置为multipart/form-data
Body 包体参数
Form 表单
file 必填 object
出租车电子发票文件的二进制内容,只支持PDF格式,文件大小不能超过2M。需要在请求body中通过表单提交的方式上传此二进制内容。
meta 必填 object
出租车电子发票文件元信息
属性 | |
请求示例
POST
应答参数
应答示例
200 OK
请求步骤说明
1.获取请求的meta参数信息
文件元信息meta
使用json表示,包含四个字段:company_mchid
、digest
、digest_algorithm
、region_id
,各字段的说明请参考请求参数meta部分。
meta参数示例
2.生成请求签名
签名生成规则请参考:签名生成指南
2.1. 构造待签名串
参与签名计算的请求主体为meta
参数的json
串
待签名串示例
2.2. 计算签名值
根据待签名串计算出签名值signature
2.3. 设置HTTP头
Content-Type需设置为要上载的对象的MIME媒体类型:multipart/form-data;boundary=boundary,其中boundary为商户自定义的一个字符串
HTTP 头示例
2.4. 设置HTTP body
将文件元信息meta
参数和文件二进制数据放到请求HTTP的body中
HTTP body示例
3.发送请求
按照以上步骤构造完请求后,参考右侧示例发送请求
说明: 请求包体每行结尾都需要包含\r\n(空行也需要)
错误码
公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 请检查参数格式是否符合要求 | 请使用正确的参数重新调用 |
403 | NO_AUTH | 出租车公司不属于服务商 | 请检查出租车经营主体商户号,确认是【新增出租车公司】接口返回的商户号 |
403 | NO_AUTH | 服务商无权限 | 请检查是否已经开通出租车电子发票产品相关功能权限 |
404 | NOT_FOUND | 未找到指定的出租车经营主体信息 | 请检查出租车经营主体商户号和行政区划代码,确认公司存在且没有下线 |