avatax 20.6.0 → 21.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/.vs/slnx.sqlite +0 -0
  3. data/avatax.gemspec +0 -1
  4. data/lib/avatax/client/accounts.rb +22 -55
  5. data/lib/avatax/client/addresses.rb +7 -13
  6. data/lib/avatax/client/advancedrules.rb +10 -25
  7. data/lib/avatax/client/avafileforms.rb +15 -30
  8. data/lib/avatax/client/batches.rb +16 -40
  9. data/lib/avatax/client/certexpressinvites.rb +21 -30
  10. data/lib/avatax/client/certificates.rb +97 -142
  11. data/lib/avatax/client/companies.rb +137 -80
  12. data/lib/avatax/client/compliance.rb +2 -5
  13. data/lib/avatax/client/contacts.rb +12 -30
  14. data/lib/avatax/client/customers.rb +87 -126
  15. data/lib/avatax/client/datasources.rb +18 -36
  16. data/lib/avatax/client/definitions.rb +128 -303
  17. data/lib/avatax/client/distancethresholds.rb +12 -30
  18. data/lib/avatax/client/ecms.rb +26 -31
  19. data/lib/avatax/client/ecommercetoken.rb +37 -0
  20. data/lib/avatax/client/errortransactions.rb +27 -15
  21. data/lib/avatax/client/filingcalendars.rb +17 -5
  22. data/lib/avatax/client/filings.rb +15 -7
  23. data/lib/avatax/client/firmclientlinkages.rb +18 -45
  24. data/lib/avatax/client/free.rb +2 -84
  25. data/lib/avatax/client/fundingrequests.rb +6 -12
  26. data/lib/avatax/client/items.rb +38 -95
  27. data/lib/avatax/client/jurisdictionoverrides.rb +12 -30
  28. data/lib/avatax/client/locations.rb +128 -38
  29. data/lib/avatax/client/multidocument.rb +52 -62
  30. data/lib/avatax/client/nexus.rb +138 -37
  31. data/lib/avatax/client/notices.rb +47 -139
  32. data/lib/avatax/client/notifications.rb +6 -15
  33. data/lib/avatax/client/provisioning.rb +4 -10
  34. data/lib/avatax/client/registrar.rb +20 -50
  35. data/lib/avatax/client/reports.rb +17 -20
  36. data/lib/avatax/client/settings.rb +12 -30
  37. data/lib/avatax/client/subscriptions.rb +6 -15
  38. data/lib/avatax/client/taxcodes.rb +12 -30
  39. data/lib/avatax/client/taxcontent.rb +70 -16
  40. data/lib/avatax/client/taxprofiles.rb +14 -10
  41. data/lib/avatax/client/taxrules.rb +12 -30
  42. data/lib/avatax/client/transactions.rb +93 -126
  43. data/lib/avatax/client/upcs.rb +18 -36
  44. data/lib/avatax/client/users.rb +16 -40
  45. data/lib/avatax/client/utilities.rb +6 -15
  46. data/lib/avatax/configuration.rb +1 -1
  47. data/lib/avatax/connection.rb +2 -2
  48. data/lib/avatax/request.rb +0 -2
  49. data/lib/avatax/version.rb +1 -1
  50. data/spec/avatax/request_spec.rb +25 -0
  51. metadata +4 -16
@@ -3,6 +3,30 @@ module AvaTax
3
3
  module Locations
4
4
 
5
5
 
6
+ # Add parameters to a location.
7
+ #
8
+ # Add parameters to a location.
9
+ #
10
+ # Some locations can be taxed differently depending on the properties of that location. In AvaTax, these tax-affecting properties are called "parameters".
11
+ #
12
+ # A parameter added to a location will be used by default in tax calculation but will not show on the transaction line referencing the location.
13
+ #
14
+ # A parameter specified on a transaction line will override a location parameter if they share the same parameter name.
15
+ #
16
+ # To see available parameters for this location, call `/api/v2/definitions/parameters?$filter=attributeType eq Company`
17
+ #
18
+ # Some parameters are only available for use if you have subscribed to specific AvaTax services. To see which parameters you are able to use, add the query parameter "$showSubscribed=true" to the parameter definition call above.
19
+ #
20
+ # ### Security Policies
21
+ #
22
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
23
+ # @param companyId [Integer] The ID of the company that owns this location parameter.
24
+ # @param locationId [Integer] The location id.
25
+ # @param model [LocationParameterModel[]] The location parameters you wish to create.
26
+ # @return [LocationParameterModel[]]
27
+ def create_location_parameters(companyId, locationId, model) path = "/api/v2/companies/#{companyId}/locations/#{locationId}/parameters"
28
+ post(path, model) end
29
+
6
30
  # Create a new location
