Symptom
- Switching from basic to certificate-based authentication for SOAP API requests results in failures.
- On CPI end, Error message observed: "org.apache.cxf.binding.soap.SoapFault: Rejected by policy".
- Requests succeed with basic authentication but fail when using a client certificate.
- Affected endpoints include wsapi/CPQAPI.asmx and wsapi/wssrv.asmx.
Environment
SAP CPQ
Reproducing the Issue
- Open SOAP UI (or another SOAP client).
- Target the SOAP API endpoint (for example, wsapi/wssrv.asmx).
- Configure the call to use certificate-based authentication with a client certificate and run the request.
- Observe that the call fails with an authentication/policy error (for example, SoapFault: Rejected by policy).
- Reconfigure the same call to use basic authentication and run it again to confirm it succeeds.
Cause
Known issue and confirmed bug: certificate authentication for routes wsapi/CPQAPI.asmx and wsapi/WSSRV.asmx does not work.
Resolution
Use the workaround by invoking the SOAP API through the mTLS route: replace the standard tenant base URL with the equivalent URL that includes the “-mtls” prefix (e.g. https://webcomqa2-devfl-mtls.cpq.dev.sap/), then call the same SOAP path (for example, …/wsapi/wssrv.asmx).
See Also
Keywords
SOAP API, certificate authentication, mTLS, wsapi, wssrv.asmx, cpqapi.asmx, policy rejected, org.apache.cxf.binding.soap.SoapFault, client certificate, certificate-based authentication, basic authentication, authentication error, CPQ SOAP, mutual TLS, wsapi authentication , KBA , CEC-SAL-CPQ , Sales Cloud CPQ , Bug Filed
SAP Knowledge Base Article - Public