avalara_sdk 25.8.2 → 25.8.3

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +18 -79
  4. data/docs/A1099/V2/CompaniesW9Api.md +18 -18
  5. data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
  6. data/docs/A1099/V2/CompanyResponse.md +37 -37
  7. data/docs/A1099/V2/CoveredIndividual.md +56 -0
  8. data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
  9. data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
  10. data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
  11. data/docs/A1099/V2/EntryStatusResponse.md +20 -0
  12. data/docs/A1099/V2/Form1042S.md +83 -83
  13. data/docs/A1099/V2/Form1095B.md +72 -62
  14. data/docs/A1099/V2/Form1095C.md +112 -0
  15. data/docs/A1099/V2/Form1099Base.md +60 -60
  16. data/docs/A1099/V2/Form1099Div.md +79 -77
  17. data/docs/A1099/V2/Form1099Int.md +76 -74
  18. data/docs/A1099/V2/Form1099K.md +83 -83
  19. data/docs/A1099/V2/Form1099ListRequest.md +20 -0
  20. data/docs/A1099/V2/Form1099Misc.md +79 -77
  21. data/docs/A1099/V2/Form1099Nec.md +64 -64
  22. data/docs/A1099/V2/Form1099R.md +95 -93
  23. data/docs/A1099/V2/Forms1099Api.md +45 -41
  24. data/docs/A1099/V2/FormsW9Api.md +98 -14
  25. data/docs/A1099/V2/Get1099Form200Response.md +19 -19
  26. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
  27. data/docs/A1099/V2/IssuerCommand.md +16 -16
  28. data/docs/A1099/V2/IssuerResponse.md +35 -35
  29. data/docs/A1099/V2/Issuers1099Api.md +10 -10
  30. data/docs/A1099/V2/JobResponse.md +56 -0
  31. data/docs/A1099/V2/JobsApi.md +91 -0
  32. data/docs/A1099/V2/OfferAndCoverage.md +28 -0
  33. data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
  34. data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
  35. data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
  36. data/docs/A1099/V2/ValidationError.md +2 -2
  37. data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
  38. data/docs/A1099/V2/W4FormRequest.md +6 -6
  39. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
  40. data/docs/A1099/V2/W8BenEFormRequest.md +6 -6
  41. data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
  42. data/docs/A1099/V2/W8BenFormRequest.md +6 -6
  43. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
  44. data/docs/A1099/V2/W8ImyFormRequest.md +6 -6
  45. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
  46. data/docs/A1099/V2/W9FormBaseRequest.md +6 -6
  47. data/docs/A1099/V2/W9FormBaseResponse.md +3 -3
  48. data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
  49. data/docs/A1099/V2/W9FormRequest.md +6 -6
  50. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
  51. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +89 -57
  52. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +144 -6
  53. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  54. data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
  55. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  56. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  57. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  58. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  59. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  60. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  61. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  62. data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
  63. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
  64. data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
  65. data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
  66. data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
  67. data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
  68. data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
  69. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +424 -179
  70. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +365 -179
  71. data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +259 -111
  72. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +286 -177
  73. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +310 -171
  74. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +308 -174
  75. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +298 -186
  76. data/lib/avalara_sdk/models/A1099/V2/{form1099_div_list.rb → form1099_list_request.rb} +49 -22
  77. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +337 -201
  78. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +298 -183
  79. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +414 -274
  80. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
  81. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +13 -1
  82. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
  83. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
  84. data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +108 -42
  85. data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
  86. data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
  87. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
  88. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
  89. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -0
  90. data/lib/avalara_sdk/models/A1099/V2/w4_form_minimal_request.rb +418 -0
  91. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +53 -27
  92. data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → w8_ben_e_form_minimal_request.rb} +139 -170
  93. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +53 -27
  94. data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → w8_ben_form_minimal_request.rb} +148 -122
  95. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +53 -27
  96. data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w8_imy_form_minimal_request.rb} +135 -132
  97. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +53 -27
  98. data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → w9_form_base_minimal_request.rb} +87 -53
  99. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +60 -27
  100. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +14 -14
  101. data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → w9_form_minimal_request.rb} +140 -148
  102. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +53 -27
  103. data/lib/avalara_sdk/version.rb +1 -1
  104. data/lib/avalara_sdk.rb +22 -105
  105. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  106. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  107. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  108. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  109. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  110. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  111. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  112. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  113. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  114. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  115. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  116. metadata +37 -103
  117. data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
  118. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
  119. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
  120. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
  121. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
  122. data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
  123. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
  124. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
  125. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
  126. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
  127. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
  128. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
  129. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
  130. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
  131. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
  132. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
  133. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
  134. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
  135. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
  136. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
  137. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
  138. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
  139. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
  140. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
  141. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
  142. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
  143. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
  144. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
  145. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
  146. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
  147. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
  148. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
  149. data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
  150. data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
  151. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
  152. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
  153. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
  154. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
  155. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
  156. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
  157. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
  158. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
  159. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
  160. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
  161. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
  162. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
  163. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
  164. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
  165. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
  166. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
  167. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
  168. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
  169. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
  170. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
  171. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
  172. data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
  173. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
  174. data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
  175. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
  176. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
  177. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
  178. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_request.rb +0 -311
  179. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
  180. data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
  181. data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
  182. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
  183. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
  184. data/lib/avalara_sdk/models/A1099/V2/problem_details.rb +0 -251
  185. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
  186. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
  187. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
  188. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
  189. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
  190. data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
  191. data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
  192. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
  193. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
  194. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
  195. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
  196. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
  197. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
  198. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
  199. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
  200. data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -1,567 +0,0 @@
