<Faults> <Fault ...> <faultcode /> <faultstring/> <detail> <faultCode>...</faultCode> <faultAction>...</faultAction> <faultActor>...</faultActor> <faultDetail>...</faultDetail> </detail> </Fault> </Faults>So, if my understand is correct, instead of invoking COMRETURNERROR(), which would have fired a messagebox on the client side, I am returning this XML string such as if everything went fine. It would then be a responsability of the client to detect such situation.