Reputation: 1958
I am trying to query bill payments using QBXML and web connector on a desktop version. Request XML is as below
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="continueOnError">
<BillPaymentCheckQueryRq >
<TxnID >
xx-xxxxxx
</TxnID>
</BillPaymentCheckQueryRq>
</QBXMLMsgsRq>
</QBXML>
but in response i get error xml
<?xml version="1.0" ?>
<QBXML>
<QBXMLMsgsRs>
<BillPaymentCheckQueryRs statusCode="500" statusSeverity="Warn" statusMessage="The query request has not been fully completed. There was a required element ("xx-xxxxxx") that could not be found in QuickBooks." />
</QBXMLMsgsRs>
</QBXML>
I also checked that there is a bill with that TxnId and that bill is also paid with check.
is there any thing else i need to pass in request XML?
Upvotes: 0
Views: 1157
Reputation: 27962
I also checked that there is a bill with that TxnId
How did you check this?
The only way to check this would have been to do a BillPaymentCheckQuery, which you showed you did above, and which QuickBooks responded telling you that the Bill Payment Check didn't exist.
Note that TxnIDs do not show up in the QuickBooks GUI, so you couldn't possibly have checked for it there...
Also, this XML:
<TxnID >
xx-xxxxxx
</TxnID>
Would check for a TxnID
value of:
"\r\n (lots and lots of spaces here) xx-xxxxx\r\n (lots and lots of spaces here)"
You should be passing:
<TxnID>xx-xxxxx</TxnID>
Finally, you indicate that you:
I also checked that there is a bill with that TxnId
However, you are querying for a BillPaymentCheck
. If you want to query for a Bill
, you need to query using BillQuery
. The TxnID
value for a BillPaymentCheck
will NOT be the same as the TxnID for a Bill
.
Upvotes: 3