接口说明
红字专用发票信息表申请接口
API 方法名:nuonuo.OpeMplatform.InvoiceRedApply 版本:V2.0
请求地址
| 环境 | 请求地址 |
|---|
| 正式环境 | https://sdk.nuonuo.com/open/v1/services |
| 沙箱环境 | https://sandbox.nuonuocs.cn/open/v1/services |
公共请求参数(消息头)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| Content-type | String | 否 | - | MIME类型【消息头】 | - |
公共请求参数(消息体)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| senid | String | 否 | - | 唯一标识,由企业自己生成32位随机码【消息体】 | - |
私有请求参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| billNo | String | 否 | 24 | 24 位申请单号:12 位 金税盘编号+12 位该 红字信息表请求时间 (YYMMDDHHMMSS) | 661545611111111233232323 |
| buyerName | String | 否 | 100 | 购方名称 | 诺诺网 |
| buyerTaxNo | String | 否 | 20 | 购方税号 | 914419001234567890 |
| applyRemark | String | 是 | 10 | 申请说明: 1100000000,购方申请-已抵扣;1010000000,购方申请-未抵扣; 0000000100,销方申请(默认) | 0000000100 |
| invoiceLine | String | 否 | 1 | 发票种类: s 增值税专用发票,b 增值税电子专用发票 | s |
| oriInvoiceCode | String | 否 | 12 | 对应蓝票代码,10位或12位,11位请左补0 | 5000201530 |
| oriInvoiceNumber | String | 否 | 8 | 对应蓝票号码,不满8位请左补0 | 46829224 |
| blueInvoiceTime | String | 是 | 6 | 对应蓝票的开票年月,YYYYMM格式 | 202011 |
| sellerName | String | 否 | 20 | 销方名称 | 移动测试盘 |
| sellerTaxNo | String | 否 | 20 | 销方税号 | 150301199811285326 |
| taxAmount | Number | 否 | - | 合计税额,带负号,精确到小数点后面两位 | -0.12 |
| taxExcludedAmount | Number | 否 | - | 合计不含税金额,带负号,精确到小数点后面两位 | -0.88 |
| clerkId | String | 是 | 32 | 开票员id(诺诺网系统中的id) | 3F7EA439CA8B4C60A2FFF3EA3290B084 |
| departmentId | String | 是 | 32 | 部门门店id(诺诺网系统中的id) | 9F7E9439CA8B4C60A2FFF3EA3290B088 |
| productOilFlag | String | 否 | 1 | 成品油标志:0,非成品油;1,成品油 | 0 |
| vehicleFlag | String | 是 | 1 | 0-非机动车(默认);1-机动车 | 0 |
| specificFactor | String | 是 | 2 | 特定要素:0普通发票(默认)、2 稀土、34 电子烟、35 矿产品 | 0 |
| billType | String | 是 | 1 | 0-正常(默认);1-逾期;2-机动车类专票信息表(涉及退货和开具错误等,合格证退回);3-机动车类专票信息表(仅涉及销售折让,合格证不退回);4-矿产品类专用信息表(涉及销售数量和金额变更);5-矿产品类专用信息表(仅涉及销售金额变更,不涉及数量变动) | 0 |
| extensionNumber | String | 是 | 5 | 分机号 | 0 |
| machineCode | String | 是 | 12 | 机器编号 | 661288888888 |
| terminalNumber | String | 是 | 4 | 终端号 | 1 |
| callbackUrl | String | 是 | 150 | 信息表回调地址 | http:127.0.0.1/invoice/scan |
| invoiceRedApplyDetails | Array | 否 | - | 红字申请明细 | - |
| └ goodsCode | String | 否 | 19 | 商品编码 | 1030101010000000000 |
| └ selfCode | String | 是 | 20 | 企业自编码 | - |
| └ goodsCodeAbb | String | 是 | 90 | 商品编码简称,当企业资质配置追加简称时,则此项必填。商品编码简称+商品名称不超过90位 | 谷物细粉 |
| └ goodsName | String | 否 | 90 | 商品名称:商品编码简称+商品名称不超过90 位。 | 商品名称qqq |
| └ num | String | 是 | 16 | 数量,带负号;数量、单价必须都不填,或者都必填,不可只填一个;当数量、单价都不填时,商品金额(不含税)、商品税额都必填。建议保留小数点后8位。最大支持16位数字(小数点后最多13位) | -1 |
| └ specType | String | 是 | 40 | 规格型号 | 袋装 |
| └ taxAmount | String | 是 | - | 商品税额,带负号,精确到小数点后面两位。商品金额 (不含税)、商品税额任何一个不传时,会根据传入的单价含税标志、单价、 数量进行计算, 可能和实际数值存在误差,建议都传入。 | -0.12 |
| └ taxExcludedAmount | String | 是 | 16 | 商品金额(不含税);带负号,精确到小数点后面两位。商品金额 (不含税)、商品税额任何一个不传时,会根据传入的单价含税标志、单价、数量进行计算,可能和实际数值存在误差,建议都传入。 | -0.88 |
| └ deductions | String | 是 | 16 | 扣除额(带负号),小数点后两位。差额征收的发票目前只支持一行明细。不含税差额 = 不含税金额 - 扣除额; 税额 = 不含税差额*税率。 | 0 |
| └ taxExcludedPrice | String | 是 | 16 | 单价(不含税)为正数,如单价含税标志 withTaxFlag=false,则此项必填。数量、单价必须都不填,或者都必填,不可只填一个;当数量、单价都不填时,商品金额 (不含税)、商品税额都必填。建议金税盘保留小数点后8位;百旺盘保留小数点后6位 | 0.88 |
| └ price | String | 是 | 16 | 单价(含税)为正数,如单价含税标志withTaxFlag=true,则此项必填。数量、单价必须都不填,或者都必填,不可只填一个;当数量、单价都不填时,商品金额(不含税)、商品税额都必填。 建议金税盘保留小数点后8位;百旺盘保留小数点后6位。最大支持16位数字(小数点后最多13位) | 1.0 |
| └ taxRate | String | 否 | 10 | 税率 | 0.13 |
| └ unit | String | 是 | 22 | 单位 | 袋 |
| └ withTaxFlag | String | 否 | - | 单价含税标志:false,不含税;true,含税 | false |
| └ favouredPolicyFlag | String | 是 | - | 优惠政策标识:false,不使用;true,使用 | false |
| └ favouredPolicyName | String | 是 | 50 | 优惠政策内容:即征即退、免税、简易征收等, 当优惠政策标识favouredPolicyFlag为1时,则此项必填。 | 免税 |
| └ zeroRateFlag | String | 是 | 1 | 零税率标识:空,非零税率;1,免税;2,不征税;3,普通零税率 | - |
响应参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| code | String | 否 | - | 结果代码 | E0000 |
| describe | String | 否 | - | 详细信息 | 同步成功 |
| result | Object | 否 | - | 业务数据(A9+开票服务器类型时同步返回如下的申请结果) | - |
| └ billNo | String | 否 | - | 24位申请单号 | 661545611111111233232323 |
| └ billInfoNo | String | 否 | - | 信息表编号 | 1403011905002804 |
| └ billStatus | String | 否 | - | 信息表状态(0:申请中 1:审核成功 2:审核失败 3:申请成功 4:申请失败 6:撤销中 7:撤销失败 8:已撤销) | 1 |
| └ billMessage | String | 否 | - | [信息表状态代码]信息表状态描述 | "[TZD0000]审核通过" |
请求报文示例
NNOpenSDK sdk = NNOpenSDK.getIntance();
String taxnum = "23***789"; // 授权企业税号
String appKey = "Hn***XL";
String appSecret = "F65***65F";
String method = "nuonuo.OpeMplatform.InvoiceRedApply"; // API方法名
String token = "2d484e**************pdui"; // 访问令牌
String content = "{
\"terminalNumber\": \"1\",
\"machineCode\": \"661288888888\",
\"buyerTaxNo\": \"914419001234567890\",
\"taxExcludedAmount\": -0.88,
\"departmentId\": \"9F7E9439CA8B4C60A2FFF3EA3290B088\",
\"billType\": \"0\",
\"invoiceRedApplyDetails\": [
{
\"specType\": \"袋装\",
\"taxExcludedAmount\": \"-0.88\",
\"favouredPolicyName\": \"免税\",
\"goodsCodeAbb\": \"谷物细粉\",
\"num\": \"-1\",
\"withTaxFlag\": \"false\",
\"favouredPolicyFlag\": \"false\",
\"deductions\": \"0\",
\"taxRate\": \"0.13\",
\"unit\": \"袋\",
\"price\": \"1.0\",
\"zeroRateFlag\": \"-\",
\"goodsCode\": \"1030101010000000000\",
\"selfCode\": \"-\",
\"taxAmount\": \"-0.12\",
\"taxExcludedPrice\": \"0.88\",
\"goodsName\": \"商品名称qqq\"
}
],
\"sellerName\": \"移动测试盘\",
\"oriInvoiceNumber\": \"46829224\",
\"clerkId\": \"3F7EA439CA8B4C60A2FFF3EA3290B084\",
\"vehicleFlag\": \"0\",
\"buyerName\": \"诺诺网\",
\"blueInvoiceTime\": \"202011\",
\"sellerTaxNo\": \"150301199811285326\",
\"applyRemark\": \"0000000100\",
\"oriInvoiceCode\": \"5000201530\",
\"productOilFlag\": \"0\",
\"extensionNumber\": \"0\",
\"invoiceLine\": \"s\",
\"callbackUrl\": \"http:127.0.0.1/invoice/scan\",
\"taxAmount\": -0.12,
\"billNo\": \"661545611111111233232323\",
\"specificFactor\": \"0\"
}";
String url = "https://sdk.nuonuo.com/open/v1/services"; // SDK请求地址
String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
System.out.println(result);
返回码说明
| 返回码 | 说明 | 处理建议 |
|---|
E0000 | 同步成功 | |
E9512 | 申请单号不能超过 24 位 | |
E9520 | 只支持专票申请 | |
E9522 | 该发票为红字发票,不能冲红 | |
E9529 | 购方税号不能为空 | |