简要描述:

  • 开具发票接口文档

接口版本:

版本号 制定人 制定日期 修订日期
1.0.0 杨铝杰 2020-02-24 2020-02-24

请求URL:

请求方式:

  • POST

请求头:

参数名 是否必须 类型 说明
Content-Type String 请求类型: application/json

请求参数:

参数名 是否必须 类型 说明
material String 发票材质:ELECTRONIC-电子发票 PAPER-纸质发票 默认ELECTRONIC
type String 发票类型:PLAIN-普通发票 VAT-专用发票 默认PLAIN
order_date String 订单支付日期yyyyMMdd,如不传默认开票当天日期,建议使用原交易日期
order_id String 交易订单号,建议使用原交易订单号,如不传默认按照规则随机生成
buyer_name String 开票抬头名称
buyer_tax_code String 开票税号,如发票类型为VAT,开票税号为必填项
buyer_addr String 购买方地址
buyer_phone String 购买方电话
buyer_bank String 购买方开户行
buyer_bank_no String 购买方银行帐户
amount String 开票金额,单位分
good_details String 商品明细
remark String 备注信息
notify_mobile String 通知人手机号,与邮箱二选一
notify_email String 通知人邮箱 ,与手机号二选一
mch_no String 商户号
sign String 签名
is_check String 是否需要审核,0-直接开票,不需要审核 1-需要审核后才能开票

商品明细:

商品明细 goodsDetail 的格式是 JSONArray,把每件商品的描述作为一个 JSONObject 加
入 JSONArray。单件商品描述信息包括一下,每项参数以 key-value 方式存入 JSONObject。

参数 名称 类型 参数说明 是否心填
index 行号 Int 行号,从 1 开始
attribute 发票行性质 String(1) 正常行 1: 折扣行 2: 被折扣行
discountIndex 折行对应行号 Int (有折扣,必填)
name 商品名称 String 折扣行与被折扣行一致
sn 商品编码 String 参考商品编码
taxRate 税率 Int
priceIncludingTax 含税总价格 double 单位为元 折扣行为负数
quantity 数量 double 默认为 1.0
unit 单位 String
model 规格型号 String
freeTaxType 免税类型 String 空:正常非零税率 0:出口退税 1:免税 2:不征税 3:普通零税率
preferPolicyFlag 是否使用优惠政策 String 0:否 1:是
vatSpecial 增值税特殊管理 String 取值参考‘优惠政策’小节

优惠政策:

商品明细中的免税类型、是否使用优惠政策、增值税特殊管理和税率等的取值可参考如下, 最终以税局出具的商品和服务税收分类与编码文档为准。

免税类型 freeTaxType 0 1 2 3
是否使用优惠政策 preferPolicyFlag 0:增值税特殊管理为空 1:增值税特殊管理不为空 1 1 1 0
增值税特殊管理 vatSpecial 空 超税负 3%即征即退 超税负 8%即征即退 超税负 12%即征即退 简易征收 按 3%简易征收 按 5%简易征收 按 5%简易征收减按1.5%计征 即征即退 30% 即征即退 50% 即征即退 70% 即征即退 100% 50%先征后退 100%先征后退 稀土产品 出口退税 免税 不征税
税率 taxRate 6 10 16 0 0 0 0

请求示例:

{
 "mch_no":"86110550FP01122",
 "buyer_name":"信瑞泰测试",
 "amount": "1",
 "sign":"5E8ECF47714EBE5E323D853EA49AAB73",
 "is_check":"1",
 "notify_mobile":"13826533585"
}

返回示例:

正确时返回(需审核开票):

{
  "retCode": "0000",
  "retMsg": "处理成功",
  "dataDetail": {
    "address": "",
    "create_ts": "2020-03-13T18:49:40.7240576+08:00",
    "email": "",
    "mch_no": "86110550FP08483",
    "mer_order_id": "202003131849407240576",
    "mobile": "13826533585",
    "phone": "",
    "qr_code_id": "2020031362333838343861312d333436392d3432",
    "sign": "",
    "status": 0,
    "tax_date": "2020-03-20T00:00:00+08:00",
    "tax_name": "信瑞泰测试",
    "tax_no": "",
    "total_fee": "1",
    "update_ts": "2020-03-13T18:49:40.7240576+08:00"
  }
}

正确时返回(直接开票):

