avatax 19.7.0 → 19.11.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 84e5af57881983a07a47bc4edf4f80952fc03655d04ffbdda0fd9ac1123d6bee
4
- data.tar.gz: 477b963fa3fdba9b2707e082eb4884d584ec651e791a877faa69565388eb0af1
2
+ SHA1:
3
+ metadata.gz: d3b51fb3a905c0468185ca946690ee5d2502136e
4
+ data.tar.gz: ccbe6028a9ccc9b3bf7c12ab5ee8fd050d99f49a
5
5
  SHA512:
6
- metadata.gz: f2881ca629ea60a47bef96885a1e87487bf2b79a6dd98c2a60b7f4d7bd83c6ccbd0501dfc11e9266e15c6c818440bc65ed62a9c30f3f9241b2c4aef3c48fd84a
7
- data.tar.gz: a2506d940ef9f8be009335cbcd83907815631cf1bb4540d2e1a3cc8ad1af6f2ee4c98f3bfc6a15393023e0e0d75c39952cb64599e30190b762a844dde1a746cb
6
+ metadata.gz: dacf3d4f21c6cb32c03ac34b468a4b1afb3c61741cf17d9a37c40ab64bdcba686715e283e7e71fa1cd82a6dc1ade1852c78e26601cadf816e7a1547eb5d8ba99
7
+ data.tar.gz: 413990337405907b9c65577f75f4d84d82abea5558df6ddc5ffb990180fb99beeed258eb716dcecf4f85fa3083639f9beb810981bf6fcd9fc13f081464a085c0
@@ -1,7 +1,19 @@
1
1
  language: ruby
2
2
  sudo: false
3
3
  rvm:
4
- - 2.4
5
- - 2.3
6
- - 2.2
7
- - 2.1
4
+ - 2.4
5
+ - 2.3
6
+ - 2.2
7
+ - 2.1
8
+ jobs:
9
+ include:
10
+ - rvm: 2.4
11
+ stage: "Deploy"
12
+ deploy:
13
+ provider: rubygems
14
+ api_key:
15
+ secure: VnQH+Ffony43CPwrJ9vBVQ+/4aHFNvlGbXSKZL9Elm2P/FKwgjycwNZ+QtPmKbA9bVUtUkPjK3phJYeL//cTv+asrBBWM/ptBCBWVYB+ICeDXCfhB7id2hcSIWy9xQ4/KdCJxgeD+gwF1Ce95XK7epZLkhcr1OpgNO+cqnA1KlZ7fkZDtFEkXtY8H40oZZ6d5G7S3s+yBUEGHoiAiD2Gj/6RfWqT8iKykT4TzBtQSzyUDVel5/dt3MG2o4kUMcF3IS+HU2fOv61mCBpCP8Y6uDSe14TWPtYrsyR+Y5E5g7OetOq3/JxMacxG7fSo6KYtkL6qYqULgc3YtUoAPyULg4nWHO1aixdBbEiD7WNlBiSeRkUgRxunNHNFwnasW1g1zrkYdcqwkROjPfXChwmFK5ZFho6PpuWpEijttNjbmjwC/IWb/7X04MPwm2tzs5pdVVBsm+Hb1dstxWsm5nLZ+xzFDDfcKqM9ktRUeeRF9SlpY/1eNdedf76IVMcZRRRPvRIJwW/zU7MPGfBqJv1AM74150X4tyGHA+OCV7aUAh9NeJegYhHfi8gFAItjQWo59ZsWXhXjwxRJwKOKTreEmmDlFrdQ7OP6uEBLy+d+4rQgxmQsB/+8TDKV0TH9bhITAqYmue9uu0Fb0mJkSaUMJ4rGl0zGM+58nIwQ2YmoeoY=
16
+ gem: avatax
17
+ on:
18
+ tags: true
19
+ branch: master
@@ -11,8 +11,8 @@ module AvaTax
11
11
  # ### Security Policies
12
12
  #
13
13
  # * This API requires the user role Compliance Root User.
14
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
15
- # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request host address whitelisting for [Returns] for your servers.
14
+ # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
15
+ # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
16
16
  # @param model [AvaFileFormModel[]] The AvaFileForm you wish to create.
