avatax 20.5.0 → 20.12.1

Sign up to get free protection for your applications and to get access to all the features.
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