Analyzing the WSDL

Implementing CWS

All web service endpoints provide metadata exchange via a standard Web Service Description Language (WSDL) format. The WSDL defines namespaces, data types and operations. The WSDL and XML formatted metadata is used by Integrated Development Environments (IDE) and proxy generation utilities to generate the proxy.

The following proxy generation utilities are available for Microsoft, Java, and PHP developers:

Please Contact EVO Snap* Support for sample applications for each of the development environments.

When generating proxies from the CWS WSDL for the Service Information and Transaction Processing endpoints, proxy generation tools may interpret lists (<>) as arrays ([ ]) by default, (e.g.: List GetMerchantProfiles is generated as MerchantProfile[] GetMerchantProfiles). To generate lists, configure your proxy generator accordingly.

To generate proxies, please refer to the URLs below:

If you are not using a proxy generation tool, you can still build SOAP messages in the absence of a proxy. Please contact EVO Snap* Support for examples of the SOAP messages.

To view the Service Information and Transaction Processing WSDLs, refer to the URLs provided below.

Service Information Endpoint URLs
https://api.cipcert.evosnap.com/x.x.x/SvcInfo/?wsdl=wsdl0 (Index 0 only)
https://api.cipcert.evosnap.com/x.x.x/SvcInfo/?xsd=xsd0 (Index from 0 to 2)
Transaction Processing Endpoint URLs
https://api.cipcert.evosnap.com/x.x.x/Txn/?wsdl=wsdl0 (Index 0 only)
https://api.cipcert.evosnap.com/x.x.x/Txn/?xsd=xsd0 (Index from 0 to 5)
Note: xsd=xsd0 is the set of rules the WSDL must follow. The WSDL defines the structure and format of the message, while the XSD defines the rules of the data types/values within the message.


Type Names

There are specific type names used in two different namespaces that may cause confusion during development. Because the type names are shared across namespaces, one cannot be assigned to the other directly or used interchangeably. As a result, you may be required to qualify the type name with the proper namespace.

The following type names exist in both the Service Information and Transaction Processing namespaces:

  • ApplicationLocation
  • CustomerPresent
  • EntryMode
  • HardwareType
  • IndustryType
  • PINCapability
  • ReadCapability
  • RequestACI
  • RequestAdvice
  • TypeISOCountryCodeA3
  • TypeISOCurrencyCodeA3
  • TypeISOLanguageCodeA3