avatax 20.5.0 → 20.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) 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 +83 -83
  5. data/lib/avatax/client/addresses.rb +21 -21
  6. data/lib/avatax/client/advancedrules.rb +51 -41
  7. data/lib/avatax/client/avafileforms.rb +41 -41
  8. data/lib/avatax/client/batches.rb +101 -48
  9. data/lib/avatax/client/certexpressinvites.rb +39 -39
  10. data/lib/avatax/client/certificates.rb +163 -163
  11. data/lib/avatax/client/companies.rb +226 -121
  12. data/lib/avatax/client/compliance.rb +13 -13
  13. data/lib/avatax/client/contacts.rb +48 -48
  14. data/lib/avatax/client/customers.rb +145 -145
  15. data/lib/avatax/client/datasources.rb +48 -48
  16. data/lib/avatax/client/definitions.rb +422 -420
  17. data/lib/avatax/client/distancethresholds.rb +48 -48
  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 +28 -13
  22. data/lib/avatax/client/filings.rb +25 -14
  23. data/lib/avatax/client/firmclientlinkages.rb +69 -69
  24. data/lib/avatax/client/free.rb +27 -27
  25. data/lib/avatax/client/fundingrequests.rb +20 -20
  26. data/lib/avatax/client/items.rb +139 -139
  27. data/lib/avatax/client/jurisdictionoverrides.rb +48 -48
  28. data/lib/avatax/client/locations.rb +168 -57
  29. data/lib/avatax/client/multidocument.rb +98 -78
  30. data/lib/avatax/client/nexus.rb +104 -104
  31. data/lib/avatax/client/notices.rb +47 -139
  32. data/lib/avatax/client/notifications.rb +27 -27
  33. data/lib/avatax/client/provisioning.rb +20 -20
  34. data/lib/avatax/client/registrar.rb +76 -76
  35. data/lib/avatax/client/reports.rb +34 -34
  36. data/lib/avatax/client/settings.rb +48 -48
  37. data/lib/avatax/client/subscriptions.rb +27 -27
  38. data/lib/avatax/client/taxcodes.rb +48 -48
  39. data/lib/avatax/client/taxcontent.rb +27 -27
  40. data/lib/avatax/client/taxprofiles.rb +14 -10
  41. data/lib/avatax/client/taxrules.rb +48 -48
  42. data/lib/avatax/client/transactions.rb +185 -155
  43. data/lib/avatax/client/upcs.rb +48 -48
  44. data/lib/avatax/client/users.rb +62 -62
  45. data/lib/avatax/client/utilities.rb +27 -27
  46. data/lib/avatax/connection.rb +2 -2
  47. data/lib/avatax/version.rb +1 -1
  48. metadata +3 -16
@@ -1,16 +1,16 @@
1
- module AvaTax
2
- class Client
3
- module Compliance
4
-
5
-
6
- # API to modify the reference fields at the document and the line level.
7
- #
8
- #
1
+ module AvaTax
2
+ class Client
3
+ module Compliance
4
+
5
+
6
+ # API to modify the reference fields at the document and the line level.
7
+ #
8
+ #
9
9
  # @param companyId [Integer]
10
10
  # @param model [TransactionReferenceFieldModel[]]
11
- # @return [FetchResult]
12
- def tag_transaction(companyId, model) path = "/api/v2/companies/#{companyId}/transactions/tag"
13
- put(path, model) end
14
- end
15
- end
11
+ # @return [FetchResult]
12
+ def tag_transaction(companyId, model) path = "/api/v2/companies/#{companyId}/transactions/tag"
13
+ put(path, model) end
14
+ end
15
+ end
16
16
  end
@@ -1,53 +1,53 @@
1
- module AvaTax
2
- class Client
3
- module Contacts
4
-
5
-
6
- # Create a new contact
7
- #
1
+ module AvaTax
2
+ class Client
3
+ module Contacts
4
+
5
+
6
+ # Create a new contact
7
+ #
8
8
  # Create one or more new contact objects.
9
9
  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
10
10
  # a tax collecting and filing entity.
11
11
  #