17
17
  # @return [AvaFileFormModel[]]
18
18
  def create_ava_file_forms(model)
@@ -28,8 +28,8 @@ module AvaTax
28
28
  # ### Security Policies
29
29
  #
30
30
  # * This API requires one of the following user roles: Compliance Root User, ComplianceUser, FirmAdmin.
31
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
32
- # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request host address whitelisting for [Returns] for your servers.
31
+ # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
32
+ # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
33
33
  # @param id [Integer] The ID of the AvaFileForm you wish to delete.
34
34
  # @return [ErrorDetail[]]
35
35
  def delete_ava_file_form(id)
@@ -45,8 +45,8 @@ module AvaTax
45
45
  # ### Security Policies
46
46
  #
47
47
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, CompanyAdmin, CompanyUser, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, FirmAdmin, FirmUser, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin.
48
- # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request host address whitelisting for [Returns] for your servers.
49
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
48
+ # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
49
+ # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
50
50
  # @param id [Integer] The primary key of this AvaFileForm
51
51
  # @return [Object]
52
52
  def get_ava_file_form(id)
@@ -63,10 +63,9 @@ module AvaTax
63
63
  # ### Security Policies
64
64
  #
65
65
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, CompanyAdmin, CompanyUser, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, FirmAdmin, FirmUser, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin.
66
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
67
- # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request host address whitelisting for [Returns] for your servers.
66
+ # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
67
+ # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
68
68
  # @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:* outletTypeId
69
- # @param include [String] A comma separated list of additional data to retrieve.
70
69
  # @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.
71
70
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
72
71
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
@@ -85,8 +84,8 @@ module AvaTax
85
84
  # ### Security Policies
86
85
  #
87
86
  # * This API requires the user role Compliance Root User.
88
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.
89
- # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request host address whitelisting for [Returns] for your servers.
87
+ # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
88
+ # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
90
89
  # @param id [Integer] The ID of the AvaFileForm you wish to update
91
90
  # @param model [Object] The AvaFileForm model you wish to update.
92
91
  # @return [Object]
@@ -20,6 +20,11 @@ module AvaTax
20
20
  # required, please use the
21
21
  # [CreateTransaction API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Transactions/CreateTransaction/).
22
22
  #
23
+ # The maximum content length of the request body is limited to 28.6 MB. If this limit
24
+ # is exceeded, a 404 Not Found status will be returned (possibly with a CORS error if
25
+ # the API is called from a browser). In this situation, please split the request into
26
+ # smaller batches.
27
+ #
23
28
  # ### Security Policies
24
29
  #
25
30
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, CompanyAdmin, CSPTester, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin.
@@ -63,7 +63,7 @@ module AvaTax
63
63
  # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
64
64
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
65
65
  # @param id [Integer] The unique ID number of this certificate
66
- # @return [Object]
66
+ # @return [ErrorDetail[]]
67
67
  def delete_certificate(companyId, id)
68
68
  path = "/api/v2/companies/#{companyId}/certificates/#{id}"
69
69
  delete(path)
@@ -308,7 +308,7 @@ module AvaTax
308
308
  # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
309
309
  # @param companyId [Integer] The ID number of the company to search
310
310
  # @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.
311
- # @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:* exemptionNumber, status, pdf, pages
311
+ # @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:* exemptionNumber, status, ecmsId, ecmsStatus, pdf, pages
312
312
  # @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.
313
313
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
314
314
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
@@ -100,6 +100,8 @@ module AvaTax
100
100
  # A 'company' represents a single corporation or individual that is registered to handle transactional taxes.
101
101
  # You may attach nested data objects such as contacts, locations, and nexus with this CREATE call, and those objects will be created with the company.
102
102
  #
103
+ # NOTE: Please do not use these blacklisted characters in company name and code: ';', '\', '|'.
104
+ #
103
105
  # ### Security Policies
104
106
  #
105
107
  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
@@ -331,7 +333,7 @@ module AvaTax
331
333
  #
332
334
  # * 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.
333
335
  # @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.
334
- # @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:* contacts, items, locations, nexus, settings, taxCodes, taxRules, upcs, nonReportingChildCompanies, exemptCerts
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
335
337
  # @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.
