You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Xero API创建Quotes时能否不指定UnitAmount,调用预设产品价格?

如何通过Xero API创建报价时自动调用预设产品价格(无需手动传入或预先查询)

我们在使用Xero API生成Quotes时,已经在后台「产品和服务」中为商品设置了对应价格,希望仅传入ItemCode(及可选的收支账户),让Xero自动填充预设价格,避免重复传参或预先查询商品价格,但当前请求因「Unit Amount cannot be empty」报错。

可行解决方法

Xero API本身支持通过ItemCode自动拉取预设的商品价格,只需调整请求的LineItem结构即可:

  • 移除手动传入的Description字段:如果自定义了Description,Xero会判定你要手动指定商品信息,不会自动填充价格;完全依赖ItemCode时,Xero会自动同步该商品的预设描述和价格。
  • 不要包含UnitAmount字段:既不要传空值也不要传null,直接省略该字段,让Xero自动从对应Item中读取预设价格。

调整后的请求示例:

{
  "Quotes": [
    {
      "Contact": {
        "ContactID": "a852a44c-3d8f-4c4b-a628-3a2c2121b9b1"
      },
      "LineItems": [
        {
          "ItemCode": "BOOK",
          "Quantity": 1
        }
      ],
      "Date": "2022-12-20",
      "Reference": "Event Name"
    }
  ]
}

额外注意点

  • 确认Xero后台「产品和服务」中,对应ItemCode的商品已设置销售价格(Quote属于销售类单据,会读取商品的销售价格配置)。
  • 如果需要指定特定收支账户,可在LineItem中添加AccountCode字段,Xero会优先使用该账户;若不添加,则自动使用Item预设的销售账户。

原请求报错原因

原请求中手动传入了Description,Xero会认为你要自定义该商品的展示信息,而非完全复用预设的Item数据,因此强制要求你手动提供UnitAmount。移除Description后,Xero会自动关联Item的所有预设信息,包括价格。

内容的提问来源于stack exchange,提问作者Jean P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 22:21:00