corgibytes-tax_cloud 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +17 -0
- data/.circleci/config.yml +81 -0
- data/.circleci/setup-rubygems.sh +9 -0
- data/.gitignore +67 -0
- data/.rubocop.yml +6 -0
- data/.rubocop_todo.yml +66 -0
- data/.travis.yml +7 -0
- data/CHANGELOG.rdoc +48 -0
- data/CONTRIBUTORS.txt +23 -0
- data/Dockerfile +9 -0
- data/Gemfile +22 -0
- data/LICENSE +23 -0
- data/README.md +190 -0
- data/Rakefile +29 -0
- data/docker-compose.yml +10 -0
- data/examples/.env.example +2 -0
- data/examples/lookup_example.rb +139 -0
- data/lib/config/locales/en.yml +34 -0
- data/lib/hash.rb +8 -0
- data/lib/savon_soap_xml.rb +32 -0
- data/lib/tasks/tax_cloud.rake +18 -0
- data/lib/tasks/tax_code_groups.rake +37 -0
- data/lib/tasks/tax_codes.rake +43 -0
- data/lib/tax_cloud.rb +70 -0
- data/lib/tax_cloud/address.rb +50 -0
- data/lib/tax_cloud/cart_item.rb +26 -0
- data/lib/tax_cloud/client.rb +60 -0
- data/lib/tax_cloud/configuration.rb +28 -0
- data/lib/tax_cloud/errors.rb +6 -0
- data/lib/tax_cloud/errors/api_error.rb +17 -0
- data/lib/tax_cloud/errors/missing_config_error.rb +13 -0
- data/lib/tax_cloud/errors/missing_config_option_error.rb +19 -0
- data/lib/tax_cloud/errors/soap_error.rb +30 -0
- data/lib/tax_cloud/errors/tax_cloud_error.rb +83 -0
- data/lib/tax_cloud/errors/unexpected_soap_response_error.rb +19 -0
- data/lib/tax_cloud/record.rb +14 -0
- data/lib/tax_cloud/responses.rb +13 -0
- data/lib/tax_cloud/responses/authorized.rb +10 -0
- data/lib/tax_cloud/responses/authorized_with_capture.rb +10 -0
- data/lib/tax_cloud/responses/base.rb +82 -0
- data/lib/tax_cloud/responses/captured.rb +10 -0
- data/lib/tax_cloud/responses/cart_item.rb +23 -0
- data/lib/tax_cloud/responses/generic.rb +31 -0
- data/lib/tax_cloud/responses/lookup.rb +38 -0
- data/lib/tax_cloud/responses/ping.rb +10 -0
- data/lib/tax_cloud/responses/returned.rb +10 -0
- data/lib/tax_cloud/responses/tax_code_groups.rb +30 -0
- data/lib/tax_cloud/responses/tax_codes.rb +30 -0
- data/lib/tax_cloud/responses/tax_codes_by_group.rb +30 -0
- data/lib/tax_cloud/responses/verify_address.rb +26 -0
- data/lib/tax_cloud/tax_code.rb +11 -0
- data/lib/tax_cloud/tax_code_constants.rb +560 -0
- data/lib/tax_cloud/tax_code_group.rb +28 -0
- data/lib/tax_cloud/tax_code_group_constants.rb +31 -0
- data/lib/tax_cloud/tax_code_groups.rb +25 -0
- data/lib/tax_cloud/tax_codes.rb +25 -0
- data/lib/tax_cloud/transaction.rb +118 -0
- data/lib/tax_cloud/version.rb +4 -0
- data/tax_cloud.gemspec +23 -0
- data/test/cassettes/authorized.yml +826 -0
- data/test/cassettes/authorized_with_capture.yml +826 -0
- data/test/cassettes/authorized_with_localized_time.yml +826 -0
- data/test/cassettes/captured.yml +872 -0
- data/test/cassettes/get_tic_groups.yml +783 -0
- data/test/cassettes/get_tics.yml +1079 -0
- data/test/cassettes/get_tics_by_group.yml +776 -0
- data/test/cassettes/invalid_soap_call.yml +778 -0
- data/test/cassettes/lookup.yml +780 -0
- data/test/cassettes/lookup_ny.yml +780 -0
- data/test/cassettes/ping.yml +776 -0
- data/test/cassettes/ping_with_invalid_credentials.yml +774 -0
- data/test/cassettes/ping_with_invalid_response.yml +774 -0
- data/test/cassettes/returned.yml +872 -0
- data/test/cassettes/verify_bad_address.yml +772 -0
- data/test/cassettes/verify_good_address.yml +772 -0
- data/test/helper.rb +17 -0
- data/test/test_address.rb +54 -0
- data/test/test_cart_item.rb +15 -0
- data/test/test_client.rb +27 -0
- data/test/test_configuration_optional_keys.rb +42 -0
- data/test/test_configuration_required_keys.rb +31 -0
- data/test/test_lookup_response.rb +20 -0
- data/test/test_setup.rb +17 -0
- data/test/test_soap.rb +11 -0
- data/test/test_tax_code_groups.rb +29 -0
- data/test/test_tax_codes.rb +17 -0
- data/test/test_transaction.rb +78 -0
- data/test/test_transaction_ny.rb +25 -0
- data/test/vcr_setup.rb +9 -0
- metadata +174 -0
| @@ -0,0 +1,28 @@ | |
| 1 | 
            +
            module TaxCloud #:nodoc:
         | 
| 2 | 
            +
              # A group of tax codes.
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # See https://taxcloud.net/tic.
         | 
| 5 | 
            +
              class TaxCodeGroup < Record
         | 
| 6 | 
            +
                # Group ID.
         | 
| 7 | 
            +
                attr_accessor :group_id
         | 
| 8 | 
            +
                # Group description.
         | 
| 9 | 
            +
                attr_accessor :description
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                # All Tax Codes in this group.
         | 
| 12 | 
            +
                def tax_codes
         | 
| 13 | 
            +
                  @tax_codes ||= begin
         | 
| 14 | 
            +
                    response = TaxCloud.client.request :get_ti_cs_by_group, tic_group: group_id
         | 
| 15 | 
            +
                    tax_codes = TaxCloud::Responses::TaxCodesByGroup.parse response
         | 
| 16 | 
            +
                    Hash[tax_codes.map { |tic| [tic.ticid, tic] }]
         | 
| 17 | 
            +
                  end
         | 
| 18 | 
            +
                end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                # Lookup a tax code by ID.
         | 
| 21 | 
            +
                #
         | 
| 22 | 
            +
                # === Parameters
         | 
| 23 | 
            +
                # [ticid] Tax code ID.
         | 
| 24 | 
            +
                def [](ticid)
         | 
| 25 | 
            +
                  tax_codes[ticid]
         | 
| 26 | 
            +
                end
         | 
| 27 | 
            +
              end
         | 
| 28 | 
            +
            end
         | 
| @@ -0,0 +1,31 @@ | |
| 1 | 
            +
            module TaxCloud
         | 
| 2 | 
            +
              class TaxCode
         | 
| 3 | 
            +
                # Tax Code Groups.
         | 
| 4 | 
            +
                class Groups
         | 
| 5 | 
            +
                  # Administrative
         | 
| 6 | 
            +
                  ADMINISTRATIVE = 1
         | 
| 7 | 
            +
                  # Clothing and Related Products
         | 
| 8 | 
            +
                  CLOTHING_AND_RELATED_PRODUCTS = 2
         | 
| 9 | 
            +
                  # School Related Products
         | 
| 10 | 
            +
                  SCHOOL_RELATED_PRODUCTS = 3
         | 
| 11 | 
            +
                  # Computer Related Products
         | 
| 12 | 
            +
                  COMPUTER_RELATED_PRODUCTS = 4
         | 
| 13 | 
            +
                  # Digital Products
         | 
| 14 | 
            +
                  DIGITAL_PRODUCTS = 5
         | 
| 15 | 
            +
                  # Food and Food Products
         | 
| 16 | 
            +
                  FOOD_AND_FOOD_PRODUCTS = 6
         | 
| 17 | 
            +
                  # Prepared Food
         | 
| 18 | 
            +
                  PREPARED_FOOD = 7
         | 
| 19 | 
            +
                  # Drugs
         | 
| 20 | 
            +
                  DRUGS = 8
         | 
| 21 | 
            +
                  # Durable Medical Equipment
         | 
| 22 | 
            +
                  DURABLE_MEDICAL_EQUIPMENT = 9
         | 
| 23 | 
            +
                  # Mobilty Enhancing Equipment
         | 
| 24 | 
            +
                  MOBILTY_ENHANCING_EQUIPMENT = 10
         | 
| 25 | 
            +
                  # Prosthetic Devices
         | 
| 26 | 
            +
                  PROSTHETIC_DEVICES = 11
         | 
| 27 | 
            +
                  # Telecommunications
         | 
| 28 | 
            +
                  TELECOMMUNICATIONS = 12
         | 
| 29 | 
            +
                end
         | 
| 30 | 
            +
              end
         | 
| 31 | 
            +
            end
         | 
| @@ -0,0 +1,25 @@ | |
| 1 | 
            +
            module TaxCloud #:nodoc:
         | 
| 2 | 
            +
              class TaxCode
         | 
| 3 | 
            +
                # A TaxCloud::TaxCode::Group organizes tax codes in a logical group.
         | 
| 4 | 
            +
                class Groups
         | 
| 5 | 
            +
                  class << self
         | 
| 6 | 
            +
                    # All tax code groups.
         | 
| 7 | 
            +
                    def all
         | 
| 8 | 
            +
                      @tax_code_groups ||= begin
         | 
| 9 | 
            +
                        response = TaxCloud.client.request :get_tic_groups
         | 
| 10 | 
            +
                        tax_code_groups = TaxCloud::Responses::TaxCodeGroups.parse response
         | 
| 11 | 
            +
                        Hash[tax_code_groups.map { |tax_code_group| [tax_code_group.group_id, tax_code_group] }]
         | 
| 12 | 
            +
                      end
         | 
| 13 | 
            +
                    end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                    # Lookup a tax code group by ID.
         | 
| 16 | 
            +
                    #
         | 
| 17 | 
            +
                    # === Parameters
         | 
| 18 | 
            +
                    # [group_id] Group ID.
         | 
| 19 | 
            +
                    def [](group_id)
         | 
| 20 | 
            +
                      all[group_id]
         | 
| 21 | 
            +
                    end
         | 
| 22 | 
            +
                  end
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
              end
         | 
| 25 | 
            +
            end
         | 
| @@ -0,0 +1,25 @@ | |
| 1 | 
            +
            module TaxCloud #:nodoc:
         | 
| 2 | 
            +
              class TaxCodes
         | 
| 3 | 
            +
                # General purpose tax code.
         | 
| 4 | 
            +
                GENERAL = 00000
         | 
| 5 | 
            +
             | 
| 6 | 
            +
                class << self
         | 
| 7 | 
            +
                  # All tax codes
         | 
| 8 | 
            +
                  def all
         | 
| 9 | 
            +
                    @tax_codes ||= begin
         | 
| 10 | 
            +
                      response = TaxCloud.client.request :get_ti_cs
         | 
| 11 | 
            +
                      tax_codes = TaxCloud::Responses::TaxCodes.parse response
         | 
| 12 | 
            +
                      Hash[tax_codes.map { |tic| [tic.ticid, tic] }]
         | 
| 13 | 
            +
                    end
         | 
| 14 | 
            +
                  end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  # Lookup a tax code by ID.
         | 
| 17 | 
            +
                  #
         | 
| 18 | 
            +
                  # === Parameters
         | 
| 19 | 
            +
                  # [ticid] Tax code ID.
         | 
| 20 | 
            +
                  def [](ticid)
         | 
| 21 | 
            +
                    all[ticid]
         | 
| 22 | 
            +
                  end
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
              end
         | 
| 25 | 
            +
            end
         | 
| @@ -0,0 +1,118 @@ | |
| 1 | 
            +
            module TaxCloud #:nodoc:
         | 
