NetSuite新手求助:如何通过REST API设置客户默认Tax Item为非应税?
NetSuite REST API 客户税务设置问题解答
Tax Item字段的REST API可用性
- NetSuite REST API中,Tax Item(内部字段ID为
taxitem)是对客户记录开放的,但需要注意两点:- 要确认你的REST API记录定义中已启用该字段(可通过NetSuite自带的REST API浏览器查看客户记录的可用字段列表)
- 调用时必须传入该税务项目的内部ID,而非显示名称“non-taxable”——你需要先调用
taxitem资源接口查询到“non-taxable”对应的内部ID,再在创建客户时指定该值。
替代实现方案
如果直接设置taxitem仍未生效,可尝试以下两种可靠方式实现非应税销售订单:
1. 配置客户实体级税务豁免
通过REST API设置客户的税务豁免属性:
- 将
exempt字段设为true(该字段在客户记录的REST API中通常默认开放) - 同时指定
exemptreason的内部ID(需提前在NetSuite中配置好豁免原因)
创建客户的请求体示例:
{ "entityid": "NON_TAX_CUST_001", "companyname": "测试非应税客户", "exempt": true, "exemptreason": 123, // 替换为你的豁免原因内部ID "taxitem": 456 // 替换为non-taxable对应的内部ID }
2. 直接在销售订单层面指定税务项目
跳过客户层面的设置,在创建销售订单时直接为订单或行项目指定非应税税务项目:
- 可为整个订单设置
taxitem为非应税项目的内部ID - 也可在每个订单行项目中设置
taxcode为非应税项目的内部ID
销售订单请求体片段示例:
{ "entity": 789, // 目标客户的内部ID "item": [ { "item": 1011, // 商品内部ID "quantity": 2, "taxcode": 456 // non-taxable对应的内部ID } ] }
额外排查要点
- 确认你的REST API角色拥有修改客户税务字段、销售订单税务字段的权限
- 若在Sandbox环境测试,可先在UI手动创建一个非应税客户,再通过REST API查询该客户的完整字段值,对比你传入的参数是否存在差异,快速定位配置问题
内容的提问来源于stack exchange,提问作者SavZorba
相关产品推荐
相关产品推荐

