SOAP guide
SOAP 1.1 vs SOAP 1.2
Identify the SOAP version from its envelope namespace, align the HTTP media type and action, and avoid mixing incompatible fault structures.
8 min read · Updated 2026-08-21
The short answer
SOAP version is identified by the Envelope namespace, not the prefix. SOAP 1.1 uses http://schemas.xmlsoap.org/soap/envelope/ and usually text/xml with a SOAPAction header; SOAP 1.2 uses http://www.w3.org/2003/05/soap-envelope and application/soap+xml, whose action parameter can carry the action.Read the envelope namespace first
A prefix such as soap, soapenv, or env is arbitrary. Compare the namespace URI bound to Envelope. Sending SOAP 1.1 markup to a SOAP 1.2 endpoint commonly produces a VersionMismatch fault before the application payload is inspected.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body><m:ping xmlns:m="urn:example:service"/></soap:Body>
</soap:Envelope><env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body><m:ping xmlns:m="urn:example:service"/></env:Body>
</env:Envelope>Align the HTTP binding
SOAP 1.1 HTTP messages commonly use text/xml and a separate SOAPAction request header. SOAP 1.2 introduced application/soap+xml and allows an action media-type parameter. Server frameworks often reject a correct envelope when these transport details announce the other version.
- Check Content-Type before debugging the body operation.
- Confirm whether the endpoint expects a quoted SOAPAction header.
- Do not send both version conventions and hope the service chooses one.
- Compare the deployed WSDL binding with the actual endpoint configuration.
Get started
Bring order to the XML your team can't afford to ignore.
Create a free account and get a private workspace to search, validate, diff, and monitor your XML feeds, sitemaps, schemas, and vendor integrations.