| 2 | 
            +
              # Lookup tax rate, authorize, and capture the information to be logged into TaxCloud.
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # *Note:* The Transaction must not change between the <tt>lookup</tt> and <tt>authorization</tt> method calls.
         | 
| 5 | 
            +
              class Transaction < Record
         | 
| 6 | 
            +
                # User-defined customer ID for the <tt>Transaction</tt>.
         | 
| 7 | 
            +
                attr_accessor :customer_id
         | 
| 8 | 
            +
                # User-defined cart ID for the order.
         | 
| 9 | 
            +
                attr_accessor :cart_id
         | 
| 10 | 
            +
                # Array of <tt>CartItem</tt>s.
         | 
| 11 | 
            +
                attr_accessor :cart_items
         | 
| 12 | 
            +
                # The order ID for <tt>authorized</tt>, <tt>captured</tt>, and <tt>authorized_with_captured</tt> methods.
         | 
| 13 | 
            +
                attr_accessor :order_id
         | 
| 14 | 
            +
                # The <tt>Address</tt> of which the shipment originates.
         | 
| 15 | 
            +
                attr_accessor :origin
         | 
| 16 | 
            +
                # The <tt>Address</tt> of which the shipment arrives.
         | 
| 17 | 
            +
                attr_accessor :destination
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                # Create a new transaction.
         | 
| 20 | 
            +
                # === Parameters
         | 
| 21 | 
            +
                # [params] Transaction params.
         | 
| 22 | 
            +
                def initialize(params = {})
         | 
| 23 | 
            +
                  params = { cart_items: [] }.merge(params)
         | 
| 24 | 
            +
                  super params
         | 
| 25 | 
            +
                end
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                # Lookup the tax rate for the transaction.
         | 
| 28 | 
            +
                # The returned information is based on the originating address, destination address, and cart items.
         | 
| 29 | 
            +
                def lookup
         | 
| 30 | 
            +
                  request_params = {
         | 
| 31 | 
            +
                    'customerID' => customer_id,
         | 
| 32 | 
            +
                    'cartID' => cart_id,
         | 
| 33 | 
            +
                    'cartItems' => { 'CartItem' => cart_items.map(&:to_hash) },
         | 
| 34 | 
            +
                    'origin' => origin.to_hash,
         | 
| 35 | 
            +
                    'destination' => destination.to_hash
         | 
| 36 | 
            +
                  }
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                  response = TaxCloud.client.request :lookup, request_params
         | 
| 39 | 
            +
                  TaxCloud::Responses::Lookup.parse response
         | 
| 40 | 
            +
                end
         | 
| 41 | 
            +
             | 
| 42 | 
            +
                # Once a purchase has been made and payment has been authorized, this method must be called. A matching Lookup call must have been made before this is called.
         | 
| 43 | 
            +
                #
         | 
| 44 | 
            +
                # === Options
         | 
| 45 | 
            +
                # * <tt>date_authorized</tt> - The date the transaction was authorized. Default is today.
         | 
| 46 | 
            +
                def authorized(options = {})
         | 
| 47 | 
            +
                  options = { date_authorized: Date.today }.merge(options)
         | 
| 48 | 
            +
             | 
| 49 | 
            +
                  request_params = {
         | 
| 50 | 
            +
                    'customerID' => customer_id,
         | 
| 51 | 
            +
                    'cartID' => cart_id,
         | 
| 52 | 
            +
                    'orderID' => order_id,
         | 
| 53 | 
            +
                    'dateAuthorized' => xml_date(options[:date_authorized])
         | 
| 54 | 
            +
                  }
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                  response = TaxCloud.client.request :authorized, request_params
         | 
| 57 | 
            +
                  TaxCloud::Responses::Authorized.parse response
         | 
| 58 | 
            +
                end
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                # Complete the transaction. The <tt>order_id</tt> passed into <tt>captured</tt> must match the <tt>order_id</tt> that was passed into <tt>authorized</tt>.
         | 
| 61 | 
            +
                #
         | 
| 62 | 
            +
                # === Options
         | 
| 63 | 
            +
                # [date_captured] The time the transaction was captured. Default is today.
         | 
| 64 | 
            +
                def captured(options = {})
         | 
| 65 | 
            +
                  options = { date_captured: Date.today }.merge(options)
         | 
| 66 | 
            +
                  request_params = {
         | 
| 67 | 
            +
                    'customerID' => customer_id,
         | 
| 68 | 
            +
                    'cartID' => cart_id,
         | 
| 69 | 
            +
                    'orderID' => order_id,
         | 
| 70 | 
            +
                    'dateCaptured' => xml_date(options[:date_captured])
         | 
| 71 | 
            +
                  }
         | 
| 72 | 
            +
             | 
| 73 | 
            +
                  response = TaxCloud.client.request :captured, request_params
         | 
| 74 | 
            +
                  TaxCloud::Responses::Captured.parse response
         | 
| 75 | 
            +
                end
         | 
| 76 | 
            +
             | 
| 77 | 
            +
                # Combines the <tt>authorized</tt> and <tt>captured</tt> methods into a single call
         | 
| 78 | 
            +
                #
         | 
| 79 | 
            +
                # === Options
         | 
| 80 | 
            +
                # [date_authorized] The date the transaction was authorized. Default is today.
         | 
| 81 | 
            +
                # [date_captured] - The date the transaction was captured. Default is today.
         | 
| 82 | 
            +
                def authorized_with_capture(options = {})
         | 
| 83 | 
            +
                  options = { date_authorized: Date.today, date_captured: Date.today }.merge(options)
         | 
| 84 | 
            +
                  request_params = {
         | 
| 85 | 
            +
                    'customerID' => customer_id,
         | 
| 86 | 
            +
                    'cartID' => cart_id,
         | 
| 87 | 
            +
                    'orderID' => order_id,
         | 
| 88 | 
            +
                    'dateAuthorized' => xml_date(options[:date_authorized]),
         | 
| 89 | 
            +
                    'dateCaptured' => xml_date(options[:date_captured])
         | 
| 90 | 
            +
                  }
         | 
| 91 | 
            +
             | 
| 92 | 
            +
                  response = TaxCloud.client.request :authorized_with_capture, request_params
         | 
| 93 | 
            +
                  TaxCloud::Responses::AuthorizedWithCapture.parse response
         | 
| 94 | 
            +
                end
         | 
| 95 | 
            +
             | 
| 96 | 
            +
                # Marks any included cart items as returned.
         | 
| 97 | 
            +
                #
         | 
| 98 | 
            +
                # === Options
         | 
| 99 | 
            +
                # [returned_date] The date the return occured. Default is today.
         | 
| 100 | 
            +
                def returned(options = {})
         | 
| 101 | 
            +
                  options = { returned_date: Date.today }.merge(options)
         | 
| 102 | 
            +
                  request_params = {
         | 
| 103 | 
            +
                    'orderID' => order_id,
         | 
| 104 | 
            +
                    'cartItems' => { 'CartItem' => cart_items.map(&:to_hash) },
         | 
| 105 | 
            +
                    'returnedDate' => xml_date(options[:returned_date])
         | 
| 106 | 
            +
                  }
         | 
| 107 | 
            +
             | 
| 108 | 
            +
                  response = TaxCloud.client.request :returned, request_params
         | 
| 109 | 
            +
                  TaxCloud::Responses::Returned.parse response
         | 
| 110 | 
            +
                end
         | 
| 111 | 
            +
             | 
| 112 | 
            +
                private
         | 
| 113 | 
            +
             | 
| 114 | 
            +
                def xml_date(val)
         | 
| 115 | 
            +
                  val.respond_to?(:strftime) ? val.strftime('%Y-%m-%d') : val
         | 
| 116 | 
            +
                end
         | 
| 117 | 
            +
              end
         | 
| 118 | 
            +
            end
         | 
    
        data/tax_cloud.gemspec
    ADDED
    
    | @@ -0,0 +1,23 @@ | |
| 1 | 
            +
            $LOAD_PATH.push File.expand_path('../lib', __FILE__)
         | 
| 2 | 
            +
            require 'tax_cloud/version'
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            Gem::Specification.new do |s|
         | 
| 5 | 
            +
              s.name        = 'corgibytes-tax_cloud'
         | 
| 6 | 
            +
              s.version     = TaxCloud::VERSION
         | 
| 7 | 
            +
              s.authors     = ['Corgibytes']
         | 
| 8 | 
            +
              s.email       = ['info@corgibytes.com']
         | 
| 9 | 
            +
              s.homepage    = 'https://github.com/corgibytes/tax_cloud'
         | 
| 10 | 
            +
              s.summary     = 'Calculate sales tax using TaxCloud'
         | 
| 11 | 
            +
              s.description = 'Calculate sales tax using the TaxCloud.net API'
         | 
| 12 | 
            +
              s.licenses    = ['MIT']
         | 
| 13 | 
            +
             | 
| 14 | 
            +
              s.required_ruby_version = '>= 1.9.3'
         | 
| 15 | 
            +
              s.required_rubygems_version = '>= 1.3.6'
         | 
| 16 | 
            +
              s.files         = `git ls-files`.split("\n")
         | 
| 17 | 
            +
              s.test_files    = `git ls-files -- {test}/*`.split("\n")
         | 
| 18 | 
            +
              s.require_paths = ['lib']
         | 
| 19 | 
            +
             | 
| 20 | 
            +
              s.add_runtime_dependency 'activesupport', '>= 3.0'
         | 
| 21 | 
            +
              s.add_runtime_dependency 'i18n'
         | 
| 22 | 
            +
              s.add_runtime_dependency 'savon', '~> 1.2'
         | 
| 23 | 
            +
            end
         | 
| @@ -0,0 +1,826 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            http_interactions:
         | 
| 3 | 
            +
            - request:
         | 
| 4 | 
            +
                method: get
         | 
| 5 | 
            +
                uri: https://api.taxcloud.net/1.0/?wsdl
         | 
| 6 | 
            +
                body:
         | 
| 7 | 
            +
                  encoding: US-ASCII
         | 
| 8 | 
            +
                  string: ''
         | 
| 9 | 
            +
                headers:
         | 
| 10 | 
            +
                  Accept:
         | 
| 11 | 
            +
                  - ! '*/*'
         | 
| 12 | 
            +
                  User-Agent:
         | 
| 13 | 
            +
                  - Ruby
         | 
| 14 | 
            +
              response:
         | 
| 15 | 
            +
                status:
         | 
| 16 | 
            +
                  code: 200
         | 
| 17 | 
            +
                  message: OK
         | 
| 18 | 
            +
                headers:
         | 
| 19 | 
            +
                  Cache-Control:
         | 
| 20 | 
            +
                  - private, max-age=0
         | 
| 21 | 
            +
                  Content-Type:
         | 
| 22 | 
            +
                  - text/xml; charset=utf-8
         | 
| 23 | 
            +
                  Server:
         | 
| 24 | 
            +
                  - Microsoft-IIS/7.0
         | 
| 25 | 
            +
                  X-Aspnet-Version:
         | 
| 26 | 
            +
                  - 4.0.30319
         | 
| 27 | 
            +
                  X-Powered-By:
         | 
| 28 | 
            +
                  - TaxCloud
         | 
| 29 | 
            +
                  Date:
         | 
| 30 | 
            +
                  - Thu, 09 Jan 2014 16:03:25 GMT
         | 
| 31 | 
            +
                  Content-Length:
         | 
| 32 | 
            +
                  - '53946'
         | 
| 33 | 
            +
                body:
         | 
| 34 | 
            +
                  encoding: US-ASCII
         | 
| 35 | 
            +
                  string: ! "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<wsdl:definitions xmlns:s=\"http://www.w3.org/2001/XMLSchema\"
         | 
| 36 | 
            +
                    xmlns:soap12=\"http://schemas.xmlsoap.org/wsdl/soap12/\" xmlns:mime=\"http://schemas.xmlsoap.org/wsdl/mime/\"
         | 
| 37 | 
            +
                    xmlns:tns=\"http://taxcloud.net\" xmlns:soap=\"http://schemas.xmlsoap.org/wsdl/soap/\"
         | 
