我正在尝试使用带有 v3 API 的 Java SDK (2.2.1) 创建发票。由于 业务验证错误
指出我的交易行没有与之关联的税码(错误代码:6000),我创建发票的 API 调用失败。
我正在尝试像这样为交易(销售行)设置税费:
TaxLineDetail taxLineDetail = new TaxLineDetail();
taxLineDetail.setPercentBased(true);
taxLineDetail.setTaxPercent( getTaxPercent() );
salesLine.setTaxLineDetail(taxLineDetail);
我也尝试过使用 Invoice#setTxnTaxDetail(TxnTaxDetail)
但在这两种情况下都失败了。 API 似乎需要税码,大概是我设置的税码:
TaxLineDetail#setTaxRateRef(ReferenceType)
但我不明白我从哪里得到这个税率代码。我的 QB 帐户确实配置了两种税(23% 和 0%),但我如何将其中一种与发票相关联?我需要的这个(整数?)代码在哪里?
就其值(value)而言,这是一个非美国帐户。
最佳答案
我认为这里更大的问题是您正在查看完全错误的对象类型。
错误信息是关于:
does not have a tax code associated with it
但是你想设置一个:
TaxLineDetail
还有一个:
TaxLineDetail#set TaxRate Ref(ReferenceType)
此处的底线 - 税法与税率不同。它们是相关的,但完全独立的实体。
QuickBooks 提示的是您没有在订单项上设置税码。查看行项目文档,并查找您应该设置的 TaxCodeRef 节点。
您应该查询税码,使用如下查询:
SELECT * FROM TaxCode
然后设置您的 TaxCodeRef
值。
关于java - 我在哪里/如何找到使用 QuickBooks API v3 创建发票所需的税务引用代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23525624/