'------------------------------------------------------------------------------
' <auto-generated>
'     This code was generated by a tool.
'     Runtime Version:4.0.30319.269
'
'     Changes to this file may cause incorrect behavior and will be lost if
'     the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------

Option Strict Off
Option Explicit On

Imports System
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization

'
'This source code was auto-generated by Microsoft.VSDesigner, Version 4.0.30319.269.
'
Namespace WSCSG_Payment
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1"),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Web.Services.WebServiceBindingAttribute(Name:="PaymentService", [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class PaymentServicePort
        Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
        
        Private charterHeaderInfoValueField As CharterHeaderInfo
        
        Private AddCardPaymentOperationCompleted As System.Threading.SendOrPostCallback
        
        Private AddEFTPaymentOperationCompleted As System.Threading.SendOrPostCallback
        
        Private useDefaultCredentialsSetExplicitly As Boolean
        
        '''<remarks/>
        Public Sub New()
            MyBase.New
            Me.Url = Global.EBSServicesProvider.My.MySettings.Default.EBSServicesProvider_WSCSG_Payment_PaymentServicePort
            If (Me.IsLocalFileSystemWebService(Me.Url) = true) Then
                Me.UseDefaultCredentials = true
                Me.useDefaultCredentialsSetExplicitly = false
            Else
                Me.useDefaultCredentialsSetExplicitly = true
            End If
        End Sub
        
        Public Property CharterHeaderInfoValue() As CharterHeaderInfo
            Get
                Return Me.charterHeaderInfoValueField
            End Get
            Set
                Me.charterHeaderInfoValueField = value
            End Set
        End Property
        
        Public Shadows Property Url() As String
            Get
                Return MyBase.Url
            End Get
            Set
                If (((Me.IsLocalFileSystemWebService(MyBase.Url) = true)  _
                            AndAlso (Me.useDefaultCredentialsSetExplicitly = false))  _
                            AndAlso (Me.IsLocalFileSystemWebService(value) = false)) Then
                    MyBase.UseDefaultCredentials = false
                End If
                MyBase.Url = value
            End Set
        End Property
        
        Public Shadows Property UseDefaultCredentials() As Boolean
            Get
                Return MyBase.UseDefaultCredentials
            End Get
            Set
                MyBase.UseDefaultCredentials = value
                Me.useDefaultCredentialsSetExplicitly = true
            End Set
        End Property
        
        '''<remarks/>
        Public Event AddCardPaymentCompleted As AddCardPaymentCompletedEventHandler
        
        '''<remarks/>
        Public Event AddEFTPaymentCompleted As AddEFTPaymentCompletedEventHandler
        
        '''<remarks/>
        <System.Web.Services.Protocols.SoapHeaderAttribute("CharterHeaderInfoValue"),  _
         System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://charter.com/enterprise/billing/csg/payments:addCardPaymentIn", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Bare)>  _
        Public Function AddCardPayment(<System.Xml.Serialization.XmlElementAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")> ByVal AddCardPaymentRequest As AddCardPaymentRequest) As <System.Xml.Serialization.XmlElementAttribute("AddCardPaymentResponse", [Namespace]:="http://charter.com/enterprise/billing/csg/payments")> AddCardPaymentResponse
            Dim results() As Object = Me.Invoke("AddCardPayment", New Object() {AddCardPaymentRequest})
            Return CType(results(0),AddCardPaymentResponse)
        End Function
        
        '''<remarks/>
        Public Overloads Sub AddCardPaymentAsync(ByVal AddCardPaymentRequest As AddCardPaymentRequest)
            Me.AddCardPaymentAsync(AddCardPaymentRequest, Nothing)
        End Sub
        
        '''<remarks/>
        Public Overloads Sub AddCardPaymentAsync(ByVal AddCardPaymentRequest As AddCardPaymentRequest, ByVal userState As Object)
            If (Me.AddCardPaymentOperationCompleted Is Nothing) Then
                Me.AddCardPaymentOperationCompleted = AddressOf Me.OnAddCardPaymentOperationCompleted
            End If
            Me.InvokeAsync("AddCardPayment", New Object() {AddCardPaymentRequest}, Me.AddCardPaymentOperationCompleted, userState)
        End Sub
        
        Private Sub OnAddCardPaymentOperationCompleted(ByVal arg As Object)
            If (Not (Me.AddCardPaymentCompletedEvent) Is Nothing) Then
                Dim invokeArgs As System.Web.Services.Protocols.InvokeCompletedEventArgs = CType(arg,System.Web.Services.Protocols.InvokeCompletedEventArgs)
                RaiseEvent AddCardPaymentCompleted(Me, New AddCardPaymentCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState))
            End If
        End Sub
        
        '''<remarks/>
        <System.Web.Services.Protocols.SoapHeaderAttribute("CharterHeaderInfoValue"),  _
         System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://charter.com/enterprise/billing/csg/payments:addEFTPaymentIn", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Bare)>  _
        Public Function AddEFTPayment(<System.Xml.Serialization.XmlElementAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")> ByVal AddEFTPaymentRequest As AddEFTPaymentRequest) As <System.Xml.Serialization.XmlElementAttribute("AddEFTPaymentResponse", [Namespace]:="http://charter.com/enterprise/billing/csg/payments")> AddEFTPaymentResponse
            Dim results() As Object = Me.Invoke("AddEFTPayment", New Object() {AddEFTPaymentRequest})
            Return CType(results(0),AddEFTPaymentResponse)
        End Function
        
        '''<remarks/>
        Public Overloads Sub AddEFTPaymentAsync(ByVal AddEFTPaymentRequest As AddEFTPaymentRequest)
            Me.AddEFTPaymentAsync(AddEFTPaymentRequest, Nothing)
        End Sub
        
        '''<remarks/>
        Public Overloads Sub AddEFTPaymentAsync(ByVal AddEFTPaymentRequest As AddEFTPaymentRequest, ByVal userState As Object)
            If (Me.AddEFTPaymentOperationCompleted Is Nothing) Then
                Me.AddEFTPaymentOperationCompleted = AddressOf Me.OnAddEFTPaymentOperationCompleted
            End If
            Me.InvokeAsync("AddEFTPayment", New Object() {AddEFTPaymentRequest}, Me.AddEFTPaymentOperationCompleted, userState)
        End Sub
        
        Private Sub OnAddEFTPaymentOperationCompleted(ByVal arg As Object)
            If (Not (Me.AddEFTPaymentCompletedEvent) Is Nothing) Then
                Dim invokeArgs As System.Web.Services.Protocols.InvokeCompletedEventArgs = CType(arg,System.Web.Services.Protocols.InvokeCompletedEventArgs)
                RaiseEvent AddEFTPaymentCompleted(Me, New AddEFTPaymentCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState))
            End If
        End Sub
        
        '''<remarks/>
        Public Shadows Sub CancelAsync(ByVal userState As Object)
            MyBase.CancelAsync(userState)
        End Sub
        
        Private Function IsLocalFileSystemWebService(ByVal url As String) As Boolean
            If ((url Is Nothing)  _
                        OrElse (url Is String.Empty)) Then
                Return false
            End If
            Dim wsUri As System.Uri = New System.Uri(url)
            If ((wsUri.Port >= 1024)  _
                        AndAlso (String.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) = 0)) Then
                Return true
            End If
            Return false
        End Function
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments"),  _
     System.Xml.Serialization.XmlRootAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments", IsNullable:=false)>  _
    Partial Public Class CharterHeaderInfo
        Inherits System.Web.Services.Protocols.SoapHeader
        
        Private tranIdField As System.Guid
        
        Private logOnlyField As Boolean
        
        Private dataSourceOverrideField As DataSourceOverrideType
        
        Private anyAttrField() As System.Xml.XmlAttribute
        
        '''<remarks/>
        Public Property TranId() As System.Guid
            Get
                Return Me.tranIdField
            End Get
            Set
                Me.tranIdField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property LogOnly() As Boolean
            Get
                Return Me.logOnlyField
            End Get
            Set
                Me.logOnlyField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property DataSourceOverride() As DataSourceOverrideType
            Get
                Return Me.dataSourceOverrideField
            End Get
            Set
                Me.dataSourceOverrideField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlAnyAttributeAttribute()>  _
        Public Property AnyAttr() As System.Xml.XmlAttribute()
            Get
                Return Me.anyAttrField
            End Get
            Set
                Me.anyAttrField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum DataSourceOverrideType
        
        '''<remarks/>
        NoOverride
        
        '''<remarks/>
        OverrideToDatabase
        
        '''<remarks/>
        OverrideToRemoteSystem
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class EFTPaymentResponse
        
        Private accountIdField As String
        
        Private batchField As String
        
        Private batchDetailNumberField As String
        
        Private resultField As MultiCallResult
        
        '''<remarks/>
        Public Property AccountId() As String
            Get
                Return Me.accountIdField
            End Get
            Set
                Me.accountIdField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Batch() As String
            Get
                Return Me.batchField
            End Get
            Set
                Me.batchField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property BatchDetailNumber() As String
            Get
                Return Me.batchDetailNumberField
            End Get
            Set
                Me.batchDetailNumberField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Result() As MultiCallResult
            Get
                Return Me.resultField
            End Get
            Set
                Me.resultField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class MultiCallResult
        
        Private wasAttemptedField As Boolean
        
        Private exceptionInfoField As ResultExceptionInfo
        
        '''<remarks/>
        Public Property wasAttempted() As Boolean
            Get
                Return Me.wasAttemptedField
            End Get
            Set
                Me.wasAttemptedField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property ExceptionInfo() As ResultExceptionInfo
            Get
                Return Me.exceptionInfoField
            End Get
            Set
                Me.exceptionInfoField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class ResultExceptionInfo
        
        Private typeField As String
        
        Private messageField As String
        
        Private stackTraceField As String
        
        Private codeField As String
        
        '''<remarks/>
        Public Property Type() As String
            Get
                Return Me.typeField
            End Get
            Set
                Me.typeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Message() As String
            Get
                Return Me.messageField
            End Get
            Set
                Me.messageField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property StackTrace() As String
            Get
                Return Me.stackTraceField
            End Get
            Set
                Me.stackTraceField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Code() As String
            Get
                Return Me.codeField
            End Get
            Set
                Me.codeField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class EFTPaymentRequest
        
        Private csgHeaderInfoField As CsgHeaderInfo
        
        Private accountIdField As String
        
        Private bankAccountField As EFTPaymentRequestBankAccount
        
        '''<remarks/>
        Public Property CsgHeaderInfo() As CsgHeaderInfo
            Get
                Return Me.csgHeaderInfoField
            End Get
            Set
                Me.csgHeaderInfoField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property AccountId() As String
            Get
                Return Me.accountIdField
            End Get
            Set
                Me.accountIdField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property BankAccount() As EFTPaymentRequestBankAccount
            Get
                Return Me.bankAccountField
            End Get
            Set
                Me.bankAccountField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CsgHeaderInfo
        
        Private regionField As String
        
        Private routingAreaField As String
        
        Private conversationIdField As String
        
        '''<remarks/>
        Public Property Region() As String
            Get
                Return Me.regionField
            End Get
            Set
                Me.regionField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property RoutingArea() As String
            Get
                Return Me.routingAreaField
            End Get
            Set
                Me.routingAreaField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property ConversationId() As String
            Get
                Return Me.conversationIdField
            End Get
            Set
                Me.conversationIdField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class EFTPaymentRequestBankAccount
        
        Private numberField As String
        
        Private routingNumberField As String
        
        Private typeField As EFTPaymentRequestBankAccountType
        
        Private amountField As Decimal
        
        Private sourceField As String
        
        '''<remarks/>
        Public Property Number() As String
            Get
                Return Me.numberField
            End Get
            Set
                Me.numberField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property RoutingNumber() As String
            Get
                Return Me.routingNumberField
            End Get
            Set
                Me.routingNumberField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Type() As EFTPaymentRequestBankAccountType
            Get
                Return Me.typeField
            End Get
            Set
                Me.typeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Amount() As Decimal
            Get
                Return Me.amountField
            End Get
            Set
                Me.amountField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Source() As String
            Get
                Return Me.sourceField
            End Get
            Set
                Me.sourceField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum EFTPaymentRequestBankAccountType
        
        '''<remarks/>
        NotSpecified
        
        '''<remarks/>
        Checking
        
        '''<remarks/>
        Savings
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentResponse
        
        Private accountIdField As String
        
        Private resultField As MultiCallResult
        
        Private authorizationField As CardPaymentResponseAuthorization
        
        '''<remarks/>
        Public Property AccountId() As String
            Get
                Return Me.accountIdField
            End Get
            Set
                Me.accountIdField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Result() As MultiCallResult
            Get
                Return Me.resultField
            End Get
            Set
                Me.resultField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Authorization() As CardPaymentResponseAuthorization
            Get
                Return Me.authorizationField
            End Get
            Set
                Me.authorizationField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentResponseAuthorization
        
        Private responseField As String
        
        Private numberField As String
        
        Private amountField As Decimal
        
        Private rejectReasonField As String
        
        Private debitCardIndicatorField As String
        
        Private securityVerificationField As CardPaymentResponseAuthorizationSecurityVerification
        
        Private addressVerificationField As CardPaymentResponseAuthorizationAddressVerification
        
        '''<remarks/>
        Public Property Response() As String
            Get
                Return Me.responseField
            End Get
            Set
                Me.responseField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Number() As String
            Get
                Return Me.numberField
            End Get
            Set
                Me.numberField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Amount() As Decimal
            Get
                Return Me.amountField
            End Get
            Set
                Me.amountField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property RejectReason() As String
            Get
                Return Me.rejectReasonField
            End Get
            Set
                Me.rejectReasonField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property DebitCardIndicator() As String
            Get
                Return Me.debitCardIndicatorField
            End Get
            Set
                Me.debitCardIndicatorField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property SecurityVerification() As CardPaymentResponseAuthorizationSecurityVerification
            Get
                Return Me.securityVerificationField
            End Get
            Set
                Me.securityVerificationField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property AddressVerification() As CardPaymentResponseAuthorizationAddressVerification
            Get
                Return Me.addressVerificationField
            End Get
            Set
                Me.addressVerificationField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentResponseAuthorizationSecurityVerification
        
        Private codeField As String
        
        Private messageField As String
        
        '''<remarks/>
        Public Property Code() As String
            Get
                Return Me.codeField
            End Get
            Set
                Me.codeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Message() As String
            Get
                Return Me.messageField
            End Get
            Set
                Me.messageField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentResponseAuthorizationAddressVerification
        
        Private codeField As String
        
        Private messageField As String
        
        '''<remarks/>
        Public Property Code() As String
            Get
                Return Me.codeField
            End Get
            Set
                Me.codeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Message() As String
            Get
                Return Me.messageField
            End Get
            Set
                Me.messageField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CsgStatusMessage
        
        Private codeField As String
        
        Private messageField As String
        
        '''<remarks/>
        Public Property Code() As String
            Get
                Return Me.codeField
            End Get
            Set
                Me.codeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Message() As String
            Get
                Return Me.messageField
            End Get
            Set
                Me.messageField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class Result
        
        Private returnCodeField As ResultReturnCode
        
        Private referenceCodeField As String
        
        Private typeField As ResultType
        
        Private descriptionField As String
        
        Private dateTimeField As Date
        
        Private sourceField As String
        
        Private serverField As String
        
        Private exceptionInfoField As ResultExceptionInfo
        
        Private statusMessagesField() As CsgStatusMessage
        
        '''<remarks/>
        Public Property ReturnCode() As ResultReturnCode
            Get
                Return Me.returnCodeField
            End Get
            Set
                Me.returnCodeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property ReferenceCode() As String
            Get
                Return Me.referenceCodeField
            End Get
            Set
                Me.referenceCodeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Type() As ResultType
            Get
                Return Me.typeField
            End Get
            Set
                Me.typeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Description() As String
            Get
                Return Me.descriptionField
            End Get
            Set
                Me.descriptionField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property DateTime() As Date
            Get
                Return Me.dateTimeField
            End Get
            Set
                Me.dateTimeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Source() As String
            Get
                Return Me.sourceField
            End Get
            Set
                Me.sourceField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Server() As String
            Get
                Return Me.serverField
            End Get
            Set
                Me.serverField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property ExceptionInfo() As ResultExceptionInfo
            Get
                Return Me.exceptionInfoField
            End Get
            Set
                Me.exceptionInfoField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("StatusMessages")>  _
        Public Property StatusMessages() As CsgStatusMessage()
            Get
                Return Me.statusMessagesField
            End Get
            Set
                Me.statusMessagesField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum ResultReturnCode
        
        '''<remarks/>
        Success
        
        '''<remarks/>
        NoDataFound
        
        '''<remarks/>
        InvalidXml
        
        '''<remarks/>
        BusinessRuleNotMet
        
        '''<remarks/>
        Exception
        
        '''<remarks/>
        DatabaseError
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum ResultType
        
        '''<remarks/>
        Informational
        
        '''<remarks/>
        [Error]
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentRequest
        
        Private csgHeaderInfoField As CsgHeaderInfo
        
        Private accountIdField As String
        
        Private batchField As String
        
        Private pINField As String
        
        Private sourceField As String
        
        Private eCommerceIdentifierField As CardPaymentRequestECommerceIdentifier
        
        Private creditCardField As CardPaymentRequestCreditCard
        
        '''<remarks/>
        Public Property CsgHeaderInfo() As CsgHeaderInfo
            Get
                Return Me.csgHeaderInfoField
            End Get
            Set
                Me.csgHeaderInfoField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property AccountId() As String
            Get
                Return Me.accountIdField
            End Get
            Set
                Me.accountIdField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Batch() As String
            Get
                Return Me.batchField
            End Get
            Set
                Me.batchField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property PIN() As String
            Get
                Return Me.pINField
            End Get
            Set
                Me.pINField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Source() As String
            Get
                Return Me.sourceField
            End Get
            Set
                Me.sourceField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property eCommerceIdentifier() As CardPaymentRequestECommerceIdentifier
            Get
                Return Me.eCommerceIdentifierField
            End Get
            Set
                Me.eCommerceIdentifierField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property CreditCard() As CardPaymentRequestCreditCard
            Get
                Return Me.creditCardField
            End Get
            Set
                Me.creditCardField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum CardPaymentRequestECommerceIdentifier
        
        '''<remarks/>
        NotSpecified
        
        '''<remarks/>
        Visa
        
        '''<remarks/>
        Mastercard
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class CardPaymentRequestCreditCard
        
        Private typeField As CardPaymentRequestCreditCardType
        
        Private numberField As String
        
        Private securityCodeField As String
        
        Private securityCodeOverrideField As Boolean
        
        Private expirationDateField As String
        
        Private amountField As Decimal
        
        '''<remarks/>
        Public Property Type() As CardPaymentRequestCreditCardType
            Get
                Return Me.typeField
            End Get
            Set
                Me.typeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Number() As String
            Get
                Return Me.numberField
            End Get
            Set
                Me.numberField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property SecurityCode() As String
            Get
                Return Me.securityCodeField
            End Get
            Set
                Me.securityCodeField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property SecurityCodeOverride() As Boolean
            Get
                Return Me.securityCodeOverrideField
            End Get
            Set
                Me.securityCodeOverrideField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property ExpirationDate() As String
            Get
                Return Me.expirationDateField
            End Get
            Set
                Me.expirationDateField = value
            End Set
        End Property
        
        '''<remarks/>
        Public Property Amount() As Decimal
            Get
                Return Me.amountField
            End Get
            Set
                Me.amountField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Public Enum CardPaymentRequestCreditCardType
        
        '''<remarks/>
        NotSpecified
        
        '''<remarks/>
        Visa
        
        '''<remarks/>
        Mastercard
        
        '''<remarks/>
        Discover
        
        '''<remarks/>
        <System.Xml.Serialization.XmlEnumAttribute("American Express")>  _
        AmericanExpress
    End Enum
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class AddCardPaymentRequest
        
        Private csgHeaderInfoField As CsgHeaderInfo
        
        Private paymentField() As CardPaymentRequest
        
        '''<remarks/>
        Public Property CsgHeaderInfo() As CsgHeaderInfo
            Get
                Return Me.csgHeaderInfoField
            End Get
            Set
                Me.csgHeaderInfoField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("Payment")>  _
        Public Property Payment() As CardPaymentRequest()
            Get
                Return Me.paymentField
            End Get
            Set
                Me.paymentField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class AddCardPaymentResponse
        
        Private resultField As Result
        
        Private paymentField() As CardPaymentResponse
        
        '''<remarks/>
        Public Property Result() As Result
            Get
                Return Me.resultField
            End Get
            Set
                Me.resultField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("Payment")>  _
        Public Property Payment() As CardPaymentResponse()
            Get
                Return Me.paymentField
            End Get
            Set
                Me.paymentField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class AddEFTPaymentRequest
        
        Private csgHeaderInfoField As CsgHeaderInfo
        
        Private paymentField() As EFTPaymentRequest
        
        '''<remarks/>
        Public Property CsgHeaderInfo() As CsgHeaderInfo
            Get
                Return Me.csgHeaderInfoField
            End Get
            Set
                Me.csgHeaderInfoField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("Payment")>  _
        Public Property Payment() As EFTPaymentRequest()
            Get
                Return Me.paymentField
            End Get
            Set
                Me.paymentField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233"),  _
     System.SerializableAttribute(),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code"),  _
     System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="http://charter.com/enterprise/billing/csg/payments")>  _
    Partial Public Class AddEFTPaymentResponse
        
        Private resultField As Result
        
        Private paymentField() As EFTPaymentResponse
        
        '''<remarks/>
        Public Property Result() As Result
            Get
                Return Me.resultField
            End Get
            Set
                Me.resultField = value
            End Set
        End Property
        
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("Payment")>  _
        Public Property Payment() As EFTPaymentResponse()
            Get
                Return Me.paymentField
            End Get
            Set
                Me.paymentField = value
            End Set
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1")>  _
    Public Delegate Sub AddCardPaymentCompletedEventHandler(ByVal sender As Object, ByVal e As AddCardPaymentCompletedEventArgs)
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1"),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code")>  _
    Partial Public Class AddCardPaymentCompletedEventArgs
        Inherits System.ComponentModel.AsyncCompletedEventArgs
        
        Private results() As Object
        
        Friend Sub New(ByVal results() As Object, ByVal exception As System.Exception, ByVal cancelled As Boolean, ByVal userState As Object)
            MyBase.New(exception, cancelled, userState)
            Me.results = results
        End Sub
        
        '''<remarks/>
        Public ReadOnly Property Result() As AddCardPaymentResponse
            Get
                Me.RaiseExceptionIfNecessary
                Return CType(Me.results(0),AddCardPaymentResponse)
            End Get
        End Property
    End Class
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1")>  _
    Public Delegate Sub AddEFTPaymentCompletedEventHandler(ByVal sender As Object, ByVal e As AddEFTPaymentCompletedEventArgs)
    
    '''<remarks/>
    <System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1"),  _
     System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.ComponentModel.DesignerCategoryAttribute("code")>  _
    Partial Public Class AddEFTPaymentCompletedEventArgs
        Inherits System.ComponentModel.AsyncCompletedEventArgs
        
        Private results() As Object
        
        Friend Sub New(ByVal results() As Object, ByVal exception As System.Exception, ByVal cancelled As Boolean, ByVal userState As Object)
            MyBase.New(exception, cancelled, userState)
            Me.results = results
        End Sub
        
        '''<remarks/>
        Public ReadOnly Property Result() As AddEFTPaymentResponse
            Get
                Me.RaiseExceptionIfNecessary
                Return CType(Me.results(0),AddEFTPaymentResponse)
            End Get
        End Property
    End Class
End Namespace