7
31
  #
8
32
  # Create one or more new location objects attached to this company.
@@ -13,11 +37,8 @@ module AvaTax
13
37
  # @param companyId [Integer] The ID of the company that owns this location.
14
38
  # @param model [LocationModel[]] The location you wish to create.
15
39
  # @return [LocationModel[]]
16
- def create_locations(companyId, model)
17
- path = "/api/v2/companies/#{companyId}/locations"
18
- post(path, model)
19
- end
20
-
40
+ def create_locations(companyId, model) path = "/api/v2/companies/#{companyId}/locations"
41
+ post(path, model) end
21
42
 
22
43
  # Delete a single location
23
44
  #
@@ -29,11 +50,28 @@ module AvaTax
29
50
  # @param companyId [Integer] The ID of the company that owns this location.
30
51
  # @param id [Integer] The ID of the location you wish to delete.
31
52
  # @return [ErrorDetail[]]
32
- def delete_location(companyId, id)
33
- path = "/api/v2/companies/#{companyId}/locations/#{id}"
34
- delete(path)
35
- end
53
+ def delete_location(companyId, id) path = "/api/v2/companies/#{companyId}/locations/#{id}"
54
+ delete(path) end
36
55
 
56
+ # Delete a single location parameter
57
+ #
58
+ # Delete a single location parameter.
59
+ #
60
+ # Some locations can be taxed differently depending on the properties of that location. In AvaTax, these tax-affecting properties are called "parameters".
61
+ #
62
+ # A parameter added to a location will be used by default in tax calculation but will not show on the transaction line referencing the location.
63
+ #
64
+ # A parameter specified on a transaction line will override a location parameter if they share the same parameter name.
65
+ #
66
+ # ### Security Policies
67
+ #
68
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
69
+ # @param companyId [Integer] The company id
70
+ # @param locationId [Integer] The location id
71
+ # @param id [Integer] The parameter id
72
+ # @return [ErrorDetail[]]
73
+ def delete_location_parameter(companyId, locationId, id) path = "/api/v2/companies/#{companyId}/locations/#{locationId}/parameters/#{id}"
74
+ delete(path) end
37
75
 
38
76
  # Retrieve a single location
39
77
  #
@@ -50,16 +88,59 @@ module AvaTax
50
88
  #
51
89
  # ### Security Policies
52
90
  #
53
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
91
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
54
92
  # @param companyId [Integer] The ID of the company that owns this location
55
93
  # @param id [Integer] The primary key of this location
56
94
  # @param include [String] A comma separated list of additional data to retrieve.
57
95
  # @return [Object]