12
12
  # ### Security Policies
13
13
  #
14
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
14
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
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
- # @return [ContactModel[]]
18
- def create_contacts(companyId, model) path = "/api/v2/companies/#{companyId}/contacts"
19
- post(path, model) end
20
-
21
- # Delete a single contact
22
- #
17
+ # @return [ContactModel[]]
18
+ def create_contacts(companyId, model) path = "/api/v2/companies/#{companyId}/contacts"
19
+ post(path, model) end
20
+
21
+ # Delete a single contact
22
+ #
23
23
  # Mark the existing contact object at this URL as deleted.
24
24
  #
25
25
  # ### Security Policies
26
26
  #
27
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
27
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
28
28
  # @param companyId [Integer] The ID of the company that owns this contact.
29
29
  # @param id [Integer] The ID of the contact you wish to delete.
30
- # @return [ErrorDetail[]]
31
- def delete_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
32
- delete(path) end
33
-
34
- # Retrieve a single contact
35
- #
30
+ # @return [ErrorDetail[]]
31
+ def delete_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
32
+ delete(path) end
33
+
34
+ # Retrieve a single contact
35
+ #
36
36
  # Get the contact object identified by this URL.
37
37
  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
38
38
  # a tax collecting and filing entity.
39
39
  #
40
40
  # ### Security Policies
41
41
  #
42
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
42
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
43
43
  # @param companyId [Integer] The ID of the company for this contact
44
44
  # @param id [Integer] The primary key of this contact
45
- # @return [Object]
46
- def get_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
47
- get(path) end
48
-
49
- # Retrieve contacts for this company
50
- #
45
+ # @return [Object]
46
+ def get_contact(companyId, id) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
47
+ get(path) end
48
+
49
+ # Retrieve contacts for this company
50
+ #
51
51
  # List all contact objects assigned to this company.
52
52
  #
53
53
  # 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/) .
@@ -55,18 +55,18 @@ module AvaTax
55
55
  #
56
56
  # ### Security Policies
57
57
  #
58
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
58
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
59
59
  # @param companyId [Integer] The ID of the company that owns these contacts
60
60
  # @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/).
61
61
  # @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.
62
62
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
63
63
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
64
- # @return [FetchResult]
65
- def list_contacts_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/contacts"
66
- get(path, options) end
67
-
68
- # Retrieve all contacts
69
- #
64
+ # @return [FetchResult]
65
+ def list_contacts_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/contacts"
66
+ get(path, options) end
67
+
68
+ # Retrieve all contacts
69
+ #
70
70
  # Get multiple contact objects across all companies.
71
71
  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
72
72
  # a tax collecting and filing entity.
@@ -76,17 +76,17 @@ module AvaTax
76
76
  #
77
77
  # ### Security Policies
78
78
  #
79
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
79
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
80
80
  # @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/).
81
81
  # @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.
82
82
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
83
83
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
84
- # @return [FetchResult]
85
- def query_contacts(options={}) path = "/api/v2/contacts"
86
- get(path, options) end
87
-
88
- # Update a single contact
89
- #
84
+ # @return [FetchResult]
85
+ def query_contacts(options={}) path = "/api/v2/contacts"
86
+ get(path, options) end
87
+
88
+ # Update a single contact
89
+ #
90
90
  # Replace the existing contact object at this URL with an updated object.
91
91
  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
92
92
  # a tax collecting and filing entity.
@@ -95,13 +95,13 @@ module AvaTax
95
95
  #
96
96
  # ### Security Policies
97
97
  #
98
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
98
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
99
99
  # @param companyId [Integer] The ID of the company that this contact belongs to.
100
100
  # @param id [Integer] The ID of the contact you wish to update
101
101
  # @param model [Object] The contact you wish to update.
102
- # @return [Object]
103
- def update_contact(companyId, id, model) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
104
- put(path, model) end
105
- end
106
- end
102
+ # @return [Object]
103
+ def update_contact(companyId, id, model) path = "/api/v2/companies/#{companyId}/contacts/#{id}"
104
+ put(path, model) end
105
+ end
106
+ end
107
107
  end