| 38 | 
            +
                    xmlns:tm=\"http://microsoft.com/wsdl/mime/textMatching/\" xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"
         | 
| 39 | 
            +
                    xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" targetNamespace=\"http://taxcloud.net\"
         | 
| 40 | 
            +
                    xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">\r\n  <wsdl:documentation
         | 
| 41 | 
            +
                    xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">TaxCloud Web Service</wsdl:documentation>\r\n
         | 
| 42 | 
            +
                    \ <wsdl:types>\r\n    <s:schema elementFormDefault=\"qualified\" targetNamespace=\"http://taxcloud.net\">\r\n
         | 
| 43 | 
            +
                    \     <s:element name=\"VerifyAddress\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 44 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"uspsUserID\"
         | 
| 45 | 
            +
                    type=\"s:string\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 46 | 
            +
                    name=\"address1\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 47 | 
            +
                    maxOccurs=\"1\" name=\"address2\" type=\"s:string\" />\r\n            <s:element
         | 
| 48 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"city\" type=\"s:string\" />\r\n            <s:element
         | 
| 49 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"state\" type=\"s:string\" />\r\n            <s:element
         | 
| 50 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"zip5\" type=\"s:string\" />\r\n            <s:element
         | 
| 51 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"zip4\" type=\"s:string\" />\r\n          </s:sequence>\r\n
         | 
| 52 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"VerifyAddressResponse\">\r\n
         | 
| 53 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 54 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"VerifyAddressResult\" type=\"tns:VerifiedAddress\"
         | 
| 55 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 56 | 
            +
                    \     <s:complexType name=\"VerifiedAddress\">\r\n        <s:complexContent
         | 
| 57 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:Address\">\r\n            <s:sequence>\r\n
         | 
| 58 | 
            +
                    \             <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ErrNumber\"
         | 
| 59 | 
            +
                    type=\"s:string\" />\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 60 | 
            +
                    name=\"ErrDescription\" type=\"s:string\" />\r\n            </s:sequence>\r\n
         | 
| 61 | 
            +
                    \         </s:extension>\r\n        </s:complexContent>\r\n      </s:complexType>\r\n
         | 
| 62 | 
            +
                    \     <s:complexType name=\"Address\">\r\n        <s:sequence>\r\n          <s:element
         | 
| 63 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"Address1\" type=\"s:string\" />\r\n
         | 
| 64 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Address2\" type=\"s:string\"
         | 
| 65 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"City\" type=\"s:string\"
         | 
| 66 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"State\"
         | 
| 67 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 68 | 
            +
                    name=\"Zip5\" type=\"s:string\" />\r\n          <s:element minOccurs=\"0\"
         | 
| 69 | 
            +
                    maxOccurs=\"1\" name=\"Zip4\" type=\"s:string\" />\r\n        </s:sequence>\r\n
         | 
| 70 | 
            +
                    \     </s:complexType>\r\n      <s:element name=\"LookupForDate\">\r\n        <s:complexType>\r\n
         | 
| 71 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 72 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 73 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 74 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n
         | 
| 75 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"cartID\" type=\"s:string\"
         | 
| 76 | 
            +
                    />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"cartItems\"
         | 
| 77 | 
            +
                    type=\"tns:ArrayOfCartItem\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 78 | 
            +
                    maxOccurs=\"1\" name=\"origin\" type=\"tns:Address\" />\r\n            <s:element
         | 
| 79 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"destination\" type=\"tns:Address\"
         | 
| 80 | 
            +
                    />\r\n            <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"deliveredBySeller\"
         | 
| 81 | 
            +
                    type=\"s:boolean\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 82 | 
            +
                    name=\"exemptCert\" type=\"tns:ExemptionCertificate\" />\r\n            <s:element
         | 
| 83 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"useDate\" type=\"s:dateTime\" />\r\n
         | 
| 84 | 
            +
                    \         </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 85 | 
            +
                    \     <s:complexType name=\"ArrayOfCartItem\">\r\n        <s:sequence>\r\n
         | 
| 86 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"CartItem\"
         | 
| 87 | 
            +
                    nillable=\"true\" type=\"tns:CartItem\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 88 | 
            +
                    \     <s:complexType name=\"CartItem\">\r\n        <s:sequence>\r\n          <s:element
         | 
| 89 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"Index\" type=\"s:int\" />\r\n          <s:element
         | 
| 90 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"ItemID\" type=\"s:string\" />\r\n          <s:element
         | 
| 91 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"TIC\" nillable=\"true\" type=\"s:int\"
         | 
| 92 | 
            +
                    />\r\n          <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"Price\"
         | 
| 93 | 
            +
                    type=\"s:double\" />\r\n          <s:element minOccurs=\"1\" maxOccurs=\"1\"
         | 
| 94 | 
            +
                    name=\"Qty\" type=\"s:float\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 95 | 
            +
                    \     <s:complexType name=\"ExemptionCertificate\">\r\n        <s:sequence>\r\n
         | 
| 96 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"CertificateID\"
         | 
| 97 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 98 | 
            +
                    name=\"Detail\" type=\"tns:ExemptionCertificateDetail\" />\r\n        </s:sequence>\r\n
         | 
| 99 | 
            +
                    \     </s:complexType>\r\n      <s:complexType name=\"ExemptionCertificateDetail\">\r\n
         | 
| 100 | 
            +
                    \       <s:sequence>\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 101 | 
            +
                    name=\"ExemptStates\" type=\"tns:ArrayOfExemptState\" />\r\n          <s:element
         | 
| 102 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"SinglePurchase\" type=\"s:boolean\"
         | 
| 103 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"SinglePurchaseOrderNumber\"
         | 
| 104 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 105 | 
            +
                    name=\"PurchaserFirstName\" type=\"s:string\" />\r\n          <s:element minOccurs=\"0\"
         | 
| 106 | 
            +
                    maxOccurs=\"1\" name=\"PurchaserLastName\" type=\"s:string\" />\r\n          <s:element
         | 
| 107 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"PurchaserTitle\" type=\"s:string\"
         | 
| 108 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"PurchaserAddress1\"
         | 
| 109 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 110 | 
            +
                    name=\"PurchaserAddress2\" type=\"s:string\" />\r\n          <s:element minOccurs=\"0\"
         | 
| 111 | 
            +
                    maxOccurs=\"1\" name=\"PurchaserCity\" type=\"s:string\" />\r\n          <s:element
         | 
| 112 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"PurchaserState\" type=\"tns:State\"
         | 
| 113 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"PurchaserZip\"
         | 
| 114 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 115 | 
            +
                    name=\"PurchaserTaxID\" type=\"tns:TaxID\" />\r\n          <s:element minOccurs=\"1\"
         | 
| 116 | 
            +
                    maxOccurs=\"1\" name=\"PurchaserBusinessType\" type=\"tns:BusinessType\" />\r\n
         | 
| 117 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"PurchaserBusinessTypeOtherValue\"
         | 
| 118 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"1\" maxOccurs=\"1\"
         | 
| 119 | 
            +
                    name=\"PurchaserExemptionReason\" type=\"tns:ExemptionReason\" />\r\n          <s:element
         | 
| 120 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"PurchaserExemptionReasonValue\" type=\"s:string\"
         | 
| 121 | 
            +
                    />\r\n          <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"CreatedDate\"
         | 
| 122 | 
            +
                    type=\"s:dateTime\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 123 | 
            +
                    \     <s:complexType name=\"ArrayOfExemptState\">\r\n        <s:sequence>\r\n
         | 
| 124 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ExemptState\"
         | 
| 125 | 
            +
                    nillable=\"true\" type=\"tns:ExemptState\" />\r\n        </s:sequence>\r\n
         | 
| 126 | 
            +
                    \     </s:complexType>\r\n      <s:complexType name=\"ExemptState\">\r\n        <s:sequence>\r\n
         | 
| 127 | 
            +
                    \         <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"StateAbbr\" type=\"tns:State\"
         | 
| 128 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ReasonForExemption\"
         | 
| 129 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 130 | 
            +
                    name=\"IdentificationNumber\" type=\"s:string\" />\r\n        </s:sequence>\r\n
         | 
| 131 | 
            +
                    \     </s:complexType>\r\n      <s:simpleType name=\"State\">\r\n        <s:restriction
         | 
| 132 | 
            +
                    base=\"s:string\">\r\n          <s:enumeration value=\"AL\" />\r\n          <s:enumeration
         | 
| 133 | 
            +
                    value=\"AK\" />\r\n          <s:enumeration value=\"AZ\" />\r\n          <s:enumeration
         | 
| 134 | 
            +
                    value=\"AR\" />\r\n          <s:enumeration value=\"CA\" />\r\n          <s:enumeration
         | 
| 135 | 
            +
                    value=\"CO\" />\r\n          <s:enumeration value=\"CT\" />\r\n          <s:enumeration
         | 
| 136 | 
            +
                    value=\"DE\" />\r\n          <s:enumeration value=\"DC\" />\r\n          <s:enumeration
         | 
| 137 | 
            +
                    value=\"FL\" />\r\n          <s:enumeration value=\"GA\" />\r\n          <s:enumeration
         | 
| 138 | 
            +
                    value=\"HI\" />\r\n          <s:enumeration value=\"ID\" />\r\n          <s:enumeration
         | 
| 139 | 
            +
                    value=\"IL\" />\r\n          <s:enumeration value=\"IN\" />\r\n          <s:enumeration
         | 
| 140 | 
            +
                    value=\"IA\" />\r\n          <s:enumeration value=\"KS\" />\r\n          <s:enumeration
         | 
| 141 | 
            +
                    value=\"KY\" />\r\n          <s:enumeration value=\"LA\" />\r\n          <s:enumeration
         | 
| 142 | 
            +
                    value=\"ME\" />\r\n          <s:enumeration value=\"MD\" />\r\n          <s:enumeration
         | 
| 143 | 
            +
                    value=\"MA\" />\r\n          <s:enumeration value=\"MI\" />\r\n          <s:enumeration
         | 
| 144 | 
            +
                    value=\"MN\" />\r\n          <s:enumeration value=\"MS\" />\r\n          <s:enumeration
         | 
| 145 | 
            +
                    value=\"MO\" />\r\n          <s:enumeration value=\"MT\" />\r\n          <s:enumeration
         | 
| 146 | 
            +
                    value=\"NE\" />\r\n          <s:enumeration value=\"NV\" />\r\n          <s:enumeration
         | 
| 147 | 
            +
                    value=\"NH\" />\r\n          <s:enumeration value=\"NJ\" />\r\n          <s:enumeration
         | 
| 148 | 
            +
                    value=\"NM\" />\r\n          <s:enumeration value=\"NY\" />\r\n          <s:enumeration
         | 
| 149 | 
            +
                    value=\"NC\" />\r\n          <s:enumeration value=\"ND\" />\r\n          <s:enumeration
         | 
| 150 | 
            +
                    value=\"OH\" />\r\n          <s:enumeration value=\"OK\" />\r\n          <s:enumeration
         | 
| 151 | 
            +
                    value=\"OR\" />\r\n          <s:enumeration value=\"PA\" />\r\n          <s:enumeration
         | 
| 152 | 
            +
                    value=\"RI\" />\r\n          <s:enumeration value=\"SC\" />\r\n          <s:enumeration
         | 
| 153 | 
            +
                    value=\"SD\" />\r\n          <s:enumeration value=\"TN\" />\r\n          <s:enumeration
         | 
| 154 | 
            +
                    value=\"TX\" />\r\n          <s:enumeration value=\"UT\" />\r\n          <s:enumeration
         | 
| 155 | 
            +
                    value=\"VT\" />\r\n          <s:enumeration value=\"VA\" />\r\n          <s:enumeration
         | 
| 156 | 
            +
                    value=\"WA\" />\r\n          <s:enumeration value=\"WV\" />\r\n          <s:enumeration
         | 
| 157 | 
            +
                    value=\"WI\" />\r\n          <s:enumeration value=\"WY\" />\r\n        </s:restriction>\r\n
         | 
| 158 | 
            +
                    \     </s:simpleType>\r\n      <s:complexType name=\"TaxID\">\r\n        <s:sequence>\r\n
         | 