{
  "retCode": "0000",
  "retMsg": "处理成功",
  "dataDetail": {
    "amount": "1",
    "buyerAccount": "",
    "buyerAddress": "",
    "buyerBank": "",
    "buyerName": "",
    "buyerTaxCode": "",
    "buyerTelephone": "",
    "checkCode": "",
    "checker": "陈雪君",
    "cipherCode": "",
    "deductionAmount": "0.0",
    "deviceNo": "",
    "drawer": "曾冬",
    "errMsg": "开票申请成功!",
    "goods_detail": "",
    "invalid": 1,
    "invoiceCode": "",
    "invoiceMaterial": "ELECTRONIC",
    "invoiceNo": "",
    "invoiceType": "PLAIN",
    "issueDate": "",
    "mch_no": "86110550FP08483",
    "merOrderDate": "20200313",
    "merOrderId": "202003131848023312805",
    "merWxAppId": "",
    "merWxOrderId": "",
    "msgId": "33373463333139372d343832382d343264302d613634632d6236366333363861",
    "notifyEmail": "",
    "notifyMerEmail": "",
    "notifyMobileNo": "",
    "notifyUrl": "",
    "payee": "黄婉芯",
    "pdfPreviewUrl": "https://fapiao.chinaums.com/d/1UblzBJ",
    "pdfUrl": "https://fapiao.chinaums.com/d/1UN7sgc",
    "qrCode": "https://fapiao.chinaums.com/d/1UblzBJ",
    "qrCodeId": "202003135241d889cd994d838aafda4e21309a43",
    "remark": "",
    "responseTimestamp": "2020-03-13 18:48:09",
    "sellerAccount": "78210188000170242",
    "sellerAddress": "深圳市罗湖区东门街道城东社区深南东路2010号奥康德大厦8层802室",
    "sellerBank": "中国光大银行深圳深南东路支行",
    "sellerName": "深圳市信瑞泰科技有限公司",
    "sellerTaxCode": "914403003593837068",
    "sellerTelphone": "",
    "sign": "77C33D6F36DF0D703A2BAD343A582EE5F9FDE71A2D5B1751F28E06B73C7DAB24",
    "srcReserve": "",
    "status": "ISSUING",
    "storeId": "",
    "storeName": "信瑞泰科技",
    "taxMethod": "NORMAL",
    "totalPrice": "0.009433962264150943",
    "totalPriceIncludingTax": "0.01",
    "totalTax": "0.0005660377358490566",
    "userNotifyUrl": ""
  }
}

错误时返回:

{
    "retcode": "500",
    "errmsg": "系统错误"
}

返回参数说明:

参数名 类型 说明
retCode String 0000为成功,其他失败
retMsg String 返回消息
dataDetail Json Object 返回数据详情
mchNo String 商户号
status String PENDING:待开具 ISSUING:开具中 ISSUED:已开具 REVERSING:红冲中 REVERSED:已红冲 CLOSED:已关闭
invoiceMaterial String 发票材质,纸质发票:PAPER 电子发票:ELECTRONIC
invoiceType String 发票类型,普通发票:PLAIN 增值税专用发票:VAT
invoiceNo String 发票号码
invoiceCode String 发票代码
checkCode String 校验码
cipherCode String 密码区
issueDate String 开票日期
merchantName String 银商商户名称
merchantId String 银商商户号
terminalId String 银商商户终端号
orderId String 订单号
merOrderDate String 订单日期 yyyyMMdd
buyerName String 买方名称
buyerTaxCode String 买方纳税人识别号
buyerAddress String 买方地址
buyerTelephone String 买方电话
buyerBank String 买方开户行
buyerAccount String 买方银行账号
sellerName String 卖方名称
sellerTaxCode String 卖方纳税人识别号
sellerAddress String 卖方地址
sellerTelphone String 卖方电话
sellerBank String 卖方开户行
sellerAccount String 卖方账号
payee String 收款人
checker String 复核人
drawer String 开票人
taxMethod String 征税方式,NORMAL:普通征税 DEDUCTION:差额征税
deductionAmount String 扣除额,单位元
totalPriceIncludingTax String 扣除额,单位元
totalTax String 税额
totalPrice String 不含税总金额
goodsDetail String 商品明细
notifyMobileNo String 消费者手机号
notifyEmail String 消费者邮箱
notifyUrl String 商户通知地址
qrcodeId String 二维码唯一标识
qrcode String 领票二维码
pdfUrl String pdf下载链接
pdfPreviewUrl String pdf预览链接
errMsg String 开票结果信息
sign String 签名

备注:

  • 更多返回错误代码请看首页的错误代码描述
文档更新时间: 2020-03-14 12:13   作者:高俭