@@ -1,10 +1,10 @@
1
- module AvaTax
2
- class Client
3
- module Customers
4
-
5
-
6
- # Create customers for this company
7
- #
1
+ module AvaTax
2
+ class Client
3
+ module Customers
4
+
5
+
6
+ # Create customers for this company
7
+ #
8
8
  # Create one or more customers for this company.
9
9
  #
10
10
  # A customer object defines information about a person or business that purchases products from your
@@ -16,23 +16,23 @@ 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
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
20
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
21
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
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<br />*Required* (all): AvaTaxPro.
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
- # @return [CustomerModel[]]
31
- def create_customers(companyId, model) path = "/api/v2/companies/#{companyId}/customers"
32
- post(path, model) end
33
-
34
- # Delete a customer record
35
- #
30
+ # @return [CustomerModel[]]
31
+ def create_customers(companyId, model) path = "/api/v2/companies/#{companyId}/customers"
32
+ post(path, model) end
33
+
34
+ # Delete a customer record
35
+ #
36
36
  # Deletes the customer object referenced by this URL.
37
37
  #
38
38
  # A customer object defines information about a person or business that purchases products from your
@@ -41,23 +41,23 @@ module AvaTax
41
41
  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
42
42
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
43
43
  #
44
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
45
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
46
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
47
- # 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`.
48
48
  #
49
49
  # ### Security Policies
50
50
  #
51
51
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
52
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
52
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
53
53
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
54
54
  # @param customerCode [String] The unique code representing this customer
55
- # @return [Object]
56
- def delete_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
57
- delete(path) end
58
-
59
- # Retrieve a single customer
60
- #
55
+ # @return [Object]
56
+ def delete_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
57
+ delete(path) end
58
+
59
+ # Retrieve a single customer
60
+ #
61
61
  # Retrieve the customer identified by this URL.
62
62
  #
63
63
  # A customer object defines information about a person or business that purchases products from your
@@ -72,24 +72,24 @@ module AvaTax
72
72
  # * CustomFields - Fetch a list of custom fields associated to this customer.
73
73
  # * attributes - Retrieves all attributes applied to the customer.
74
74
  #
75
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
76
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
77
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
78
- # 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`.
79
79
  #
80
80
  # ### Security Policies
81
81
  #
82
82
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
83
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
83
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
84
84
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
85
85
  # @param customerCode [String] The unique code representing this customer
86
86
  # @param include [String] Specify optional additional objects to include in this fetch request
87
- # @return [Object]
88
- def get_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
89
- get(path, options) end
90
-
91
- # Link attributes to a customer
92
- #
87
+ # @return [Object]
88
+ def get_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
89
+ get(path, options) end
90
+
91
+ # Link attributes to a customer
92
+ #
93
93
  # Link one or many attributes to a customer.
94
94
  #
95
95
  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -101,24 +101,24 @@ module AvaTax
101
101
  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
102
102
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
103
103
  #
104
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
105
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
106
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
107
- # 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`.
108
108
  #
109
109
  # ### Security Policies
110
110
  #
111
111
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
112
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
112
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
113
113
  # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
114
114
  # @param customerCode [String] The unique code representing the current customer
115
115
  # @param model [CustomerAttributeModel[]] The list of attributes to link to the customer.
116
- # @return [FetchResult]
117
- def link_attributes_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
118
- put(path, model) end
119
-
120
- # Link certificates to a customer
121
- #
116
+ # @return [FetchResult]
117
+ def link_attributes_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
118
+ put(path, model) end
119
+
120
+ # Link certificates to a customer
121
+ #
122
122
  # Link one or more certificates to a customer.
123
123
  #
124
124
  # A customer object defines information about a person or business that purchases products from your
@@ -127,24 +127,24 @@ module AvaTax
127
127
  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
128
128
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
129
129
  #
130
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
131
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
132
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
133
- # 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`.
134
134
  #
135
135
  # ### Security Policies
136
136
  #
137
137
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
138
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
138
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
139
139
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
140
140
  # @param customerCode [String] The unique code representing this customer
141
141
  # @param model [Object] The list of certificates to link to this customer