336
338
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
337
339
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
@@ -381,6 +383,8 @@ module AvaTax
381
383
  #
382
384
  # To set a field's value to `null`, you may either set its value to `null` or omit that field from the object you PUT.
383
385
  #
386
+ # NOTE: Please do not use these blacklisted characters in company name and code: ';', '\', '|'.
387
+ #
384
388
  # ### Security Policies
385
389
  #
386
390
  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
@@ -3,112 +3,6 @@ module AvaTax
3
3
  module Compliance
4
4
 
5
5
 
6
- # Retrieve a single tax rate.
7
- #
8
- # This API is available by invitation only.
9
- # @param id [Integer] The ID of the tax rate to retrieve.
10
- # @return [Object]
11
- def get_tax_rate(id)
12
- path = "/api/v2/compliance/taxrates/#{id}"
13
- get(path)
14
- end
15
-
16
-
17
- # Retrieve a single tax region.
18
- #
19
- # This API is available by invitation only.
20
- # @param id [Integer] The ID of the tax region to retrieve.
21
- # @return [Object]
22
- def get_tax_region(id)
23
- path = "/api/v2/compliance/taxregions/#{id}"
24
- get(path)
25
- end
26
-
27
-
28
- # Retrieve jurisdictions and rates in a combined format.
29
- #
30
- # This API is available by invitation only.
31
- # @param effectiveDate [DateTime] Used to limit the jurisdictions returned.
32
- # @param endDate [DateTime] Used to limit the jurisdictions returned.
33
- # @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/).
34
- # @param include [String] A comma separated list of objects to fetch underneath this jurisdiction.
35
- # @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.
36
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
37
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
38
- # @return [Object]
39
- def query_jurisdiction_rates(options={})
40
- path = "/api/v2/compliance/jurisdictionrates"
41
- get(path, options)
42
- end
43
-
44
-
45
- # Retrieve all unique jurisdictions.
46
- #
47
- # This API is available by invitation only.
48
- #
49
- # You may specify one or more of the following values in the '$include' parameter to fetch additional nested data, using commas to separate multiple values:
50
- #
51
- # * TaxRates
52
- # @param country [String] The two-character ISO-3166 code for the country.
53
- # @param region [String] The two or three character region code for the region.
54
- # @param effectiveDate [DateTime] Used to limit the jurisdictions or rates returned.
55
- # @param endDate [DateTime] Used to limit the jurisdictions or rates returned.
56
- # @param aggregationOption [String] Aggregation method used if rates are returned using the '$include' parameter. (See StackAggregationOption::* for a list of allowable values)
57
- # @param include [String] A comma separated list of objects to fetch underneath this tax rate.
58
- # @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.
59
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
60
- # @return [Object]
61
- def query_jurisdictions(country, region, options={})
62
- path = "/api/v2/compliance/jurisdictions/#{country}/#{region}"
63
- get(path, options)
64
- end
65
-
66
-
67
- # Retrieve all tax rates.
68
- #
69
- # This API is available by invitation only.
70
- # @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/).
71
- # @param include [String] A comma separated list of objects to fetch underneath this tax rate.
72
- # @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.
73
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
74
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
75
- # @return [Object]
76
- def query_tax_rates(options={})
77
- path = "/api/v2/compliance/taxrates"
78
- get(path, options)
79
- end
80
-
81
-
82
- # Retrieve all tax region jurisdictions.
83
- #
84
- # This API is available by invitation only.
85
- # @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/).
86
- # @param include [String] A comma separated list of objects to fetch underneath this tax region jurisdiction.
87
- # @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.
88
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
89
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
90
- # @return [Object]
91
- def query_tax_region_jurisdictions(options={})
92
- path = "/api/v2/compliance/taxregionjurisdictions"
93
- get(path, options)
94
- end
95
-
96
-
97
- # Retrieve all tax regions.
98
- #
99
- # This API is available by invitation only.
100
- # @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/).
101
- # @param include [String] A comma separated list of objects to fetch underneath this tax region.
102
- # @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.
103
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
104
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
105
- # @return [Object]
106
- def query_tax_regions(options={})
107
- path = "/api/v2/compliance/taxregions"
108
- get(path, options)
109
- end
110
-
111
-
112
6
  # API to modify the reference fields at the document and the line level.