58
- def get_location(companyId, id, options={})
59
- path = "/api/v2/companies/#{companyId}/locations/#{id}"
60
- get(path, options)
61
- end
96
+ def get_location(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/locations/#{id}"
97
+ get(path, options) end
98
+
99
+ # Retrieve a single company location parameter
100
+ #
101
+ # Retrieve a single location parameter.
102
+ #
103
+ # Some locations can be taxed differently depending on the properties of that location. In AvaTax, these tax-affecting properties are called "parameters".
104
+ #
105
+ # A parameter added to a location will be used by default in tax calculation but will not show on the transaction line referencing the location.
106
+ #
107
+ # A parameter specified on a transaction line will override a location parameter if they share the same parameter name.
108
+ #
109
+ # ### Security Policies
110
+ #
111
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
112
+ # @param companyId [Integer] The company id
113
+ # @param locationId [Integer] The location id
114
+ # @param id [Integer] The parameter id
115
+ # @return [Object]
116
+ def get_location_parameter(companyId, locationId, id) path = "/api/v2/companies/#{companyId}/locations/#{locationId}/parameters/#{id}"
117
+ get(path) end
62
118
 
119
+ # Retrieve parameters for a location
120
+ #
121
+ # List parameters for a location.
122
+ #
123
+ # Some locations can be taxed differently depending on the properties of that location. In AvaTax, these tax-affecting properties are called "parameters".
124
+ #
125
+ # A parameter added to a location will be used by default in tax calculation but will not show on the transaction line referencing the location.
126
+ #
127
+ # A parameter specified on a transaction line will override a location parameter if they share the same parameter name.
128
+ #
129
+ # Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
130
+ # Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
131
+ #
132
+ # ### Security Policies
133
+ #
134
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
135
+ # @param companyId [Integer] The company id
136
+ # @param locationId [Integer] The ID of the location
137
+ # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* name, unit
138
+ # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
139
+ # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
140
+ # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
141
+ # @return [FetchResult]
142
+ def list_location_parameters(companyId, locationId, options={}) path = "/api/v2/companies/#{companyId}/locations/#{locationId}/parameters"
143
+ get(path, options) end
63
144
 
64
145
  # Retrieve locations for this company
65
146
  #
@@ -78,19 +159,16 @@ module AvaTax
78
159
  #
79
160
  # ### Security Policies
80
161
  #
81
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
162
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
82
163
  # @param companyId [Integer] The ID of the company that owns these locations
83
- # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* settings, parameters
164
+ # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* isMarketplaceOutsideUsa, settings, parameters
84
165
  # @param include [String] A comma separated list of additional data to retrieve.
85
166
  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
86
167
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
87
168
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
88
169
  # @return [FetchResult]
89
- def list_locations_by_company(companyId, options={})
90
- path = "/api/v2/companies/#{companyId}/locations"
91
- get(path, options)
92
- end
93
-
170
+ def list_locations_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/locations"
171
+ get(path, options) end
94
172
 
95
173
  # Retrieve all locations
96
174
  #
@@ -110,18 +188,15 @@ module AvaTax
110
188
  #
111
189
  # ### Security Policies
112
190
  #
113
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
114
- # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* settings, parameters
191
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
192
+ # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* isMarketplaceOutsideUsa, settings, parameters
115
193
  # @param include [String] A comma separated list of additional data to retrieve. You may specify `LocationSettings` to retrieve location settings.
116
194
  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
117
195
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
118
196
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
119
197
  # @return [FetchResult]
120
- def query_locations(options={})
121
- path = "/api/v2/locations"
122
- get(path, options)
123
- end
124
-
198
+ def query_locations(options={}) path = "/api/v2/locations"
199
+ get(path, options) end
125
200
 
126
201
  # Update a single location
127
202
  #
@@ -136,11 +211,29 @@ module AvaTax
136
211
  # @param id [Integer] The ID of the location you wish to update
137
212
  # @param model [Object] The location you wish to update.
138
213
  # @return [Object]
139
- def update_location(companyId, id, model)
140
- path = "/api/v2/companies/#{companyId}/locations/#{id}"
141
- put(path, model)
142
- end
214
+ def update_location(companyId, id, model) path = "/api/v2/companies/#{companyId}/locations/#{id}"
215
+ put(path, model) end
143
216
 
217
+ # Update a location parameter
218
+ #
219
+ # Update a location parameter.
220
+ #
221
+ # Some locations can be taxed differently depending on the properties of that location. In AvaTax, these tax-affecting properties are called "parameters".
222
+ #
223
+ # A parameter added to a location will be used by default in tax calculation but will not show on the transaction line referencing the location.
224
+ #
225
+ # A parameter specified on a transaction line will override a location parameter if they share the same parameter name.
226
+ #
227
+ # ### Security Policies
228
+ #
229
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
230
+ # @param companyId [Integer] The company id.
231
+ # @param locationId [Integer] The location id
232
+ # @param id [Integer] The location parameter id
233
+ # @param model [Object] The location parameter object you wish to update.
234
+ # @return [Object]
235
+ def update_location_parameter(companyId, locationId, id, model) path = "/api/v2/companies/#{companyId}/locations/#{locationId}/parameters/#{id}"
236
+ put(path, model) end
144
237
 
145
238
  # Validate the location against local requirements
146
239
  #
@@ -150,15 +243,12 @@ module AvaTax
150
243
  #
151
244
  # ### Security Policies
152
245
  #
153
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
246
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
154
247
  # @param companyId [Integer] The ID of the company that owns this location
155
248
  # @param id [Integer] The primary key of this location
156
249
  # @return [Object]
157
- def validate_location(companyId, id)
158
- path = "/api/v2/companies/#{companyId}/locations/#{id}/validate"
159
- get(path)
160
- end
161
-
250
+ def validate_location(companyId, id) path = "/api/v2/companies/#{companyId}/locations/#{id}/validate"
251
+ get(path) end
162
252
  end
163
253
  end
164
254
  end
@@ -20,22 +20,21 @@ module AvaTax
20
20
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
21
21
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
22
22
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
23
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
24
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
23
25
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
24
26
  #
25
27
  # ### Security Policies
26
28
  #
27
29
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
28
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
30
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
29
31
  # @param code [String] The transaction code for this MultiDocument transaction
30
32
  # @param type [String] The transaction type for this MultiDocument transaction (See DocumentType::* for a list of allowable values)
31
33
  # @param include [String] Specifies objects to include in this fetch call
32
34
  # @param model [Object] The adjust request you wish to execute
33
35
  # @return [Object]
34
- def adjust_multi_document_transaction(code, type, model, options={})
35
- path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/adjust"
36
- post(path, model, options)
37
- end
38
-
36
+ def adjust_multi_document_transaction(code, type, model, options={}) path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/adjust"
37
+ post(path, model, options) end
39
38
 
40
39
  # Get audit information about a MultiDocument transaction
41
40
  #
@@ -58,20 +57,19 @@ module AvaTax
58
57
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
59
58
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
60
59
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
60
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
61
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
61
62
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
62
63
  #
63
64
  # ### Security Policies
64
65
  #
65
66
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
66
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
67
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
67
68
  # @param code [String] The transaction code for this MultiDocument transaction
68
69
  # @param type [String] The transaction type for this MultiDocument transaction (See DocumentType::* for a list of allowable values)
69
70
  # @return [Object]
70
- def audit_multi_document_transaction(code, type)
71
- path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/audit"
72
- get(path)
73
- end
74
-
71
+ def audit_multi_document_transaction(code, type) path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/audit"
72
+ get(path) end
75
73
 
76
74
  # Commit a MultiDocument transaction
77
75
  #
@@ -88,19 +86,18 @@ module AvaTax
88
86
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
89
87
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
90
88
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
89
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
90
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
91
91
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
92
92
  #
93
93
  # ### Security Policies
94
94
  #
95
95
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, ProStoresOperator, SSTAdmin, TechnicalSupportAdmin.
96
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
96
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
97
97
  # @param model [Object] The commit request you wish to execute
98
98
  # @return [Object]
99
- def commit_multi_document_transaction(model)
100
- path = "/api/v2/transactions/multidocument/commit"
101
- post(path, model)
102
- end
103
-
99
+ def commit_multi_document_transaction(model) path = "/api/v2/transactions/multidocument/commit"
100
+ post(path, model) end
104
101
 
105
102
  # Create a new MultiDocument transaction
106
103
  #
@@ -141,20 +138,19 @@ module AvaTax
141
138
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
142
139
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
143
140
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
141
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
142
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
144
143
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
145
144
  #
146
145
  # ### Security Policies
147
146
  #
148
147
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
149
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
148
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
150
149
  # @param include [String] Specifies objects to include in the response after transaction is created
151
150
  # @param model [Object] the multi document transaction model
152
151
  # @return [Object]
153
- def create_multi_document_transaction(model, options={})
154
- path = "/api/v2/transactions/multidocument"
155
- post(path, model, options)
156
- end
157
-
152
+ def create_multi_document_transaction(model, options={}) path = "/api/v2/transactions/multidocument"
153
+ post(path, model, options) end
158
154
 
159
155
  # Retrieve a MultiDocument transaction
160
156
  #
@@ -175,21 +171,20 @@ module AvaTax
175
171
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
176
172
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
177
173
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
174
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
175
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
178
176
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
179
177
  #
180
178
  # ### Security Policies
181
179
  #
182
180
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
183
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
184
- # @param code [String]
185
- # @param type [String] (See DocumentType::* for a list of allowable values)
181
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
182
+ # @param code [String] The multidocument code to retrieve
183
+ # @param type [String] The transaction type to retrieve (See DocumentType::* for a list of allowable values)
186
184
  # @param include [String] Specifies objects to include in the response after transaction is created
187
185
  # @return [Object]
188
- def get_multi_document_transaction_by_code_and_type(code, type, options={})
189
- path = "/api/v2/transactions/multidocument/#{code}/type/#{type}"
190
- get(path, options)
191
- end
192
-
186
+ def get_multi_document_transaction_by_code_and_type(code, type, options={}) path = "/api/v2/transactions/multidocument/#{code}/type/#{type}"
187
+ get(path, options) end
193
188
 
194
189
  # Retrieve a MultiDocument transaction by ID
195
190
  #
@@ -219,20 +214,19 @@ module AvaTax
219
214
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
220
215
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
221
216
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
217
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
218
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
222
219
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
223
220
  #
224
221
  # ### Security Policies
225
222
  #
226
223
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
227
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
224
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
228
225
  # @param id [Integer] The unique ID number of the MultiDocument transaction to retrieve
229
226
  # @param include [String] Specifies objects to include in the response after transaction is created
230
227
  # @return [Object]
231
- def get_multi_document_transaction_by_id(id, options={})
232
- path = "/api/v2/transactions/multidocument/#{id}"
233
- get(path, options)
234
- end
235
-
228
+ def get_multi_document_transaction_by_id(id, options={}) path = "/api/v2/transactions/multidocument/#{id}"
229
+ get(path, options) end
236
230
 
237
231
  # Retrieve all MultiDocument transactions
238
232
  #
@@ -260,23 +254,22 @@ module AvaTax
260
254
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
261
255
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
262
256
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
257
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
258
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
263
259
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
264
260
  #
265
261
  # ### Security Policies
266
262
  #
267
263
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
268
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
264
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
269
265
  # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* documents
270
266
  # @param include [String] Specifies objects to include in the response after transaction is created
271
267
  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
272
268
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
273
269
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
274
270
  # @return [FetchResult]
275
- def list_multi_document_transactions(options={})
276
- path = "/api/v2/transactions/multidocument"
277
- get(path, options)
278
- end
279
-
271
+ def list_multi_document_transactions(options={}) path = "/api/v2/transactions/multidocument"
272
+ get(path, options) end
280
273
 
281
274
  # Create a refund for a MultiDocument transaction
282
275
  #
@@ -321,22 +314,21 @@ module AvaTax
321
314
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
322
315
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
323
316
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
317
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
318
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
324
319
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
325
320
  #
326
321
  # ### Security Policies
327
322
  #
328
323
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
329
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
324
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
330
325
  # @param code [String] The code of this MultiDocument transaction
331
326
  # @param type [String] The type of this MultiDocument transaction (See DocumentType::* for a list of allowable values)
332
327
  # @param include [String] Specifies objects to include in the response after transaction is created
333
328
  # @param model [Object] Information about the refund to create
334
329
  # @return [Object]
335
- def refund_multi_document_transaction(code, type, model, options={})
336
- path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/refund"
337
- post(path, model, options)
338
- end
339
-
330
+ def refund_multi_document_transaction(code, type, model, options={}) path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/refund"
331
+ post(path, model, options) end
340
332
 
341
333
  # Verify a MultiDocument transaction
342
334
  #
@@ -351,19 +343,18 @@ module AvaTax
351
343
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
352
344
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
353
345
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
346
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
347
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
354
348
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
355
349
  #
356
350
  # ### Security Policies
357
351
  #
358
352
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
359
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
353
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
360
354
  # @param model [Object] Information from your accounting system to verify against this MultiDocument transaction as it is stored in AvaTax
361
355
  # @return [Object]
362
- def verify_multi_document_transaction(model)
363
- path = "/api/v2/transactions/multidocument/verify"
364
- post(path, model)
365
- end
366
-
356
+ def verify_multi_document_transaction(model) path = "/api/v2/transactions/multidocument/verify"
357
+ post(path, model) end
367
358
 
368
359
  # Void a MultiDocument transaction
369
360
  #
@@ -381,21 +372,20 @@ module AvaTax
381
372
  # * Replace '/' with '\_-ava2f-\_' For example: document/Code becomes document_-ava2f-_Code
382
373
  # * Replace '+' with '\_-ava2b-\_' For example: document+Code becomes document_-ava2b-_Code
383
374
  # * Replace '?' with '\_-ava3f-\_' For example: document?Code becomes document_-ava3f-_Code
375
+ # * Replace '%' with '\_-ava25-\_' For example: document%Code becomes document_-ava25-_Code
376
+ # * Replace '#' with '\_-ava23-\_' For example: document#Code becomes document_-ava23-_Code
384
377
  # * Replace ' ' with '%20' For example: document Code becomes document%20Code
385
378
  #
386
379
  # ### Security Policies
387
380
  #
388
381
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, CompanyAdmin, CSPTester, ProStoresOperator, SSTAdmin, TechnicalSupportAdmin.
389
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
382
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
390
383
  # @param code [String] The transaction code for this MultiDocument transaction
391
384
  # @param type [String] The transaction type for this MultiDocument transaction (See DocumentType::* for a list of allowable values)
392
385
  # @param model [Object] The void request you wish to execute
393
386
  # @return [Object]
394
- def void_multi_document_transaction(code, type, model)
395
- path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/void"
396
- post(path, model)
397
- end
398
-
387
+ def void_multi_document_transaction(code, type, model) path = "/api/v2/transactions/multidocument/#{code}/type/#{type}/void"
388
+ post(path, model) end
399
389
  end
400
390
  end
401
391
  end