发票开立请求
所有接口都要遵循接口说明的要求,请求参数放在body字段下传输,且在请求前,先要获取数据签名。
请求地址
环境 | 请求地址 |
正式环境 | https://www.cargonpay.com/prod-api/ret/api |
测试环境 | http://221.238.46.76:9889/ret/api |
接口名称
api.invoice.draw
请求参数
M–必填 O–非必填 C–一定条件下必填
序号 | 标识 | 字段名称 | 字段类型 | 要求 | 说明 |
1 | body | 发票信息 | Object[] | M | |
2 | serialNo | 请求流水号 | Varchar(32) | M | 例:yyyyMMddHHmmssfff+6位随机数 (每张发票流水号唯一,开票失败时,流水号可重复使用, 此时会按新的请求数据更新原来的开票数据,重新开票) |
3 | customerName | 购方-全称 | Varchar(100) | M | 购方-全称 |
4 | customerCode | 购方-识别号 | Varchar(20) | O | 购方-识别号 |
5 | customerAddress | 购方-地址 | Varchar(79) | O | 购方-地址 |
6 | customerTel | 购方-电话 | Varchar(20) | O | 购方-电话 |
7 | customerBankName | 购方-开户行名称 | Varchar(69) | O | 购方-开户行名称 |
8 | customerBankAccount | 购方-开户行账号 | Varchar(30) | O | 购方-开户行银行账号 |
9 | partnerBankName | 销方-开户行名称 | Varchar(69) | M | 销方-开户行名称 |
10 | partnerBankAccount | 销方-开户行账号 | Varchar(30) | M | 销方-开户行银行账号 |
11 | drawer | 开票人 | Varchar(8) | M | |
12 | payee | 收款人 | Varchar(8) | O | |
13 | reviewer | 复核人 | Varchar(8) | O | |
14 | currency | 币别 | Varchar(20) | M | 币别,包含USD、CNY |
15 | currencyRate | 汇率 | Decimal(10,7) | C |
币别为CNY时,默认1.00 币别为USD时,必填 |
16 | remarkType | 备注方式 | Int | O | 0-自定义,人民币发票默认 1-固定模板+自定义 固定模板为:USDxxx,汇率xxx,限美金支付 |
17 | remark | 发票备注 | Varchar(460) | C | 发票备注,换行用 开具普通增值税电子发票长度限制为130长度,全电发票长度限制为460长度; 如为美金发票,模板备注会在最上行展示; 注意:模板备注会占用130字节的长度约束; 美金发票不使用模板,需要备注中包含“USD”、“$”、“美金”其中一种,如:美金 100 |
18 | 购方收票邮箱 | Varchar(255) | M | 购方接收邮箱,可以是多个,以”、”隔开,且顿号占一个字符长度 | |
19 | sellerEmail | 销方收票邮箱 | Varchar(255) | M | 销方接收邮箱,可以是多个,以”、”隔开,且顿号占一个字符长度 |
20 | invoiceDrawType | 开票方式 | Varchar(10) | M | 10 – 电票 20 – 纸质普通发票 30 – 纸质专用发票 40 – 全电发票 60 – 全电专票 |
21 | details | 发票明细 | Object[] | M | |
22 | goodsName | 商品名称 | Varchar(50) | M | 商品名称 |
23 | type | 发票行性质 | Int | O | 默认0 |
24 | spec | 规格型号 | Varchar(40) | O | 默认空 |
25 | unit | 单位 | Varchar(20) | C | |
26 | price | 商品单价 | Decimal(18,2) | M | 商品单价不为空时,商品数据不可为空 |
27 | quantity | 商品数量 | Int | M | 商品数量不为空时,商品单价不可为空 |
28 | catalogCode | 商品分类编码 | Varchar(19) | M | |
29 | zeroTaxRateFlag | 零税率标识 | Varchar(1) | M | 0-非零税率;1-免税;2-不征税;3-普通零税率 |
30 | taxRate | 税率 | Decimal(18,2) | C | 零税率标识为0,必填 |
请求示例
JSON格式
[{ "serialNo": "", "customerName": "", "customerCode": "", "customerAddress": "", "customerTel": "", "customerBankName": "", "customerBankAccount": "", "partnerBankName": "", "partnerBankAccount": "", "drawer": "", "payee": "", "reviewer": "", "currency": "", "currencyRate": "", "remarkType": "", "email": "", "remark": "", "invoiceDrawType": "", "details": [{ "goodsName": "", "type": "", "spec": "", "unit": "", "price": "", "quantity": "", "catalogCode": "", "zeroTaxrateFlag": "", "taxRate": "" }, { "goodsName": "", "type": "", "spec": "", "unit": "", "price": "", "quantity": "", "amount": "", "catalogCode": "", "zeroTaxrateFlag": "", "taxRate": "" }] }]
复制代码
响应参数
索引 | ID | 名称 | 类型及长度 | 必须 | 说明 |
1 | code | 返回状态码 | varchar(10) | 是 | 参考接口说明请求响应码对照表 |
2 | message | 返回消息 | varchar(200) | 是 | |
3 | data | 返回的数据 | object | 否 | 如果开票或冲红失败,该字段为空值 |
响应示例
JSON格式
[{ "code": "200", "message": "请求成功", "data": object }]
复制代码
- 请求地址
- 接口名称
- 请求参数
- 请求示例
- 响应参数
- 响应示例