142
- # @return [FetchResult]
143
- def link_certificates_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/link"
144
- post(path, model) end
145
-
146
- # Link two customer records together
147
- #
142
+ # @return [FetchResult]
143
+ def link_certificates_to_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/link"
144
+ post(path, model) end
145
+
146
+ # Link two customer records together
147
+ #
148
148
  # Links a Ship-To customer record with a Bill-To customer record.
149
149
  #
150
150
  # Customer records represent businesses or individuals who can provide exemption certificates. Some customers
@@ -162,16 +162,16 @@ module AvaTax
162
162
  # ### Security Policies
163
163
  #
164
164
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
165
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
165
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
166
166
  # @param companyId [Integer] The unique ID number of the company defining customers.
167
167
  # @param code [String] The code of the bill-to customer to link.
168
168
  # @param model [Object] A list of information about ship-to customers to link to this bill-to customer.
169
- # @return [Object]
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
172
-
173
- # Retrieve a customer's attributes
174
- #
169
+ # @return [Object]
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
172
+
173
+ # Retrieve a customer's attributes
174
+ #
175
175
  # Retrieve the attributes linked to the customer identified by this URL.
176
176
  #
177
177
  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -183,23 +183,23 @@ module AvaTax
183
183
  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
184
184
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
185
185
  #
186
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
187
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
188
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
189
- # 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`.
190
190
  #
191
191
  # ### Security Policies
192
192
  #
193
193
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
194
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
194
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
195
195
  # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
196
196
  # @param customerCode [String] The unique code representing the current customer
197
- # @return [FetchResult]
198
- def list_attributes_for_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
199
- get(path) end
200
-
201
- # List certificates linked to a customer
202
- #
197
+ # @return [FetchResult]
198
+ def list_attributes_for_customer(companyId, customerCode) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
199
+ get(path) end
200
+
201
+ # List certificates linked to a customer
202
+ #
203
203
  # List all certificates linked to a customer.
204
204
  #
205
205
  # A customer object defines information about a person or business that purchases products from your
@@ -208,15 +208,15 @@ module AvaTax
208
208
  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
209
209
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
210
210
  #
211
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
212
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
213
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
214
- # 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`.
215
215
  #
216
216
  # ### Security Policies
217
217
  #
218
218
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
219
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
219
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
220
220
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
221
221
  # @param customerCode [String] The unique code representing this customer
222
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.
@@ -224,12 +224,12 @@ module AvaTax
224
224
  # @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.
225
225
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
226
226
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
227
- # @return [FetchResult]
228
- def list_certificates_for_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates"
229
- get(path, options) end
230
-
231
- # List valid certificates for a location
232
- #
227
+ # @return [FetchResult]
228
+ def list_certificates_for_customer(companyId, customerCode, options={}) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates"
229
+ get(path, options) end
230
+
231
+ # List valid certificates for a location
232
+ #
233
233
  # List valid certificates linked to a customer in a particular country and region.
234
234
  #
235
235
  # This API is intended to help identify whether a customer has already provided a certificate that
@@ -241,25 +241,25 @@ module AvaTax
241
241
  # a CertExpress invitation link so that the customer can upload proof of their exemption certificate. Please
242
242
  # see the `CreateCertExpressInvitation` API to create an invitation link for this customer.
243
243
  #
244
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
245
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
246
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
247
- # 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`.
248
248
  #
249
249
  # ### Security Policies
250
250
  #
251
251
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
252
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
252
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
253
253
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
254
254
  # @param customerCode [String] The unique code representing this customer
255
255
  # @param country [String] Search for certificates matching this country. Uses the ISO 3166 two character country code.
256
256
  # @param region [String] Search for certificates matching this region. Uses the ISO 3166 two or three character state, region, or province code.
257
- # @return [Object]
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
260
-
261
- # List all customers for this company
262
- #
257
+ # @return [Object]
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
260
+
261
+ # List all customers for this company
262
+ #
263
263
  # List all customers recorded by this company matching the specified criteria.
264
264
  #
265
265
  # A customer object defines information about a person or business that purchases products from your
