<?xml version="1.0" encoding="ISO-8859-1"?>
<definitions xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:PointofsalePaymentService" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:PointofsalePaymentService">
<types>
<xsd:schema targetNamespace="urn:PointofsalePaymentService">
 <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
 <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
</xsd:schema>
</types>

<message name="authenticateRequest">
  <part name="ap_key" type="xsd:string" />
  <part name="api_username" type="xsd:string" />
  <part name="api_password" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:anyType" />
</message>

<message name="authenticateResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="getTaxnumberRequest">
  <part name="session_key" type="xsd:string" />
  <part name="reference" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="getTaxnumberResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="verifyReferenceRequest">
  <part name="session_key" type="xsd:string" />
  <part name="reference" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="verifyReferenceResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="transactRequest">
  <part name="session_key" type="xsd:string" />
  <part name="reference" type="xsd:string" />
  <part name="transaction" type="xsd:anyType" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="transactResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="closeTransactionRequest">
  <part name="session_key" type="xsd:string" />
  <part name="reference" type="xsd:string" />
  <part name="transaction_id" type="xsd:anyType" />  
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="closeTransactionResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="eodReportRequest">
  <part name="session_key" type="xsd:string" />
  <part name="content" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="eodReportResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="generatePrnRequest">
  <part name="session_key" type="xsd:string" />
  <part name="vendor_name" type="xsd:string" />
  <part name="tel_contact" type="xsd:string" />
  <part name="market" type="xsd:string" />
  <part name="items" type="xsd:string" />
  <part name="amount" type="xsd:string" /> 
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="generatePrnResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="getMarketsRequest">
  <part name="session_key" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="getMarketsResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="getBusinessTypeRequest">
  <part name="session_key" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="getBusinessTypeResponse">
  <part name="return" type="xsd:string" />
</message>

<message name="getBusinessItemRequest">
  <part name="session_key" type="xsd:string" />
  <part name="business_type_id" type="xsd:string" />
  <part name="hash" type="xsd:string" />
  <part name="backref" type="xsd:string" />
</message>

<message name="getBusinessItemResponse">
  <part name="return" type="xsd:string" />
</message>

<portType name="PointofsalePaymentServicePortType">
  <operation name="authenticate">
    <documentation>Validate a user by supplied password, returns session key</documentation>
    <input message="tns:authenticateRequest"/>
    <output message="tns:authenticateResponse"/>
  </operation>
  
   <operation name="getTaxnumber">
    <documentation>The operation is meant to be used for retrieve all the tax numbers from which the customer in which wish to pay</documentation>
    <input message="tns:getTaxnumberRequest"/>
    <output message="tns:getTaxnumberResponse"/>
  </operation>
  
  <operation name="verifyReference">
    <documentation>The operation is meant to be used for verifying a payment reference which a customer wish to pay</documentation>
    <input message="tns:verifyReferenceRequest"/>
    <output message="tns:verifyReferenceResponse"/>
  </operation>
  
  <operation name="transact">
    <documentation>The operation is meant to be used for sending transaction that has been done on the telecom side following the verifyReference operation</documentation>
    <input message="tns:transactRequest"/>
    <output message="tns:transactResponse"/>
  </operation>
  
  <operation name="closeTransaction">
    <documentation>The operation is meant to be used for finalizing a transaction with the details of transaction from telecom or payment provider.</documentation>
    <input message="tns:closeTransactionRequest"/>
    <output message="tns:closeTransactionResponse"/>
  </operation>
  
  <operation name="eodReport">
    <documentation>The operation is meant to be used for sending all transaction that has been processed throughout the day back to the Payment service for reconciliation.</documentation>
    <input message="tns:eodReportRequest"/>
    <output message="tns:eodReportResponse"/>
  </operation>
  
 <operation name="getMarkets">
    <documentation>The operation is meant to be used for searching the available market which the customer wish to pay for</documentation>
    <input message="tns:getMarketsRequest"/>
    <output message="tns:getMarketsResponse"/>
  </operation>
  
  <operation name="getBusinessType">
    <documentation>The operation is meant to be used for searching the available business types for market dues which the customer wish to pay for</documentation>
    <input message="tns:getBusinessTypeRequest"/>
    <output message="tns:getBusinessTypeResponse"/>
  </operation>
  
   <operation name="getBusinessItem">
    <documentation>The operation is meant to be used for searching the available business types for market dues which the customer wish to pay for</documentation>
    <input message="tns:getBusinessItemRequest"/>
    <output message="tns:getBusinessItemResponse"/>
  </operation> 
	
   <operation name="generatePrn">
    <documentation>The operation is meant to be used for searching the available business types for market dues which the customer wish to pay for</documentation>
    <input message="tns:generatePrnRequest"/>
    <output message="tns:generatePrnResponse"/>
  </operation>
</portType>

<binding name="PointofsalePaymentServiceBinding" type="tns:PointofsalePaymentServicePortType">
  <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
  <operation name="authenticate">
    <soap:operation soapAction="urn:PointofsalePaymentService#authenticate" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="getTaxnumber">
    <soap:operation soapAction="urn:PointofsalePaymentService#getTaxnumber" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="verifyReference">
    <soap:operation soapAction="urn:PointofsalePaymentService#verifyReference" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="transact">
    <soap:operation soapAction="urn:PointofsalePaymentService#transact" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="closeTransaction">
    <soap:operation soapAction="urn:PointofsalePaymentService#closeTransaction" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="eodReport">
    <soap:operation soapAction="urn:PointofsalePaymentService#eodReport" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
   <operation name="generatePrn">
    <soap:operation soapAction="urn:PointofsalePaymentService#generatePrn" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>  
  
   <operation name="getMarkets">
    <soap:operation soapAction="urn:PointofsalePaymentService#getMarkets" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
  <operation name="getBusinessType">
    <soap:operation soapAction="urn:PointofsalePaymentService#getBusinessType" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>
  
   <operation name="getBusinessItem">
    <soap:operation soapAction="urn:PointofsalePaymentService#getBusinessItem" style="rpc"/>
    <input><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></input>
    <output><soap:body use="encoded" namespace="urn:PointofsalePaymentService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/></output>
  </operation>   
</binding>

<service name="PointofsalePaymentService">
  <port name="PointofsalePaymentServicePort" binding="tns:PointofsalePaymentServiceBinding">
    <soap:address location="https://172.16.0.164/ecitie/api/point-of-sale-paymentv1.php"/>
  </port>
</service>
</definitions>
