我需要能够使用外部系统的更新信息在NetSuite发票中追加商品。
我正在NetSuite中创建一个带有有效载荷的发票:
{
"tranDate": "2021-07-12",
"dueDate": "2021-07-19",
"externalId": "sysA_INV-34698",
"amountPaid": 0,
"entity": {
"id": 3127
},
"item": {
"items": [
{
"item": {
"id": 374
},
"internalId": "sysA_INV-34698_JOBID-4875398"
"quantity": 1,
"rate": 534.54
}
]
}
}
我想使用internalId追加启动这个行项目,但它似乎没有针对行项目保存,因此我无法将其作为目标。在NetSuite中是否可以追加启动/更新行项目,或者每次源系统中有新数据时,我必须将它们全部删除并重新创建它们?
要更新特定行项目,请使用itme.items.line
字段。这将使您可以针对特定的行进行更新。
这与追加销售不同,但假设您总是知道以前的项目,这至少可以在一次调用中完成。
使用NetSuite REST API,您可以通过提交参数为replaceSelectedFields=true
和replace=item
的PATCH
请求来覆盖项目,而无需附加
因此,您的请求url可能看起来像
补丁/发票/{id}?replaceSelectedFields=true&replace=项目