How did you create your client? You just need to restore or upgrade your client. For example, if you created a client, then you added one of these properties to the server, but did not regenerate the client, then the value will be transferred back to the client, but the client will ignore it because it does not know what it is.
This is my best guess, anyway ...
Actually, after reading your question again, you stated that:
The values seem to reach the client program, though, since the response from running the SoapUI test shows the correct values in XML.
However, comparing the list of items you say is a null and soapy answer:
There is a null value in the response to the soap:
<a:ProductLineItems i:nil="true"/>
There is a null value in the response to soap:
<a:TotalTaxLines xmlns:b="http://schemas.datacontract.org/2004/07/Avalara.AvaTax.Adapter.TaxService"/>
Therefore, I must assume that they really return null correctly.
In addition, for properties containing these non-standard data types:
- ProductLineItem
- Avalara.AvaTax.Adapter.TaxService.TaxLines
These two types of data should also be marked as [DataContract] for me, or I think ISerializable will work too.