Just by looking at the IM-XML documentation , I could find you have some obvious problems with the <ProductLine> section of your example:
<ManufacturerPartNumber> Number - Do not indicate whether <SKU> or <UPC> enabled
<UPC> EAN / UPC Number - Do not indicate whether <ManufacturerPartNumber> or <SKU> enabled
<SKU> Ingram Micro Product Code - Do not indicate whether <ManufacturerPartNumber> or <UPC> enabled
Apparently, you should specify only one of the above element values, in your example the values ββfor SKU and UPC are indicated
<ReservedInventory> Contains reserved inventory information. - If this is not required, do not indicate.
This is not clear to me from my brief description of the documentation when it is needed, but you specify a value for this element, and I do not see any clear instructions elsewhere in the example that would suggest why this would be required in your example. So let me answer this question "maybe."
<ShipFromBranchAtLine>
I could not find a link to this element in the documentation, so it is probably invalid. The closest match to this element that I could find was <ShipFromBranches> , which would not belong to the <ProductLine> element.
<CustomerPartNumber>
Again, no links to this that I could find in the documentation.
<RequestedPrice> Special offer price Parent: <SpecialBid>
You have <RequestedPrice> as a direct child of the ProductLine , when it should be inside the <SpecialBid> element.
So, considering all of the above, I commented on those parts that seemed wrong (or perhaps wrong, for ours, perhaps) as follows:
<ProductLine> <SKU>NV9159</SKU> <Quantity>1</Quantity> <CustomerLineNumber/> </ProductLine>
If we just pulled out these parts (provided that none of them should be there) and set them to empty elements, it might look something like this:
<ProductLine> <SKU>NV9159</SKU> <Quantity>1</Quantity> <CustomerLineNumber/> </ProductLine>
Finally, in a direct link to the error, you return:
A single Productline cannot have multiple parts in it when ShowDetail = '2'
I would suggest that this is due to the fact that you are setting the value for both <SKU> and <UPC> , which may confuse the system in that you are trying to include "several parts" (for example, two different part codes that maybe for two different factual parts) when specifying (illegally) a value for these two elements.
But even if this is not the case, it seems that the easiest way to try to do this, given the actual wording of this error, maybe just try to change the value of the ShowDetail element from:
<ShowDetail>2</ShowDetail>
to
<ShowDetail>1</ShowDetail>
I would recommend fixing other problems with the ProductLine element, but with an error response, to go alone, you tried changing ShowDetail to see if that changed?