| 159 | 
            +
                    \         <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"TaxType\" type=\"tns:TaxIDType\"
         | 
| 160 | 
            +
                    />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"IDNumber\"
         | 
| 161 | 
            +
                    type=\"s:string\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 162 | 
            +
                    name=\"StateOfIssue\" type=\"s:string\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 163 | 
            +
                    \     <s:simpleType name=\"TaxIDType\">\r\n        <s:restriction base=\"s:string\">\r\n
         | 
| 164 | 
            +
                    \         <s:enumeration value=\"SSN\" />\r\n          <s:enumeration value=\"FEIN\"
         | 
| 165 | 
            +
                    />\r\n          <s:enumeration value=\"StateIssued\" />\r\n          <s:enumeration
         | 
| 166 | 
            +
                    value=\"ForeignDiplomat\" />\r\n        </s:restriction>\r\n      </s:simpleType>\r\n
         | 
| 167 | 
            +
                    \     <s:simpleType name=\"BusinessType\">\r\n        <s:restriction base=\"s:string\">\r\n
         | 
| 168 | 
            +
                    \         <s:enumeration value=\"AccommodationAndFoodServices\" />\r\n          <s:enumeration
         | 
| 169 | 
            +
                    value=\"Agricultural_Forestry_Fishing_Hunting\" />\r\n          <s:enumeration
         | 
| 170 | 
            +
                    value=\"Construction\" />\r\n          <s:enumeration value=\"FinanceAndInsurance\"
         | 
| 171 | 
            +
                    />\r\n          <s:enumeration value=\"Information_PublishingAndCommunications\"
         | 
| 172 | 
            +
                    />\r\n          <s:enumeration value=\"Manufacturing\" />\r\n          <s:enumeration
         | 
| 173 | 
            +
                    value=\"Mining\" />\r\n          <s:enumeration value=\"RealEstate\" />\r\n
         | 
| 174 | 
            +
                    \         <s:enumeration value=\"RentalAndLeasing\" />\r\n          <s:enumeration
         | 
| 175 | 
            +
                    value=\"RetailTrade\" />\r\n          <s:enumeration value=\"TransportationAndWarehousing\"
         | 
| 176 | 
            +
                    />\r\n          <s:enumeration value=\"Utilities\" />\r\n          <s:enumeration
         | 
| 177 | 
            +
                    value=\"WholesaleTrade\" />\r\n          <s:enumeration value=\"BusinessServices\"
         | 
| 178 | 
            +
                    />\r\n          <s:enumeration value=\"ProfessionalServices\" />\r\n          <s:enumeration
         | 
| 179 | 
            +
                    value=\"EducationAndHealthCareServices\" />\r\n          <s:enumeration value=\"NonprofitOrganization\"
         | 
| 180 | 
            +
                    />\r\n          <s:enumeration value=\"Government\" />\r\n          <s:enumeration
         | 
| 181 | 
            +
                    value=\"NotABusiness\" />\r\n          <s:enumeration value=\"Other\" />\r\n
         | 
| 182 | 
            +
                    \       </s:restriction>\r\n      </s:simpleType>\r\n      <s:simpleType name=\"ExemptionReason\">\r\n
         | 
| 183 | 
            +
                    \       <s:restriction base=\"s:string\">\r\n          <s:enumeration value=\"FederalGovernmentDepartment\"
         | 
| 184 | 
            +
                    />\r\n          <s:enumeration value=\"StateOrLocalGovernmentName\" />\r\n
         | 
| 185 | 
            +
                    \         <s:enumeration value=\"TribalGovernmentName\" />\r\n          <s:enumeration
         | 
| 186 | 
            +
                    value=\"ForeignDiplomat\" />\r\n          <s:enumeration value=\"CharitableOrganization\"
         | 
| 187 | 
            +
                    />\r\n          <s:enumeration value=\"ReligiousOrEducationalOrganization\"
         | 
| 188 | 
            +
                    />\r\n          <s:enumeration value=\"Resale\" />\r\n          <s:enumeration
         | 
| 189 | 
            +
                    value=\"AgriculturalProduction\" />\r\n          <s:enumeration value=\"IndustrialProductionOrManufacturing\"
         | 
| 190 | 
            +
                    />\r\n          <s:enumeration value=\"DirectPayPermit\" />\r\n          <s:enumeration
         | 
| 191 | 
            +
                    value=\"DirectMail\" />\r\n          <s:enumeration value=\"Other\" />\r\n
         | 
| 192 | 
            +
                    \       </s:restriction>\r\n      </s:simpleType>\r\n      <s:element name=\"LookupForDateResponse\">\r\n
         | 
| 193 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 194 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"LookupForDateResult\" type=\"tns:LookupRsp\"
         | 
| 195 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 196 | 
            +
                    \     <s:complexType name=\"LookupRsp\">\r\n        <s:complexContent mixed=\"false\">\r\n
         | 
| 197 | 
            +
                    \         <s:extension base=\"tns:ResponseBase\">\r\n            <s:sequence>\r\n
         | 
| 198 | 
            +
                    \             <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"CartID\" type=\"s:string\"
         | 
| 199 | 
            +
                    />\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"CartItemsResponse\"
         | 
| 200 | 
            +
                    type=\"tns:ArrayOfCartItemResponse\" />\r\n            </s:sequence>\r\n          </s:extension>\r\n
         | 
| 201 | 
            +
                    \       </s:complexContent>\r\n      </s:complexType>\r\n      <s:complexType
         | 
| 202 | 
            +
                    name=\"ResponseBase\">\r\n        <s:sequence>\r\n          <s:element minOccurs=\"1\"
         | 
| 203 | 
            +
                    maxOccurs=\"1\" name=\"ResponseType\" type=\"tns:MessageType\" />\r\n          <s:element
         | 
| 204 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"Messages\" type=\"tns:ArrayOfResponseMessage\"
         | 
| 205 | 
            +
                    />\r\n        </s:sequence>\r\n      </s:complexType>\r\n      <s:simpleType
         | 
| 206 | 
            +
                    name=\"MessageType\">\r\n        <s:restriction base=\"s:string\">\r\n          <s:enumeration
         | 
| 207 | 
            +
                    value=\"Error\" />\r\n          <s:enumeration value=\"Warning\" />\r\n          <s:enumeration
         | 
| 208 | 
            +
                    value=\"Informational\" />\r\n          <s:enumeration value=\"OK\" />\r\n
         | 
| 209 | 
            +
                    \       </s:restriction>\r\n      </s:simpleType>\r\n      <s:complexType
         | 
| 210 | 
            +
                    name=\"ArrayOfResponseMessage\">\r\n        <s:sequence>\r\n          <s:element
         | 
| 211 | 
            +
                    minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ResponseMessage\" nillable=\"true\"
         | 
| 212 | 
            +
                    type=\"tns:ResponseMessage\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 213 | 
            +
                    \     <s:complexType name=\"ResponseMessage\">\r\n        <s:sequence>\r\n
         | 
| 214 | 
            +
                    \         <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"ResponseType\"
         | 
| 215 | 
            +
                    type=\"tns:MessageType\" />\r\n          <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 216 | 
            +
                    name=\"Message\" type=\"s:string\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 217 | 
            +
                    \     <s:complexType name=\"ArrayOfCartItemResponse\">\r\n        <s:sequence>\r\n
         | 
| 218 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"CartItemResponse\"
         | 
| 219 | 
            +
                    nillable=\"true\" type=\"tns:CartItemResponse\" />\r\n        </s:sequence>\r\n
         | 
| 220 | 
            +
                    \     </s:complexType>\r\n      <s:complexType name=\"CartItemResponse\">\r\n
         | 
| 221 | 
            +
                    \       <s:sequence>\r\n          <s:element minOccurs=\"1\" maxOccurs=\"1\"
         | 
| 222 | 
            +
                    name=\"CartItemIndex\" type=\"s:int\" />\r\n          <s:element minOccurs=\"1\"
         | 
| 223 | 
            +
                    maxOccurs=\"1\" name=\"TaxAmount\" type=\"s:float\" />\r\n        </s:sequence>\r\n
         | 
| 224 | 
            +
                    \     </s:complexType>\r\n      <s:element name=\"Lookup\">\r\n        <s:complexType>\r\n
         | 
| 225 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 226 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 227 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 228 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n
         | 
| 229 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"cartID\" type=\"s:string\"
         | 
| 230 | 
            +
                    />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"cartItems\"
         | 
| 231 | 
            +
                    type=\"tns:ArrayOfCartItem\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 232 | 
            +
                    maxOccurs=\"1\" name=\"origin\" type=\"tns:Address\" />\r\n            <s:element
         | 
| 233 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"destination\" type=\"tns:Address\"
         | 
| 234 | 
            +
                    />\r\n            <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"deliveredBySeller\"
         | 
| 235 | 
            +
                    type=\"s:boolean\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 236 | 
            +
                    name=\"exemptCert\" type=\"tns:ExemptionCertificate\" />\r\n          </s:sequence>\r\n
         | 
| 237 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"LookupResponse\">\r\n
         | 
| 238 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 239 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"LookupResult\" type=\"tns:LookupRsp\"
         | 
| 240 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 241 | 
            +
                    \     <s:element name=\"Authorized\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 242 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\"
         | 
| 243 | 
            +
                    type=\"s:string\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 244 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 245 | 
            +
                    maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n            <s:element
         | 
| 246 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"cartID\" type=\"s:string\" />\r\n            <s:element
         | 
| 247 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"orderID\" type=\"s:string\" />\r\n
         | 
| 248 | 
            +
                    \           <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"dateAuthorized\"
         | 
| 249 | 
            +
                    type=\"s:dateTime\" />\r\n          </s:sequence>\r\n        </s:complexType>\r\n
         | 
| 250 | 
            +
                    \     </s:element>\r\n      <s:element name=\"AuthorizedResponse\">\r\n        <s:complexType>\r\n
         | 
| 251 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 252 | 
            +
                    name=\"AuthorizedResult\" type=\"tns:AuthorizedRsp\" />\r\n          </s:sequence>\r\n
         | 
| 253 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:complexType name=\"AuthorizedRsp\">\r\n
         | 
| 254 | 
            +
                    \       <s:complexContent mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\"
         | 
| 255 | 
            +
                    />\r\n        </s:complexContent>\r\n      </s:complexType>\r\n      <s:element
         | 
| 256 | 
            +
                    name=\"AuthorizedWithCapture\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 257 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\"
         | 
| 258 | 
            +
                    type=\"s:string\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 259 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 260 | 
            +
                    maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n            <s:element
         | 
| 261 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"cartID\" type=\"s:string\" />\r\n            <s:element
         | 
| 262 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"orderID\" type=\"s:string\" />\r\n
         | 
| 263 | 
            +
                    \           <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"dateAuthorized\"
         | 
| 264 | 
            +
                    type=\"s:dateTime\" />\r\n            <s:element minOccurs=\"1\" maxOccurs=\"1\"
         | 
| 265 | 
            +
                    name=\"dateCaptured\" type=\"s:dateTime\" />\r\n          </s:sequence>\r\n
         | 
| 266 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"AuthorizedWithCaptureResponse\">\r\n
         | 
| 267 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 268 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"AuthorizedWithCaptureResult\" type=\"tns:AuthorizedRsp\"
         | 
| 269 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 270 | 
            +
                    \     <s:element name=\"Captured\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 271 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\"
         | 
| 272 | 
            +
                    type=\"s:string\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 273 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 274 | 
            +
                    maxOccurs=\"1\" name=\"orderID\" type=\"s:string\" />\r\n          </s:sequence>\r\n
         | 
| 275 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"CapturedResponse\">\r\n
         | 
| 276 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 277 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"CapturedResult\" type=\"tns:CapturedRsp\"
         | 
| 278 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 279 | 
            +
                    \     <s:complexType name=\"CapturedRsp\">\r\n        <s:complexContent mixed=\"false\">\r\n
         | 
| 280 | 
            +
                    \         <s:extension base=\"tns:ResponseBase\" />\r\n        </s:complexContent>\r\n
         | 
