This article tackles the confusing “Procedure ‘login’ not present” error that can happen when you’re working with Magento’s APIs. This error might seem puzzling, but don’t worry – we’re here to help you understand why it occurs and how to fix it. In this guide, we’ll explain the reasons behind this issue in simpler terms so that you can quickly figure out what’s going wrong and how to solve it in your Magento tasks.
What’s the error
When Ordoro makes an API call to Magento, sometimes you may see the following error in the Activity menu.
<SOAP-ENV:Envelope xmlns:SOAP-ENV=”http://schemas.xmlsoap.org/soap/envelope/”><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>Procedure ‘login’ not present</faultstring>
How to fix it
You can typically resolve this error by making the following adjustments on your Magento server.
- Login into your Magento admin panel.
- Go to System -> Configuration -> Magento Core API -> WS-I Compliance.
- Change the setting to No.
If you’re using Zoey via Magento, you’ll have slightly different directions.
- Log into your Zoey admin panel.
- Go to Advanced -> API Configurations
- Under Standard API, select More Standard API Options -> Manage API Settings
- Set WS-I Compliance to No. and save the configuration.
Doing these steps should solve the “Procedure ‘login’ not present” error and let Ordoro successfully connect to your Magento site.
What is WS-I Compliance?
If you’re curious what WS-I Compliance is, see Magento’s help article about this setting or below.
Magento provides you with the ability to use two modes for SOAP API V2. These are with WS-I compliance mode enabled and WS-I compliance mode disabled. The first one was introduced to make the system flexible, namely, to increase compatibility with .NET and Java programming languages.
The WS-I compliant mode uses the same WSDL endpoint as SOAP API V2 does. The key difference is that XML namespaces are used in WS-I compliance mode.