0

Version 13.0 of qbxml. Why is the validator listing XML elements that are not in my XML and are not required as something it's expecting?

In all the references I've seen it lists Memo after BillAddress for InvoiceAdd.

https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html

Line: 20
LinePos: 22
Src Text: <BillAddress>
Reason: Element content is invalid according to the DTD/Schema.
Expecting: ItemSalesTaxRef, Memo, CustomerMsgRef, IsToBePrinted, IsToBeEmailed, IsTaxIncluded, CustomerSalesTaxCodeRef, Other, Exchange....

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
  <QBXMLMsgsRq onError="continueOnError">
    <InvoiceAddRq requestID="43">
      <InvoiceAdd>
        <CustomerRef>
          <FullName>GORILLA SPRAY FOAM LLC</FullName>
        </CustomerRef>
        <ARAccountRef>
          <FullName>Accounts Receivable</FullName>
        </ARAccountRef>
        <TxnDate>2017-12-01</TxnDate>
        <RefNumber>9690</RefNumber>
        <PONumber>JN 102317</PONumber>
        <ShipDate>2017-10-23</ShipDate>
        <ShipMethodRef>
          <FullName>x</FullName>
        </ShipMethodRef>
        <BillAddress>
          <Addr1>GORILLA SPRAY FOAM LLC</Addr1>
          <Addr2>2332 HIGHWAY 65</Addr2>
          <City>MORA</City>
          <State>MN</State>
          <PostalCode>55051</PostalCode>
        </BillAddress>
        <InvoiceLineAdd>
          <ItemRef>
            <FullName>S 8000</FullName>
          </ItemRef>
          <Desc>x</Desc>
          <Quantity>2</Quantity>
          <Amount>x</Amount>
        </InvoiceLineAdd>
        <InvoiceLineAdd>
          <ItemRef>
            <FullName>S 8020</FullName>
          </ItemRef>
          <Desc>x</Desc>
          <Quantity>2</Quantity>
          <Amount>x</Amount>
        </InvoiceLineAdd>
        <InvoiceLineAdd>
          <ItemRef>
            <FullName>Delivery Charge</FullName>
          </ItemRef>
          <Desc>Delivery Charge</Desc>
          <Amount>75.00</Amount>
        </InvoiceLineAdd>
        <InvoiceLineAdd>
          <ItemRef>
            <FullName>Sales Tax</FullName>
          </ItemRef>
          <Desc>Minnesota Sales Tax</Desc>
          <Amount>2.58</Amount>
        </InvoiceLineAdd>
      </InvoiceAdd>
    </InvoiceAddRq>
  </QBXMLMsgsRq>
</QBXML>
Dustin Butler
  • 818
  • 7
  • 22

1 Answers1

5

The order of the tags in qbXML is important.

If the OSR shows, for example, that the ShipMethod, ShipDate, and PONumber tags come AFTER the BillAddress tag, then you MUST follow that order.

Refer to the OSR:

https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html

Make sure your tags are in the correct order. Currently they are not due to the ShipDate, ShipMethodRef, and PONumber tags being prior to BillAddress.

Keith Palmer Jr.
  • 27,666
  • 16
  • 68
  • 105