| 281 | 
            +
                    \     </s:complexType>\r\n      <s:element name=\"Returned\">\r\n        <s:complexType>\r\n
         | 
| 282 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 283 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 284 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 285 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"orderID\" type=\"s:string\" />\r\n
         | 
| 286 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"cartItems\"
         | 
| 287 | 
            +
                    type=\"tns:ArrayOfCartItem\" />\r\n            <s:element minOccurs=\"1\"
         | 
| 288 | 
            +
                    maxOccurs=\"1\" name=\"returnedDate\" type=\"s:dateTime\" />\r\n          </s:sequence>\r\n
         | 
| 289 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"ReturnedResponse\">\r\n
         | 
| 290 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 291 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"ReturnedResult\" type=\"tns:ReturnedRsp\"
         | 
| 292 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 293 | 
            +
                    \     <s:complexType name=\"ReturnedRsp\">\r\n        <s:complexContent mixed=\"false\">\r\n
         | 
| 294 | 
            +
                    \         <s:extension base=\"tns:ResponseBase\" />\r\n        </s:complexContent>\r\n
         | 
| 295 | 
            +
                    \     </s:complexType>\r\n      <s:element name=\"GetTICGroups\">\r\n        <s:complexType>\r\n
         | 
| 296 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 297 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 298 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n          </s:sequence>\r\n
         | 
| 299 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"GetTICGroupsResponse\">\r\n
         | 
| 300 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 301 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"GetTICGroupsResult\" type=\"tns:GetTICGroupsRsp\"
         | 
| 302 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 303 | 
            +
                    \     <s:complexType name=\"GetTICGroupsRsp\">\r\n        <s:complexContent
         | 
| 304 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\">\r\n
         | 
| 305 | 
            +
                    \           <s:sequence>\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 306 | 
            +
                    name=\"TICGroups\" type=\"tns:ArrayOfTICGroup\" />\r\n            </s:sequence>\r\n
         | 
| 307 | 
            +
                    \         </s:extension>\r\n        </s:complexContent>\r\n      </s:complexType>\r\n
         | 
| 308 | 
            +
                    \     <s:complexType name=\"ArrayOfTICGroup\">\r\n        <s:sequence>\r\n
         | 
| 309 | 
            +
                    \         <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"TICGroup\"
         | 
| 310 | 
            +
                    nillable=\"true\" type=\"tns:TICGroup\" />\r\n        </s:sequence>\r\n      </s:complexType>\r\n
         | 
| 311 | 
            +
                    \     <s:complexType name=\"TICGroup\">\r\n        <s:sequence>\r\n          <s:element
         | 
| 312 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"GroupID\" type=\"s:int\" />\r\n          <s:element
         | 
| 313 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"Description\" type=\"s:string\" />\r\n
         | 
| 314 | 
            +
                    \       </s:sequence>\r\n      </s:complexType>\r\n      <s:element name=\"GetTICs\">\r\n
         | 
| 315 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 316 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\" type=\"s:string\" />\r\n
         | 
| 317 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\"
         | 
| 318 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 319 | 
            +
                    \     <s:element name=\"GetTICsResponse\">\r\n        <s:complexType>\r\n
         | 
| 320 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 321 | 
            +
                    name=\"GetTICsResult\" type=\"tns:GetTICsRsp\" />\r\n          </s:sequence>\r\n
         | 
| 322 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:complexType name=\"GetTICsRsp\">\r\n
         | 
| 323 | 
            +
                    \       <s:complexContent mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\">\r\n
         | 
| 324 | 
            +
                    \           <s:sequence>\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 325 | 
            +
                    name=\"TICs\" type=\"tns:ArrayOfTIC\" />\r\n            </s:sequence>\r\n
         | 
| 326 | 
            +
                    \         </s:extension>\r\n        </s:complexContent>\r\n      </s:complexType>\r\n
         | 
| 327 | 
            +
                    \     <s:complexType name=\"ArrayOfTIC\">\r\n        <s:sequence>\r\n          <s:element
         | 
| 328 | 
            +
                    minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"TIC\" nillable=\"true\" type=\"tns:TIC\"
         | 
| 329 | 
            +
                    />\r\n        </s:sequence>\r\n      </s:complexType>\r\n      <s:complexType
         | 
| 330 | 
            +
                    name=\"TIC\">\r\n        <s:sequence>\r\n          <s:element minOccurs=\"1\"
         | 
| 331 | 
            +
                    maxOccurs=\"1\" name=\"TICID\" type=\"s:int\" />\r\n          <s:element minOccurs=\"0\"
         | 
| 332 | 
            +
                    maxOccurs=\"1\" name=\"Description\" type=\"s:string\" />\r\n        </s:sequence>\r\n
         | 
| 333 | 
            +
                    \     </s:complexType>\r\n      <s:element name=\"GetTICsByGroup\">\r\n        <s:complexType>\r\n
         | 
| 334 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 335 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 336 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 337 | 
            +
                    minOccurs=\"1\" maxOccurs=\"1\" name=\"ticGroup\" type=\"s:int\" />\r\n          </s:sequence>\r\n
         | 
| 338 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"GetTICsByGroupResponse\">\r\n
         | 
| 339 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 340 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"GetTICsByGroupResult\" type=\"tns:GetTICsRsp\"
         | 
| 341 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 342 | 
            +
                    \     <s:element name=\"AddExemptCertificate\">\r\n        <s:complexType>\r\n
         | 
| 343 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 344 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 345 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 346 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n
         | 
| 347 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"exemptCert\"
         | 
| 348 | 
            +
                    type=\"tns:ExemptionCertificate\" />\r\n          </s:sequence>\r\n        </s:complexType>\r\n
         | 
| 349 | 
            +
                    \     </s:element>\r\n      <s:element name=\"AddExemptCertificateResponse\">\r\n
         | 
| 350 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 351 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"AddExemptCertificateResult\" type=\"tns:AddCertificateRsp\"
         | 
| 352 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 353 | 
            +
                    \     <s:complexType name=\"AddCertificateRsp\">\r\n        <s:complexContent
         | 
| 354 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\">\r\n
         | 
| 355 | 
            +
                    \           <s:sequence>\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 356 | 
            +
                    name=\"CertificateID\" type=\"s:string\" />\r\n            </s:sequence>\r\n
         | 
| 357 | 
            +
                    \         </s:extension>\r\n        </s:complexContent>\r\n      </s:complexType>\r\n
         | 
| 358 | 
            +
                    \     <s:element name=\"DeleteExemptCertificate\">\r\n        <s:complexType>\r\n
         | 
| 359 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 360 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 361 | 
            +
                    maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\" />\r\n            <s:element
         | 
| 362 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"certificateID\" type=\"s:string\" />\r\n
         | 
| 363 | 
            +
                    \         </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 364 | 
            +
                    \     <s:element name=\"DeleteExemptCertificateResponse\">\r\n        <s:complexType>\r\n
         | 
| 365 | 
            +
                    \         <s:sequence>\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 366 | 
            +
                    name=\"DeleteExemptCertificateResult\" type=\"tns:DeleteCertificateRsp\" />\r\n
         | 
| 367 | 
            +
                    \         </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 368 | 
            +
                    \     <s:complexType name=\"DeleteCertificateRsp\">\r\n        <s:complexContent
         | 
| 369 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\" />\r\n
         | 
| 370 | 
            +
                    \       </s:complexContent>\r\n      </s:complexType>\r\n      <s:element
         | 
| 371 | 
            +
                    name=\"GetExemptCertificates\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 372 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\"
         | 
| 373 | 
            +
                    type=\"s:string\" />\r\n            <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 374 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n            <s:element minOccurs=\"0\"
         | 
| 375 | 
            +
                    maxOccurs=\"1\" name=\"customerID\" type=\"s:string\" />\r\n          </s:sequence>\r\n
         | 
| 376 | 
            +
                    \       </s:complexType>\r\n      </s:element>\r\n      <s:element name=\"GetExemptCertificatesResponse\">\r\n
         | 
| 377 | 
            +
                    \       <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 378 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"GetExemptCertificatesResult\" type=\"tns:GetCertificatesRsp\"
         | 
| 379 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 380 | 
            +
                    \     <s:complexType name=\"GetCertificatesRsp\">\r\n        <s:complexContent
         | 
| 381 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\">\r\n
         | 
| 382 | 
            +
                    \           <s:sequence>\r\n              <s:element minOccurs=\"0\" maxOccurs=\"1\"
         | 
| 383 | 
            +
                    name=\"ExemptCertificates\" type=\"tns:ArrayOfExemptionCertificate\" />\r\n
         | 
| 384 | 
            +
                    \           </s:sequence>\r\n          </s:extension>\r\n        </s:complexContent>\r\n
         | 
| 385 | 
            +
                    \     </s:complexType>\r\n      <s:complexType name=\"ArrayOfExemptionCertificate\">\r\n
         | 
| 386 | 
            +
                    \       <s:sequence>\r\n          <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
         | 
| 387 | 
            +
                    name=\"ExemptionCertificate\" nillable=\"true\" type=\"tns:ExemptionCertificate\"
         | 
| 388 | 
            +
                    />\r\n        </s:sequence>\r\n      </s:complexType>\r\n      <s:element
         | 
| 389 | 
            +
                    name=\"Ping\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n            <s:element
         | 
| 390 | 
            +
                    minOccurs=\"0\" maxOccurs=\"1\" name=\"apiLoginID\" type=\"s:string\" />\r\n
         | 
| 391 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"apiKey\" type=\"s:string\"
         | 
| 392 | 
            +
                    />\r\n          </s:sequence>\r\n        </s:complexType>\r\n      </s:element>\r\n
         | 
| 393 | 
            +
                    \     <s:element name=\"PingResponse\">\r\n        <s:complexType>\r\n          <s:sequence>\r\n
         | 
| 394 | 
            +
                    \           <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"PingResult\"
         | 
| 395 | 
            +
                    type=\"tns:PingRsp\" />\r\n          </s:sequence>\r\n        </s:complexType>\r\n
         | 
| 396 | 
            +
                    \     </s:element>\r\n      <s:complexType name=\"PingRsp\">\r\n        <s:complexContent
         | 
| 397 | 
            +
                    mixed=\"false\">\r\n          <s:extension base=\"tns:ResponseBase\" />\r\n
         | 
| 398 | 
            +
                    \       </s:complexContent>\r\n      </s:complexType>\r\n      <s:element
         | 
| 399 | 
            +
                    name=\"VerifiedAddress\" nillable=\"true\" type=\"tns:VerifiedAddress\" />\r\n
         | 
| 400 | 
            +
                    \     <s:element name=\"AuthorizedRsp\" nillable=\"true\" type=\"tns:AuthorizedRsp\"
         | 
| 401 | 
            +
                    />\r\n      <s:element name=\"CapturedRsp\" nillable=\"true\" type=\"tns:CapturedRsp\"
         | 
| 402 | 
            +
                    />\r\n      <s:element name=\"GetTICGroupsRsp\" nillable=\"true\" type=\"tns:GetTICGroupsRsp\"
         | 
| 403 | 
            +
                    />\r\n      <s:element name=\"GetTICsRsp\" nillable=\"true\" type=\"tns:GetTICsRsp\"
         | 
| 404 | 
            +
                    />\r\n      <s:element name=\"DeleteCertificateRsp\" nillable=\"true\" type=\"tns:DeleteCertificateRsp\"
         | 
| 405 | 
            +
                    />\r\n      <s:element name=\"GetCertificatesRsp\" nillable=\"true\" type=\"tns:GetCertificatesRsp\"
         | 
| 406 | 
            +
                    />\r\n      <s:element name=\"PingRsp\" nillable=\"true\" type=\"tns:PingRsp\"
         | 
| 407 | 
            +
                    />\r\n    </s:schema>\r\n  </wsdl:types>\r\n  <wsdl:message name=\"VerifyAddressSoapIn\">\r\n
         | 
| 408 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:VerifyAddress\" />\r\n  </wsdl:message>\r\n
         | 
