intuit-partner-platform - 发票缺少 "TotalAmt"字段

标签 intuit-partner-platform quickbooks-online

我们正在使用 Intuit API V2 从 QuickBooks Online 导入发票。

我们希望“TotalAmt”字段出现在所有发票上。
有几张发票在过去的某个时间点存在“TotalAmt”,但现在缺少“TotalAmt”字段并且“Balance”等于 0。

这是错误还是预期行为?

编辑 :这是我们从 QuickBooks API 得到的响应之一(我只更改了缩进并用 3 个点替换了真实数据):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>    
<Invoice xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:qbo="http://www.intuit.com/sb/cdm/qbo" xmlns:qbp="http://www.intuit.    com/sb/cdm/qbopayroll/v1">
  <Id idDomain="QBO">36673</Id>
  <SyncToken>1</SyncToken>
  <MetaData>
    <CreateTime>2013-04-10T15:24:03-07:00</CreateTime>
    <LastUpdatedTime>2013-04-11T08:32:11-07:00</LastUpdatedTime>
  </MetaData>
  <Header>
    <DocNumber>...</DocNumber>
    <TxnDate>2013-04-10-07:00</TxnDate>
    <Note>...</Note>
    <CustomerId idDomain="QBO">464</CustomerId>
    <ToBePrinted>true</ToBePrinted>
    <ToBeEmailed>false</ToBeEmailed>
    <SalesTermId idDomain="QBO">1</SalesTermId>
    <DueDate>2013-04-10-07:00</DueDate>
    <BillAddr>
      <Line1>...</Line1>
      <City>...</City>
      <CountrySubDivisionCode>...</CountrySubDivisionCode>
      <PostalCode>...</PostalCode>
      <Tag>CUSTOMER</Tag>
    </BillAddr>
    <ShipAddr>
      <Line1>...</Line1>
      <City>...</City>
      <CountrySubDivisionCode>...</CountrySubDivisionCode>
      <PostalCode>...</PostalCode>
      <Tag>CUSTOMER</Tag>
    </ShipAddr>
    <ShipMethodId idDomain="QBO"/>
    <Balance>0.00</Balance>
    <DiscountTaxable>true</DiscountTaxable>
  </Header>
  <Line>
    <Desc>...</Desc>
    <Taxable>false</Taxable>
    <ItemId idDomain="QBO">5</ItemId>
    <UnitPrice>450</UnitPrice>
    <Qty>1</Qty>
  </Line>
</Invoice>

最佳答案

<Balance>0.00</Balance> 

它表示与该发票关联的金额为 0。在这种情况下,响应 XML 不包含任何“TotalAmt”字段。

可能有几种情况不包括“TotalAmt”。

1.

我创建了一个金额为 0 的发票。在 QBO 和相应的响应 XML 中 PFB 发票记录。

enter image description here
<Invoice xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:qbp="http://www.intuit.com/sb/cdm/qbopayroll/v1" xmlns:qbo="http://www.intuit.com/sb/cdm/qbo">
  <Id idDomain="QBO">50</Id>
  <SyncToken>0</SyncToken>
  <MetaData>
    <CreateTime>2013-07-01T01:59:37-07:00</CreateTime>
    <LastUpdatedTime>2013-07-01T01:59:37-07:00</LastUpdatedTime>
  </MetaData>
  <Header>
    <DocNumber>1016</DocNumber>
    <TxnDate>2013-07-01-07:00</TxnDate>
    <CustomerId idDomain="QBO">6</CustomerId>
    <ToBePrinted>false</ToBePrinted>
    <ToBeEmailed>true</ToBeEmailed>
    <SalesTermId idDomain="QBO">3</SalesTermId>
    <DueDate>2013-07-31-07:00</DueDate>
    <BillAddr>
      <Line1>Park Avenue NY</Line1>
      ...
    </BillAddr>
    <ShipAddr>
      <Line1>Park Avenue NY</Line1>
      ... 
    </ShipAddr>
    <BillEmail>john_doe@digitalinsight.mint.com</BillEmail>
    <ShipMethodId idDomain="QBO" />
    <Balance>0.00</Balance>
    <DiscountTaxable>true</DiscountTaxable>
  </Header>
  <Line>
    <Desc>Beer HB</Desc>
    <Taxable>true</Taxable>
    <ItemId idDomain="QBO">4</ItemId>
  </Line>
</Invoice>

2.

如果您没有在标签的“金额”字段中传递任何值
或者
如果您完全跳过该字段。

PFB 示例请求和响应。

要求
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Invoice xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:ns2="http://www.intuit.com/sb/cdm/qbopayroll/v1" xmlns:ns3="http://www.intuit.com/sb/cdm/qbo">
    <Header>
        <Msg>Testing</Msg>
        <CustomerId>6</CustomerId>
    </Header>
    <Line>
        <Desc>Pens</Desc>
        <Amount></Amount>
        <Taxable>true</Taxable>
        <ItemId>3</ItemId>
        <UnitPrice>450</UnitPrice>
        <Qty>1</Qty>
    </Line>
</Invoice>

回复
<Invoice xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:qbp="http://www.intuit.com/sb/cdm/qbopayroll/v1" xmlns:qbo="http://www.intuit.com/sb/cdm/qbo">
    <Id idDomain="QBO">57</Id>
    <SyncToken>0</SyncToken>
    <MetaData>
        <CreateTime>2013-07-01T02:48:48-07:00</CreateTime>
        <LastUpdatedTime>2013-07-01T02:48:48-07:00</LastUpdatedTime>
    </MetaData>
    <Header>
        <DocNumber>1022</DocNumber>
        <TxnDate>2013-07-01-07:00</TxnDate>
        <Msg>Testing</Msg>
        <CustomerId idDomain="QBO">6</CustomerId>
        <ToBePrinted>false</ToBePrinted>
        <ToBeEmailed>false</ToBeEmailed>
        <DueDate>2013-07-01-07:00</DueDate>
        <BillAddr>
            <Line1>Park Avenue NY</Line1>
            ...
        </BillAddr>
        <ShipAddr>
            <Line1>Park Avenue NY</Line1>
            ...
        </ShipAddr>
        <ShipMethodId idDomain="QBO" />
        <Balance>0.00</Balance>
        <DiscountTaxable>true</DiscountTaxable>
    </Header>
    <Line>
        <Desc>Pens</Desc>
        <Taxable>true</Taxable>
        <ItemId idDomain="QBO">3</ItemId>
        <UnitPrice>450</UnitPrice>
        <Qty>1</Qty>
    </Line>
</Invoice>

我想,第二个适用于您的情况。

如果它回答您的 qts,请告诉我。

谢谢

关于intuit-partner-platform - 发票缺少 "TotalAmt"字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17086443/

相关文章:

intuit-partner-platform - Intuit Quickbooks Online 应用程序授权停止工作

intuit-partner-platform - Initializer.cs 中的 InitializeServiceContext 已开始在我的测试应用程序中抛出 "Unauthorized"

c# - 如何使用 C# 中的 QBO API v3 将付款应用于发票?

quickbooks - 如何测试 Intuit 重新连接 api?

c# - 带有 .NET API v3 SDK 的 TimeActivity

quickbooks - 在哪里可以找到 QuickBooks 在线应用程序的 RealM ID

c# - 无需用户交互即可连接到 Oauth [QuickBooks]

java - 业务验证错误 : Unexpected Internal Error. (-30003) - QuickBooks Java SDK

api - 如何获取 Intuit Data Services (IDS) 测试版功能?

shopify - 按订单号检索 "Shopify Payments"费用以与会计 + 银行存款进行对账?