<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions
    xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns="omnivore"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:s="http://www.w3.org/2001/XMLSchema"
    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    targetNamespace="omnivore"
>
    <wsdl:types>
        <s:schema elementFormDefault="qualified" targetNamespace="omnivore">
            <s:element name="generic-auth-request-Body">
                <s:complexType>
                    <s:sequence>
                        <s:element name="generic-auth-request">
                            <s:complexType>
                                <s:sequence>
                                    <s:element name="trans-services-header">
                                        <s:complexType>
                                            <s:sequence>
                                                <s:element name="client-id" type="s:string"/>
                                                <s:element name="authentication-code" type="s:string"/>
                                                <s:element name="session-id" type="s:string"/>
                                            </s:sequence>
                                        </s:complexType>
                                    </s:element>
                                    <s:element name="generic-auth-request-data">
                                        <s:complexType>
                                            <s:sequence>
                                                <s:element name="order-number" type="s:string"/>
                                                <s:element name="employee-id" type="s:string"/>
                                                <s:element name="tender-id" type="s:string"/>
                                                <s:element name="account-number" type="s:string" />
                                                <s:element name="auth-amount">
                                                    <s:attribute type="s:string" name="tender-amount"/>
                                                    <s:attribute type="s:string" name="tip-amount"/>
                                                </s:element>
                                            </s:sequence>
                                        </s:complexType>
                                    </s:element>
                                </s:sequence>
                            </s:complexType>
                        </s:element>
                    </s:sequence>
                </s:complexType>
            </s:element>
            <s:element name="generic-auth-response-Body">
                <s:complexType>
                    <s:sequence>
                        <s:element name="generic-auth-response">
                            <s:complexType>
                                <s:sequence>
                                    <s:element name="trans-services-header">
                                        <s:complexType>
                                            <s:sequence>
                                                <s:element name="client-id" type="s:string"/>
                                                <s:element name="authentication-code" type="s:string"/>
                                                <s:element name="session-id" type="s:string"/>
                                            </s:sequence>
                                        </s:complexType>
                                    </s:element>
                                    <s:element name="service-completion-status" type="s:string"/>
                                    <s:element name="service-error" minOccurs="0">
                                        <s:complexType>
                                            <s:sequence>
                                                <s:element name="service-error-id" type="s:string"/>
                                                <s:element name="service-error-display-message" type="s:string"/>
                                            </s:sequence>
                                        </s:complexType>
                                    </s:element>
                                    <s:element name="generic-auth-response-data" minOccurs="0">
                                        <s:complexType>
                                            <s:sequence>
                                                <s:element name="reference-key" type="s:string"/>
                                                <s:element name="payment-guid" type="s:string"/>
                                                <s:element name="draft-text" type="s:string"/>
                                                <s:element name="display-text" type="s:string" />
                                            </s:sequence>
                                        </s:complexType>
                                    </s:element>
                                </s:sequence>
                            </s:complexType>
                        </s:element>
                    </s:sequence>
                </s:complexType>
            </s:element>
        </s:schema>
    </wsdl:types>
    <wsdl:message name="ThirdPartyPaymentSoapIn">
        <wsdl:part name="parameters" element="tns:generic-auth-request-Body"/>
    </wsdl:message>
    <wsdl:message name="ThirdPartyPaymentSoapOut">
        <wsdl:part name="parameters" element="tns:generic-auth-response-Body"/>
    </wsdl:message>
    <wsdl:portType name="ThirdPartyPaymentSoap">
        <wsdl:operation name="ThirdPartyPayment">
            <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
                Get Choice Groups from POS
            </wsdl:documentation>
            <wsdl:input message="tns:ThirdPartyPaymentSoapIn"/>
            <wsdl:output message="tns:ThirdPartyPaymentSoapOut"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="ThirdPartyPaymentSoap" type="tns:ThirdPartyPaymentSoap">
        <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="ThirdPartyPayment">
            <soap:operation soapAction="{{ soap_url }}" style="document"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="ThirdPartyPaymentService">
        <wsdl:port name="ThirdPartyPaymentSoap" binding="tns:ThirdPartyPaymentSoap">
            <soap:address location="{{ soap_url }}"/>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>