| 409 | 
            +
                    \ <wsdl:message name=\"VerifyAddressSoapOut\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 410 | 
            +
                    element=\"tns:VerifyAddressResponse\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 411 | 
            +
                    name=\"LookupForDateSoapIn\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:LookupForDate\"
         | 
| 412 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"LookupForDateSoapOut\">\r\n
         | 
| 413 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:LookupForDateResponse\" />\r\n
         | 
| 414 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"LookupSoapIn\">\r\n    <wsdl:part
         | 
| 415 | 
            +
                    name=\"parameters\" element=\"tns:Lookup\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 416 | 
            +
                    name=\"LookupSoapOut\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:LookupResponse\"
         | 
| 417 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"AuthorizedSoapIn\">\r\n
         | 
| 418 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:Authorized\" />\r\n  </wsdl:message>\r\n
         | 
| 419 | 
            +
                    \ <wsdl:message name=\"AuthorizedSoapOut\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 420 | 
            +
                    element=\"tns:AuthorizedResponse\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 421 | 
            +
                    name=\"AuthorizedWithCaptureSoapIn\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 422 | 
            +
                    element=\"tns:AuthorizedWithCapture\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 423 | 
            +
                    name=\"AuthorizedWithCaptureSoapOut\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 424 | 
            +
                    element=\"tns:AuthorizedWithCaptureResponse\" />\r\n  </wsdl:message>\r\n
         | 
| 425 | 
            +
                    \ <wsdl:message name=\"CapturedSoapIn\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 426 | 
            +
                    element=\"tns:Captured\" />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"CapturedSoapOut\">\r\n
         | 
| 427 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:CapturedResponse\" />\r\n
         | 
| 428 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"ReturnedSoapIn\">\r\n    <wsdl:part
         | 
| 429 | 
            +
                    name=\"parameters\" element=\"tns:Returned\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 430 | 
            +
                    name=\"ReturnedSoapOut\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:ReturnedResponse\"
         | 
| 431 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICGroupsSoapIn\">\r\n
         | 
| 432 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:GetTICGroups\" />\r\n  </wsdl:message>\r\n
         | 
| 433 | 
            +
                    \ <wsdl:message name=\"GetTICGroupsSoapOut\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 434 | 
            +
                    element=\"tns:GetTICGroupsResponse\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 435 | 
            +
                    name=\"GetTICsSoapIn\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:GetTICs\"
         | 
| 436 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICsSoapOut\">\r\n    <wsdl:part
         | 
| 437 | 
            +
                    name=\"parameters\" element=\"tns:GetTICsResponse\" />\r\n  </wsdl:message>\r\n
         | 
| 438 | 
            +
                    \ <wsdl:message name=\"GetTICsByGroupSoapIn\">\r\n    <wsdl:part name=\"parameters\"
         | 
| 439 | 
            +
                    element=\"tns:GetTICsByGroup\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 440 | 
            +
                    name=\"GetTICsByGroupSoapOut\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:GetTICsByGroupResponse\"
         | 
| 441 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"AddExemptCertificateSoapIn\">\r\n
         | 
| 442 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:AddExemptCertificate\" />\r\n
         | 
| 443 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"AddExemptCertificateSoapOut\">\r\n
         | 
| 444 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:AddExemptCertificateResponse\"
         | 
| 445 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"DeleteExemptCertificateSoapIn\">\r\n
         | 
| 446 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:DeleteExemptCertificate\"
         | 
| 447 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"DeleteExemptCertificateSoapOut\">\r\n
         | 
| 448 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:DeleteExemptCertificateResponse\"
         | 
| 449 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetExemptCertificatesSoapIn\">\r\n
         | 
| 450 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:GetExemptCertificates\" />\r\n
         | 
| 451 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"GetExemptCertificatesSoapOut\">\r\n
         | 
| 452 | 
            +
                    \   <wsdl:part name=\"parameters\" element=\"tns:GetExemptCertificatesResponse\"
         | 
| 453 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"PingSoapIn\">\r\n    <wsdl:part
         | 
| 454 | 
            +
                    name=\"parameters\" element=\"tns:Ping\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 455 | 
            +
                    name=\"PingSoapOut\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:PingResponse\"
         | 
| 456 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"VerifyAddressHttpPostIn\">\r\n
         | 
| 457 | 
            +
                    \   <wsdl:part name=\"uspsUserID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 458 | 
            +
                    name=\"address1\" type=\"s:string\" />\r\n    <wsdl:part name=\"address2\"
         | 
| 459 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"city\" type=\"s:string\" />\r\n
         | 
| 460 | 
            +
                    \   <wsdl:part name=\"state\" type=\"s:string\" />\r\n    <wsdl:part name=\"zip5\"
         | 
| 461 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"zip4\" type=\"s:string\" />\r\n
         | 
| 462 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"VerifyAddressHttpPostOut\">\r\n
         | 
| 463 | 
            +
                    \   <wsdl:part name=\"Body\" element=\"tns:VerifiedAddress\" />\r\n  </wsdl:message>\r\n
         | 
| 464 | 
            +
                    \ <wsdl:message name=\"AuthorizedHttpPostIn\">\r\n    <wsdl:part name=\"apiLoginID\"
         | 
| 465 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"apiKey\" type=\"s:string\" />\r\n
         | 
| 466 | 
            +
                    \   <wsdl:part name=\"customerID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 467 | 
            +
                    name=\"cartID\" type=\"s:string\" />\r\n    <wsdl:part name=\"orderID\" type=\"s:string\"
         | 
| 468 | 
            +
                    />\r\n    <wsdl:part name=\"dateAuthorized\" type=\"s:string\" />\r\n  </wsdl:message>\r\n
         | 
| 469 | 
            +
                    \ <wsdl:message name=\"AuthorizedHttpPostOut\">\r\n    <wsdl:part name=\"Body\"
         | 
| 470 | 
            +
                    element=\"tns:AuthorizedRsp\" />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"AuthorizedWithCaptureHttpPostIn\">\r\n
         | 
| 471 | 
            +
                    \   <wsdl:part name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 472 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n    <wsdl:part name=\"customerID\"
         | 
| 473 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"cartID\" type=\"s:string\" />\r\n
         | 
| 474 | 
            +
                    \   <wsdl:part name=\"orderID\" type=\"s:string\" />\r\n    <wsdl:part name=\"dateAuthorized\"
         | 
| 475 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"dateCaptured\" type=\"s:string\"
         | 
| 476 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"AuthorizedWithCaptureHttpPostOut\">\r\n
         | 
| 477 | 
            +
                    \   <wsdl:part name=\"Body\" element=\"tns:AuthorizedRsp\" />\r\n  </wsdl:message>\r\n
         | 
| 478 | 
            +
                    \ <wsdl:message name=\"CapturedHttpPostIn\">\r\n    <wsdl:part name=\"apiLoginID\"
         | 
| 479 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"apiKey\" type=\"s:string\" />\r\n
         | 
| 480 | 
            +
                    \   <wsdl:part name=\"orderID\" type=\"s:string\" />\r\n  </wsdl:message>\r\n
         | 
| 481 | 
            +
                    \ <wsdl:message name=\"CapturedHttpPostOut\">\r\n    <wsdl:part name=\"Body\"
         | 
| 482 | 
            +
                    element=\"tns:CapturedRsp\" />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICGroupsHttpPostIn\">\r\n
         | 
| 483 | 
            +
                    \   <wsdl:part name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 484 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 485 | 
            +
                    name=\"GetTICGroupsHttpPostOut\">\r\n    <wsdl:part name=\"Body\" element=\"tns:GetTICGroupsRsp\"
         | 
| 486 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICsHttpPostIn\">\r\n
         | 
| 487 | 
            +
                    \   <wsdl:part name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 488 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n  </wsdl:message>\r\n  <wsdl:message
         | 
| 489 | 
            +
                    name=\"GetTICsHttpPostOut\">\r\n    <wsdl:part name=\"Body\" element=\"tns:GetTICsRsp\"
         | 
| 490 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICsByGroupHttpPostIn\">\r\n
         | 
| 491 | 
            +
                    \   <wsdl:part name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part
         | 
| 492 | 
            +
                    name=\"apiKey\" type=\"s:string\" />\r\n    <wsdl:part name=\"ticGroup\" type=\"s:string\"
         | 
| 493 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetTICsByGroupHttpPostOut\">\r\n
         | 
| 494 | 
            +
                    \   <wsdl:part name=\"Body\" element=\"tns:GetTICsRsp\" />\r\n  </wsdl:message>\r\n
         | 
| 495 | 
            +
                    \ <wsdl:message name=\"DeleteExemptCertificateHttpPostIn\">\r\n    <wsdl:part
         | 
| 496 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part name=\"apiKey\"
         | 
| 497 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"certificateID\" type=\"s:string\"
         | 
| 498 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"DeleteExemptCertificateHttpPostOut\">\r\n
         | 
| 499 | 
            +
                    \   <wsdl:part name=\"Body\" element=\"tns:DeleteCertificateRsp\" />\r\n  </wsdl:message>\r\n
         | 
| 500 | 
            +
                    \ <wsdl:message name=\"GetExemptCertificatesHttpPostIn\">\r\n    <wsdl:part
         | 
| 501 | 
            +
                    name=\"apiLoginID\" type=\"s:string\" />\r\n    <wsdl:part name=\"apiKey\"
         | 
| 502 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"customerID\" type=\"s:string\"
         | 
| 503 | 
            +
                    />\r\n  </wsdl:message>\r\n  <wsdl:message name=\"GetExemptCertificatesHttpPostOut\">\r\n
         | 
| 504 | 
            +
                    \   <wsdl:part name=\"Body\" element=\"tns:GetCertificatesRsp\" />\r\n  </wsdl:message>\r\n
         | 
| 505 | 
            +
                    \ <wsdl:message name=\"PingHttpPostIn\">\r\n    <wsdl:part name=\"apiLoginID\"
         | 
| 506 | 
            +
                    type=\"s:string\" />\r\n    <wsdl:part name=\"apiKey\" type=\"s:string\" />\r\n
         | 
| 507 | 
            +
                    \ </wsdl:message>\r\n  <wsdl:message name=\"PingHttpPostOut\">\r\n    <wsdl:part
         | 
| 508 | 
            +
                    name=\"Body\" element=\"tns:PingRsp\" />\r\n  </wsdl:message>\r\n  <wsdl:portType
         | 
| 509 | 
            +
                    name=\"TaxCloudSoap\">\r\n    <wsdl:operation name=\"VerifyAddress\">\r\n
         | 
| 510 | 
            +
                    \     <wsdl:input message=\"tns:VerifyAddressSoapIn\" />\r\n      <wsdl:output
         | 
| 511 | 
            +
                    message=\"tns:VerifyAddressSoapOut\" />\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 512 | 
            +
                    name=\"LookupForDate\">\r\n      <wsdl:input message=\"tns:LookupForDateSoapIn\"
         | 
| 513 | 
            +
                    />\r\n      <wsdl:output message=\"tns:LookupForDateSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 514 | 
            +
                    \   <wsdl:operation name=\"Lookup\">\r\n      <wsdl:input message=\"tns:LookupSoapIn\"
         | 
| 515 | 
            +
                    />\r\n      <wsdl:output message=\"tns:LookupSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 516 | 
            +
                    \   <wsdl:operation name=\"Authorized\">\r\n      <wsdl:input message=\"tns:AuthorizedSoapIn\"
         | 
| 517 | 
            +
                    />\r\n      <wsdl:output message=\"tns:AuthorizedSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 518 | 
            +
                    \   <wsdl:operation name=\"AuthorizedWithCapture\">\r\n      <wsdl:input message=\"tns:AuthorizedWithCaptureSoapIn\"
         | 
| 519 | 
            +
                    />\r\n      <wsdl:output message=\"tns:AuthorizedWithCaptureSoapOut\" />\r\n
         | 
| 520 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"Captured\">\r\n      <wsdl:input
         | 
| 521 | 
            +
                    message=\"tns:CapturedSoapIn\" />\r\n      <wsdl:output message=\"tns:CapturedSoapOut\"
         | 