1
- =begin
2
- #Avalara 1099 & W-9 API Definition
3
-
4
- ### 🔐 Authentication Generate a **license key** from: *[Avalara Portal](https://www.avalara.com/us/en/signin.html) → Settings → License and API Keys*. [More on authentication methods](https://developer.avalara.com/avatax-dm-combined-erp/common-setup/authentication/authentication-methods/) [Test your credentials](https://developer.avalara.com/avatax/test-credentials/) ## 📘 API & SDK Documentation [Avalara SDK (.NET) on GitHub](https://github.com/avadev/Avalara-SDK-DotNet#avalarasdk--the-unified-c-library-for-next-gen-avalara-services) [Code Examples – 1099 API](https://github.com/avadev/Avalara-SDK-DotNet/blob/main/docs/A1099/V2/Class1099IssuersApi.md#call1099issuersget)
5
-
6
-
7
- =end
8
-
9
- require 'date'
10
- require 'time'
11
-
12
- module AvalaraSdk::A1099::V2
13
- class Form1099NecRequest
14
- # Nonemployee compensation
15
- attr_accessor :nonemployee_compensation
16
-
17
- # Payer made direct sales totaling $5,000 or more of consumer products to recipient for resale
18
- attr_accessor :direct_sales_indicator
19
-
20
- # Federal income tax withheld
21
- attr_accessor :federal_income_tax_withheld
22
-
23
- attr_accessor :type
24
-
25
- # Issuer ID
26
- attr_accessor :issuer_id
27
-
28
- # Reference ID
29
- attr_accessor :reference_id
30
-
31
- # Recipient Tax ID Number
32
- attr_accessor :recipient_tin
33
-
34
- # Recipient name
35
- attr_accessor :recipient_name
36
-
37
- # Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
38
- attr_accessor :tin_type
39
-
40
- # Recipient second name
41
- attr_accessor :recipient_second_name
42
-
43
- # Address
44
- attr_accessor :address
45
-
46
- # Address line 2
47
- attr_accessor :address2
48
-
49
- # City
50
- attr_accessor :city
51
-
52
- # US state. Required if CountryCode is \"US\".
53
- attr_accessor :state
54
-
55
- # Zip/postal code
56
- attr_accessor :zip
57
-
58
- # Recipient email address
59
- attr_accessor :email
60
-
61
- # Account number
62
- attr_accessor :account_number
63
-
64
- # Office code
65
- attr_accessor :office_code
66
-
67
- # Foreign province
68
- attr_accessor :non_us_province
69
-
70
- # Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
71
- attr_accessor :country_code
72
-
73
- # Boolean indicating that federal e-filing should be scheduled for this form
74
- attr_accessor :federal_e_file
75
-
76
- # Boolean indicating that postal mailing to the recipient should be scheduled for this form
77
- attr_accessor :postal_mail
78
-
79
- # Boolean indicating that state e-filing should be scheduled for this form
80
- attr_accessor :state_e_file
81
-
82
- # Boolean indicating that TIN Matching should be scheduled for this form
83
- attr_accessor :tin_match
84
-
85
- # Indicates whether the recipient has no TIN
86
- attr_accessor :no_tin
87
-
88
- # Second TIN notice in three years
89
- attr_accessor :second_tin_notice
90
-
91
- # Fatca filing requirement
92
- attr_accessor :fatca_filing_requirement
93
-
94
- # Boolean indicating that address verification should be scheduled for this form
95
- attr_accessor :address_verification
96
-
97
- # State and local withholding information
98
- attr_accessor :state_and_local_withholding
99
-
100
- class EnumAttributeValidator
101
- attr_reader :datatype
102
- attr_reader :allowable_values
103
-
104
- def initialize(datatype, allowable_values)
105
- @allowable_values = allowable_values.map do |value|
106
- case datatype.to_s
107
- when /Integer/i
108
- value.to_i
109
- when /Float/i
110
- value.to_f
111
- else
112
- value
113
- end
114
- end
115
- end
116
-
117
- def valid?(value)
118
- !value || allowable_values.include?(value)
119
- end
120
- end
121
-
122
- # Attribute mapping from ruby-style variable name to JSON key.
123
- def self.attribute_map
124
- {
125
- :'nonemployee_compensation' => :'nonemployeeCompensation',
126
- :'direct_sales_indicator' => :'directSalesIndicator',
127
- :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
128
- :'type' => :'type',
129
- :'issuer_id' => :'issuerId',
130
- :'reference_id' => :'referenceId',
131
- :'recipient_tin' => :'recipientTin',
132
- :'recipient_name' => :'recipientName',
133
- :'tin_type' => :'tinType',
134
- :'recipient_second_name' => :'recipientSecondName',
135
- :'address' => :'address',
136
- :'address2' => :'address2',
137
- :'city' => :'city',
138
- :'state' => :'state',
139
- :'zip' => :'zip',
140
- :'email' => :'email',
141
- :'account_number' => :'accountNumber',
142
- :'office_code' => :'officeCode',
143
- :'non_us_province' => :'nonUsProvince',
144
- :'country_code' => :'countryCode',
145
- :'federal_e_file' => :'federalEFile',
146
- :'postal_mail' => :'postalMail',
147
- :'state_e_file' => :'stateEFile',
148
- :'tin_match' => :'tinMatch',
149
- :'no_tin' => :'noTin',
150
- :'second_tin_notice' => :'secondTinNotice',
151
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
152
- :'address_verification' => :'addressVerification',
153
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
154
- }
155
- end
156
-
157
- # Returns all the JSON keys this model knows about
158
- def self.acceptable_attributes
159
- attribute_map.values
160
- end
161
-
162
- # Attribute type mapping.
163
- def self.openapi_types
164
- {
165
- :'nonemployee_compensation' => :'Float',
166
- :'direct_sales_indicator' => :'Boolean',
167
- :'federal_income_tax_withheld' => :'Float',
168
- :'type' => :'String',
169
- :'issuer_id' => :'String',
170
- :'reference_id' => :'String',
171
- :'recipient_tin' => :'String',
172
- :'recipient_name' => :'String',
173
- :'tin_type' => :'String',
174
- :'recipient_second_name' => :'String',
175
- :'address' => :'String',
176
- :'address2' => :'String',
177
- :'city' => :'String',
178
- :'state' => :'String',
179
- :'zip' => :'String',
180
- :'email' => :'String',
181
- :'account_number' => :'String',
182
- :'office_code' => :'String',
183
- :'non_us_province' => :'String',
184
- :'country_code' => :'String',
185
- :'federal_e_file' => :'Boolean',
186
- :'postal_mail' => :'Boolean',
187
- :'state_e_file' => :'Boolean',
188
- :'tin_match' => :'Boolean',
189
- :'no_tin' => :'Boolean',
190
- :'second_tin_notice' => :'Boolean',
191
- :'fatca_filing_requirement' => :'Boolean',
192
- :'address_verification' => :'Boolean',
193
- :'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
194
- }
195
- end
196
-
197
- # List of attributes with nullable: true
198
- def self.openapi_nullable
199
- Set.new([
200
- :'issuer_id',
201
- :'reference_id',
202
- :'recipient_tin',
203
- :'recipient_name',
204
- :'recipient_second_name',
205
- :'address',
206
- :'address2',
207
- :'city',
208
- :'state',
209
- :'zip',
210
- :'email',
211
- :'account_number',
212
- :'office_code',
213
- :'non_us_province',
214
- :'country_code',
215
- :'second_tin_notice',
216
- :'state_and_local_withholding'
217
- ])
218
- end
219
-
220
- # List of class defined in allOf (OpenAPI v3)
221
- def self.openapi_all_of
222
- [
223
- :'FormSingleRequestBase'
224
- ]
225
- end
226
-
227
- # Initializes the object
228
- # @param [Hash] attributes Model attributes in the form of hash
229
- def initialize(attributes = {})
230
- if (!attributes.is_a?(Hash))
231
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099NecRequest` initialize method"
232
- end
233
-
234
- # check to see if the attribute exists and convert string to symbol for hash key
235
- attributes = attributes.each_with_object({}) { |(k, v), h|
236
- if (!self.class.attribute_map.key?(k.to_sym))
237
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099NecRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
238
- end
239
- h[k.to_sym] = v
240
- }
241
-
242
- if attributes.key?(:'nonemployee_compensation')
243
- self.nonemployee_compensation = attributes[:'nonemployee_compensation']
244
- else
245
- self.nonemployee_compensation = nil
246
- end
247
-
248
- if attributes.key?(:'direct_sales_indicator')
249
- self.direct_sales_indicator = attributes[:'direct_sales_indicator']
250
- end
251
-
252
- if attributes.key?(:'federal_income_tax_withheld')
253
- self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
254
- end
255
-
256
- if attributes.key?(:'type')
257
- self.type = attributes[:'type']
258
- end
259
-
260
- if attributes.key?(:'issuer_id')
261
- self.issuer_id = attributes[:'issuer_id']
262
- end
263
-
264
- if attributes.key?(:'reference_id')
265
- self.reference_id = attributes[:'reference_id']
266
- end
267
-
268
- if attributes.key?(:'recipient_tin')
269
- self.recipient_tin = attributes[:'recipient_tin']
270
- end
271
-
272
- if attributes.key?(:'recipient_name')
273
- self.recipient_name = attributes[:'recipient_name']
274
- end
275
-
276
- if attributes.key?(:'tin_type')
277
- self.tin_type = attributes[:'tin_type']
278
- end
279
-
280
- if attributes.key?(:'recipient_second_name')
281
- self.recipient_second_name = attributes[:'recipient_second_name']
282
- end
283
-
284
- if attributes.key?(:'address')
285
- self.address = attributes[:'address']
286
- end
287
-
288
- if attributes.key?(:'address2')
289
- self.address2 = attributes[:'address2']
290
- end
291
-
292
- if attributes.key?(:'city')
293
- self.city = attributes[:'city']
294
- end
295
-
296
- if attributes.key?(:'state')
297
- self.state = attributes[:'state']
298
- end
299
-
300
- if attributes.key?(:'zip')
301
- self.zip = attributes[:'zip']
302
- end
303
-
304
- if attributes.key?(:'email')
305
- self.email = attributes[:'email']
306
- end
307
-
308
- if attributes.key?(:'account_number')
309
- self.account_number = attributes[:'account_number']
310
- end
311
-
312
- if attributes.key?(:'office_code')
313
- self.office_code = attributes[:'office_code']
314
- end
315
-
316
- if attributes.key?(:'non_us_province')
317
- self.non_us_province = attributes[:'non_us_province']
318
- end
319
-
320
- if attributes.key?(:'country_code')
321
- self.country_code = attributes[:'country_code']
322
- end
323
-
324
- if attributes.key?(:'federal_e_file')
325
- self.federal_e_file = attributes[:'federal_e_file']
326
- end
327
-
328
- if attributes.key?(:'postal_mail')
329
- self.postal_mail = attributes[:'postal_mail']
330
- end
331
-
332
- if attributes.key?(:'state_e_file')
333
- self.state_e_file = attributes[:'state_e_file']
334
- end
335
-
336
- if attributes.key?(:'tin_match')
337
- self.tin_match = attributes[:'tin_match']
338
- end
339
-
340
- if attributes.key?(:'no_tin')
341
- self.no_tin = attributes[:'no_tin']
342
- end
343
-
344
- if attributes.key?(:'second_tin_notice')
345
- self.second_tin_notice = attributes[:'second_tin_notice']
346
- end
347
-
348
- if attributes.key?(:'fatca_filing_requirement')
349
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
350
- end
351
-
352
- if attributes.key?(:'address_verification')
353
- self.address_verification = attributes[:'address_verification']
354
- end
355
-
356
- if attributes.key?(:'state_and_local_withholding')
357
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
358
- end
359
- end
360
-
361
- # Show invalid properties with the reasons. Usually used together with valid?
362
- # @return Array for valid properties with the reasons
363
- def list_invalid_properties
364
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
365
- invalid_properties = Array.new
366
- if @nonemployee_compensation.nil?
367
- invalid_properties.push('invalid value for "nonemployee_compensation", nonemployee_compensation cannot be nil.')
368
- end
369
-
370
- invalid_properties
371
- end
372
-
373
- # Check to see if the all the properties in the model are valid
374
- # @return true if the model is valid
375
- def valid?
376
- warn '[DEPRECATED] the `valid?` method is obsolete'
377
- return false if @nonemployee_compensation.nil?
378
- type_validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
379
- return false unless type_validator.valid?(@type)
380
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
381
- return false unless tin_type_validator.valid?(@tin_type)
382
- true
383
- end
384
-
385
- # Custom attribute writer method checking allowed values (enum).
386
- # @param [Object] type Object to be assigned
387
- def type=(type)
388
- validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
389
- unless validator.valid?(type)
390
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
391
- end
392
- @type = type
393
- end
394
-
395
- # Custom attribute writer method checking allowed values (enum).
396
- # @param [Object] tin_type Object to be assigned
397
- def tin_type=(tin_type)
398
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
399
- unless validator.valid?(tin_type)
400
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
401
- end
402
- @tin_type = tin_type
403
- end
404
-
405
- # Checks equality by comparing each attribute.
406
- # @param [Object] Object to be compared
407
- def ==(o)
408
- return true if self.equal?(o)
409
- self.class == o.class &&
410
- nonemployee_compensation == o.nonemployee_compensation &&
411
- direct_sales_indicator == o.direct_sales_indicator &&
412
- federal_income_tax_withheld == o.federal_income_tax_withheld &&
413
- type == o.type &&
414
- issuer_id == o.issuer_id &&
415
- reference_id == o.reference_id &&
416
- recipient_tin == o.recipient_tin &&
417
- recipient_name == o.recipient_name &&
418
- tin_type == o.tin_type &&
419
- recipient_second_name == o.recipient_second_name &&
420
- address == o.address &&
421
- address2 == o.address2 &&
422
- city == o.city &&
423
- state == o.state &&
424
- zip == o.zip &&
425
- email == o.email &&
426
- account_number == o.account_number &&
427
- office_code == o.office_code &&
428
- non_us_province == o.non_us_province &&
429
- country_code == o.country_code &&
430
- federal_e_file == o.federal_e_file &&
431
- postal_mail == o.postal_mail &&
432
- state_e_file == o.state_e_file &&
433
- tin_match == o.tin_match &&
434
- no_tin == o.no_tin &&
435
- second_tin_notice == o.second_tin_notice &&
436
- fatca_filing_requirement == o.fatca_filing_requirement &&
437
- address_verification == o.address_verification &&
438
- state_and_local_withholding == o.state_and_local_withholding
439
- end
440
-
441
- # @see the `==` method
442
- # @param [Object] Object to be compared
443
- def eql?(o)
444
- self == o
445
- end
446
-
447
- # Calculates hash code according to all attributes.
448
- # @return [Integer] Hash code
449
- def hash
450
- [nonemployee_compensation, direct_sales_indicator, federal_income_tax_withheld, type, issuer_id, reference_id, recipient_tin, recipient_name, tin_type, recipient_second_name, address, address2, city, state, zip, email, account_number, office_code, non_us_province, country_code, federal_e_file, postal_mail, state_e_file, tin_match, no_tin, second_tin_notice, fatca_filing_requirement, address_verification, state_and_local_withholding].hash
451
- end
452
-
453
- # Builds the object from hash
454
- # @param [Hash] attributes Model attributes in the form of hash
455
- # @return [Object] Returns the model itself
456
- def self.build_from_hash(attributes)
457
- return nil unless attributes.is_a?(Hash)
458
- attributes = attributes.transform_keys(&:to_sym)
459
- transformed_hash = {}
460
- openapi_types.each_pair do |key, type|
461
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
462
- transformed_hash["#{key}"] = nil
463
- elsif type =~ /\AArray<(.*)>/i
464
- # check to ensure the input is an array given that the attribute
465
- # is documented as an array but the input is not
466
- if attributes[attribute_map[key]].is_a?(Array)
467
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
468
- end
469
- elsif !attributes[attribute_map[key]].nil?
470
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
471
- end
472
- end
473
- new(transformed_hash)
474
- end
475
-
476
- # Deserializes the data based on type
477
- # @param string type Data type
478
- # @param string value Value to be deserialized
479
- # @return [Object] Deserialized data
480
- def self._deserialize(type, value)
481
- case type.to_sym
482
- when :Time
483
- Time.parse(value)
484
- when :Date
485
- Date.parse(value)
486
- when :String
487
- value.to_s
488
- when :Integer
489
- value.to_i
490
- when :Float
491
- value.to_f
492
- when :Boolean
493
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
494
- true
495
- else
496
- false
497
- end
498
- when :Object
499
- # generic object (usually a Hash), return directly
500
- value
501
- when /\AArray<(?<inner_type>.+)>\z/
502
- inner_type = Regexp.last_match[:inner_type]
503
- value.map { |v| _deserialize(inner_type, v) }
504
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
505
- k_type = Regexp.last_match[:k_type]
506
- v_type = Regexp.last_match[:v_type]
507
- {}.tap do |hash|
508
- value.each do |k, v|
509
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
510
- end
511
- end
512
- else # model
513
- # models (e.g. Pet) or oneOf
514
- klass = AvalaraSdk::A1099::V2.const_get(type)
515
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
516
- end
517
- end
518
-
519
- # Returns the string representation of the object
520
- # @return [String] String presentation of the object
521
- def to_s
522
- to_hash.to_s
523
- end
524
-
525
- # to_body is an alias to to_hash (backward compatibility)
526
- # @return [Hash] Returns the object in the form of hash
527
- def to_body
528
- to_hash
529
- end
530
-
531
- # Returns the object in the form of hash
532
- # @return [Hash] Returns the object in the form of hash
533
- def to_hash
534
- hash = {}
535
- self.class.attribute_map.each_pair do |attr, param|
536
- value = self.send(attr)
537
- if value.nil?
538
- is_nullable = self.class.openapi_nullable.include?(attr)
539
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
540
- end
541
-
542
- hash[param] = _to_hash(value)
543
- end
544
- hash
545
- end
546
-
547
- # Outputs non-array value in the form of hash
548
- # For object, use to_hash. Otherwise, just return the value
549
- # @param [Object] value Any valid value
550
- # @return [Hash] Returns the value in the form of hash
551
- def _to_hash(value)
552
- if value.is_a?(Array)
553
- value.compact.map { |v| _to_hash(v) }
554
- elsif value.is_a?(Hash)
555
- {}.tap do |hash|
556
- value.each { |k, v| hash[k] = _to_hash(v) }
557
- end
558
- elsif value.respond_to? :to_hash
559
- value.to_hash
560
- else
561
- value
562
- end
563
- end
564
-
565
- end
566
-
567
- end