113
7
  #
114
8
  #
@@ -55,7 +55,7 @@ module AvaTax
55
55
  # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
56
56
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
57
57
  # @param customerCode [String] The unique code representing this customer
58
- # @return [Object]
58
+ # @return [ErrorDetail[]]
59
59
  def delete_customer(companyId, customerCode)
60
60
  path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
61
61
  delete(path)
@@ -76,6 +76,7 @@ module AvaTax
76
76
  #
77
77
  # * Certificates - Fetch a list of certificates linked to this customer.
78
78
  # * CustomFields - Fetch a list of custom fields associated to this customer.
79
+ # * attributes - Retrieves all attributes applied to the customer.
79
80
  #
80
81
  # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
81
82
  # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
@@ -96,6 +97,38 @@ module AvaTax
96
97
  end
97
98
 
98
99
 
100
+ # Link attributes to a customer
101
+ #
102
+ # Link one or many attributes to a customer.
103
+ #
104
+ # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
105
+ # customer at any time. The full list of defined attributes may be found using `QueryCompanyCustomerAttributes` API.
106
+ #
107
+ # A customer object defines information about a person or business that purchases products from your
108
+ # company. When you create a tax transaction in AvaTax, you can use the `customerCode` from this
109
+ # record in your `CreateTransaction` API call. AvaTax will search for this `customerCode` value and
110
+ # identify any certificates linked to this customer object. If any certificate applies to the transaction,
111
+ # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
112
+ #
113
+ # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
114
+ # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
115
+ # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
116
+ # storage for this company, call `RequestCertificateSetup`.
117
+ #
118
+ # ### Security Policies
119
+ #
120
+ # * 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<br />*Required* (all): AvaTaxPro.
122
+ # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
123
+ # @param customerCode [String] The unique code representing the current customer
124
+ # @param model [CustomerAttributeModel[]] The list of attributes to link to the customer.
125
+ # @return [FetchResult]
126
+ def link_attributes_to_customer(companyId, customerCode, model)
127
+ path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
128
+ put(path, model)
129
+ end
130
+
131
+
99
132
  # Link certificates to a customer
100
133
  #
101
134
  # Link one or more certificates to a customer.
@@ -155,6 +188,37 @@ module AvaTax
155
188
  end
156
189
 
157
190
 
191
+ # Retrieve a customer's attributes
192
+ #
193
+ # Retrieve the attributes linked to the customer identified by this URL.
194
+ #
195
+ # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
196
+ # customer at any time. The full list of defined attributes may be found using `QueryCompanyCustomerAttributes` API.
197
+ #
198
+ # A customer object defines information about a person or business that purchases products from your
199
+ # company. When you create a tax transaction in AvaTax, you can use the `customerCode` from this
200
+ # record in your `CreateTransaction` API call. AvaTax will search for this `customerCode` value and
201
+ # identify any certificates linked to this customer object. If any certificate applies to the transaction,
202
+ # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
203
+ #
204
+ # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
205
+ # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
206
+ # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
207
+ # storage for this company, call `RequestCertificateSetup`.
208
+ #
209
+ # ### Security Policies
210
+ #
211
+ # * 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<br />*Required* (all): AvaTaxPro.
213
+ # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
214
+ # @param customerCode [String] The unique code representing the current customer
215
+ # @return [FetchResult]
216
+ def list_attributes_for_customer(companyId, customerCode)
217
+ path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
218
+ get(path)
219
+ end
220
+
221
+
158
222
  # List certificates linked to a customer
159
223
  #
160
224
  # List all certificates linked to a customer.
@@ -177,7 +241,7 @@ module AvaTax
177
241
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
178
242
  # @param customerCode [String] The unique code representing this customer
179
243
  # @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.
180
- # @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:* exemptionNumber, status, pdf, pages
244
+ # @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:* exemptionNumber, status, ecmsId, ecmsStatus, pdf, pages
181
245
  # @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.
182
246
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
183
247
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
@@ -188,7 +252,7 @@ module AvaTax
188
252
  end