| 522 | 
            +
                    />\r\n    </wsdl:operation>\r\n    <wsdl:operation name=\"Returned\">\r\n
         | 
| 523 | 
            +
                    \     <wsdl:input message=\"tns:ReturnedSoapIn\" />\r\n      <wsdl:output
         | 
| 524 | 
            +
                    message=\"tns:ReturnedSoapOut\" />\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 525 | 
            +
                    name=\"GetTICGroups\">\r\n      <wsdl:input message=\"tns:GetTICGroupsSoapIn\"
         | 
| 526 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICGroupsSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 527 | 
            +
                    \   <wsdl:operation name=\"GetTICs\">\r\n      <wsdl:input message=\"tns:GetTICsSoapIn\"
         | 
| 528 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICsSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 529 | 
            +
                    \   <wsdl:operation name=\"GetTICsByGroup\">\r\n      <wsdl:input message=\"tns:GetTICsByGroupSoapIn\"
         | 
| 530 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICsByGroupSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 531 | 
            +
                    \   <wsdl:operation name=\"AddExemptCertificate\">\r\n      <wsdl:input message=\"tns:AddExemptCertificateSoapIn\"
         | 
| 532 | 
            +
                    />\r\n      <wsdl:output message=\"tns:AddExemptCertificateSoapOut\" />\r\n
         | 
| 533 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"DeleteExemptCertificate\">\r\n
         | 
| 534 | 
            +
                    \     <wsdl:input message=\"tns:DeleteExemptCertificateSoapIn\" />\r\n      <wsdl:output
         | 
| 535 | 
            +
                    message=\"tns:DeleteExemptCertificateSoapOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 536 | 
            +
                    \   <wsdl:operation name=\"GetExemptCertificates\">\r\n      <wsdl:input message=\"tns:GetExemptCertificatesSoapIn\"
         | 
| 537 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetExemptCertificatesSoapOut\" />\r\n
         | 
| 538 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"Ping\">\r\n      <wsdl:input
         | 
| 539 | 
            +
                    message=\"tns:PingSoapIn\" />\r\n      <wsdl:output message=\"tns:PingSoapOut\"
         | 
| 540 | 
            +
                    />\r\n    </wsdl:operation>\r\n  </wsdl:portType>\r\n  <wsdl:portType name=\"TaxCloudHttpPost\">\r\n
         | 
| 541 | 
            +
                    \   <wsdl:operation name=\"VerifyAddress\">\r\n      <wsdl:input message=\"tns:VerifyAddressHttpPostIn\"
         | 
| 542 | 
            +
                    />\r\n      <wsdl:output message=\"tns:VerifyAddressHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 543 | 
            +
                    \   <wsdl:operation name=\"Authorized\">\r\n      <wsdl:input message=\"tns:AuthorizedHttpPostIn\"
         | 
| 544 | 
            +
                    />\r\n      <wsdl:output message=\"tns:AuthorizedHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 545 | 
            +
                    \   <wsdl:operation name=\"AuthorizedWithCapture\">\r\n      <wsdl:input message=\"tns:AuthorizedWithCaptureHttpPostIn\"
         | 
| 546 | 
            +
                    />\r\n      <wsdl:output message=\"tns:AuthorizedWithCaptureHttpPostOut\"
         | 
| 547 | 
            +
                    />\r\n    </wsdl:operation>\r\n    <wsdl:operation name=\"Captured\">\r\n
         | 
| 548 | 
            +
                    \     <wsdl:input message=\"tns:CapturedHttpPostIn\" />\r\n      <wsdl:output
         | 
| 549 | 
            +
                    message=\"tns:CapturedHttpPostOut\" />\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 550 | 
            +
                    name=\"GetTICGroups\">\r\n      <wsdl:input message=\"tns:GetTICGroupsHttpPostIn\"
         | 
| 551 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICGroupsHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 552 | 
            +
                    \   <wsdl:operation name=\"GetTICs\">\r\n      <wsdl:input message=\"tns:GetTICsHttpPostIn\"
         | 
| 553 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICsHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 554 | 
            +
                    \   <wsdl:operation name=\"GetTICsByGroup\">\r\n      <wsdl:input message=\"tns:GetTICsByGroupHttpPostIn\"
         | 
| 555 | 
            +
                    />\r\n      <wsdl:output message=\"tns:GetTICsByGroupHttpPostOut\" />\r\n
         | 
| 556 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"DeleteExemptCertificate\">\r\n
         | 
| 557 | 
            +
                    \     <wsdl:input message=\"tns:DeleteExemptCertificateHttpPostIn\" />\r\n
         | 
| 558 | 
            +
                    \     <wsdl:output message=\"tns:DeleteExemptCertificateHttpPostOut\" />\r\n
         | 
| 559 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"GetExemptCertificates\">\r\n
         | 
| 560 | 
            +
                    \     <wsdl:input message=\"tns:GetExemptCertificatesHttpPostIn\" />\r\n      <wsdl:output
         | 
| 561 | 
            +
                    message=\"tns:GetExemptCertificatesHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 562 | 
            +
                    \   <wsdl:operation name=\"Ping\">\r\n      <wsdl:input message=\"tns:PingHttpPostIn\"
         | 
| 563 | 
            +
                    />\r\n      <wsdl:output message=\"tns:PingHttpPostOut\" />\r\n    </wsdl:operation>\r\n
         | 
| 564 | 
            +
                    \ </wsdl:portType>\r\n  <wsdl:binding name=\"TaxCloudSoap\" type=\"tns:TaxCloudSoap\">\r\n
         | 
| 565 | 
            +
                    \   <soap:binding transport=\"http://schemas.xmlsoap.org/soap/http\" />\r\n
         | 
| 566 | 
            +
                    \   <wsdl:operation name=\"VerifyAddress\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/VerifyAddress\"
         | 
| 567 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 568 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 569 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 570 | 
            +
                    name=\"LookupForDate\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/LookupForDate\"
         | 
| 571 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 572 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 573 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 574 | 
            +
                    name=\"Lookup\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/Lookup\"
         | 
| 575 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 576 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 577 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 578 | 
            +
                    name=\"Authorized\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/Authorized\"
         | 
| 579 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 580 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 581 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 582 | 
            +
                    name=\"AuthorizedWithCapture\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/AuthorizedWithCapture\"
         | 
| 583 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 584 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 585 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 586 | 
            +
                    name=\"Captured\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/Captured\"
         | 
| 587 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 588 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 589 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 590 | 
            +
                    name=\"Returned\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/Returned\"
         | 
| 591 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 592 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 593 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 594 | 
            +
                    name=\"GetTICGroups\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/GetTICGroups\"
         | 
| 595 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 596 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 597 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 598 | 
            +
                    name=\"GetTICs\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/GetTICs\"
         | 
| 599 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 600 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 601 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 602 | 
            +
                    name=\"GetTICsByGroup\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/GetTICsByGroup\"
         | 
| 603 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 604 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 605 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 606 | 
            +
                    name=\"AddExemptCertificate\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/AddExemptCertificate\"
         | 
| 607 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 608 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 609 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 610 | 
            +
                    name=\"DeleteExemptCertificate\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/DeleteExemptCertificate\"
         | 
| 611 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 612 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 613 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 614 | 
            +
                    name=\"GetExemptCertificates\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/GetExemptCertificates\"
         | 
| 615 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 616 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 617 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 618 | 
            +
                    name=\"Ping\">\r\n      <soap:operation soapAction=\"http://taxcloud.net/Ping\"
         | 
| 619 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap:body use=\"literal\"
         | 
| 620 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap:body use=\"literal\"
         | 
| 621 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n  </wsdl:binding>\r\n
         | 
| 622 | 
            +
                    \ <wsdl:binding name=\"TaxCloudSoap12\" type=\"tns:TaxCloudSoap\">\r\n    <soap12:binding
         | 
| 623 | 
            +
                    transport=\"http://schemas.xmlsoap.org/soap/http\" />\r\n    <wsdl:operation
         | 
| 624 | 
            +
                    name=\"VerifyAddress\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/VerifyAddress\"
         | 
| 625 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 626 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 627 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 628 | 
            +
                    name=\"LookupForDate\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/LookupForDate\"
         | 
| 629 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 630 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 631 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 632 | 
            +
                    name=\"Lookup\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/Lookup\"
         | 
| 633 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 634 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 635 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 636 | 
            +
                    name=\"Authorized\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/Authorized\"
         | 
| 637 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 638 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 639 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 640 | 
            +
                    name=\"AuthorizedWithCapture\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/AuthorizedWithCapture\"
         | 
| 641 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 642 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 643 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 644 | 
            +
                    name=\"Captured\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/Captured\"
         | 
| 645 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 646 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 647 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 648 | 
            +
                    name=\"Returned\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/Returned\"
         | 
| 649 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 650 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 651 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 652 | 
            +
                    name=\"GetTICGroups\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/GetTICGroups\"
         | 
| 653 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 654 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 655 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 656 | 
            +
                    name=\"GetTICs\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/GetTICs\"
         | 
| 657 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 658 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 659 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 660 | 
            +
                    name=\"GetTICsByGroup\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/GetTICsByGroup\"
         | 
| 661 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 662 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 663 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 664 | 
            +
                    name=\"AddExemptCertificate\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/AddExemptCertificate\"
         | 
| 665 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 666 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 667 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 668 | 
            +
                    name=\"DeleteExemptCertificate\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/DeleteExemptCertificate\"
         | 
| 669 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 670 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 671 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 672 | 
            +
                    name=\"GetExemptCertificates\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/GetExemptCertificates\"
         | 
| 673 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 674 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 675 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 676 | 
            +
                    name=\"Ping\">\r\n      <soap12:operation soapAction=\"http://taxcloud.net/Ping\"
         | 
| 677 | 
            +
                    style=\"document\" />\r\n      <wsdl:input>\r\n        <soap12:body use=\"literal\"
         | 
| 678 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <soap12:body use=\"literal\"
         | 
| 679 | 
            +
                    />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n  </wsdl:binding>\r\n
         | 
| 680 | 
            +
                    \ <wsdl:binding name=\"TaxCloudHttpPost\" type=\"tns:TaxCloudHttpPost\">\r\n
         | 
| 681 | 
            +
                    \   <http:binding verb=\"POST\" />\r\n    <wsdl:operation name=\"VerifyAddress\">\r\n
         | 
| 682 | 
            +
                    \     <http:operation location=\"/VerifyAddress\" />\r\n      <wsdl:input>\r\n
         | 
| 683 | 
            +
                    \       <mime:content type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n
         | 
| 684 | 
            +
                    \     <wsdl:output>\r\n        <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n
         | 
| 685 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"Authorized\">\r\n      <http:operation
         | 
| 686 | 
            +
                    location=\"/Authorized\" />\r\n      <wsdl:input>\r\n        <mime:content
         | 
| 687 | 
            +
                    type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n
         | 
| 688 | 
            +
                    \       <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n
         | 
| 689 | 
            +
                    \   <wsdl:operation name=\"AuthorizedWithCapture\">\r\n      <http:operation
         | 
| 690 | 
            +
                    location=\"/AuthorizedWithCapture\" />\r\n      <wsdl:input>\r\n        <mime:content
         | 
| 691 | 
            +
                    type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n
         | 
| 692 | 
            +
                    \       <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n
         | 
| 693 | 
            +
                    \   <wsdl:operation name=\"Captured\">\r\n      <http:operation location=\"/Captured\"
         | 
| 694 | 
            +
                    />\r\n      <wsdl:input>\r\n        <mime:content type=\"application/x-www-form-urlencoded\"
         | 
| 695 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <mime:mimeXml
         | 
| 696 | 
            +
                    part=\"Body\" />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 697 | 
            +
                    name=\"GetTICGroups\">\r\n      <http:operation location=\"/GetTICGroups\"
         | 
| 698 | 
            +
                    />\r\n      <wsdl:input>\r\n        <mime:content type=\"application/x-www-form-urlencoded\"
         | 
| 699 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <mime:mimeXml
         | 
| 700 | 
            +
                    part=\"Body\" />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n    <wsdl:operation
         | 