@@ -273,27 +273,27 @@ module AvaTax
273
273
  # * Certificates - Fetch a list of certificates linked to this customer.
274
274
  # * attributes - Retrieves all attributes applied to the customer.
275
275
  #
276
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
277
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
278
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
279
- # 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`.
280
280
  #
281
281
  # ### Security Policies
282
282
  #
283
283
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
284
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
284
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
285
285
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
286
286
  # @param include [String] OPTIONAL - You can specify the value `certificates` to fetch information about certificates linked to the customer.
287
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
288
288
  # @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.
289
289
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
290
290
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
291
- # @return [FetchResult]
292
- def query_customers(companyId, options={}) path = "/api/v2/companies/#{companyId}/customers"
293
- get(path, options) end
294
-
295
- # Unlink attributes from a customer
296
- #
291
+ # @return [FetchResult]
292
+ def query_customers(companyId, options={}) path = "/api/v2/companies/#{companyId}/customers"
293
+ get(path, options) end
294
+
295
+ # Unlink attributes from a customer
296
+ #
297
297
  # Unlink one or many attributes from a customer.
298
298
  #
299
299
  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -305,24 +305,24 @@ module AvaTax
305
305
  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
306
306
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
307
307
  #
308
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
309
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
310
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
311
- # 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`.
312
312
  #
313
313
  # ### Security Policies
314
314
  #
315
315
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
316
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
316
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
317
317
  # @param companyId [Integer] The unique ID number of the company that recorded the customer
318
318
  # @param customerCode [String] The unique code representing the current customer
319
319
  # @param model [CustomerAttributeModel[]] The list of attributes to unlink from the customer.
320
- # @return [FetchResult]
321
- def unlink_attributes_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
322
- put(path, model) end
323
-
324
- # Unlink certificates from a customer
325
- #
320
+ # @return [FetchResult]
321
+ def unlink_attributes_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
322
+ put(path, model) end
323
+
324
+ # Unlink certificates from a customer
325
+ #
326
326
  # Remove one or more certificates to a customer.
327
327
  #
328
328
  # A customer object defines information about a person or business that purchases products from your
@@ -331,24 +331,24 @@ module AvaTax
331
331
  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
332
332
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
333
333
  #
334
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
335
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
336
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
337
- # 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`.
338
338
  #
339
339
  # ### Security Policies
340
340
  #
341
341
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
342
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
342
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
343
343
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
344
344
  # @param customerCode [String] The unique code representing this customer
345
345
  # @param model [Object] The list of certificates to link to this customer
346
- # @return [FetchResult]
347
- def unlink_certificates_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/unlink"
348
- post(path, model) end
349
-
350
- # Update a single customer
351
- #
346
+ # @return [FetchResult]
347
+ def unlink_certificates_from_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/unlink"
348
+ post(path, model) end
349
+
350
+ # Update a single customer
351
+ #
352
352
  # Replace the customer object at this URL with a new record.
353
353
  #
354
354
  # A customer object defines information about a person or business that purchases products from your
@@ -357,21 +357,21 @@ module AvaTax
357
357
  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
358
358
  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
359
359
  #
360
- # Using exemption certificates endpoints requires setup of an auditable document storage for each company that will use certificates.
361
- # Companies that do not have this storage system set up will receive the error `CertCaptureNotConfiguredError` when they call exemption
362
- # certificate related APIs. To check if this company is set up, call `GetCertificateSetup`. To request setup of the auditable document
363
- # 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`.
364
364
  #
365
365
  # ### Security Policies
366
366
  #
367
367
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
368
- # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
368
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
369
369
  # @param companyId [Integer] The unique ID number of the company that recorded this customer
370
370
  # @param customerCode [String] The unique code representing this customer
371
371
  # @param model [Object] The new customer model that will replace the existing record at this URL
372
- # @return [Object]
373
- def update_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
374
- put(path, model) end
375
- end
376
- end
372
+ # @return [Object]
373
+ def update_customer(companyId, customerCode, model) path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
374
+ put(path, model) end
375
+ end
376
+ end
377
377
  end