avatax 20.6.0 → 21.1.2

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.
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