| 701 | 
            +
                    name=\"GetTICs\">\r\n      <http:operation location=\"/GetTICs\" />\r\n      <wsdl:input>\r\n
         | 
| 702 | 
            +
                    \       <mime:content type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n
         | 
| 703 | 
            +
                    \     <wsdl:output>\r\n        <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n
         | 
| 704 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"GetTICsByGroup\">\r\n
         | 
| 705 | 
            +
                    \     <http:operation location=\"/GetTICsByGroup\" />\r\n      <wsdl:input>\r\n
         | 
| 706 | 
            +
                    \       <mime:content type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n
         | 
| 707 | 
            +
                    \     <wsdl:output>\r\n        <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n
         | 
| 708 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"DeleteExemptCertificate\">\r\n
         | 
| 709 | 
            +
                    \     <http:operation location=\"/DeleteExemptCertificate\" />\r\n      <wsdl:input>\r\n
         | 
| 710 | 
            +
                    \       <mime:content type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n
         | 
| 711 | 
            +
                    \     <wsdl:output>\r\n        <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n
         | 
| 712 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"GetExemptCertificates\">\r\n
         | 
| 713 | 
            +
                    \     <http:operation location=\"/GetExemptCertificates\" />\r\n      <wsdl:input>\r\n
         | 
| 714 | 
            +
                    \       <mime:content type=\"application/x-www-form-urlencoded\" />\r\n      </wsdl:input>\r\n
         | 
| 715 | 
            +
                    \     <wsdl:output>\r\n        <mime:mimeXml part=\"Body\" />\r\n      </wsdl:output>\r\n
         | 
| 716 | 
            +
                    \   </wsdl:operation>\r\n    <wsdl:operation name=\"Ping\">\r\n      <http:operation
         | 
| 717 | 
            +
                    location=\"/Ping\" />\r\n      <wsdl:input>\r\n        <mime:content type=\"application/x-www-form-urlencoded\"
         | 
| 718 | 
            +
                    />\r\n      </wsdl:input>\r\n      <wsdl:output>\r\n        <mime:mimeXml
         | 
| 719 | 
            +
                    part=\"Body\" />\r\n      </wsdl:output>\r\n    </wsdl:operation>\r\n  </wsdl:binding>\r\n
         | 
| 720 | 
            +
                    \ <wsdl:service name=\"TaxCloud\">\r\n    <wsdl:documentation xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">TaxCloud
         | 
| 721 | 
            +
                    Web Service</wsdl:documentation>\r\n    <wsdl:port name=\"TaxCloudSoap\" binding=\"tns:TaxCloudSoap\">\r\n
         | 
| 722 | 
            +
                    \     <soap:address location=\"https://api.taxcloud.net/1.0/TaxCloud.asmx\"
         | 
| 723 | 
            +
                    />\r\n    </wsdl:port>\r\n    <wsdl:port name=\"TaxCloudSoap12\" binding=\"tns:TaxCloudSoap12\">\r\n
         | 
| 724 | 
            +
                    \     <soap12:address location=\"https://api.taxcloud.net/1.0/TaxCloud.asmx\"
         | 
| 725 | 
            +
                    />\r\n    </wsdl:port>\r\n    <wsdl:port name=\"TaxCloudHttpPost\" binding=\"tns:TaxCloudHttpPost\">\r\n
         | 
| 726 | 
            +
                    \     <http:address location=\"https://api.taxcloud.net/1.0/TaxCloud.asmx\"
         | 
| 727 | 
            +
                    />\r\n    </wsdl:port>\r\n  </wsdl:service>\r\n</wsdl:definitions>"
         | 
| 728 | 
            +
                http_version:
         | 
| 729 | 
            +
              recorded_at: Thu, 09 Jan 2014 16:03:39 GMT
         | 
| 730 | 
            +
            - request:
         | 
| 731 | 
            +
                method: post
         | 
| 732 | 
            +
                uri: https://api.taxcloud.net/1.0/TaxCloud.asmx
         | 
| 733 | 
            +
                body:
         | 
| 734 | 
            +
                  encoding: US-ASCII
         | 
| 735 | 
            +
                  string: <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         | 
| 736 | 
            +
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://taxcloud.net"
         | 
| 737 | 
            +
                    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="http://taxcloud.net"><env:Body><ins0:Lookup><ins0:customerID>42</ins0:customerID><ins0:cartID>3986542345855989589</ins0:cartID><ins0:cartItems><ins0:CartItem><tns:Index>0</tns:Index><tns:ItemID>SKU-TEST</tns:ItemID><tns:TIC>0</tns:TIC><tns:Price>50.0</tns:Price><tns:Qty>1</tns:Qty></ins0:CartItem><ins0:CartItem><tns:Index>1</tns:Index><tns:ItemID>SKU-TEST1</tns:ItemID><tns:TIC>0</tns:TIC><tns:Price>100.0</tns:Price><tns:Qty>1</tns:Qty></ins0:CartItem></ins0:cartItems><ins0:origin><ins0:Address1>162
         | 
| 738 | 
            +
                    East Avenue</ins0:Address1><ins0:Address2>Third Floor</ins0:Address2><ins0:City>Norwalk</ins0:City><ins0:State>CT</ins0:State><ins0:Zip5>06851</ins0:Zip5><ins0:Zip4
         | 
| 739 | 
            +
                    xsi:nil="true"/></ins0:origin><ins0:destination><ins0:Address1>3121 West Government
         | 
| 740 | 
            +
                    Way</ins0:Address1><ins0:Address2>Suite 2B</ins0:Address2><ins0:City>Seattle</ins0:City><ins0:State>WA</ins0:State><ins0:Zip5>98199</ins0:Zip5><ins0:Zip4
         | 
| 741 | 
            +
                    xsi:nil="true"/></ins0:destination><ins0:apiLoginID>api-login-id</ins0:apiLoginID><ins0:apiKey>api-key</ins0:apiKey></ins0:Lookup></env:Body></env:Envelope>
         | 
| 742 | 
            +
                headers:
         | 
| 743 | 
            +
                  Soapaction:
         | 
| 744 | 
            +
                  - ! '"http://taxcloud.net/Lookup"'
         | 
| 745 | 
            +
                  Content-Type:
         | 
| 746 | 
            +
                  - text/xml;charset=UTF-8
         | 
| 747 | 
            +
                  Content-Length:
         | 
| 748 | 
            +
                  - '1337'
         | 
| 749 | 
            +
                  Accept:
         | 
| 750 | 
            +
                  - ! '*/*'
         | 
| 751 | 
            +
                  User-Agent:
         | 
| 752 | 
            +
                  - Ruby
         | 
| 753 | 
            +
              response:
         | 
| 754 | 
            +
                status:
         | 
| 755 | 
            +
                  code: 200
         | 
| 756 | 
            +
                  message: OK
         | 
| 757 | 
            +
                headers:
         | 
| 758 | 
            +
                  Cache-Control:
         | 
| 759 | 
            +
                  - private, max-age=0
         | 
| 760 | 
            +
                  Content-Type:
         | 
| 761 | 
            +
                  - text/xml; charset=utf-8
         | 
| 762 | 
            +
                  Server:
         | 
| 763 | 
            +
                  - Microsoft-IIS/7.0
         | 
| 764 | 
            +
                  X-Aspnet-Version:
         | 
| 765 | 
            +
                  - 4.0.30319
         | 
| 766 | 
            +
                  X-Powered-By:
         | 
| 767 | 
            +
                  - TaxCloud
         | 
| 768 | 
            +
                  Date:
         | 
| 769 | 
            +
                  - Fri, 01 Mar 2013 22:58:18 GMT
         | 
| 770 | 
            +
                  Content-Length:
         | 
| 771 | 
            +
                  - '645'
         | 
| 772 | 
            +
                body:
         | 
| 773 | 
            +
                  encoding: US-ASCII
         | 
| 774 | 
            +
                  string: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
         | 
| 775 | 
            +
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><LookupResponse
         | 
| 776 | 
            +
                    xmlns="http://taxcloud.net"><LookupResult><ResponseType>OK</ResponseType><Messages
         | 
| 777 | 
            +
                    /><CartID>3986542345855989589</CartID><CartItemsResponse><CartItemResponse><CartItemIndex>0</CartItemIndex><TaxAmount>4.75</TaxAmount></CartItemResponse><CartItemResponse><CartItemIndex>1</CartItemIndex><TaxAmount>9.5</TaxAmount></CartItemResponse></CartItemsResponse></LookupResult></LookupResponse></soap:Body></soap:Envelope>
         | 
| 778 | 
            +
                http_version:
         | 
| 779 | 
            +
              recorded_at: Fri, 01 Mar 2013 22:58:17 GMT
         | 
| 780 | 
            +
            - request:
         | 
| 781 | 
            +
                method: post
         | 
| 782 | 
            +
                uri: https://api.taxcloud.net/1.0/TaxCloud.asmx
         | 
| 783 | 
            +
                body:
         | 
| 784 | 
            +
                  encoding: US-ASCII
         | 
| 785 | 
            +
                  string: <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         | 
| 786 | 
            +
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://taxcloud.net"
         | 
| 787 | 
            +
                    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="http://taxcloud.net"><env:Body><ins0:Authorized><ins0:customerID>42</ins0:customerID><ins0:cartID>3986542345855989589</ins0:cartID><ins0:orderID>13067285929819324594</ins0:orderID><ins0:dateAuthorized>2013-03-01</ins0:dateAuthorized><ins0:apiLoginID>api-login-id</ins0:apiLoginID><ins0:apiKey>api-key</ins0:apiKey></ins0:Authorized></env:Body></env:Envelope>
         | 
| 788 | 
            +
                headers:
         | 
| 789 | 
            +
                  Soapaction:
         | 
| 790 | 
            +
                  - ! '"http://taxcloud.net/Authorized"'
         | 
| 791 | 
            +
                  Content-Type:
         | 
| 792 | 
            +
                  - text/xml;charset=UTF-8
         | 
| 793 | 
            +
                  Content-Length:
         | 
| 794 | 
            +
                  - '632'
         | 
| 795 | 
            +
                  Accept:
         | 
| 796 | 
            +
                  - ! '*/*'
         | 
| 797 | 
            +
                  User-Agent:
         | 
| 798 | 
            +
                  - Ruby
         | 
| 799 | 
            +
              response:
         | 
| 800 | 
            +
                status:
         | 
| 801 | 
            +
                  code: 200
         | 
| 802 | 
            +
                  message: OK
         | 
| 803 | 
            +
                headers:
         | 
| 804 | 
            +
                  Cache-Control:
         | 
| 805 | 
            +
                  - private, max-age=0
         | 
| 806 | 
            +
                  Content-Type:
         | 
| 807 | 
            +
                  - text/xml; charset=utf-8
         | 
| 808 | 
            +
                  Server:
         | 
| 809 | 
            +
                  - Microsoft-IIS/7.0
         | 
| 810 | 
            +
                  X-Aspnet-Version:
         | 
| 811 | 
            +
                  - 4.0.30319
         | 
| 812 | 
            +
                  X-Powered-By:
         | 
| 813 | 
            +
                  - TaxCloud
         | 
| 814 | 
            +
                  Date:
         | 
| 815 | 
            +
                  - Fri, 01 Mar 2013 22:58:18 GMT
         | 
| 816 | 
            +
                  Content-Length:
         | 
| 817 | 
            +
                  - '395'
         | 
| 818 | 
            +
                body:
         | 
| 819 | 
            +
                  encoding: US-ASCII
         | 
| 820 | 
            +
                  string: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
         | 
| 821 | 
            +
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><AuthorizedResponse
         | 
| 822 | 
            +
                    xmlns="http://taxcloud.net"><AuthorizedResult><ResponseType>OK</ResponseType><Messages
         | 
| 823 | 
            +
                    /></AuthorizedResult></AuthorizedResponse></soap:Body></soap:Envelope>
         | 
| 824 | 
            +
                http_version:
         | 
| 825 | 
            +
              recorded_at: Fri, 01 Mar 2013 22:58:18 GMT
         | 
| 826 | 
            +
            recorded_with: VCR 2.4.0
         |