avatax 20.7.0 → 21.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.vs/slnx.sqlite +0 -0
- data/lib/avatax/client/accounts.rb +22 -55
- data/lib/avatax/client/addresses.rb +7 -13
- data/lib/avatax/client/advancedrules.rb +10 -38
- data/lib/avatax/client/avafileforms.rb +15 -30
- data/lib/avatax/client/batches.rb +16 -40
- data/lib/avatax/client/certexpressinvites.rb +21 -30
- data/lib/avatax/client/certificates.rb +97 -142
- data/lib/avatax/client/companies.rb +137 -80
- data/lib/avatax/client/compliance.rb +2 -5
- data/lib/avatax/client/contacts.rb +12 -30
- data/lib/avatax/client/customers.rb +87 -126
- data/lib/avatax/client/datasources.rb +18 -36
- data/lib/avatax/client/definitions.rb +126 -303
- data/lib/avatax/client/distancethresholds.rb +12 -30
- data/lib/avatax/client/ecms.rb +26 -31
- data/lib/avatax/client/ecommercetoken.rb +37 -0
- data/lib/avatax/client/errortransactions.rb +27 -15
- data/lib/avatax/client/filingcalendars.rb +17 -5
- data/lib/avatax/client/filings.rb +15 -7
- data/lib/avatax/client/firmclientlinkages.rb +18 -45
- data/lib/avatax/client/free.rb +2 -84
- data/lib/avatax/client/fundingrequests.rb +6 -12
- data/lib/avatax/client/items.rb +38 -95
- data/lib/avatax/client/jurisdictionoverrides.rb +12 -30
- data/lib/avatax/client/locations.rb +128 -38
- data/lib/avatax/client/multidocument.rb +32 -62
- data/lib/avatax/client/nexus.rb +138 -37
- data/lib/avatax/client/notices.rb +47 -139
- data/lib/avatax/client/notifications.rb +6 -15
- data/lib/avatax/client/provisioning.rb +4 -10
- data/lib/avatax/client/registrar.rb +20 -50
- data/lib/avatax/client/reports.rb +17 -20
- data/lib/avatax/client/settings.rb +12 -30
- data/lib/avatax/client/subscriptions.rb +6 -15
- data/lib/avatax/client/taxcodes.rb +12 -30
- data/lib/avatax/client/taxcontent.rb +70 -16
- data/lib/avatax/client/taxprofiles.rb +14 -10
- data/lib/avatax/client/taxrules.rb +12 -30
- data/lib/avatax/client/transactions.rb +63 -126
- data/lib/avatax/client/upcs.rb +18 -36
- data/lib/avatax/client/users.rb +16 -40
- data/lib/avatax/client/utilities.rb +6 -15
- data/lib/avatax/configuration.rb +1 -1
- data/lib/avatax/request.rb +0 -2
- data/lib/avatax/version.rb +1 -1
- data/spec/avatax/request_spec.rb +25 -0
- metadata +4 -2
@@ -34,11 +34,8 @@ module AvaTax
|
|
34
34
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
35
35
|
# @param id [Integer] The ID of the company to check if its integration is certified.
|
36
36
|
# @return [String]
|
37
|
-
def certify_integration(id)
|
38
|
-
path
|
39
|
-
get(path)
|
40
|
-
end
|
41
|
-
|
37
|
+
def certify_integration(id) path = "/api/v2/companies/#{id}/certify"
|
38
|
+
get(path) end
|
42
39
|
|
43
40
|
# Change the filing status of this company
|
44
41
|
#
|
@@ -62,11 +59,8 @@ module AvaTax
|
|
62
59
|
# @param id [Integer]
|
63
60
|
# @param model [Object]
|
64
61
|
# @return [String]
|
65
|
-
def change_filing_status(id, model)
|
66
|
-
path
|
67
|
-
post(path, model)
|
68
|
-
end
|
69
|
-
|
62
|
+
def change_filing_status(id, model) path = "/api/v2/companies/#{id}/filingstatus"
|
63
|
+
post(path, model) end
|
70
64
|
|
71
65
|
# Quick setup for a company with a single physical address
|
72
66
|
#
|
@@ -88,11 +82,8 @@ module AvaTax
|
|
88
82
|
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
|
89
83
|
# @param model [Object] Information about the company you wish to create.
|
90
84
|
# @return [Object]
|
91
|
-
def company_initialize(model)
|
92
|
-
path
|
93
|
-
post(path, model)
|
94
|
-
end
|
95
|
-
|
85
|
+
def company_initialize(model) path = "/api/v2/companies/initialize"
|
86
|
+
post(path, model) end
|
96
87
|
|
97
88
|
# Create new companies
|
98
89
|
#
|
@@ -107,11 +98,31 @@ module AvaTax
|
|
107
98
|
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
|
108
99
|
# @param model [CompanyModel[]] Either a single company object or an array of companies to create
|
109
100
|
# @return [CompanyModel[]]
|
110
|
-
def create_companies(model)
|
111
|
-
path
|
112
|
-
post(path, model)
|
113
|
-
end
|
101
|
+
def create_companies(model) path = "/api/v2/companies"
|
102
|
+
post(path, model) end
|
114
103
|
|
104
|
+
# Add parameters to a company.
|
105
|
+
#
|
106
|
+
# Add parameters to a company.
|
107
|
+
#
|
108
|
+
# Some companies can be taxed and reported differently depending on the properties of the company, such as IsPrimaryAddress. In AvaTax, these tax-affecting properties are called "parameters".
|
109
|
+
#
|
110
|
+
# A parameter added to a company will be used by default in tax calculation but will not show on the transaction line referencing the company.
|
111
|
+
#
|
112
|
+
# A company location parameter specified on a transaction line will override a company parameter if they share the same parameter name.
|
113
|
+
#
|
114
|
+
# To see available parameters for this company, call `/api/v2/definitions/parameters?$filter=attributeType eq Company`
|
115
|
+
#
|
116
|
+
# 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.
|
117
|
+
#
|
118
|
+
# ### Security Policies
|
119
|
+
#
|
120
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
|
121
|
+
# @param companyId [Integer] The ID of the company that owns this company parameter.
|
122
|
+
# @param model [CompanyParameterDetailModel[]] The company parameters you wish to create.
|
123
|
+
# @return [CompanyParameterDetailModel[]]
|
124
|
+
def create_company_parameters(companyId, model) path = "/api/v2/companies/#{companyId}/parameters"
|
125
|
+
post(path, model) end
|
115
126
|
|
116
127
|
# Request managed returns funding setup for a company
|
117
128
|
#
|
@@ -128,16 +139,13 @@ module AvaTax
|
|
128
139
|
#
|
129
140
|
# ### Security Policies
|
130
141
|
#
|
131
|
-
# * This API depends on the following active services
|
142
|
+
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
|
132
143
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
133
144
|
# @param id [Integer] The unique identifier of the company
|
134
145
|
# @param model [Object] The funding initialization request
|
135
146
|
# @return [Object]
|
136
|
-
def create_funding_request(id, model)
|
137
|
-
path
|
138
|
-
post(path, model)
|
139
|
-
end
|
140
|
-
|
147
|
+
def create_funding_request(id, model) path = "/api/v2/companies/#{id}/funding/setup"
|
148
|
+
post(path, model) end
|
141
149
|
|
142
150
|
# Delete a single company
|
143
151
|
#
|
@@ -148,11 +156,26 @@ module AvaTax
|
|
148
156
|
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
|
149
157
|
# @param id [Integer] The ID of the company you wish to delete.
|
150
158
|
# @return [ErrorDetail[]]
|
151
|
-
def delete_company(id)
|
152
|
-
path
|
153
|
-
delete(path)
|
154
|
-
end
|
159
|
+
def delete_company(id) path = "/api/v2/companies/#{id}"
|
160
|
+
delete(path) end
|
155
161
|
|
162
|
+
# Delete a single company parameter
|
163
|
+
#
|
164
|
+
# Delete a parameter of a company.
|
165
|
+
# Some companies can be taxed and reported differently depending on the properties of the company, such as IsPrimaryAddress. In AvaTax, these tax-affecting properties are called "parameters".
|
166
|
+
#
|
167
|
+
# A parameter added to a company will be used by default in tax calculation but will not show on the transaction line referencing the company.
|
168
|
+
#
|
169
|
+
# A company location parameter specified on a transaction line will override a company parameter if they share the same parameter name.
|
170
|
+
#
|
171
|
+
# ### Security Policies
|
172
|
+
#
|
173
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
|
174
|
+
# @param companyId [Integer] The company id
|
175
|
+
# @param id [Integer] The parameter id
|
176
|
+
# @return [ErrorDetail[]]
|
177
|
+
def delete_company_parameter(companyId, id) path = "/api/v2/companies/#{companyId}/parameters/#{id}"
|
178
|
+
delete(path) end
|
156
179
|
|
157
180
|
# Check the funding configuration of a company
|
158
181
|
#
|
@@ -164,14 +187,11 @@ module AvaTax
|
|
164
187
|
# ### Security Policies
|
165
188
|
#
|
166
189
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
167
|
-
# * This API depends on the following active services
|
190
|
+
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
|
168
191
|
# @param companyId [Integer] The unique identifier of the company
|
169
192
|
# @return [Object]
|
170
|
-
def funding_configuration_by_company(companyId)
|
171
|
-
path
|
172
|
-
get(path)
|
173
|
-
end
|
174
|
-
|
193
|
+
def funding_configuration_by_company(companyId) path = "/api/v2/companies/#{companyId}/funding/configuration"
|
194
|
+
get(path) end
|
175
195
|
|
176
196
|
# Check the funding configuration of a company
|
177
197
|
#
|
@@ -183,15 +203,12 @@ module AvaTax
|
|
183
203
|
# ### Security Policies
|
184
204
|
#
|
185
205
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
186
|
-
# * This API depends on the following active services
|
206
|
+
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
|
187
207
|
# @param companyId [Integer] The unique identifier of the company
|
188
208
|
# @param currency [String] The currency of the funding. USD and CAD are the only valid currencies
|
189
209
|
# @return [FundingConfigurationModel[]]
|
190
|
-
def funding_configurations_by_company_and_currency(companyId, options={})
|
191
|
-
path
|
192
|
-
get(path, options)
|
193
|
-
end
|
194
|
-
|
210
|
+
def funding_configurations_by_company_and_currency(companyId, options={}) path = "/api/v2/companies/#{companyId}/funding/configurations"
|
211
|
+
get(path, options) end
|
195
212
|
|
196
213
|
# Retrieve a single company
|
197
214
|
#
|
@@ -215,11 +232,8 @@ module AvaTax
|
|
215
232
|
# @param id [Integer] The ID of the company to retrieve.
|
216
233
|
# @param include [String] OPTIONAL: A comma separated list of special fetch options. * Child objects - Specify one or more of the following to retrieve objects related to each company: "Contacts", "FilingCalendars", "Items", "Locations", "Nexus", "TaxCodes", "NonReportingChildren" or "TaxRules". * Deleted objects - Specify "FetchDeleted" to retrieve information about previously deleted objects.
|
217
234
|
# @return [Object]
|
218
|
-
def get_company(id, options={})
|
219
|
-
path
|
220
|
-
get(path, options)
|
221
|
-
end
|
222
|
-
|
235
|
+
def get_company(id, options={}) path = "/api/v2/companies/#{id}"
|
236
|
+
get(path, options) end
|
223
237
|
|
224
238
|
# Get configuration settings for this company
|
225
239
|
#
|
@@ -241,11 +255,27 @@ module AvaTax
|
|
241
255
|
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
242
256
|
# @param id [Integer]
|
243
257
|
# @return [CompanyConfigurationModel[]]
|
244
|
-
def get_company_configuration(id)
|
245
|
-
path
|
246
|
-
get(path)
|
247
|
-
end
|
258
|
+
def get_company_configuration(id) path = "/api/v2/companies/#{id}/configuration"
|
259
|
+
get(path) end
|
248
260
|
|
261
|
+
# Retrieve a single company parameter
|
262
|
+
#
|
263
|
+
# Retrieves a single parameter of a company.
|
264
|
+
#
|
265
|
+
# Some companies can be taxed and reported differently depending on the properties of the company, such as IsPrimaryAddress. In AvaTax, these tax-affecting properties are called "parameters".
|
266
|
+
#
|
267
|
+
# A parameter added to a company will be used by default in tax calculation but will not show on the transaction line referencing the company.
|
268
|
+
#
|
269
|
+
# A company location parameter specified on a transaction line will override a company parameter if they share the same parameter name.
|
270
|
+
#
|
271
|
+
# ### Security Policies
|
272
|
+
#
|
273
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
274
|
+
# @param companyId [Integer]
|
275
|
+
# @param id [Integer]
|
276
|
+
# @return [Object]
|
277
|
+
def get_company_parameter_detail(companyId, id) path = "/api/v2/companies/#{companyId}/parameters/#{id}"
|
278
|
+
get(path) end
|
249
279
|
|
250
280
|
# Get this company's filing status
|
251
281
|
#
|
@@ -268,11 +298,33 @@ module AvaTax
|
|
268
298
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
269
299
|
# @param id [Integer]
|
270
300
|
# @return [String]
|
271
|
-
def get_filing_status(id)
|
272
|
-
path
|
273
|
-
get(path)
|
274
|
-
end
|
301
|
+
def get_filing_status(id) path = "/api/v2/companies/#{id}/filingstatus"
|
302
|
+
get(path) end
|
275
303
|
|
304
|
+
# Retrieve parameters for a company
|
305
|
+
#
|
306
|
+
# Retrieve all parameters of a company.
|
307
|
+
#
|
308
|
+
# Some companies can be taxed and reported differently depending on the properties of the company, such as IsPrimaryAddress. In AvaTax, these tax-affecting properties are called "parameters".
|
309
|
+
#
|
310
|
+
# A parameter added to a company will be used by default in tax calculation but will not show on the transaction line referencing the company.
|
311
|
+
#
|
312
|
+
# A company location parameter specified on a transaction line will override a company parameter if they share the same parameter name.
|
313
|
+
#
|
314
|
+
# 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/) .
|
315
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
316
|
+
#
|
317
|
+
# ### Security Policies
|
318
|
+
#
|
319
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
320
|
+
# @param companyId [Integer] The company id
|
321
|
+
# @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
|
322
|
+
# @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.
|
323
|
+
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
324
|
+
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
325
|
+
# @return [FetchResult]
|
326
|
+
def list_company_parameter_details(companyId, options={}) path = "/api/v2/companies/#{companyId}/parameters"
|
327
|
+
get(path, options) end
|
276
328
|
|
277
329
|
# Check managed returns funding status for a company
|
278
330
|
#
|
@@ -283,15 +335,12 @@ module AvaTax
|
|
283
335
|
#
|
284
336
|
# ### Security Policies
|
285
337
|
#
|
286
|
-
# * This API depends on the following active services
|
338
|
+
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
|
287
339
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
288
340
|
# @param id [Integer] The unique identifier of the company
|
289
341
|
# @return [FundingStatusModel[]]
|
290
|
-
def list_funding_requests_by_company(id)
|
291
|
-
path
|
292
|
-
get(path)
|
293
|
-
end
|
294
|
-
|
342
|
+
def list_funding_requests_by_company(id) path = "/api/v2/companies/#{id}/funding"
|
343
|
+
get(path) end
|
295
344
|
|
296
345
|
# Retrieve a list of MRS Companies with account
|
297
346
|
#
|
@@ -303,11 +352,8 @@ module AvaTax
|
|
303
352
|
#
|
304
353
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
305
354
|
# @return [FetchResult]
|
306
|
-
def list_mrs_companies()
|
307
|
-
path
|
308
|
-
get(path)
|
309
|
-
end
|
310
|
-
|
355
|
+
def list_mrs_companies() path = "/api/v2/companies/mrs"
|
356
|
+
get(path) end
|
311
357
|
|
312
358
|
# Retrieve all companies
|
313
359
|
#
|
@@ -333,16 +379,13 @@ module AvaTax
|
|
333
379
|
#
|
334
380
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
335
381
|
# @param include [String] A comma separated list of objects to fetch underneath this company. Any object with a URL path underneath this company can be fetched by specifying its name.
|
336
|
-
# @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:* IsFein, contacts, items, locations, nexus, settings, taxCodes, taxRules, upcs, nonReportingChildCompanies, exemptCerts, parameters
|
382
|
+
# @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:* IsFein, contacts, items, locations, nexus, settings, taxCodes, taxRules, upcs, nonReportingChildCompanies, exemptCerts, parameters, supplierandcustomers
|
337
383
|
# @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.
|
338
384
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
339
385
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
340
386
|
# @return [FetchResult]
|
341
|
-
def query_companies(options={})
|
342
|
-
path
|
343
|
-
get(path, options)
|
344
|
-
end
|
345
|
-
|
387
|
+
def query_companies(options={}) path = "/api/v2/companies"
|
388
|
+
get(path, options) end
|
346
389
|
|
347
390
|
# Change configuration settings for this company
|
348
391
|
#
|
@@ -365,11 +408,8 @@ module AvaTax
|
|
365
408
|
# @param id [Integer]
|
366
409
|
# @param model [CompanyConfigurationModel[]]
|
367
410
|
# @return [CompanyConfigurationModel[]]
|
368
|
-
def set_company_configuration(id, model)
|
369
|
-
path
|
370
|
-
post(path, model)
|
371
|
-
end
|
372
|
-
|
411
|
+
def set_company_configuration(id, model) path = "/api/v2/companies/#{id}/configuration"
|
412
|
+
post(path, model) end
|
373
413
|
|
374
414
|
# Update a single company
|
375
415
|
#
|
@@ -391,11 +431,28 @@ module AvaTax
|
|
391
431
|
# @param id [Integer] The ID of the company you wish to update.
|
392
432
|
# @param model [Object] The company object you wish to update.
|
393
433
|
# @return [Object]
|
394
|
-
def update_company(id, model)
|
395
|
-
path
|
396
|
-
put(path, model)
|
397
|
-
end
|
434
|
+
def update_company(id, model) path = "/api/v2/companies/#{id}"
|
435
|
+
put(path, model) end
|
398
436
|
|
437
|
+
# Update a company parameter
|
438
|
+
#
|
439
|
+
# Update a parameter of a company.
|
440
|
+
#
|
441
|
+
# Some companies can be taxed and reported differently depending on the properties of the company, such as IsPrimaryAddress. In AvaTax, these tax-affecting properties are called "parameters".
|
442
|
+
#
|
443
|
+
# A parameter added to a company will be used by default in tax calculation but will not show on the transaction line referencing the company.
|
444
|
+
#
|
445
|
+
# A company location parameter specified on a transaction line will override a company parameter if they share the same parameter name.
|
446
|
+
#
|
447
|
+
# ### Security Policies
|
448
|
+
#
|
449
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
|
450
|
+
# @param companyId [Integer] The company id.
|
451
|
+
# @param id [Integer] The company parameter id
|
452
|
+
# @param model [Object] The company parameter object you wish to update.
|
453
|
+
# @return [Object]
|
454
|
+
def update_company_parameter_detail(companyId, id, model) path = "/api/v2/companies/#{companyId}/parameters/#{id}"
|
455
|
+
put(path, model) end
|
399
456
|
end
|
400
457
|
end
|
401
458
|
end
|
@@ -9,11 +9,8 @@ module AvaTax
|
|
9
9
|
# @param companyId [Integer]
|
10
10
|
# @param model [TransactionReferenceFieldModel[]]
|
11
11
|
# @return [FetchResult]
|
12
|
-
def tag_transaction(companyId, model)
|
13
|
-
path
|
14
|
-
put(path, model)
|
15
|
-
end
|
16
|
-
|
12
|
+
def tag_transaction(companyId, model) path = "/api/v2/companies/#{companyId}/transactions/tag"
|
13
|
+
put(path, model) end
|
17
14
|
end
|
18
15
|
end
|
19
16
|
end
|
@@ -15,11 +15,8 @@ module AvaTax
|
|
15
15
|
# @param companyId [Integer] The ID of the company that owns this contact.
|
16
16
|
# @param model [ContactModel[]] The contacts you wish to create.
|
17
17
|
# @return [ContactModel[]]
|
18
|
-
def create_contacts(companyId, model)
|
19
|
-
path
|
20
|
-
post(path, model)
|
21
|
-
end
|
22
|
-
|
18
|
+
def create_contacts(companyId, model) path = "/api/v2/companies/#{companyId}/contacts"
|
19
|
+
post(path, model) end
|
23
20
|
|
24
21
|
# Delete a single contact
|
25
22
|
#
|
@@ -31,11 +28,8 @@ module AvaTax
|
|
31
28
|
# @param companyId [Integer] The ID of the company that owns this contact.
|
32
29
|
# @param id [Integer] The ID of the contact you wish to delete.
|
33
30
|
# @return [ErrorDetail[]]
|
34
|
-
def delete_contact(companyId, id)
|
35
|
-
path
|
36
|
-
delete(path)
|
37
|
-
end
|
38
|
-
|
31
|
+
def delete_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
|
32
|
+
delete(path) end
|
39
33
|
|
40
34
|
# Retrieve a single contact
|
41
35
|
#
|
@@ -49,11 +43,8 @@ module AvaTax
|
|
49
43
|
# @param companyId [Integer] The ID of the company for this contact
|
50
44
|
# @param id [Integer] The primary key of this contact
|
51
45
|
# @return [Object]
|
52
|
-
def get_contact(companyId, id)
|
53
|
-
path
|
54
|
-
get(path)
|
55
|
-
end
|
56
|
-
|
46
|
+
def get_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
|
47
|
+
get(path) end
|
57
48
|
|
58
49
|
# Retrieve contacts for this company
|
59
50
|
#
|
@@ -71,11 +62,8 @@ module AvaTax
|
|
71
62
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
72
63
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
73
64
|
# @return [FetchResult]
|
74
|
-
def list_contacts_by_company(companyId, options={})
|
75
|
-
path
|
76
|
-
get(path, options)
|
77
|
-
end
|
78
|
-
|
65
|
+
def list_contacts_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/contacts"
|
66
|
+
get(path, options) end
|
79
67
|
|
80
68
|
# Retrieve all contacts
|
81
69
|
#
|
@@ -94,11 +82,8 @@ module AvaTax
|
|
94
82
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
95
83
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
96
84
|
# @return [FetchResult]
|
97
|
-
def query_contacts(options={})
|
98
|
-
path
|
99
|
-
get(path, options)
|
100
|
-
end
|
101
|
-
|
85
|
+
def query_contacts(options={}) path = "/api/v2/contacts"
|
86
|
+
get(path, options) end
|
102
87
|
|
103
88
|
# Update a single contact
|
104
89
|
#
|
@@ -115,11 +100,8 @@ module AvaTax
|
|
115
100
|
# @param id [Integer] The ID of the contact you wish to update
|
116
101
|
# @param model [Object] The contact you wish to update.
|
117
102
|
# @return [Object]
|
118
|
-
def update_contact(companyId, id, model)
|
119
|
-
path
|
120
|
-
put(path, model)
|
121
|
-
end
|
122
|
-
|
103
|
+
def update_contact(companyId, id, model) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
|
104
|
+
put(path, model) end
|
123
105
|
end
|
124
106
|
end
|
125
107
|
end
|
@@ -16,23 +16,20 @@ module AvaTax
|
|
16
16
|
# A nested object such as CustomFields could be specified and created along with the customer object. To fetch the
|
17
17
|
# nested object, please call 'GetCustomer' API with appropriate $include parameters.
|
18
18
|
#
|
19
|
-
#
|
20
|
-
# Companies that do not have this storage system set up will
|
21
|
-
# certificate related APIs. To check if this
|
22
|
-
# storage for this company, call `RequestCertificateSetup`.
|
19
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
20
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
21
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
22
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
23
23
|
#
|
24
24
|
# ### Security Policies
|
25
25
|
#
|
26
26
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
27
|
-
# * This API depends on the following active services
|
27
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
28
28
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
29
29
|
# @param model [CustomerModel[]] The list of customer objects to be created
|
30
30
|
# @return [CustomerModel[]]
|
31
|
-
def create_customers(companyId, model)
|
32
|
-
path
|
33
|
-
post(path, model)
|
34
|
-
end
|
35
|
-
|
31
|
+
def create_customers(companyId, model) path = "/api/v2/companies/#{companyId}/customers"
|
32
|
+
post(path, model) end
|
36
33
|
|
37
34
|
# Delete a customer record
|
38
35
|
#
|
@@ -44,23 +41,20 @@ module AvaTax
|
|
44
41
|
# identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
|
45
42
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
46
43
|
#
|
47
|
-
#
|
48
|
-
# Companies that do not have this storage system set up will
|
49
|
-
# certificate related APIs. To check if this
|
50
|
-
# storage for this company, call `RequestCertificateSetup`.
|
44
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
45
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
46
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
47
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
51
48
|
#
|
52
49
|
# ### Security Policies
|
53
50
|
#
|
54
51
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
55
|
-
# * This API depends on the following active services
|
52
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
56
53
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
57
54
|
# @param customerCode [String] The unique code representing this customer
|
58
55
|
# @return [Object]
|
59
|
-
def delete_customer(companyId, customerCode)
|
60
|
-
path
|
61
|
-
delete(path)
|
62
|
-
end
|
63
|
-
|
56
|
+
def delete_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
|
57
|
+
delete(path) end
|
64
58
|
|
65
59
|
# Retrieve a single customer
|
66
60
|
#
|
@@ -78,24 +72,21 @@ module AvaTax
|
|
78
72
|
# * CustomFields - Fetch a list of custom fields associated to this customer.
|
79
73
|
# * attributes - Retrieves all attributes applied to the customer.
|
80
74
|
#
|
81
|
-
#
|
82
|
-
# Companies that do not have this storage system set up will
|
83
|
-
# certificate related APIs. To check if this
|
84
|
-
# storage for this company, call `RequestCertificateSetup`.
|
75
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
76
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
77
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
78
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
85
79
|
#
|
86
80
|
# ### Security Policies
|
87
81
|
#
|
88
82
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
89
|
-
# * This API depends on the following active services
|
83
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
90
84
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
91
85
|
# @param customerCode [String] The unique code representing this customer
|
92
86
|
# @param include [String] Specify optional additional objects to include in this fetch request
|
93
87
|
# @return [Object]
|
94
|
-
def get_customer(companyId, customerCode, options={})
|
95
|
-
path
|
96
|
-
get(path, options)
|
97
|
-
end
|
98
|
-
|
88
|
+
def get_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
|
89
|
+
get(path, options) end
|
99
90
|
|
100
91
|
# Link attributes to a customer
|
101
92
|
#
|
@@ -110,24 +101,21 @@ module AvaTax
|
|
110
101
|
# identify any certificates linked to this customer object. If any certificate applies to the transaction,
|
111
102
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
112
103
|
#
|
113
|
-
#
|
114
|
-
# Companies that do not have this storage system set up will
|
115
|
-
# certificate related APIs. To check if this
|
116
|
-
# storage for this company, call `RequestCertificateSetup`.
|
104
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
105
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
106
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
107
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
117
108
|
#
|
118
109
|
# ### Security Policies
|
119
110
|
#
|
120
111
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
121
|
-
# * This API depends on the following active services
|
112
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
122
113
|
# @param companyId [Integer] The unique ID number of the company that recorded the provided customer
|
123
114
|
# @param customerCode [String] The unique code representing the current customer
|
124
115
|
# @param model [CustomerAttributeModel[]] The list of attributes to link to the customer.
|
125
116
|
# @return [FetchResult]
|
126
|
-
def link_attributes_to_customer(companyId, customerCode, model)
|
127
|
-
path
|
128
|
-
put(path, model)
|
129
|
-
end
|
130
|
-
|
117
|
+
def link_attributes_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
|
118
|
+
put(path, model) end
|
131
119
|
|
132
120
|
# Link certificates to a customer
|
133
121
|
#
|
@@ -139,24 +127,21 @@ module AvaTax
|
|
139
127
|
# identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
|
140
128
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
141
129
|
#
|
142
|
-
#
|
143
|
-
# Companies that do not have this storage system set up will
|
144
|
-
# certificate related APIs. To check if this
|
145
|
-
# storage for this company, call `RequestCertificateSetup`.
|
130
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
131
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
132
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
133
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
146
134
|
#
|
147
135
|
# ### Security Policies
|
148
136
|
#
|
149
137
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
150
|
-
# * This API depends on the following active services
|
138
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
151
139
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
152
140
|
# @param customerCode [String] The unique code representing this customer
|
153
141
|
# @param model [Object] The list of certificates to link to this customer
|
154
142
|
# @return [FetchResult]
|
155
|
-
def link_certificates_to_customer(companyId, customerCode, model)
|
156
|
-
path
|
157
|
-
post(path, model)
|
158
|
-
end
|
159
|
-
|
143
|
+
def link_certificates_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/link"
|
144
|
+
post(path, model) end
|
160
145
|
|
161
146
|
# Link two customer records together
|
162
147
|
#
|
@@ -177,16 +162,13 @@ module AvaTax
|
|
177
162
|
# ### Security Policies
|
178
163
|
#
|
179
164
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
180
|
-
# * This API depends on the following active services
|
165
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
181
166
|
# @param companyId [Integer] The unique ID number of the company defining customers.
|
182
167
|
# @param code [String] The code of the bill-to customer to link.
|
183
168
|
# @param model [Object] A list of information about ship-to customers to link to this bill-to customer.
|
184
169
|
# @return [Object]
|
185
|
-
def link_ship_to_customers_to_bill_customer(companyId, code, model)
|
186
|
-
path
|
187
|
-
post(path, model)
|
188
|
-
end
|
189
|
-
|
170
|
+
def link_ship_to_customers_to_bill_customer(companyId, code, model) path = "/api/v2/companies/#{companyId}/customers/billto/#{code}/shipto/link"
|
171
|
+
post(path, model) end
|
190
172
|
|
191
173
|
# Retrieve a customer's attributes
|
192
174
|
#
|
@@ -201,23 +183,20 @@ module AvaTax
|
|
201
183
|
# identify any certificates linked to this customer object. If any certificate applies to the transaction,
|
202
184
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
203
185
|
#
|
204
|
-
#
|
205
|
-
# Companies that do not have this storage system set up will
|
206
|
-
# certificate related APIs. To check if this
|
207
|
-
# storage for this company, call `RequestCertificateSetup`.
|
186
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
187
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
188
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
189
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
208
190
|
#
|
209
191
|
# ### Security Policies
|
210
192
|
#
|
211
193
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
212
|
-
# * This API depends on the following active services
|
194
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
213
195
|
# @param companyId [Integer] The unique ID number of the company that recorded the provided customer
|
214
196
|
# @param customerCode [String] The unique code representing the current customer
|
215
197
|
# @return [FetchResult]
|
216
|
-
def list_attributes_for_customer(companyId, customerCode)
|
217
|
-
path
|
218
|
-
get(path)
|
219
|
-
end
|
220
|
-
|
198
|
+
def list_attributes_for_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
|
199
|
+
get(path) end
|
221
200
|
|
222
201
|
# List certificates linked to a customer
|
223
202
|
#
|
@@ -229,15 +208,15 @@ module AvaTax
|
|
229
208
|
# identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
|
230
209
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
231
210
|
#
|
232
|
-
#
|
233
|
-
# Companies that do not have this storage system set up will
|
234
|
-
# certificate related APIs. To check if this
|
235
|
-
# storage for this company, call `RequestCertificateSetup`.
|
211
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
212
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
213
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
214
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
236
215
|
#
|
237
216
|
# ### Security Policies
|
238
217
|
#
|
239
218
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
240
|
-
# * This API depends on the following active services
|
219
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
241
220
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
242
221
|
# @param customerCode [String] The unique code representing this customer
|
243
222
|
# @param include [String] OPTIONAL: A comma separated list of special fetch options. You can specify one or more of the following: * customers - Retrieves the list of customers linked to the certificate. * po_numbers - Retrieves all PO numbers tied to the certificate. * attributes - Retrieves all attributes applied to the certificate.
|
@@ -246,11 +225,8 @@ module AvaTax
|
|
246
225
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
247
226
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
248
227
|
# @return [FetchResult]
|
249
|
-
def list_certificates_for_customer(companyId, customerCode, options={})
|
250
|
-
path
|
251
|
-
get(path, options)
|
252
|
-
end
|
253
|
-
|
228
|
+
def list_certificates_for_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates"
|
229
|
+
get(path, options) end
|
254
230
|
|
255
231
|
# List valid certificates for a location
|
256
232
|
#
|
@@ -265,25 +241,22 @@ module AvaTax
|
|
265
241
|
# a CertExpress invitation link so that the customer can upload proof of their exemption certificate. Please
|
266
242
|
# see the `CreateCertExpressInvitation` API to create an invitation link for this customer.
|
267
243
|
#
|
268
|
-
#
|
269
|
-
# Companies that do not have this storage system set up will
|
270
|
-
# certificate related APIs. To check if this
|
271
|
-
# storage for this company, call `RequestCertificateSetup`.
|
244
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
245
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
246
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
247
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
272
248
|
#
|
273
249
|
# ### Security Policies
|
274
250
|
#
|
275
251
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
276
|
-
# * This API depends on the following active services
|
252
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
277
253
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
278
254
|
# @param customerCode [String] The unique code representing this customer
|
279
255
|
# @param country [String] Search for certificates matching this country. Uses the ISO 3166 two character country code.
|
280
256
|
# @param region [String] Search for certificates matching this region. Uses the ISO 3166 two or three character state, region, or province code.
|
281
257
|
# @return [Object]
|
282
|
-
def list_valid_certificates_for_customer(companyId, customerCode, country, region)
|
283
|
-
path
|
284
|
-
get(path)
|
285
|
-
end
|
286
|
-
|
258
|
+
def list_valid_certificates_for_customer(companyId, customerCode, country, region) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/#{country}/#{region}"
|
259
|
+
get(path) end
|
287
260
|
|
288
261
|
# List all customers for this company
|
289
262
|
#
|
@@ -300,15 +273,15 @@ module AvaTax
|
|
300
273
|
# * Certificates - Fetch a list of certificates linked to this customer.
|
301
274
|
# * attributes - Retrieves all attributes applied to the customer.
|
302
275
|
#
|
303
|
-
#
|
304
|
-
# Companies that do not have this storage system set up will
|
305
|
-
# certificate related APIs. To check if this
|
306
|
-
# storage for this company, call `RequestCertificateSetup`.
|
276
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
277
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
278
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
279
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
307
280
|
#
|
308
281
|
# ### Security Policies
|
309
282
|
#
|
310
283
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
311
|
-
# * This API depends on the following active services
|
284
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
312
285
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
313
286
|
# @param include [String] OPTIONAL - You can specify the value `certificates` to fetch information about certificates linked to the customer.
|
314
287
|
# @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:* shipTos
|
@@ -316,11 +289,8 @@ module AvaTax
|
|
316
289
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
317
290
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
318
291
|
# @return [FetchResult]
|
319
|
-
def query_customers(companyId, options={})
|
320
|
-
path
|
321
|
-
get(path, options)
|
322
|
-
end
|
323
|
-
|
292
|
+
def query_customers(companyId, options={}) path = "/api/v2/companies/#{companyId}/customers"
|
293
|
+
get(path, options) end
|
324
294
|
|
325
295
|
# Unlink attributes from a customer
|
326
296
|
#
|
@@ -335,24 +305,21 @@ module AvaTax
|
|
335
305
|
# identify any certificates linked to this customer object. If any certificate applies to the transaction,
|
336
306
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
337
307
|
#
|
338
|
-
#
|
339
|
-
# Companies that do not have this storage system set up will
|
340
|
-
# certificate related APIs. To check if this
|
341
|
-
# storage for this company, call `RequestCertificateSetup`.
|
308
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
309
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
310
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
311
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
342
312
|
#
|
343
313
|
# ### Security Policies
|
344
314
|
#
|
345
315
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
346
|
-
# * This API depends on the following active services
|
316
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
347
317
|
# @param companyId [Integer] The unique ID number of the company that recorded the customer
|
348
318
|
# @param customerCode [String] The unique code representing the current customer
|
349
319
|
# @param model [CustomerAttributeModel[]] The list of attributes to unlink from the customer.
|
350
320
|
# @return [FetchResult]
|
351
|
-
def unlink_attributes_from_customer(companyId, customerCode, model)
|
352
|
-
path
|
353
|
-
put(path, model)
|
354
|
-
end
|
355
|
-
|
321
|
+
def unlink_attributes_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
|
322
|
+
put(path, model) end
|
356
323
|
|
357
324
|
# Unlink certificates from a customer
|
358
325
|
#
|
@@ -364,24 +331,21 @@ module AvaTax
|
|
364
331
|
# identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
|
365
332
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
366
333
|
#
|
367
|
-
#
|
368
|
-
# Companies that do not have this storage system set up will
|
369
|
-
# certificate related APIs. To check if this
|
370
|
-
# storage for this company, call `RequestCertificateSetup`.
|
334
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
335
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
336
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
337
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
371
338
|
#
|
372
339
|
# ### Security Policies
|
373
340
|
#
|
374
341
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
375
|
-
# * This API depends on the following active services
|
342
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
376
343
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
377
344
|
# @param customerCode [String] The unique code representing this customer
|
378
345
|
# @param model [Object] The list of certificates to link to this customer
|
379
346
|
# @return [FetchResult]
|
380
|
-
def unlink_certificates_from_customer(companyId, customerCode, model)
|
381
|
-
path
|
382
|
-
post(path, model)
|
383
|
-
end
|
384
|
-
|
347
|
+
def unlink_certificates_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/unlink"
|
348
|
+
post(path, model) end
|
385
349
|
|
386
350
|
# Update a single customer
|
387
351
|
#
|
@@ -393,24 +357,21 @@ module AvaTax
|
|
393
357
|
# identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
|
394
358
|
# AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
|
395
359
|
#
|
396
|
-
#
|
397
|
-
# Companies that do not have this storage system set up will
|
398
|
-
# certificate related APIs. To check if this
|
399
|
-
# storage for this company, call `RequestCertificateSetup`.
|
360
|
+
# Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
|
361
|
+
# Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
|
362
|
+
# certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
|
363
|
+
# certificate storage for this company, call `RequestCertificateSetup`.
|
400
364
|
#
|
401
365
|
# ### Security Policies
|
402
366
|
#
|
403
367
|
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
404
|
-
# * This API depends on the following active services
|
368
|
+
# * This API depends on the following active services:*Required* (all): AvaTaxPro.
|
405
369
|
# @param companyId [Integer] The unique ID number of the company that recorded this customer
|
406
370
|
# @param customerCode [String] The unique code representing this customer
|
407
371
|
# @param model [Object] The new customer model that will replace the existing record at this URL
|
408
372
|
# @return [Object]
|
409
|
-
def update_customer(companyId, customerCode, model)
|
410
|
-
path
|
411
|
-
put(path, model)
|
412
|
-
end
|
413
|
-
|
373
|
+
def update_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
|
374
|
+
put(path, model) end
|
414
375
|
end
|
415
376
|
end
|
416
377
|
end
|