soap-errorssoap-1-1soap-1-2wcf

The content type application/soap+xml; charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8)

SOAPless Team2 min read

This error is usually not about random XML corruption. It is usually about speaking the wrong SOAP dialect.

The content type application/soap+xml; charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8)

In plain terms:

  • one side is behaving like SOAP 1.2
  • the other side is expecting SOAP 1.1

Why this happens

SOAP 1.1 and SOAP 1.2 differ in both the envelope conventions and the HTTP conventions around them.

  • SOAP 1.1 commonly uses text/xml and a separate SOAPAction header
  • SOAP 1.2 commonly uses application/soap+xml and may include the action in the content type itself

If your client, proxy, or generated binding picks the wrong one, the service may answer in a way your library rejects immediately.

What to check first

  1. Which binding and port in the WSDL you are actually using
  2. Whether the service exposes both SOAP 1.1 and SOAP 1.2
  3. The outgoing Content-Type
  4. Whether your client library generated the request from the same binding you think it did

This is a classic case where "the endpoint works in SoapUI but not in app code" happens because different tools picked different bindings.

Why teams lose time here

People often debug the body, namespaces, or auth first. Those can matter, but this error is often telling you the failure happened earlier than that. The receiver and sender did not agree on the binding-level protocol.

That is why having a single integration boundary helps. Once the correct SOAP binding is pinned in one place, downstream consumers do not need to keep rediscovering 1.1 vs 1.2 mismatches on their own.