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,729 +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 Form1099DivRequest
14
- # Total ordinary dividends
15
- attr_accessor :total_ordinary_dividends
16
-
17
- # Qualified dividends
18
- attr_accessor :qualified_dividends
19
-
20
- # Total capital gain distributions
21
- attr_accessor :total_capital_gain_distributions
22
-
23
- # Unrecaptured Section 1250 gain
24
- attr_accessor :unrecaptured_section1250_gain
25
-
26
- # Section 1202 gain
27
- attr_accessor :section1202_gain
28
-
29
- # Collectibles (28%) gain
30
- attr_accessor :collectibles_gain
31
-
32
- # Section 897 ordinary dividends
33
- attr_accessor :section897_ordinary_dividends
34
-
35
- # Section 897 capital gain
36
- attr_accessor :section897_capital_gain
37
-
38
- # Nondividend distributions
39
- attr_accessor :nondividend_distributions
40
-
41
- # Federal income tax withheld
42
- attr_accessor :federal_income_tax_withheld
43
-
44
- # Section 199A dividends
45
- attr_accessor :section199_a_dividends
46
-
47
- # Investment expenses
48
- attr_accessor :investment_expenses
49
-
50
- # Foreign tax paid
51
- attr_accessor :foreign_tax_paid
52
-
53
- # Foreign country or U.S. possession
54
- attr_accessor :foreign_country_or_us_possession
55
-
56
- # Cash liquidation distributions
57
- attr_accessor :cash_liquidation_distributions
58
-
59
- # Noncash liquidation distributions
60
- attr_accessor :noncash_liquidation_distributions
61
-
62
- # Exempt-interest dividends
63
- attr_accessor :exempt_interest_dividends
64
-
65
- # Specified private activity bond interest dividends
66
- attr_accessor :specified_private_activity_bond_interest_dividends
67
-
68
- # FATCA filing requirement
69
- attr_accessor :fatca_filing_requirement
70
-
71
- attr_accessor :type
72
-
73
- # Issuer ID
74
- attr_accessor :issuer_id
75
-
76
- # Reference ID
77
- attr_accessor :reference_id
78
-
79
- # Recipient Tax ID Number
80
- attr_accessor :recipient_tin
81
-
82
- # Recipient name
83
- attr_accessor :recipient_name
84
-
85
- # Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
86
- attr_accessor :tin_type
87
-
88
- # Recipient second name
89
- attr_accessor :recipient_second_name
90
-
91
- # Address
92
- attr_accessor :address
93
-
94
- # Address line 2
95
- attr_accessor :address2
96
-
97
- # City
98
- attr_accessor :city
99
-
100
- # US state. Required if CountryCode is \"US\".
101
- attr_accessor :state
102
-
103
- # Zip/postal code
104
- attr_accessor :zip
105
-
106
- # Recipient email address
107
- attr_accessor :email
108
-
109
- # Account number
110
- attr_accessor :account_number
111
-
112
- # Office code
113
- attr_accessor :office_code
114
-
115
- # Foreign province
116
- attr_accessor :non_us_province
117
-
118
- # Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
119
- attr_accessor :country_code
120
-
121
- # Boolean indicating that federal e-filing should be scheduled for this form
122
- attr_accessor :federal_e_file
123
-
124
- # Boolean indicating that postal mailing to the recipient should be scheduled for this form
125
- attr_accessor :postal_mail
126
-
127
- # Boolean indicating that state e-filing should be scheduled for this form
128
- attr_accessor :state_e_file
129
-
130
- # Boolean indicating that TIN Matching should be scheduled for this form
131
- attr_accessor :tin_match
132
-
133
- # Indicates whether the recipient has no TIN
134
- attr_accessor :no_tin
135
-
136
- # Second TIN notice in three years
137
- attr_accessor :second_tin_notice
138
-
139
- # Boolean indicating that address verification should be scheduled for this form
140
- attr_accessor :address_verification
141
-
142
- # State and local withholding information
143
- attr_accessor :state_and_local_withholding
144
-
145
- class EnumAttributeValidator
146
- attr_reader :datatype
147
- attr_reader :allowable_values
148
-
149
- def initialize(datatype, allowable_values)
150
- @allowable_values = allowable_values.map do |value|
151
- case datatype.to_s
152
- when /Integer/i
153
- value.to_i
154
- when /Float/i
155
- value.to_f
156
- else
157
- value
158
- end
159
- end
160
- end
161
-
162
- def valid?(value)
163
- !value || allowable_values.include?(value)
164
- end
165
- end
166
-
167
- # Attribute mapping from ruby-style variable name to JSON key.
168
- def self.attribute_map
169
- {
170
- :'total_ordinary_dividends' => :'totalOrdinaryDividends',
171
- :'qualified_dividends' => :'qualifiedDividends',
172
- :'total_capital_gain_distributions' => :'totalCapitalGainDistributions',
173
- :'unrecaptured_section1250_gain' => :'unrecapturedSection1250Gain',
174
- :'section1202_gain' => :'section1202Gain',
175
- :'collectibles_gain' => :'collectiblesGain',
176
- :'section897_ordinary_dividends' => :'section897OrdinaryDividends',
177
- :'section897_capital_gain' => :'section897CapitalGain',
178
- :'nondividend_distributions' => :'nondividendDistributions',
179
- :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
180
- :'section199_a_dividends' => :'section199ADividends',
181
- :'investment_expenses' => :'investmentExpenses',
182
- :'foreign_tax_paid' => :'foreignTaxPaid',
183
- :'foreign_country_or_us_possession' => :'foreignCountryOrUSPossession',
184
- :'cash_liquidation_distributions' => :'cashLiquidationDistributions',
185
- :'noncash_liquidation_distributions' => :'noncashLiquidationDistributions',
186
- :'exempt_interest_dividends' => :'exemptInterestDividends',
187
- :'specified_private_activity_bond_interest_dividends' => :'specifiedPrivateActivityBondInterestDividends',
188
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
189
- :'type' => :'type',
190
- :'issuer_id' => :'issuerId',
191
- :'reference_id' => :'referenceId',
192
- :'recipient_tin' => :'recipientTin',
193
- :'recipient_name' => :'recipientName',
194
- :'tin_type' => :'tinType',
195
- :'recipient_second_name' => :'recipientSecondName',
196
- :'address' => :'address',
197
- :'address2' => :'address2',
198
- :'city' => :'city',
199
- :'state' => :'state',
200
- :'zip' => :'zip',
201
- :'email' => :'email',
202
- :'account_number' => :'accountNumber',
203
- :'office_code' => :'officeCode',
204
- :'non_us_province' => :'nonUsProvince',
205
- :'country_code' => :'countryCode',
206
- :'federal_e_file' => :'federalEFile',
207
- :'postal_mail' => :'postalMail',
208
- :'state_e_file' => :'stateEFile',
209
- :'tin_match' => :'tinMatch',
210
- :'no_tin' => :'noTin',
211
- :'second_tin_notice' => :'secondTinNotice',
212
- :'address_verification' => :'addressVerification',
213
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
214
- }
215
- end
216
-
217
- # Returns all the JSON keys this model knows about
218
- def self.acceptable_attributes
219
- attribute_map.values
220
- end
221
-
222
- # Attribute type mapping.
223
- def self.openapi_types
224
- {
225
- :'total_ordinary_dividends' => :'Float',
226
- :'qualified_dividends' => :'Float',
227
- :'total_capital_gain_distributions' => :'Float',
228
- :'unrecaptured_section1250_gain' => :'Float',
229
- :'section1202_gain' => :'Float',
230
- :'collectibles_gain' => :'Float',
231
- :'section897_ordinary_dividends' => :'Float',
232
- :'section897_capital_gain' => :'Float',
233
- :'nondividend_distributions' => :'Float',
234
- :'federal_income_tax_withheld' => :'Float',
235
- :'section199_a_dividends' => :'Float',
236
- :'investment_expenses' => :'Float',
237
- :'foreign_tax_paid' => :'Float',
238
- :'foreign_country_or_us_possession' => :'String',
239
- :'cash_liquidation_distributions' => :'Float',
240
- :'noncash_liquidation_distributions' => :'Float',
241
- :'exempt_interest_dividends' => :'Float',
242
- :'specified_private_activity_bond_interest_dividends' => :'Float',
243
- :'fatca_filing_requirement' => :'Boolean',
244
- :'type' => :'String',
245
- :'issuer_id' => :'String',
246
- :'reference_id' => :'String',
247
- :'recipient_tin' => :'String',
248
- :'recipient_name' => :'String',
249
- :'tin_type' => :'String',
250
- :'recipient_second_name' => :'String',
251
- :'address' => :'String',
252
- :'address2' => :'String',
253
- :'city' => :'String',
254
- :'state' => :'String',
255
- :'zip' => :'String',
256
- :'email' => :'String',
257
- :'account_number' => :'String',
258
- :'office_code' => :'String',
259
- :'non_us_province' => :'String',
260
- :'country_code' => :'String',
261
- :'federal_e_file' => :'Boolean',
262
- :'postal_mail' => :'Boolean',
263
- :'state_e_file' => :'Boolean',
264
- :'tin_match' => :'Boolean',
265
- :'no_tin' => :'Boolean',
266
- :'second_tin_notice' => :'Boolean',
267
- :'address_verification' => :'Boolean',
268
- :'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
269
- }
270
- end
271
-
272
- # List of attributes with nullable: true
273
- def self.openapi_nullable
274
- Set.new([
275
- :'total_ordinary_dividends',
276
- :'qualified_dividends',
277
- :'total_capital_gain_distributions',
278
- :'unrecaptured_section1250_gain',
279
- :'section1202_gain',
280
- :'collectibles_gain',
281
- :'section897_ordinary_dividends',
282
- :'section897_capital_gain',
283
- :'nondividend_distributions',
284
- :'federal_income_tax_withheld',
285
- :'section199_a_dividends',
286
- :'investment_expenses',
287
- :'foreign_tax_paid',
288
- :'foreign_country_or_us_possession',
289
- :'cash_liquidation_distributions',
290
- :'noncash_liquidation_distributions',
291
- :'exempt_interest_dividends',
292
- :'specified_private_activity_bond_interest_dividends',
293
- :'fatca_filing_requirement',
294
- :'issuer_id',
295
- :'reference_id',
296
- :'recipient_tin',
297
- :'recipient_name',
298
- :'recipient_second_name',
299
- :'address',
300
- :'address2',
301
- :'city',
302
- :'state',
303
- :'zip',
304
- :'email',
305
- :'account_number',
306
- :'office_code',
307
- :'non_us_province',
308
- :'country_code',
309
- :'second_tin_notice',
310
- :'state_and_local_withholding'
311
- ])
312
- end
313
-
314
- # List of class defined in allOf (OpenAPI v3)
315
- def self.openapi_all_of
316
- [
317
- :'FormSingleRequestBase'
318
- ]
319
- end
320
-
321
- # Initializes the object
322
- # @param [Hash] attributes Model attributes in the form of hash
323
- def initialize(attributes = {})
324
- if (!attributes.is_a?(Hash))
325
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099DivRequest` initialize method"
326
- end
327
-
328
- # check to see if the attribute exists and convert string to symbol for hash key
329
- attributes = attributes.each_with_object({}) { |(k, v), h|
330
- if (!self.class.attribute_map.key?(k.to_sym))
331
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099DivRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
332
- end
333
- h[k.to_sym] = v
334
- }
335
-
336
- if attributes.key?(:'total_ordinary_dividends')
337
- self.total_ordinary_dividends = attributes[:'total_ordinary_dividends']
338
- end
339
-
340
- if attributes.key?(:'qualified_dividends')
341
- self.qualified_dividends = attributes[:'qualified_dividends']
342
- end
343
-
344
- if attributes.key?(:'total_capital_gain_distributions')
345
- self.total_capital_gain_distributions = attributes[:'total_capital_gain_distributions']
346
- end
347
-
348
- if attributes.key?(:'unrecaptured_section1250_gain')
349
- self.unrecaptured_section1250_gain = attributes[:'unrecaptured_section1250_gain']
350
- end
351
-
352
- if attributes.key?(:'section1202_gain')
353
- self.section1202_gain = attributes[:'section1202_gain']
354
- end
355
-
356
- if attributes.key?(:'collectibles_gain')
357
- self.collectibles_gain = attributes[:'collectibles_gain']
358
- end
359
-
360
- if attributes.key?(:'section897_ordinary_dividends')
361
- self.section897_ordinary_dividends = attributes[:'section897_ordinary_dividends']
362
- end
363
-
364
- if attributes.key?(:'section897_capital_gain')
365
- self.section897_capital_gain = attributes[:'section897_capital_gain']
366
- end
367
-
368
- if attributes.key?(:'nondividend_distributions')
369
- self.nondividend_distributions = attributes[:'nondividend_distributions']
370
- end
371
-
372
- if attributes.key?(:'federal_income_tax_withheld')
373
- self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
374
- end
375
-
376
- if attributes.key?(:'section199_a_dividends')
377
- self.section199_a_dividends = attributes[:'section199_a_dividends']
378
- end
379
-
380
- if attributes.key?(:'investment_expenses')
381
- self.investment_expenses = attributes[:'investment_expenses']
382
- end
383
-
384
- if attributes.key?(:'foreign_tax_paid')
385
- self.foreign_tax_paid = attributes[:'foreign_tax_paid']
386
- end
387
-
388
- if attributes.key?(:'foreign_country_or_us_possession')
389
- self.foreign_country_or_us_possession = attributes[:'foreign_country_or_us_possession']
390
- end
391
-
392
- if attributes.key?(:'cash_liquidation_distributions')
393
- self.cash_liquidation_distributions = attributes[:'cash_liquidation_distributions']
394
- end
395
-
396
- if attributes.key?(:'noncash_liquidation_distributions')
397
- self.noncash_liquidation_distributions = attributes[:'noncash_liquidation_distributions']
398
- end
399
-
400
- if attributes.key?(:'exempt_interest_dividends')
401
- self.exempt_interest_dividends = attributes[:'exempt_interest_dividends']
402
- end
403
-
404
- if attributes.key?(:'specified_private_activity_bond_interest_dividends')
405
- self.specified_private_activity_bond_interest_dividends = attributes[:'specified_private_activity_bond_interest_dividends']
406
- end
407
-
408
- if attributes.key?(:'fatca_filing_requirement')
409
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
410
- end
411
-
412
- if attributes.key?(:'type')
413
- self.type = attributes[:'type']
414
- end
415
-
416
- if attributes.key?(:'issuer_id')
417
- self.issuer_id = attributes[:'issuer_id']
418
- end
419
-
420
- if attributes.key?(:'reference_id')
421
- self.reference_id = attributes[:'reference_id']
422
- end
423
-
424
- if attributes.key?(:'recipient_tin')
425
- self.recipient_tin = attributes[:'recipient_tin']
426
- end
427
-
428
- if attributes.key?(:'recipient_name')
429
- self.recipient_name = attributes[:'recipient_name']
430
- end
431
-
432
- if attributes.key?(:'tin_type')
433
- self.tin_type = attributes[:'tin_type']
434
- end
435
-
436
- if attributes.key?(:'recipient_second_name')
437
- self.recipient_second_name = attributes[:'recipient_second_name']
438
- end
439
-
440
- if attributes.key?(:'address')
441
- self.address = attributes[:'address']
442
- end
443
-
444
- if attributes.key?(:'address2')
445
- self.address2 = attributes[:'address2']
446
- end
447
-
448
- if attributes.key?(:'city')
449
- self.city = attributes[:'city']
450
- end
451
-
452
- if attributes.key?(:'state')
453
- self.state = attributes[:'state']
454
- end
455
-
456
- if attributes.key?(:'zip')
457
- self.zip = attributes[:'zip']
458
- end
459
-
460
- if attributes.key?(:'email')
461
- self.email = attributes[:'email']
462
- end
463
-
464
- if attributes.key?(:'account_number')
465
- self.account_number = attributes[:'account_number']
466
- end
467
-
468
- if attributes.key?(:'office_code')
469
- self.office_code = attributes[:'office_code']
470
- end
471
-
472
- if attributes.key?(:'non_us_province')
473
- self.non_us_province = attributes[:'non_us_province']
474
- end
475
-
476
- if attributes.key?(:'country_code')
477
- self.country_code = attributes[:'country_code']
478
- end
479
-
480
- if attributes.key?(:'federal_e_file')
481
- self.federal_e_file = attributes[:'federal_e_file']
482
- end
483
-
484
- if attributes.key?(:'postal_mail')
485
- self.postal_mail = attributes[:'postal_mail']
486
- end
487
-
488
- if attributes.key?(:'state_e_file')
489
- self.state_e_file = attributes[:'state_e_file']
490
- end
491
-
492
- if attributes.key?(:'tin_match')
493
- self.tin_match = attributes[:'tin_match']
494
- end
495
-
496
- if attributes.key?(:'no_tin')
497
- self.no_tin = attributes[:'no_tin']
498
- end
499
-
500
- if attributes.key?(:'second_tin_notice')
501
- self.second_tin_notice = attributes[:'second_tin_notice']
502
- end
503
-
504
- if attributes.key?(:'address_verification')
505
- self.address_verification = attributes[:'address_verification']
506
- end
507
-
508
- if attributes.key?(:'state_and_local_withholding')
509
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
510
- end
511
- end
512
-
513
- # Show invalid properties with the reasons. Usually used together with valid?
514
- # @return Array for valid properties with the reasons
515
- def list_invalid_properties
516
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
517
- invalid_properties = Array.new
518
- invalid_properties
519
- end
520
-
521
- # Check to see if the all the properties in the model are valid
522
- # @return true if the model is valid
523
- def valid?
524
- warn '[DEPRECATED] the `valid?` method is obsolete'
525
- type_validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
526
- return false unless type_validator.valid?(@type)
527
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
528
- return false unless tin_type_validator.valid?(@tin_type)
529
- true
530
- end
531
-
532
- # Custom attribute writer method checking allowed values (enum).
533
- # @param [Object] type Object to be assigned
534
- def type=(type)
535
- validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
536
- unless validator.valid?(type)
537
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
538
- end
539
- @type = type
540
- end
541
-
542
- # Custom attribute writer method checking allowed values (enum).
543
- # @param [Object] tin_type Object to be assigned
544
- def tin_type=(tin_type)
545
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
546
- unless validator.valid?(tin_type)
547
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
548
- end
549
- @tin_type = tin_type
550
- end
551
-
552
- # Checks equality by comparing each attribute.
553
- # @param [Object] Object to be compared
554
- def ==(o)
555
- return true if self.equal?(o)
556
- self.class == o.class &&
557
- total_ordinary_dividends == o.total_ordinary_dividends &&
558
- qualified_dividends == o.qualified_dividends &&
559
- total_capital_gain_distributions == o.total_capital_gain_distributions &&
560
- unrecaptured_section1250_gain == o.unrecaptured_section1250_gain &&
561
- section1202_gain == o.section1202_gain &&
562
- collectibles_gain == o.collectibles_gain &&
563
- section897_ordinary_dividends == o.section897_ordinary_dividends &&
564
- section897_capital_gain == o.section897_capital_gain &&
565
- nondividend_distributions == o.nondividend_distributions &&
566
- federal_income_tax_withheld == o.federal_income_tax_withheld &&
567
- section199_a_dividends == o.section199_a_dividends &&
568
- investment_expenses == o.investment_expenses &&
569
- foreign_tax_paid == o.foreign_tax_paid &&
570
- foreign_country_or_us_possession == o.foreign_country_or_us_possession &&
571
- cash_liquidation_distributions == o.cash_liquidation_distributions &&
572
- noncash_liquidation_distributions == o.noncash_liquidation_distributions &&
573
- exempt_interest_dividends == o.exempt_interest_dividends &&
574
- specified_private_activity_bond_interest_dividends == o.specified_private_activity_bond_interest_dividends &&
575
- fatca_filing_requirement == o.fatca_filing_requirement &&
576
- type == o.type &&
577
- issuer_id == o.issuer_id &&
578
- reference_id == o.reference_id &&
579
- recipient_tin == o.recipient_tin &&
580
- recipient_name == o.recipient_name &&
581
- tin_type == o.tin_type &&
582
- recipient_second_name == o.recipient_second_name &&
583
- address == o.address &&
584
- address2 == o.address2 &&
585
- city == o.city &&
586
- state == o.state &&
587
- zip == o.zip &&
588
- email == o.email &&
589
- account_number == o.account_number &&
590
- office_code == o.office_code &&
591
- non_us_province == o.non_us_province &&
592
- country_code == o.country_code &&
593
- federal_e_file == o.federal_e_file &&
594
- postal_mail == o.postal_mail &&
595
- state_e_file == o.state_e_file &&
596
- tin_match == o.tin_match &&
597
- no_tin == o.no_tin &&
598
- second_tin_notice == o.second_tin_notice &&
599
- address_verification == o.address_verification &&
600
- state_and_local_withholding == o.state_and_local_withholding
601
- end
602
-
603
- # @see the `==` method
604
- # @param [Object] Object to be compared
605
- def eql?(o)
606
- self == o
607
- end
608
-
609
- # Calculates hash code according to all attributes.
610
- # @return [Integer] Hash code
611
- def hash
612
- [total_ordinary_dividends, qualified_dividends, total_capital_gain_distributions, unrecaptured_section1250_gain, section1202_gain, collectibles_gain, section897_ordinary_dividends, section897_capital_gain, nondividend_distributions, federal_income_tax_withheld, section199_a_dividends, investment_expenses, foreign_tax_paid, foreign_country_or_us_possession, cash_liquidation_distributions, noncash_liquidation_distributions, exempt_interest_dividends, specified_private_activity_bond_interest_dividends, fatca_filing_requirement, 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, address_verification, state_and_local_withholding].hash
613
- end
614
-
615
- # Builds the object from hash
616
- # @param [Hash] attributes Model attributes in the form of hash
617
- # @return [Object] Returns the model itself
618
- def self.build_from_hash(attributes)
619
- return nil unless attributes.is_a?(Hash)
620
- attributes = attributes.transform_keys(&:to_sym)
621
- transformed_hash = {}
622
- openapi_types.each_pair do |key, type|
623
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
624
- transformed_hash["#{key}"] = nil
625
- elsif type =~ /\AArray<(.*)>/i
626
- # check to ensure the input is an array given that the attribute
627
- # is documented as an array but the input is not
628
- if attributes[attribute_map[key]].is_a?(Array)
629
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
630
- end
631
- elsif !attributes[attribute_map[key]].nil?
632
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
633
- end
634
- end
635
- new(transformed_hash)
636
- end
637
-
638
- # Deserializes the data based on type
639
- # @param string type Data type
640
- # @param string value Value to be deserialized
641
- # @return [Object] Deserialized data
642
- def self._deserialize(type, value)
643
- case type.to_sym
644
- when :Time
645
- Time.parse(value)
646
- when :Date
647
- Date.parse(value)
648
- when :String
649
- value.to_s
650
- when :Integer
651
- value.to_i
652
- when :Float
653
- value.to_f
654
- when :Boolean
655
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
656
- true
657
- else
658
- false
659
- end
660
- when :Object
661
- # generic object (usually a Hash), return directly
662
- value
663
- when /\AArray<(?<inner_type>.+)>\z/
664
- inner_type = Regexp.last_match[:inner_type]
665
- value.map { |v| _deserialize(inner_type, v) }
666
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
667
- k_type = Regexp.last_match[:k_type]
668
- v_type = Regexp.last_match[:v_type]
669
- {}.tap do |hash|
670
- value.each do |k, v|
671
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
672
- end
673
- end
674
- else # model
675
- # models (e.g. Pet) or oneOf
676
- klass = AvalaraSdk::A1099::V2.const_get(type)
677
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
678
- end
679
- end
680
-
681
- # Returns the string representation of the object
682
- # @return [String] String presentation of the object
683
- def to_s
684
- to_hash.to_s
685
- end
686
-
687
- # to_body is an alias to to_hash (backward compatibility)
688
- # @return [Hash] Returns the object in the form of hash
689
- def to_body
690
- to_hash
691
- end
692
-
693
- # Returns the object in the form of hash
694
- # @return [Hash] Returns the object in the form of hash
695
- def to_hash
696
- hash = {}
697
- self.class.attribute_map.each_pair do |attr, param|
698
- value = self.send(attr)
699
- if value.nil?
700
- is_nullable = self.class.openapi_nullable.include?(attr)
701
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
702
- end
703
-
704
- hash[param] = _to_hash(value)
705
- end
706
- hash
707
- end
708
-
709
- # Outputs non-array value in the form of hash
710
- # For object, use to_hash. Otherwise, just return the value
711
- # @param [Object] value Any valid value
712
- # @return [Hash] Returns the value in the form of hash
713
- def _to_hash(value)
714
- if value.is_a?(Array)
715
- value.compact.map { |v| _to_hash(v) }
716
- elsif value.is_a?(Hash)
717
- {}.tap do |hash|
718
- value.each { |k, v| hash[k] = _to_hash(v) }
719
- end
720
- elsif value.respond_to? :to_hash
721
- value.to_hash
722
- else
723
- value
724
- end
725
- end
726
-
727
- end
728
-
729
- end