首页 > 开放平台 > 诺税通saas > 订单开票
开放平台/订单开票/诺税通saas订单创建接口

诺税通saas订单创建接口

2026-09-24 更新 阅读 版本 v1.0

接口说明

用于诺税通Saas订单开票模块的企业原始订单创建,创建成功的订单,可人工在诺税通销项应用页面中进行原始订单拆分合并开具发票。

API 方法名:nuonuo.OpeMplatform.saveOrder 版本:V2.0

请求地址

环境请求地址
正式环境https://sdk.nuonuo.com/open/v1/services
沙箱环境https://sandbox.nuonuocs.cn/open/v1/services

公共请求参数(消息头)

参数名类型必填长度说明示例
Content-typeString否-MIME类型【消息头】-

公共请求参数(消息体)

参数名类型必填长度说明示例
senidString否-唯一标识,由企业自己生成32位随机码【消息体】-

私有请求参数

参数名类型必填长度说明示例
orderTypeString否1订单类型:1销售单,2退货单1
autoInvoiceFlagString是-是否自动开票(false:订单只入库; true:订单入库后自动完成开票全流程 ;只能传false或true,不传默认false)false
repeatCallString是-订单号重复时的处理方式(0:报错 1:覆盖原订单,仅订单状态为待处理时可以覆盖;不传默认0)1
orderInfoObject否-订单基础信息-
   └ originalOrderNoString否64订单编号:支持字母、数字、英文符号1234567890
   └ addDateString是50下单时间(年月日时分秒 格式yyyy-MM-dd HH:mm:ss)若无下单时间自动添加当前时间2022-03-25 14:20:30
   └ invoiceLineString否2发票种类(只能传 p:普通发票(电票) c:普通发票(纸票) s:专用发票(纸票) b:专用发票(电子) e:收购发票(电票) f:收购发票(纸质) r:普通发票(卷式) bs:数电专票(电子) pc:数电普票(电子) es:数电专票(纸质) ec:数电普票(纸质)中的 一种)p
   └ specificFactorString是20普通发票(默认)、1 成品油、4 货物运输、05不动产销售、6 不动产租赁、26 金银首饰批发、27 金银首饰零售、35 矿产品0
   └ saleTaxNumString是20销方税号(字母+数字 6-20字符),与companyCode不能同时为空1234567890111111
   └ saleAddressString是80销方地址,不传时去开票默认取系统内开票信息中配置的-
   └ salePhoneString是20销方电话,不传时去开票默认取系统内开票信息中配置的-
   └ saleAccountString是100销方开户行及账号,不传时去开票默认取系统内开票信息中配置的-
   └ buyerNameString是100客户名称,和customerCode二者必需传1个,优先取buyerName大菠萝网络科技有限公司
   └ naturalPersonFlagString是2购买方(客户)自然人标记,1是、0否,为空默认0,仅票种为pc时支持传入1
   └ taxNumString是20购方税号或个人证件号码913303456M48F34532
   └ accountString是150开户行及账号-
   └ addressString是100客户地址-
   └ telephoneString是20客户电话-
   └ phoneString是20交付手机,退货单开专票和数电发票时,固定取原蓝票的,可不传18399887766
   └ emailString是50交付邮箱,退货单开专票和数电发票时,固定取原蓝票的,可不传nuonuowang@qq.com
   └ ccPhoneString是100抄送手机,多个时用英文逗号隔开,最多支持5个,必须在phone字段有值时,才支持传入18399887766,18399882211
   └ ccEmailString是250抄送邮箱,多个时用英文逗号隔开,最多支持5个,必须在email字段有值时,才支持传入nuonuowang@qq.com,hahaha@qq.com
   └ customerCodeString是50客户编码,和customerCode二者必需传1个,优先取buyerName12345678
   └ orderRemarkString是200订单备注-
   └ remarkString是230发票备注,票种为数电票时为200字符-
   └ relateSaleOrderNoString是64原销售订单编号(退货单选填,销售单不生效)-
   └ salespersonString是20销售员-
   └ issuanceDateString是-发货日期(年月日 yyyy-MM-dd)2022-05-25
   └ clerkString是20开票员-
   └ payeeString是20收款人-
   └ checkerString是20复核人-
   └ callbackUrlString是-回调通知地址-
   └ yfpdmString是12原发票代码,退货单自动开票时,原发票代码不能为空-
   └ yfphmString是8原发票号码,退货单自动开票时,原发票号码不能为空-
   └ oldAllElectronicInvoiceNumberString是20原数电票号码,退货单自动开票且原蓝票为数电电票时,原数电票号码不能为空-
   └ deptIdString是-订单所属部门id,传诺诺网的部门id-
   └ clerkIdString是-订单所属票员id,传诺诺网开票员id-
   └ bField1String是200自定义字段1,需开通自定义字段功能-
   └ bField2String是200自定义字段2-
   └ bField3String是200自定义字段3-
   └ extensionNumberString是5分机号(当autoInvoiceFlag为true时根据分机号,机器编号,终端号查找开票设备)1
   └ machineCodeString是12机器编号(当autoInvoiceFlag为true时根据分机号,机器编号,终端号查找开票设备123456654321
   └ terminalNumberString是4终端号(当autoInvoiceFlag为true时根据分机号,机器编号,终端号查找开票设备-
   └ companyCodeString是20组织编码,saleTaxNum不传时,根据该字段匹配在诺税通工作台基础模块维护的组织编码,获得对应的销方税号;二者都传时,取saleTaxNum;有值时,topSaleTaxNum必传123456
   └ deptCodeString是50部门编码,根据该字段匹配在诺税通工作台基础模块维护的部门编码,获取订单对应的所属部门;优先取deptId123
   └ userCodeString是64用户编码,根据该字段匹配在诺税通工作台基础模块维护的用户编码,获取订单对应的所属用户;优先取userId123456789
   └ topSaleTaxNumString是20顶级公司税号,saleTaxNum不传,且companyCode有值时,必传150301199811285326
orderOriginalDetailsArray否-商品列表-
   └ rowNoString是64行编号(非序号,可与自身业务系统内唯一编号对应,订单内唯一)-
   └ goodsNameString否90商品名称-
   └ specString是40规格型号-
   └ unitString是22单位(当成品油标志为1时,需为升或吨)-
   └ numString是16数量,销售单传入正数,退货单传入负数 2、包含小数点最长不超过16位(小数点后最多13位),超出自动截取。数量、单价必须都不填,或者都必填。当数量、单价都不填时,金额必填12
   └ priceString是16单价,包含小数点最长不超过16位(小数点后最多13位),超出自动截取。数量、单价必须都不填,或者都必填。当数量、单价都不填时,金额必填12
   └ taxRateString是-税率0.13
   └ taxString是15税额,若自行传入时,折扣zke有值,请传未扣除折扣前的税额,折扣减掉的税额系统自动根据税率计算5.23
   └ taxAmountString否15金额 1、不能为0 2、销售订单传入正数,退货单传入负数 3、当数量、单价都不填时,金额必填22.34
   └ hsbzString否-含税标志:(0:否,1:是)-
   └ spbmString是-税收分类编码(没传,会根据商品名称和规格型号,去商品库匹配,若商品库未匹配成功,则会去税收分类编码表匹配)-
   └ yhzcbsString是1是否享受优惠政策:(0:否,1:是)-
   └ zzstsglString是-优惠政策类型,当是否享受优惠政策为是时,优惠政策类型必填-
   └ zkeString是15折扣金额(当该商品开折扣发票时传入;退货单时传入负数,且会用金额-折扣,跟税率重算税额后入库,建议退货单时不传,自行减掉折扣后传入)3.34
   └ discountTaxString是15折扣税额(当该商品开折扣发票时传入;如果不传入,系统会自动算出;如果传入值符合开票要求,则采用传入值)0.43
   └ lslbsString是1零税率标识1-免税 ,2-不征税, 3-其他优惠政策(普通0税率); 1、当税率为:0%,且增值税特殊管理:为“免税”, 零税率标识:需传“1” 2、当税率为:0%,且增值税特殊管理:为"不征税" 零税率标识:需传“2” 3、当税率为:0%,且增值税特殊管理:为空 零税率标识:需传“3”-
   └ dField1String是200商品明细自定义字段1-
   └ dField2String是200商品明细自定义字段2-
   └ dField3String是200商品明细自定义字段3-
   └ dField4String是200商品明细自定义字段4-
   └ dField5String是200商品明细自定义字段5-
invoiceGoodsTransportsArray是-货物运输信息列表,specificFactor为4且为销售单时,以下字段必传-
   └ transportToolString是1运输工具种类:1 铁路运输、2 公路运输、3 水路运输、4 航空运输、5 管道运输、6 其他运输工具1
   └ transportToolNumString是40运输工具牌号浙A12345
   └ originString是80起运地浙江省杭州市西湖区xxxxx
   └ destinationString是80到达地浙江省杭州市余杭区xxxxx
   └ goodsNameString是80运输货物名称苹果
realPropertyRentInfoObject是-开具不动产租赁特定要素的数电票才需要传(specificFactor为6时),其他特定业务时不入库。-
   └ realPropertyAddressString是-不动产地址(传对应省市区中文名称--需与行政区划名称一致)-
   └ detailAddressString是120详细地址(不动产地址+详细地址 总长度最大120字符,且必须包含 街、路、村、乡、镇、道 关键词)-
   └ rentStartDateString是-租赁开始日期(不能晚于租赁结束日期)2023-01-01
   └ rentEndDateString是-租赁结束日期(不能早于租赁开始日期)2023-01-30
   └ crossCityFlagString是2跨地(市)标志(0-否 1-是)-
   └ realPropertyCertificateString是40产权证书/不动产权证号-
   └ unitString是2面积单位(只能选其中一种:1 平方千米、2 平方米、3 公顷、4 亩、5 hm²、6 km²、7 m²)-
realPropertySellInfoObject是-开具不动产销售特定要素的数电票才需要传(specificFactor为05),其他特定业务时不入库。-
   └ realPropertyAddressString是-不动产地址(传对应省市区中文名称--需与行政区划名称一致)-
   └ detailAddressString是-详细地址(不动产地址+详细地址 总长度最大120字符,且必须包含 街、路、村、乡、镇、道 关键词)-
   └ crossCityFlagString是-跨地(市)标志(0-否 1-是)-
   └ realPropertyCertificateString是-产权证书/不动产权证号-
   └ unitString是-面积单位(只能选其中一种:1 平方千米、2 平方米、3 公顷、4 亩、5 hm²、6 km²、7 m²)-
   └ realPropertyContractNumbeString是-实际字段名称为realPropertyContractNumber,由于长度限制展示不全。不动产单元代码/网签合同备案编号-
   └ incrementTaxNumberString是-土地增值税项目编号-
   └ priceString是-核定计税价格-
   └ taxAmountString是-实际成交含税金额(当核定计税价格有值时必填)-
invoiceBuildingBaseInfoObject是-开具建筑服务特定要素的数电票才需要传(specificFactor为03),其他特定业务时不入库。-
   └ buildingAddressString是-建筑服务发生地,传入省市区中文名称,需与行政区划名称一致-
   └ detailedAddressString是120详细地址(建筑服务发生地与详细地址的长度加起来不超过120个字符)-
   └ landVatItemNoString是16土地增值税项目编号-
   └ itemNameString是80项目名称-
   └ crossCityFlagString是1跨地(市)标志(0-否,1-是)-
invoiceTravellerTransportObject是-完整字段名:invoiceTravellerTransportInfoList,specificFactor传9时,需要传旅客运输服务相关信息-
   └ travellerString是20出行人出行人1
   └ travelDateString是20出行日期,必须满足XXXX-XX-XX格式2022-12-12
   └ travellerCardTypeString是5出行人证件类型,例如:201居民身份证201
   └ travellerCardNoString是20出行人证件号码-
   └ travelPlaceString是80出发地出发地
   └ arrivePlaceString是80到达地到达地
   └ vehicleTypeString是1交通工具类型, 1-飞机,2-火车,3-长途汽车,4-公共交通,5-出租车,6-汽车,7-船舶,9-其他2
   └ vehicleLevelString是20当vehicleType为1(飞机)时,vehicleLevel必传,只能是公务舱、头等舱、经济舱;当vehicleType为2(火车)时,vehicleLevel必传,只能是一等座、二等座、软席(软座、软卧)、硬卧(硬座、硬卧);当vehicleType为7(船舶)时,vehicleLevel必传,只能是一等舱、二等舱、三等舱一等座

响应参数

参数名类型必填长度说明示例
statusString否-状态码0000
messageString否-描述信息调用成功

请求报文示例

NNOpenSDK sdk = NNOpenSDK.getIntance();
String taxnum = "23***789"; // 授权企业税号
String appKey = "Hn***XL";
String appSecret = "F65***65F";
String method = "nuonuo.OpeMplatform.saveOrder"; // API方法名
String token = "2d484e**************pdui"; // 访问令牌
String content = "{
  \"invoiceBuildingBaseInfo\": {
    \"buildingAddress\": \"\",
    \"crossCityFlag\": \"\",
    \"itemName\": \"\",
    \"landVatItemNo\": \"\",
    \"detailedAddress\": \"\"
  },
  \"orderType\": \"1\",
  \"invoiceGoodsTransports\": [
    {
      \"origin\": \"浙江省杭州市西湖区xxxxx\",
      \"transportTool\": \"1\",
      \"transportToolNum\": \"浙A12345\",
      \"destination\": \"浙江省杭州市余杭区xxxxx\",
      \"goodsName\": \"苹果\"
    }
  ],
  \"invoiceTravellerTransport\": {
    \"travellerCardType\": \"201\",
    \"arrivePlace\": \"到达地\",
    \"travelDate\": \"2022-12-12\",
    \"travelPlace\": \"出发地\",
    \"vehicleLevel\": \"一等座\",
    \"travellerCardNo\": \"\",
    \"traveller\": \"出行人1\",
    \"vehicleType\": \"2\"
  },
  \"autoInvoiceFlag\": \"false\",
  \"realPropertySellInfo\": {
    \"realPropertyAddress\": \"\",
    \"crossCityFlag\": \"\",
    \"realPropertyCertificate\": \"\",
    \"unit\": \"\",
    \"realPropertyContractNumbe\": \"\",
    \"price\": \"\",
    \"incrementTaxNumber\": \"\",
    \"detailAddress\": \"\",
    \"taxAmount\": \"\"
  },
  \"orderInfo\": {
    \"terminalNumber\": \"\",
    \"naturalPersonFlag\": \"1\",
    \"salePhone\": \"\",
    \"orderRemark\": \"\",
    \"customerCode\": \"12345678\",
    \"clerkId\": \"\",
    \"remark\": \"\",
    \"checker\": \"\",
    \"userCode\": \"123456789\",
    \"payee\": \"\",
    \"yfphm\": \"\",
    \"issuanceDate\": \"2022-05-25\",
    \"yfpdm\": \"\",
    \"invoiceLine\": \"p\",
    \"callbackUrl\": \"\",
    \"taxNum\": \"913303456M48F34532\",
    \"topSaleTaxNum\": \"150301199811285326\",
    \"specificFactor\": \"0\",
    \"email\": \"nuonuowang@qq.com\",
    \"companyCode\": \"123456\",
    \"address\": \"\",
    \"machineCode\": \"123456654321\",
    \"ccEmail\": \"nuonuowang@qq.com,hahaha@qq.com\",
    \"saleTaxNum\": \"1234567890111111\",
    \"deptId\": \"\",
    \"telephone\": \"\",
    \"buyerName\": \"大菠萝网络科技有限公司\",
    \"addDate\": \"2022-03-25 14:20:30\",
    \"clerk\": \"\",
    \"originalOrderNo\": \"1234567890\",
    \"salesperson\": \"\",
    \"bField1\": \"\",
    \"phone\": \"18399887766\",
    \"bField3\": \"\",
    \"extensionNumber\": \"1\",
    \"saleAccount\": \"\",
    \"bField2\": \"\",
    \"saleAddress\": \"\",
    \"relateSaleOrderNo\": \"\",
    \"oldAllElectronicInvoiceNumber\": \"\",
    \"account\": \"\",
    \"ccPhone\": \"18399887766,18399882211\",
    \"deptCode\": \"123\"
  },
  \"realPropertyRentInfo\": {
    \"realPropertyAddress\": \"\",
    \"crossCityFlag\": \"\",
    \"realPropertyCertificate\": \"\",
    \"unit\": \"\",
    \"rentEndDate\": \"2023-01-30\",
    \"detailAddress\": \"\",
    \"rentStartDate\": \"2023-01-01\"
  },
  \"repeatCall\": \"1\",
  \"orderOriginalDetails\": [
    {
      \"rowNo\": \"\",
      \"dField1\": \"\",
      \"dField3\": \"\",
      \"yhzcbs\": \"\",
      \"zzstsgl\": \"\",
      \"dField2\": \"\",
      \"dField5\": \"\",
      \"num\": \"12\",
      \"dField4\": \"\",
      \"tax\": \"5.23\",
      \"discountTax\": \"0.43\",
      \"spec\": \"\",
      \"taxRate\": \"0.13\",
      \"lslbs\": \"\",
      \"unit\": \"\",
      \"hsbz\": \"\",
      \"zke\": \"3.34\",
      \"price\": \"12\",
      \"taxAmount\": \"22.34\",
      \"goodsName\": \"\",
      \"spbm\": \"\"
    }
  ]
}";
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);

返回码说明

返回码说明处理建议
N9344销方税号不能为空检查参数请求头中businessTaxNum是否正确
N9302身份认证与当前企业税号不相符检查参数请求头中businessTaxNum是否正确
N9513企业资质不存在或已关闭检查参数请求头中businessTaxNum是否正确
N9559发票类型不匹配或为空检查发票类型是否配置正确
N9240成品油标志只能为0和1检查成品油标志是否正确配置
N9539销方税号只支持15-20位检查销方税号的长度是否正确
N9307税号只能包含数字和字母检查销方税号的格式是否正确
N9304购方名称不能为空检查购方名称是否正确
N9337开票员长度不能超过20位
N9320收款员长度不能超过20位
N9321复核人长度不能超过20位
N9376优惠政策标识只能为:[0,1]
N9381单价含税标志只能为0或1
N9584(商品数量+含税单价)和含税金额选一必传
标签: 诺税通saas
已经是第一篇

申请试用

请留下您的联系方式,我们将在一个工作日内与您联系