接口说明
未入账发票提交入账。已入账/撤销入账数据支持变更入账
API 方法名:nuonuo.OpeMplatform.submitEnterAccount 版本:V2.0
请求地址
| 环境 | 请求地址 |
|---|
| 正式环境 | https://sdk.nuonuo.com/open/v1/services |
| 沙箱环境 | https://sandbox.nuonuocs.cn/open/v1/services |
公共请求参数(消息头)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| Content-type | String | 否 | - | MIME类型【消息头】 | - |
公共请求参数(消息体)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| senid | String | 否 | - | 唯一标识,由企业自己生成32位随机码【消息体】 | - |
私有请求参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| invData | Array | 否 | - | 发票数据列表(最多100张发 票) | - |
| └ invoiceCode | String | 是 | - | 发票代码 | - |
| └ invoiceNumber | String | 是 | - | 发票号码(发票号码和全电号码至少必填一项) | - |
| └ elecInvoiceNumber | String | 是 | - | 全电发票号码(发票号码和全电号码至少必填一项) | 23442000000256668445 |
| └ enterAccountStatus | String | 否 | - | 入账状态(02:已入账-企业所得税税前扣除;03:已入账-企业所得税不扣除;06:撤销入账) | 03 |
| └ enterAccountTime | String | 是 | - | 入账日期(入账状态为02或03时必传) | 2023-10-27 |
| enterAccountMode | Number | 否 | - | 1:提交入账(原始状态为未入账) 2:变更入账(原始状态为已入账和入账撤销) | 1 |
| eleAccount | String | 是 | - | 数电平台登录账号 | - |
| role | Number | 是 | - | 数电平台登录身份 1-开票员 2-办税员 3-管理员 4-财务负责人 5-法定代表人 | 1 |
响应参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| code | String | 否 | - | | E0000 |
| describe | String | 否 | - | | 调用成功 |
| result | Object | 否 | - | | - |
| └ taskNo | String | 否 | - | | 20e5bdfa358f452a8376ea406d329285 |
请求报文示例
NNOpenSDK sdk = NNOpenSDK.getIntance();
String taxnum = "23***789"; // 授权企业税号
String appKey = "Hn***XL";
String appSecret = "F65***65F";
String method = "nuonuo.OpeMplatform.submitEnterAccount"; // API方法名
String token = "2d484e**************pdui"; // 访问令牌
String content = "{
\"role\": 1,
\"eleAccount\": \"\",
\"invData\": [
{
\"elecInvoiceNumber\": \"23442000000256668445\",
\"enterAccountStatus\": \"03\",
\"invoiceNumber\": \"\",
\"enterAccountTime\": \"2023-10-27\",
\"invoiceCode\": \"\"
}
],
\"enterAccountMode\": 1
}";
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);
响应报文示例
{
"code": "E0000",
"describe": "调用成功",
"result": {
"taskNo": "20e5bdfa358f452a8376ea406d329285"
}
}
返回码说明
| 返回码 | 说明 | 处理建议 |
|---|
E0000 | 成功 | |
E8045 | 入账方式不能为空 | 检查请求参数 |
E9999(1) | 入账数据不能为空 | 检查请求参数 |
E9999(2) | 入账数据不能大于100条 | 缩小数据列表 |
E8000 | 发票不存在 | 同步入账发票数据 |
E8047 | 发票信息不全,请先同步入账数据 | 同步入账发票数据 |
E8048 | 入账操作只支持发票状态正常和部分冲红发票 | 检查请求参数 |
E8049 | 入账操作只支持风险等级正常和疑点发票 | 检查请求参数 |
E8050 | 发票入账操作中,请先同步入账发票数据 | 同步入账发票数据 |
E8051 | 发票已操作入账不能提交入账 | 检查请求参数 |
E8052 | 提交入账时入账状态参数不能为撤销入账 | 检查请求参数 |
E8053 | 发票未入账不能调整入账状态 | 检查请求参数 |
E8054 | 入账状态参数不能为空 | 检查请求参数 |
E8055 | 入账时间参数不正确 | 检查请求参数 |