# 托运方开票申请

接口名称:/trade/applicationInvoice

1、一次申请超过商家设定的最大开票金额直接拦截报错

2、电子发票+需要清单需要限制运单数不能超过100条

3、数电发票必须带清单,运单数不能超过500条

请求参数:

序号 层级 英文名称 中文名称 类型 长度 是否必填 说明
1 1 transportBillNumberList 运单号列表 List<String>
2 1 invoiceAmount 申请开票总金额 Long 20 单位为“分”
3 1 buyerName 购票方名称 String 64 购票方名称
4 1 buyerCreditCode 购票方纳税人统一社会信用代码 String 64
5 1 invoicePhone 联系电话(开票用) String 64
6 1 invoiceAddress 发票抬头地址(完整地址) String 512
7 1 bankDeposit 开户银行 String 64
8 1 bankCardNumber 银行卡号 String 64
9 1 needInvoiceType 要求发票类型 Integer 2 1-仅支持纸质发票 2-仅支持电子发票 3-支持数电发票,需根据平台配置
10 1 receiverName 收件人 String 64
11 1 receiverPhone 联系电话 String 20 发票类型为纸质必填
12 1 receiverProvince 省 行政区划码 String 10 发票类型为纸质必填
13 1 receiverCity 市 行政区划码 String 10 发票类型为纸质必填
14 1 receiverDistrict 区县 行政区划码 String 10 发票类型为纸质必填
15 1 receiverProvinceName 省名称 String 64 发票类型为纸质必填
16 1 receiverCityName 市名称 String 64 发票类型为纸质必填
17 1 receiverDistrictName 区名称 String 64 发票类型为纸质必填
18 1 receiverLocation 详细地址 String 64 发票类型为纸质必填
19 1 email 电子邮箱 String 64 发票类型为电子必填
20 1 inventory 是否需要清单 Integer 2 是否需要清单: 0-不需要 1-需要
21 1 invoiceUnits 开票单位 String 10 可支持:吨、千克、立方、件、车、趟、批(一定要选择不需要清单)、不填单位(填批默认是不需要清单)
22 1 invoiceQuantity 开票数量 String 10 需根据单位级联: 吨或者千克: 装货重量、卸货重量、装卸货重量最小值、装卸货重量最大值 立方: 装货体积、卸货体积、装卸货体积最小值、装卸货体积最大值 件: 装货件数、卸货件数、装卸货件数最小值、装卸货件数最大值 车+需要清单: 清单中每车数量为1 车+不需要清单: 按总车数汇总 趟+需要清单: 清单中每趟数量为1 趟+不需要清单: 按总趟数汇总 批: 数量填1 不填单位: 不填数量
23 1 model 规格型号 String 64 非必选。如需选择,仅支持从车牌号、货物名称选择一个
24 1 invoiceRemark 发票备注要求 String 200 发票备注要求在GBK编码下字节长度最长为200(中文占两个字节,英文、数字、特殊字符占一个字节)
25 1 remark 其他备注 String 256

返回结果:

序号 英文名称 中文名称 类型 说明
1 invoiceProofNumber 开票凭证号 String
2 invoiceAmount 申请开票总金额 Long 单位:分
3 serviceCost 服务费 Long 单位:分
4 shipperTransportCost 托运方运费 Long 单位:分
5 transportBillCount 运单数 Long

mock 数据示例

{
        "code": "00000",
        "data": {
             "invoiceProofNumber":"202208010210015714",
             "invoiceAmount":11100,
             "serviceCost":1000,
             "shipperTransportCost":10000,
             "transportBillCount":1
        },
        "message": "请求成功"
 }

# 撤销开票申请

接口名称: /trade/cancelApplicationInvoice

请求参数:

序号 层级 英文名称 中文名称 类型 长度 是否必填 说明
1 1 invoiceProofNumber 开票凭证号 String

返回结果

成功or失败

mock数据示例:

{
  "code": "00000",
  "data": true,
  "message": "请求成功"
}

# 查询开票状态

接口名称:/trade/getShipperInvoiceProof

请求参数:

序号 层级 英文名称 中文名称 类型 长度 是否必填 说明
1 1 invoiceProofNumber 开票凭证号 String

返回结果:

序号 层级 英文名称 中文名称 类型 说明
1 1 invoiceProofNumber 开票凭证号 String
2 1 auditStatus 开票单审核状态 Integer 审核状态: 1-已拒绝 2-审核中 3-已通过
3 1 rejectMsg 审核拒绝原因 String
4 1 transportBillNumberList 运单号列表 List<String>
5 1 invoiceAmount 申请开票总金额 Long 单位:分
6 1 demandInfo 发票清单
7 2 buyerName 购票方名称 String
8 2 buyerCreditCode 购票方纳税人社会统一信用代码 String
9 2 invoicePhone 联系电话(开票用) String
10 2 invoiceAddress 发票抬头地址(完整地址) String
11 2 bankDeposit 开户银行 String
12 2 bankCardNumber 银行卡号 String
13 2 needInvoiceType 发票类型 Integer 1-纸质发票
2-电子发票
3-数电发票
14 2 receiverName 收件人姓名 String
15 2 receiverPhone 联系人电话 String 纸质发票,该字段存在值
16 2 receiverProvince 省行政区划码 String 纸质发票,该字段存在值
17 2 receiverCity 市行政区划码 String 纸质发票,该字段存在值
18 2 receiverDistrict 区行政区划码 String 纸质发票,该字段存在值
19 2 receiverProvinceName 省份名称 String 纸质发票,该字段存在值
20 2 receiverCityName 市名称 String 纸质发票,该字段存在值
21 2 receiverDistrictName 区名称 String 纸质发票,该字段存在值
22 2 receiverLocation 详细地址 String 纸质发票,该字段存在值
23 2 email 电子邮箱 String 电子发票,该字段存在值
24 2 inventory 是否需要清单 Integer 0-不需要 1-需要
25 2 invoiceUnits 开票单位 String 吨、千克、立方、件、车、趟、批或不填单位
26 2 invoiceQuantity 开票数量 String
27 2 model 规格型号 String
28 2 invoiceRemark 发票备注要求 String
29 2 remark 其他备注 String

mock 数据示例

{
  "code": "00000",
  "data": {
    "invoiceProofNumber": "",
    "auditStatus": 3,
    "rejectMsg": null,
    "transportBillNumberList": [""],
    "invoiceAmount": 100000,
    "demandInfo": {
        "buyerName": "",
        "buyerCreditCode": "",
        "invoicePhone": "",
        "invoiceAddress": "",
        "bankDeposit": "",
        "bankCardNumber": "",
        "needInvoiceType": 2,
        "receiverName": null,
        "receiverPhone": null,
        "receiverProvince": null,
        "receiverCity": null,
        "receiverDistrict": null,
        "receiverProvinceName": null,
        "receiverCityName": null,
        "receiverDistrictName": null,
        "receiverLocation": null,
        "email": "zhangsan@168.com",
        "inventory": 1,
        "invoiceUnits": "吨",
        "invoiceQuantity": "装卸货重量最小值",
        "model": "车牌号",
        "invoiceRemark": "",
        "remark": null
        }
    },
  "message": "请求成功"
}

# 托运方发票信息查询

接口名称:/trade/getShipperInvoiceInfo

请求参数:

序号 层级 英文名称 中文名称 类型 长度 是否必填 说明
1 1 invoiceProofNumber 开票凭证号 String

返回结果:

序号 层级 英文名称 中文名称 类型 说明
1 1 invoiceProofNumber 开票凭证号 String
2 1 invoiceTime 开票时间 String "yyyy-MM-dd HH:mm:ss"
3 1 invoiceNumber 发票号码 String
4 1 invoiceUrls 发票URL地址 String 若有多个,则用英文逗号隔开
5 1 transportBillNumberList 运单号列表 List<String>

mock 数据示例

{
  "code": "00000",
  "data":{
    "invoiceProofNumber": "",
    "invoiceNumber": "",
    "invoiceUrls": "",
    "transportBillNumberList": ["",""]
  },
  "message": "请求成功"
}

# 开票审核回调通知接口

1.请求头会携带sign参数,用于鉴权

serviceName : invoiceAuditNotify

接口名称:由接入方提供回调地址

请求参数

序号 层级 英文****名称 中文名称 类型 长度 是否必填 说明
1 1 serviceName 服务名 String
2 1 apiId 接入appId String
3 1 invoiceProofNumber 开票凭证号 String
4 1 auditStatus 审核状态 Integer 20 审核状态: 1-已拒绝 2-审核中 3-已通过
5 1 rejectMsg 拒绝原因 String 64 长度64

mock 数据示例

{
    "apiId":"9fa5c1643b454f7ab2e026082d610e6b",  
    "invoiceProofNumber":"20400",
    "auditStatus":3,
    "rejectMsg":"",
    "serviceName":"invoiceAuditNotify"
}

返回参数

序号 英文名称 中文名称 类型 说明
1 code 结果码 String 1-成功 2-失败
3 message 结果文本 String 结果文本

mock 数据示例

{
        "code": "1",
        "message": "请求成功"
 }

# 开票成功回调通知接口

1.请求头会携带sign参数,用于鉴权

serviceName : invoiceSuccessNotify

接口名称:由接入方提供回调地址

请求参数

序号 层级 英文****名称 中文名称 类型 长度 是否必填 说明
1 1 serviceName 服务名 String
2 1 apiId 接入appId String
3 1 invoiceProofNumber 开票凭证号 String
4 1 invoiceTime 开票时间 String 64 "yyyy-MM-dd HH:mm:ss"
5 1 invoiceStatus 开票状态 Integer 20 开票状态: 70-开票成功
6 1 invoiceUrls 发票url String 64 多张发票以逗号分隔

mock 数据示例

{
    "apiId":"9fa5c1643b454f7ab2e026082d610e6b",
    "invoiceProofNumber":"20400",
    "invoiceStatus":70,
    "invoiceUrls":"",
    "serviceName":"invoiceSuccessNotify"
}

返回参数

序号 英文名称 中文名称 类型 说明
1 code 结果码 String 1-成功 2-失败
3 message 结果文本 String 结果文本

mock 数据示例

{
        "code": "1",
        "message": "请求成功"
 }