使用唯一ID识别发票中的产品-Xero API

时间:2019-04-04 08:31:14

标签: xero-api

我正在尝试使用c#中的Xero API从xero帐户导入发票。发票对象中的LineItems集合表示发票项目,它们是发票的一部分。我想在发票上标识具有唯一ID的产品,例如

Invoice1有2个订单项,分别为P1和P2。同样,Invoice2也有2个订单项,分别为P1和P2。在遍历发票收集的同时,我想用唯一的ID标识产品P1和P2,并将它们存储在数据库中。然后在迭代循环中,每当我遇到P1 / P2项时,我都应该知道这些产品已经存储到具有唯一ID的数据库中,并且由于已经存储,因此无需再次保存这些产品。

我认为LineItemId和ItemCode可能会有所帮助,但LineItemId是每次生成的新ID,并且我注意到Itemcode多次为null。那么有什么方法可以为订单项分配唯一的产品ID?

感谢帮助,

1 个答案:

答案 0 :(得分:0)

LineItemId是每个订单中每个订单项的唯一ID,与产品无关,所以这不是您想要的。

如果ItemCode丢失或为空,则表示该产品未保存在Xero产品数据库中,而只是作为“一次性”添加,因此从理论上讲它永远不会再次出现。因此,没有办法识别不存在的产品。如果这些项目确实不只是“一次性”,则应将它们添加到数据库中并提供一个ItemCode。因此,问题在于Xero的使用方式。

一旦将其添加为Item,您就可以使用Items端点(/api.xro/2.0/Items)来获取ItemID,它是一个GUID,应与ItemCode一起用于存储在数据库中。 / p>