strikeiron 0.0.1
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.
- data/.gitignore +18 -0
- data/.rbenv-version +1 -0
- data/.travis.yml +12 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +71 -0
- data/Rakefile +18 -0
- data/lib/strikeiron.rb +109 -0
- data/lib/strikeiron/address.rb +47 -0
- data/lib/strikeiron/configuration.rb +10 -0
- data/lib/strikeiron/jurisdiction.rb +34 -0
- data/lib/strikeiron/tax_result.rb +39 -0
- data/lib/strikeiron/tax_value.rb +46 -0
- data/lib/strikeiron/version.rb +3 -0
- data/strikeiron.gemspec +25 -0
- data/test/cassettes/client_actions.yml +288 -0
- data/test/cassettes/remaining_hits.yml +52 -0
- data/test/cassettes/sales_tax.yml +93 -0
- data/test/cassettes/tax_categories.yml +408 -0
- data/test/helper.rb +25 -0
- data/test/test_client.rb +19 -0
- data/test/test_requests.rb +52 -0
- metadata +160 -0
data/strikeiron.gemspec
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/strikeiron/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Drew Tempelmeyer"]
|
6
|
+
gem.email = ["drewtemp@gmail.com"]
|
7
|
+
gem.description = %q{Ruby gem to handle tax calculation using the Strikeiron API.}
|
8
|
+
gem.summary = %q{Ruby gem to handle tax calculation using the Strikeiron API.}
|
9
|
+
gem.homepage = "https://github.com/drewtempelmeyer/strikeiron"
|
10
|
+
|
11
|
+
gem.files = `git ls-files`.split($\)
|
12
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
13
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
14
|
+
gem.name = "strikeiron"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = Strikeiron::VERSION
|
17
|
+
|
18
|
+
gem.add_dependency 'savon', '~> 0.9.6'
|
19
|
+
|
20
|
+
gem.add_development_dependency 'rake', '~> 0.9.2'
|
21
|
+
gem.add_development_dependency 'rdoc', '~> 3.12'
|
22
|
+
gem.add_development_dependency 'vcr', '~> 2.1.1'
|
23
|
+
gem.add_development_dependency 'webmock', '~> 1.8.6'
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1,288 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://wsparam.strikeiron.com/SpeedTaxSalesTax3?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
|
+
Date:
|
20
|
+
- Thu, 03 May 2012 14:28:00 GMT
|
21
|
+
Server:
|
22
|
+
- Microsoft-IIS/6.0
|
23
|
+
X-Powered-By:
|
24
|
+
- ASP.NET
|
25
|
+
X-Aspnet-Version:
|
26
|
+
- 4.0.30319
|
27
|
+
Cache-Control:
|
28
|
+
- private
|
29
|
+
Content-Type:
|
30
|
+
- text/xml; charset=utf-8
|
31
|
+
Content-Length:
|
32
|
+
- '19714'
|
33
|
+
body:
|
34
|
+
encoding: US-ASCII
|
35
|
+
string: ! "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"
|
36
|
+
xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:mime=\"http://schemas.xmlsoap.org/wsdl/mime/\"
|
37
|
+
xmlns:tns=\"http://www.strikeiron.com/\" xmlns:soap=\"http://schemas.xmlsoap.org/wsdl/soap/\"
|
38
|
+
xmlns:tm=\"http://microsoft.com/wsdl/mime/textMatching/\" xmlns:s=\"http://www.w3.org/2001/XMLSchema\"
|
39
|
+
xmlns:soap12=\"http://schemas.xmlsoap.org/wsdl/soap12/\" targetNamespace=\"http://www.strikeiron.com/\"
|
40
|
+
xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">\r\n <wsdl:types>\r\n <s:schema
|
41
|
+
elementFormDefault=\"qualified\" targetNamespace=\"http://www.strikeiron.com/\">\r\n
|
42
|
+
\ <s:element name=\"GetSalesTaxValue\">\r\n <s:complexType>\r\n
|
43
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
44
|
+
name=\"UserID\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
|
45
|
+
maxOccurs=\"1\" name=\"Password\" type=\"s:string\" />\r\n <s:element
|
46
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"ShipFrom\" type=\"tns:SpeedTaxAddress\"
|
47
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ShipTo\"
|
48
|
+
type=\"tns:SpeedTaxAddress\" />\r\n <s:element minOccurs=\"0\"
|
49
|
+
maxOccurs=\"1\" name=\"TaxValueRequests\" type=\"tns:ArrayOfTaxValueRequest\"
|
50
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
51
|
+
\ <s:complexType name=\"SpeedTaxAddress\">\r\n <s:sequence>\r\n
|
52
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"StreetAddress\"
|
53
|
+
type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
54
|
+
name=\"City\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
|
55
|
+
maxOccurs=\"1\" name=\"State\" type=\"s:string\" />\r\n <s:element
|
56
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"ZIPCode\" type=\"s:string\" />\r\n
|
57
|
+
\ </s:sequence>\r\n </s:complexType>\r\n <s:complexType name=\"ArrayOfTaxValueRequest\">\r\n
|
58
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
|
59
|
+
name=\"TaxValueRequest\" nillable=\"true\" type=\"tns:TaxValueRequest\" />\r\n
|
60
|
+
\ </s:sequence>\r\n </s:complexType>\r\n <s:complexType name=\"TaxValueRequest\">\r\n
|
61
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
62
|
+
name=\"SalesTaxCategoryOrCategoryID\" type=\"s:string\" />\r\n <s:element
|
63
|
+
minOccurs=\"1\" maxOccurs=\"1\" name=\"Amount\" type=\"s:double\" />\r\n </s:sequence>\r\n
|
64
|
+
\ </s:complexType>\r\n <s:element name=\"GetSalesTaxValueResponse\">\r\n
|
65
|
+
\ <s:complexType>\r\n <s:sequence>\r\n <s:element
|
66
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"GetSalesTaxValueResult\" type=\"tns:SIWsOutputOfTaxValueOutput\"
|
67
|
+
/>\r\n <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
68
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
69
|
+
\ <s:complexType name=\"SIWsOutputOfTaxValueOutput\">\r\n <s:sequence>\r\n
|
70
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ServiceStatus\"
|
71
|
+
type=\"tns:SIWsStatus\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
72
|
+
name=\"ServiceResult\" type=\"tns:TaxValueOutput\" />\r\n </s:sequence>\r\n
|
73
|
+
\ </s:complexType>\r\n <s:complexType name=\"SIWsStatus\">\r\n <s:sequence>\r\n
|
74
|
+
\ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"StatusNbr\" type=\"s:int\"
|
75
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"StatusDescription\"
|
76
|
+
type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
77
|
+
\ <s:complexType name=\"TaxValueOutput\">\r\n <s:complexContent
|
78
|
+
mixed=\"false\">\r\n <s:extension base=\"tns:SIWsResultArrayOfTaxValueRecord\">\r\n
|
79
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
80
|
+
name=\"ResolvedFromAddress\" type=\"tns:SpeedTaxAddress\" />\r\n <s:element
|
81
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"ResolvedToAddress\" type=\"tns:SpeedTaxAddress\"
|
82
|
+
/>\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"SalesTaxTotal\"
|
83
|
+
type=\"s:decimal\" />\r\n </s:sequence>\r\n </s:extension>\r\n
|
84
|
+
\ </s:complexContent>\r\n </s:complexType>\r\n <s:complexType
|
85
|
+
name=\"SIWsResultArrayOfTaxValueRecord\">\r\n <s:sequence>\r\n <s:element
|
86
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"Results\" type=\"tns:ArrayOfTaxValueRecord\"
|
87
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
88
|
+
name=\"ArrayOfTaxValueRecord\">\r\n <s:sequence>\r\n <s:element
|
89
|
+
minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"TaxValueRecord\" nillable=\"true\"
|
90
|
+
type=\"tns:TaxValueRecord\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
91
|
+
\ <s:complexType name=\"TaxValueRecord\">\r\n <s:complexContent
|
92
|
+
mixed=\"false\">\r\n <s:extension base=\"tns:SIWsResultWithStatus\">\r\n
|
93
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
94
|
+
name=\"Category\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
|
95
|
+
maxOccurs=\"1\" name=\"CategoryID\" type=\"s:string\" />\r\n <s:element
|
96
|
+
minOccurs=\"1\" maxOccurs=\"1\" name=\"SalesTaxAmount\" type=\"s:double\"
|
97
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Jurisdictions\"
|
98
|
+
type=\"tns:ArrayOfSalesTaxValueJurisdiction\" />\r\n </s:sequence>\r\n
|
99
|
+
\ </s:extension>\r\n </s:complexContent>\r\n </s:complexType>\r\n
|
100
|
+
\ <s:complexType name=\"SIWsResultWithStatus\" abstract=\"true\">\r\n
|
101
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
102
|
+
name=\"ItemStatus\" type=\"tns:SIWsStatus\" />\r\n </s:sequence>\r\n
|
103
|
+
\ </s:complexType>\r\n <s:complexType name=\"ArrayOfSalesTaxValueJurisdiction\">\r\n
|
104
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
|
105
|
+
name=\"SalesTaxValueJurisdiction\" nillable=\"true\" type=\"tns:SalesTaxValueJurisdiction\"
|
106
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
107
|
+
name=\"SalesTaxValueJurisdiction\">\r\n <s:sequence>\r\n <s:element
|
108
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"FIPS\" type=\"s:string\" />\r\n <s:element
|
109
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"Name\" type=\"s:string\" />\r\n <s:element
|
110
|
+
minOccurs=\"1\" maxOccurs=\"1\" name=\"SalesTaxAmount\" type=\"s:decimal\"
|
111
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:element
|
112
|
+
name=\"GetSalesTaxCategories\">\r\n <s:complexType>\r\n <s:sequence>\r\n
|
113
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"UserID\" type=\"s:string\"
|
114
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Password\"
|
115
|
+
type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
116
|
+
\ </s:element>\r\n <s:element name=\"GetSalesTaxCategoriesResponse\">\r\n
|
117
|
+
\ <s:complexType>\r\n <s:sequence>\r\n <s:element
|
118
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"GetSalesTaxCategoriesResult\" type=\"tns:SIWsOutputOfArrayOfSalesTaxCategory\"
|
119
|
+
/>\r\n <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
120
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
121
|
+
\ <s:complexType name=\"SIWsOutputOfArrayOfSalesTaxCategory\">\r\n <s:sequence>\r\n
|
122
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ServiceStatus\"
|
123
|
+
type=\"tns:SIWsStatus\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
124
|
+
name=\"ServiceResult\" type=\"tns:ArrayOfSalesTaxCategory\" />\r\n </s:sequence>\r\n
|
125
|
+
\ </s:complexType>\r\n <s:complexType name=\"ArrayOfSalesTaxCategory\">\r\n
|
126
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
|
127
|
+
name=\"SalesTaxCategory\" nillable=\"true\" type=\"tns:SalesTaxCategory\"
|
128
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
129
|
+
name=\"SalesTaxCategory\">\r\n <s:sequence>\r\n <s:element
|
130
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"Category\" type=\"s:string\" />\r\n
|
131
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"CategoryID\" type=\"s:string\"
|
132
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:element
|
133
|
+
name=\"GetStatusCodesForMethod\">\r\n <s:complexType>\r\n <s:sequence>\r\n
|
134
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"UserID\" type=\"s:string\"
|
135
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Password\"
|
136
|
+
type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
137
|
+
name=\"MethodName\" type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
138
|
+
\ </s:element>\r\n <s:element name=\"GetStatusCodesForMethodResponse\">\r\n
|
139
|
+
\ <s:complexType>\r\n <s:sequence>\r\n <s:element
|
140
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"GetStatusCodesForMethodResult\" type=\"tns:SIWsOutputOfMethodStatusRecord\"
|
141
|
+
/>\r\n <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
142
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
143
|
+
\ <s:complexType name=\"SIWsOutputOfMethodStatusRecord\">\r\n <s:sequence>\r\n
|
144
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ServiceStatus\"
|
145
|
+
type=\"tns:SIWsStatus\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
146
|
+
name=\"ServiceResult\" type=\"tns:MethodStatusRecord\" />\r\n </s:sequence>\r\n
|
147
|
+
\ </s:complexType>\r\n <s:complexType name=\"MethodStatusRecord\">\r\n
|
148
|
+
\ <s:complexContent mixed=\"false\">\r\n <s:extension base=\"tns:SIWsResultArrayOfSIWsStatus\">\r\n
|
149
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
150
|
+
name=\"MethodName\" type=\"s:string\" />\r\n </s:sequence>\r\n
|
151
|
+
\ </s:extension>\r\n </s:complexContent>\r\n </s:complexType>\r\n
|
152
|
+
\ <s:complexType name=\"SIWsResultArrayOfSIWsStatus\">\r\n <s:sequence>\r\n
|
153
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Results\" type=\"tns:ArrayOfSIWsStatus\"
|
154
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
155
|
+
name=\"ArrayOfSIWsStatus\">\r\n <s:sequence>\r\n <s:element
|
156
|
+
minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"SIWsStatus\" nillable=\"true\"
|
157
|
+
type=\"tns:SIWsStatus\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
158
|
+
\ <s:element name=\"GetStatusCodes\">\r\n <s:complexType>\r\n <s:sequence>\r\n
|
159
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"UserID\" type=\"s:string\"
|
160
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Password\"
|
161
|
+
type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
162
|
+
\ </s:element>\r\n <s:element name=\"GetStatusCodesResponse\">\r\n
|
163
|
+
\ <s:complexType>\r\n <s:sequence>\r\n <s:element
|
164
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"GetStatusCodesResult\" type=\"tns:SIWsOutputOfSIWsResultArrayOfMethodStatusRecord\"
|
165
|
+
/>\r\n <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
166
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
167
|
+
\ <s:complexType name=\"SIWsOutputOfSIWsResultArrayOfMethodStatusRecord\">\r\n
|
168
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
169
|
+
name=\"ServiceStatus\" type=\"tns:SIWsStatus\" />\r\n <s:element
|
170
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"ServiceResult\" type=\"tns:SIWsResultArrayOfMethodStatusRecord\"
|
171
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
172
|
+
name=\"SIWsResultArrayOfMethodStatusRecord\">\r\n <s:sequence>\r\n
|
173
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Results\" type=\"tns:ArrayOfMethodStatusRecord\"
|
174
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
175
|
+
name=\"ArrayOfMethodStatusRecord\">\r\n <s:sequence>\r\n <s:element
|
176
|
+
minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"MethodStatusRecord\" nillable=\"true\"
|
177
|
+
type=\"tns:MethodStatusRecord\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
178
|
+
\ <s:element name=\"GetServiceInfo\">\r\n <s:complexType>\r\n <s:sequence>\r\n
|
179
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"UserID\" type=\"s:string\"
|
180
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Password\"
|
181
|
+
type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
182
|
+
\ </s:element>\r\n <s:element name=\"GetServiceInfoResponse\">\r\n
|
183
|
+
\ <s:complexType>\r\n <s:sequence>\r\n <s:element
|
184
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"GetServiceInfoResult\" type=\"tns:SIWsOutputOfSIWsResultArrayOfServiceInfoRecord\"
|
185
|
+
/>\r\n <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
186
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
|
187
|
+
\ <s:complexType name=\"SIWsOutputOfSIWsResultArrayOfServiceInfoRecord\">\r\n
|
188
|
+
\ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
|
189
|
+
name=\"ServiceStatus\" type=\"tns:SIWsStatus\" />\r\n <s:element
|
190
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"ServiceResult\" type=\"tns:SIWsResultArrayOfServiceInfoRecord\"
|
191
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
192
|
+
name=\"SIWsResultArrayOfServiceInfoRecord\">\r\n <s:sequence>\r\n <s:element
|
193
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"Results\" type=\"tns:ArrayOfServiceInfoRecord\"
|
194
|
+
/>\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
|
195
|
+
name=\"ArrayOfServiceInfoRecord\">\r\n <s:sequence>\r\n <s:element
|
196
|
+
minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ServiceInfoRecord\" nillable=\"true\"
|
197
|
+
type=\"tns:ServiceInfoRecord\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
198
|
+
\ <s:complexType name=\"ServiceInfoRecord\">\r\n <s:sequence>\r\n
|
199
|
+
\ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"InfoKey\" type=\"s:string\"
|
200
|
+
/>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"InfoValue\"
|
201
|
+
type=\"s:string\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
202
|
+
\ <s:complexType name=\"SILicenseInfo\">\r\n <s:sequence>\r\n <s:element
|
203
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"UserID\" type=\"s:string\" />\r\n <s:element
|
204
|
+
minOccurs=\"0\" maxOccurs=\"1\" name=\"Password\" type=\"s:string\" />\r\n
|
205
|
+
\ </s:sequence>\r\n </s:complexType>\r\n <s:element name=\"SILicenseInfo\"
|
206
|
+
type=\"tns:SILicenseInfo\" />\r\n <s:complexType name=\"SISubscriptionInfo\">\r\n
|
207
|
+
\ <s:sequence>\r\n <s:element name=\"LicenseStatusCode\" type=\"s:int\"
|
208
|
+
/>\r\n <s:element minOccurs=\"0\" name=\"LicenseStatus\" type=\"s:string\"
|
209
|
+
/>\r\n <s:element name=\"LicenseActionCode\" type=\"s:int\" />\r\n
|
210
|
+
\ <s:element minOccurs=\"0\" name=\"LicenseAction\" type=\"s:string\"
|
211
|
+
/>\r\n <s:element name=\"RemainingHits\" type=\"s:int\" />\r\n <s:element
|
212
|
+
name=\"Amount\" type=\"s:decimal\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
|
213
|
+
\ <s:element name=\"SISubscriptionInfo\" type=\"tns:SISubscriptionInfo\"
|
214
|
+
/>\r\n </s:schema>\r\n </wsdl:types>\r\n <wsdl:message name=\"GetSalesTaxValueSoapIn\">\r\n
|
215
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetSalesTaxValue\" />\r\n
|
216
|
+
\ </wsdl:message>\r\n <wsdl:message name=\"GetSalesTaxValueSoapOut\">\r\n
|
217
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetSalesTaxValueResponse\"
|
218
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetSalesTaxCategoriesSoapIn\">\r\n
|
219
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetSalesTaxCategories\" />\r\n
|
220
|
+
\ </wsdl:message>\r\n <wsdl:message name=\"GetSalesTaxCategoriesSoapOut\">\r\n
|
221
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetSalesTaxCategoriesResponse\"
|
222
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetStatusCodesForMethodSoapIn\">\r\n
|
223
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetStatusCodesForMethod\"
|
224
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetStatusCodesForMethodSoapOut\">\r\n
|
225
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetStatusCodesForMethodResponse\"
|
226
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetStatusCodesSoapIn\">\r\n
|
227
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetStatusCodes\" />\r\n </wsdl:message>\r\n
|
228
|
+
\ <wsdl:message name=\"GetStatusCodesSoapOut\">\r\n <wsdl:part name=\"parameters\"
|
229
|
+
element=\"tns:GetStatusCodesResponse\" />\r\n </wsdl:message>\r\n <wsdl:message
|
230
|
+
name=\"GetServiceInfoSoapIn\">\r\n <wsdl:part name=\"parameters\" element=\"tns:GetServiceInfo\"
|
231
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetServiceInfoSoapOut\">\r\n
|
232
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:GetServiceInfoResponse\"
|
233
|
+
/>\r\n </wsdl:message>\r\n <wsdl:message name=\"GetRemainingHitsSoapIn\">\r\n
|
234
|
+
\ <wsdl:part name=\"parameters\" element=\"tns:SILicenseInfo\" />\r\n </wsdl:message>\r\n
|
235
|
+
\ <wsdl:message name=\"GetRemainingHitsSoapOut\">\r\n <wsdl:part name=\"parameters\"
|
236
|
+
element=\"tns:SISubscriptionInfo\" />\r\n </wsdl:message>\r\n <wsdl:portType
|
237
|
+
name=\"SpeedTaxSoap\">\r\n <wsdl:operation name=\"GetSalesTaxValue\">\r\n
|
238
|
+
\ <wsdl:input message=\"tns:GetSalesTaxValueSoapIn\" />\r\n <wsdl:output
|
239
|
+
message=\"tns:GetSalesTaxValueSoapOut\" />\r\n </wsdl:operation>\r\n <wsdl:operation
|
240
|
+
name=\"GetSalesTaxCategories\">\r\n <wsdl:input message=\"tns:GetSalesTaxCategoriesSoapIn\"
|
241
|
+
/>\r\n <wsdl:output message=\"tns:GetSalesTaxCategoriesSoapOut\" />\r\n
|
242
|
+
\ </wsdl:operation>\r\n <wsdl:operation name=\"GetStatusCodesForMethod\">\r\n
|
243
|
+
\ <wsdl:documentation xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">Gets
|
244
|
+
all status codes a method in the service might return.</wsdl:documentation>\r\n
|
245
|
+
\ <wsdl:input message=\"tns:GetStatusCodesForMethodSoapIn\" />\r\n <wsdl:output
|
246
|
+
message=\"tns:GetStatusCodesForMethodSoapOut\" />\r\n </wsdl:operation>\r\n
|
247
|
+
\ <wsdl:operation name=\"GetStatusCodes\">\r\n <wsdl:documentation
|
248
|
+
xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">Get all statuses this service
|
249
|
+
might return.</wsdl:documentation>\r\n <wsdl:input message=\"tns:GetStatusCodesSoapIn\"
|
250
|
+
/>\r\n <wsdl:output message=\"tns:GetStatusCodesSoapOut\" />\r\n </wsdl:operation>\r\n
|
251
|
+
\ <wsdl:operation name=\"GetServiceInfo\">\r\n <wsdl:documentation
|
252
|
+
xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">Get information about the
|
253
|
+
web service</wsdl:documentation>\r\n <wsdl:input message=\"tns:GetServiceInfoSoapIn\"
|
254
|
+
/>\r\n <wsdl:output message=\"tns:GetServiceInfoSoapOut\" />\r\n </wsdl:operation>\r\n
|
255
|
+
\ <wsdl:operation name=\"GetRemainingHits\">\r\n <wsdl:input message=\"tns:GetRemainingHitsSoapIn\"
|
256
|
+
/>\r\n <wsdl:output message=\"tns:GetRemainingHitsSoapOut\" />\r\n </wsdl:operation>\r\n
|
257
|
+
\ </wsdl:portType>\r\n <wsdl:binding name=\"SpeedTaxSoap\" type=\"tns:SpeedTaxSoap\">\r\n
|
258
|
+
\ <soap:binding transport=\"http://schemas.xmlsoap.org/soap/http\" />\r\n
|
259
|
+
\ <wsdl:operation name=\"GetSalesTaxValue\">\r\n <soap:operation soapAction=\"http://www.strikeiron.com/GetSalesTaxValue\"
|
260
|
+
style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
|
261
|
+
/>\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
|
262
|
+
/>\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
|
263
|
+
name=\"GetSalesTaxCategories\">\r\n <soap:operation soapAction=\"http://www.strikeiron.com/GetSalesTaxCategories\"
|
264
|
+
style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
|
265
|
+
/>\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
|
266
|
+
/>\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
|
267
|
+
name=\"GetStatusCodesForMethod\">\r\n <soap:operation soapAction=\"http://www.strikeiron.com/GetStatusCodesForMethod\"
|
268
|
+
style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
|
269
|
+
/>\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
|
270
|
+
/>\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
|
271
|
+
name=\"GetStatusCodes\">\r\n <soap:operation soapAction=\"http://www.strikeiron.com/GetStatusCodes\"
|
272
|
+
style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
|
273
|
+
/>\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
|
274
|
+
/>\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
|
275
|
+
name=\"GetServiceInfo\">\r\n <soap:operation soapAction=\"http://www.strikeiron.com/GetServiceInfo\"
|
276
|
+
style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
|
277
|
+
/>\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
|
278
|
+
/>\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
|
279
|
+
name=\"GetRemainingHits\">\r\n <soap:operation soapAction=\"http://wsparam.strikeiron.com/StrikeIron/SpeedTaxSalesTax3/SpeedTax/GetRemainingHits\"
|
280
|
+
/>\r\n <wsdl:input>\r\n <soap:body use=\"literal\" />\r\n </wsdl:input>\r\n
|
281
|
+
\ <wsdl:output>\r\n <soap:body use=\"literal\" />\r\n </wsdl:output>\r\n
|
282
|
+
\ </wsdl:operation>\r\n </wsdl:binding>\r\n <wsdl:service name=\"SpeedTax\">\r\n
|
283
|
+
\ <wsdl:port name=\"SpeedTaxSoap\" binding=\"tns:SpeedTaxSoap\">\r\n <soap:address
|
284
|
+
location=\"http://wsparam.strikeiron.com/StrikeIron/SpeedTaxSalesTax3/SpeedTax\"
|
285
|
+
/>\r\n </wsdl:port>\r\n </wsdl:service>\r\n</wsdl:definitions>"
|
286
|
+
http_version:
|
287
|
+
recorded_at: Thu, 03 May 2012 14:28:00 GMT
|
288
|
+
recorded_with: VCR 2.1.1
|
@@ -0,0 +1,52 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: http://wsparam.strikeiron.com/StrikeIron/SpeedTaxSalesTax3/SpeedTax
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
9
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://www.strikeiron.com/"
|
10
|
+
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="http://www.strikeiron.com/"><env:Body><GetRemainingHits><wsdl:UserID>user_id</wsdl:UserID><wsdl:Password>password</wsdl:Password></GetRemainingHits></env:Body></env:Envelope>
|
11
|
+
headers:
|
12
|
+
Soapaction:
|
13
|
+
- ! '"http://wsparam.strikeiron.com/StrikeIron/SpeedTaxSalesTax3/SpeedTax/GetRemainingHits"'
|
14
|
+
Content-Type:
|
15
|
+
- text/xml;charset=UTF-8
|
16
|
+
Content-Length:
|
17
|
+
- '450'
|
18
|
+
Accept:
|
19
|
+
- ! '*/*'
|
20
|
+
User-Agent:
|
21
|
+
- Ruby
|
22
|
+
response:
|
23
|
+
status:
|
24
|
+
code: 200
|
25
|
+
message: OK
|
26
|
+
headers:
|
27
|
+
Date:
|
28
|
+
- Thu, 03 May 2012 16:28:46 GMT
|
29
|
+
Server:
|
30
|
+
- Microsoft-IIS/6.0
|
31
|
+
X-Powered-By:
|
32
|
+
- ASP.NET
|
33
|
+
X-Aspnet-Version:
|
34
|
+
- 4.0.30319
|
35
|
+
Cache-Control:
|
36
|
+
- private
|
37
|
+
Content-Type:
|
38
|
+
- text/xml; charset=utf-8
|
39
|
+
Content-Length:
|
40
|
+
- '642'
|
41
|
+
body:
|
42
|
+
encoding: US-ASCII
|
43
|
+
string: ! "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
|
44
|
+
xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\r\n
|
45
|
+
\ <soap:Header />\r\n <soap:Body>\r\n <SISubscriptionInfo xmlns=\"http://www.strikeiron.com/\">\r\n
|
46
|
+
\ <LicenseStatusCode>0</LicenseStatusCode>\r\n <LicenseStatus>Valid
|
47
|
+
license key</LicenseStatus>\r\n <LicenseActionCode>5</LicenseActionCode>\r\n
|
48
|
+
\ <LicenseAction>Get remaining hits</LicenseAction>\r\n <RemainingHits>100</RemainingHits>\r\n
|
49
|
+
\ <Amount>0</Amount>\r\n </SISubscriptionInfo>\r\n </soap:Body>\r\n</soap:Envelope>"
|
50
|
+
http_version:
|
51
|
+
recorded_at: Thu, 03 May 2012 16:28:46 GMT
|
52
|
+
recorded_with: VCR 2.1.1
|
@@ -0,0 +1,93 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: http://wsparam.strikeiron.com/StrikeIron/SpeedTaxSalesTax3/SpeedTax
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
9
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://www.strikeiron.com/"
|
10
|
+
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="http://www.strikeiron.com/"><env:Body><ins0:GetSalesTaxValue><ins0:UserID>user_id</ins0:UserID><ins0:Password>password</ins0:Password><ins0:ShipFrom><ins0:StreetAddress>One
|
11
|
+
Microsoft Way</ins0:StreetAddress><ins0:City>Redmond</ins0:City><ins0:State>WA</ins0:State><ins0:ZIPCode>98052</ins0:ZIPCode></ins0:ShipFrom><ins0:ShipTo><ins0:StreetAddress>902
|
12
|
+
Broadway</ins0:StreetAddress><ins0:City>New York</ins0:City><ins0:State>NY</ins0:State><ins0:ZIPCode>10010</ins0:ZIPCode></ins0:ShipTo><ins0:TaxValueRequests><ins0:TaxValueRequest><wsdl:SalesTaxCategoryOrCategoryID>01151605</wsdl:SalesTaxCategoryOrCategoryID><wsdl:Amount>239.41</wsdl:Amount></ins0:TaxValueRequest><ins0:TaxValueRequest><wsdl:SalesTaxCategoryOrCategoryID>01151605</wsdl:SalesTaxCategoryOrCategoryID><wsdl:Amount>239.41</wsdl:Amount></ins0:TaxValueRequest></ins0:TaxValueRequests></ins0:GetSalesTaxValue></env:Body></env:Envelope>
|
13
|
+
headers:
|
14
|
+
Soapaction:
|
15
|
+
- ! '"http://www.strikeiron.com/GetSalesTaxValue"'
|
16
|
+
Content-Type:
|
17
|
+
- text/xml;charset=UTF-8
|
18
|
+
Content-Length:
|
19
|
+
- '1173'
|
20
|
+
Accept:
|
21
|
+
- ! '*/*'
|
22
|
+
User-Agent:
|
23
|
+
- Ruby
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Date:
|
30
|
+
- Thu, 03 May 2012 17:13:19 GMT
|
31
|
+
Server:
|
32
|
+
- Microsoft-IIS/6.0
|
33
|
+
X-Powered-By:
|
34
|
+
- ASP.NET
|
35
|
+
X-Aspnet-Version:
|
36
|
+
- 4.0.30319
|
37
|
+
Cache-Control:
|
38
|
+
- private
|
39
|
+
Content-Type:
|
40
|
+
- text/xml; charset=utf-8
|
41
|
+
Content-Length:
|
42
|
+
- '3970'
|
43
|
+
body:
|
44
|
+
encoding: US-ASCII
|
45
|
+
string: ! "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"
|
46
|
+
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\r\n
|
47
|
+
\ <soap:Body>\r\n <GetSalesTaxValueResponse xmlns=\"http://www.strikeiron.com/\">\r\n
|
48
|
+
\ <GetSalesTaxValueResult>\r\n <ServiceStatus>\r\n <StatusNbr>201</StatusNbr>\r\n
|
49
|
+
\ <StatusDescription>Successful (No Geopoint for From Address)</StatusDescription>\r\n
|
50
|
+
\ </ServiceStatus>\r\n <ServiceResult>\r\n <Results>\r\n
|
51
|
+
\ <TaxValueRecord>\r\n <ItemStatus>\r\n <StatusNbr>200</StatusNbr>\r\n
|
52
|
+
\ <StatusDescription>Found</StatusDescription>\r\n </ItemStatus>\r\n
|
53
|
+
\ <Category>Computer Software (both prewritten and non-prewritten)
|
54
|
+
delivered electronically</Category>\r\n <CategoryID>01151605</CategoryID>\r\n
|
55
|
+
\ <SalesTaxAmount>21.25</SalesTaxAmount>\r\n <Jurisdictions>\r\n
|
56
|
+
\ <SalesTaxValueJurisdiction>\r\n <FIPS>36</FIPS>\r\n
|
57
|
+
\ <Name>New York</Name>\r\n <SalesTaxAmount>9.57</SalesTaxAmount>\r\n
|
58
|
+
\ </SalesTaxValueJurisdiction>\r\n <SalesTaxValueJurisdiction>\r\n
|
59
|
+
\ <FIPS>CTD51000</FIPS>\r\n <Name>METRO COMMUTER
|
60
|
+
TRANS. DISTRICT</Name>\r\n <SalesTaxAmount>0.89</SalesTaxAmount>\r\n
|
61
|
+
\ </SalesTaxValueJurisdiction>\r\n <SalesTaxValueJurisdiction>\r\n
|
62
|
+
\ <FIPS>061</FIPS>\r\n <Name>NEW YORK</Name>\r\n
|
63
|
+
\ <SalesTaxAmount>10.77</SalesTaxAmount>\r\n </SalesTaxValueJurisdiction>\r\n
|
64
|
+
\ </Jurisdictions>\r\n </TaxValueRecord>\r\n <TaxValueRecord>\r\n
|
65
|
+
\ <ItemStatus>\r\n <StatusNbr>200</StatusNbr>\r\n
|
66
|
+
\ <StatusDescription>Found</StatusDescription>\r\n </ItemStatus>\r\n
|
67
|
+
\ <Category>Computer Software (both prewritten and non-prewritten)
|
68
|
+
delivered electronically</Category>\r\n <CategoryID>01151605</CategoryID>\r\n
|
69
|
+
\ <SalesTaxAmount>21.25</SalesTaxAmount>\r\n <Jurisdictions>\r\n
|
70
|
+
\ <SalesTaxValueJurisdiction>\r\n <FIPS>36</FIPS>\r\n
|
71
|
+
\ <Name>New York</Name>\r\n <SalesTaxAmount>9.57</SalesTaxAmount>\r\n
|
72
|
+
\ </SalesTaxValueJurisdiction>\r\n <SalesTaxValueJurisdiction>\r\n
|
73
|
+
\ <FIPS>CTD51000</FIPS>\r\n <Name>METRO COMMUTER
|
74
|
+
TRANS. DISTRICT</Name>\r\n <SalesTaxAmount>0.89</SalesTaxAmount>\r\n
|
75
|
+
\ </SalesTaxValueJurisdiction>\r\n <SalesTaxValueJurisdiction>\r\n
|
76
|
+
\ <FIPS>061</FIPS>\r\n <Name>NEW YORK</Name>\r\n
|
77
|
+
\ <SalesTaxAmount>10.77</SalesTaxAmount>\r\n </SalesTaxValueJurisdiction>\r\n
|
78
|
+
\ </Jurisdictions>\r\n </TaxValueRecord>\r\n </Results>\r\n
|
79
|
+
\ <ResolvedFromAddress>\r\n <StreetAddress>ONE MICROSOFT
|
80
|
+
WAY</StreetAddress>\r\n <City>REDMOND</City>\r\n <State>WA</State>\r\n
|
81
|
+
\ <ZIPCode>98052</ZIPCode>\r\n </ResolvedFromAddress>\r\n
|
82
|
+
\ <ResolvedToAddress>\r\n <StreetAddress>902 BROADWAY</StreetAddress>\r\n
|
83
|
+
\ <City>NEW YORK</City>\r\n <State>NY</State>\r\n <ZIPCode>10010-6041</ZIPCode>\r\n
|
84
|
+
\ </ResolvedToAddress>\r\n <SalesTaxTotal>42.5</SalesTaxTotal>\r\n
|
85
|
+
\ </ServiceResult>\r\n </GetSalesTaxValueResult>\r\n <SISubscriptionInfo>\r\n
|
86
|
+
\ <LicenseStatusCode>0</LicenseStatusCode>\r\n <LicenseStatus>Valid
|
87
|
+
license key</LicenseStatus>\r\n <LicenseActionCode>0</LicenseActionCode>\r\n
|
88
|
+
\ <LicenseAction>Decremented hit count</LicenseAction>\r\n <RemainingHits>97</RemainingHits>\r\n
|
89
|
+
\ <Amount>0</Amount>\r\n </SISubscriptionInfo>\r\n </GetSalesTaxValueResponse>\r\n
|
90
|
+
\ </soap:Body>\r\n</soap:Envelope>"
|
91
|
+
http_version:
|
92
|
+
recorded_at: Thu, 03 May 2012 17:13:19 GMT
|
93
|
+
recorded_with: VCR 2.1.1
|