189
253
 
190
254
 
191
- # List active certificates for a location
255
+ # List valid certificates for a location
192
256
  #
193
257
  # List valid certificates linked to a customer in a particular country and region.
194
258
  #
@@ -234,6 +298,7 @@ module AvaTax
234
298
  # You can use the `$include` parameter to fetch the following additional objects for expansion:
235
299
  #
236
300
  # * Certificates - Fetch a list of certificates linked to this customer.
301
+ # * attributes - Retrieves all attributes applied to the customer.
237
302
  #
238
303
  # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
239
304
  # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
@@ -257,6 +322,38 @@ module AvaTax
257
322
  end
258
323
 
259
324
 
325
+ # Unlink attributes from a customer
326
+ #
327
+ # Unlink one or many attributes from a customer.
328
+ #
329
+ # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
330
+ # customer at any time. The full list of defined attributes may be found using `QueryCompanyCustomerAttributes` API.
331
+ #
332
+ # A customer object defines information about a person or business that purchases products from your
333
+ # company. When you create a tax transaction in AvaTax, you can use the `customerCode` from this
334
+ # record in your `CreateTransaction` API call. AvaTax will search for this `customerCode` value and
335
+ # identify any certificates linked to this customer object. If any certificate applies to the transaction,
336
+ # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
337
+ #
338
+ # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
339
+ # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
340
+ # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
341
+ # storage for this company, call `RequestCertificateSetup`.
342
+ #
343
+ # ### Security Policies
344
+ #
345
+ # * 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<br />*Required* (all): AvaTaxPro.
347
+ # @param companyId [Integer] The unique ID number of the company that recorded the customer
348
+ # @param customerCode [String] The unique code representing the current customer
349
+ # @param model [CustomerAttributeModel[]] The list of attributes to unlink from the customer.
350
+ # @return [FetchResult]
351
+ def unlink_attributes_from_customer(companyId, customerCode, model)
352
+ path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
353
+ put(path, model)
354
+ end
355
+
356
+
260
357
  # Unlink certificates from a customer
261
358
  #
262
359
  # Remove one or more certificates to a customer.
@@ -307,6 +307,8 @@ module AvaTax
307
307
  #
308
308
  # This API allows you to examine all Avalara-supported jurisdictions. You can filter your search by supplying
309
309
  # SQL-like query for fetching only the ones you concerned about. For example: effectiveDate &gt; '2016-01-01'
310
+ #
311
+ # The rate, salesRate, and useRate fields are not available on the JurisdictionModels returned by this API.
310
312
  # @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:* rate, salesRate, signatureCode, useRate
311
313
  # @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.
312
314
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
@@ -0,0 +1,50 @@
1
+ module AvaTax
2
+ class Client
3
+ module ErrorTransactions
4
+
5
+
6
+ # Delete a batch of error transactions
7
+ #
8
+ # Delete a batch of error transactions attached to a company.
9
+ #
10
+ # If any of the provided error transaction isn't found then it'll be treated as a success.
11
+ #
12
+ # ### Security Policies
13
+ #
14
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
15
+ # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
16
+ # @param model [Object] The request that contains error transactions to be deleted
17
+ # @return [Object]
18
+ def delete_error_transactions(model)
19
+ path = "/api/v2/errortransactions"
20
+ delete(path, model)
21
+ end
22
+
23
+
24
+ # Retrieve list of error transactions
25
+ #
26
+ # List error transactions attached to this company. Results are dependent on `$filter` if provided.
27
+ #
28
+ # This endpoint is limited to returning 250 error transactions at a time maximum.
29
+ #
30
+ # 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/) .
31
+ # Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
32
+ #
33
+ # ### Security Policies
34
+ #
35
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
36
+ # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
37
+ # @param companyCode [String] The company code to filter on. This query parameter is required.
38
+ # @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:* companyId, avataxErrorJson, avataxCreateTransactionJson
39
+ # @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.
40
+ # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
41
+ # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
42
+ # @return [FetchResult]
43
+ def list_error_transactions(options={})
44
+ path = "/api/v2/errortransactions"
45
+ get(path, options)
46
+ end
47
+
48
+ end
49
+ end
50
+ end