avalara_sdk 25.8.0 → 25.8.2

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 (185) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +32 -6
  4. data/docs/A1099/V2/BulkUpsert1099FormsRequest.md +4 -0
  5. data/docs/A1099/V2/CompaniesW9Api.md +6 -6
  6. data/docs/A1099/V2/CoveredIndividualRequest.md +26 -26
  7. data/docs/A1099/V2/Create1099Form201Response.md +4 -0
  8. data/docs/A1099/V2/ErrorResponse.md +1 -1
  9. data/docs/A1099/V2/ErrorResponseItem.md +20 -0
  10. data/docs/A1099/V2/Form1042S.md +140 -0
  11. data/docs/A1099/V2/Form1042SListItem.md +12 -8
  12. data/docs/A1099/V2/Form1042SListItemResponse.md +19 -9
  13. data/docs/A1099/V2/Form1042SRequest.md +14 -10
  14. data/docs/A1099/V2/Form1042SResponse.md +10 -6
  15. data/docs/A1099/V2/Form1095B.md +14 -2
  16. data/docs/A1099/V2/Form1095BListItem.md +14 -8
  17. data/docs/A1099/V2/Form1095BListItemResponse.md +20 -8
  18. data/docs/A1099/V2/Form1095BRequest.md +14 -8
  19. data/docs/A1099/V2/Form1095BResponse.md +106 -0
  20. data/docs/A1099/V2/Form1095CList.md +20 -0
  21. data/docs/A1099/V2/Form1095CListItem.md +90 -0
  22. data/docs/A1099/V2/Form1099Base.md +14 -2
  23. data/docs/A1099/V2/Form1099BaseResponse.md +20 -8
  24. data/docs/A1099/V2/Form1099Div.md +130 -0
  25. data/docs/A1099/V2/Form1099DivListItem.md +32 -28
  26. data/docs/A1099/V2/Form1099DivListItemResponse.md +130 -0
  27. data/docs/A1099/V2/Form1099DivRequest.md +32 -28
  28. data/docs/A1099/V2/Form1099DivResponse.md +48 -6
  29. data/docs/A1099/V2/Form1099Int.md +122 -0
  30. data/docs/A1099/V2/Form1099IntList.md +20 -0
  31. data/docs/A1099/V2/Form1099IntListItem.md +100 -0
  32. data/docs/A1099/V2/Form1099IntListItemResponse.md +122 -0
  33. data/docs/A1099/V2/Form1099IntRequest.md +96 -0
  34. data/docs/A1099/V2/Form1099IntResponse.md +120 -0
  35. data/docs/A1099/V2/Form1099K.md +14 -2
  36. data/docs/A1099/V2/Form1099KListItem.md +14 -8
  37. data/docs/A1099/V2/Form1099KListItemResponse.md +20 -8
  38. data/docs/A1099/V2/Form1099KRequest.md +18 -12
  39. data/docs/A1099/V2/Form1099KResponse.md +132 -0
  40. data/docs/A1099/V2/Form1099ListResponseValueInner.md +4 -0
  41. data/docs/A1099/V2/Form1099Misc.md +24 -12
  42. data/docs/A1099/V2/Form1099MiscListItem.md +14 -12
  43. data/docs/A1099/V2/Form1099MiscListItemResponse.md +30 -16
  44. data/docs/A1099/V2/Form1099MiscRequest.md +14 -12
  45. data/docs/A1099/V2/Form1099MiscResponse.md +12 -10
  46. data/docs/A1099/V2/Form1099Nec.md +14 -2
  47. data/docs/A1099/V2/Form1099NecListItem.md +14 -10
  48. data/docs/A1099/V2/Form1099NecListItemResponse.md +20 -8
  49. data/docs/A1099/V2/Form1099NecRequest.md +14 -10
  50. data/docs/A1099/V2/Form1099NecResponse.md +10 -8
  51. data/docs/A1099/V2/Form1099ProccessResult.md +3 -1
  52. data/docs/A1099/V2/Form1099ProccessResultProcessedFormsInner.md +61 -0
  53. data/docs/A1099/V2/Form1099R.md +14 -4
  54. data/docs/A1099/V2/Form1099RListItem.md +12 -8
  55. data/docs/A1099/V2/Form1099RListItemResponse.md +20 -10
  56. data/docs/A1099/V2/Form1099RRequest.md +12 -8
  57. data/docs/A1099/V2/Form1099RResponse.md +132 -0
  58. data/docs/A1099/V2/FormRequestBase.md +14 -8
  59. data/docs/A1099/V2/FormRequestListItemBase.md +14 -8
  60. data/docs/A1099/V2/FormResponseBase.md +10 -6
  61. data/docs/A1099/V2/FormSingleRequestBase.md +14 -8
  62. data/docs/A1099/V2/Forms1099Api.md +11 -11
  63. data/docs/A1099/V2/FormsW9Api.md +21 -19
  64. data/docs/A1099/V2/Get1099Form200Response.md +4 -0
  65. data/docs/A1099/V2/ICreateForm1099Request.md +2 -0
  66. data/docs/A1099/V2/IUpdateForm1099Request.md +2 -0
  67. data/docs/A1099/V2/IrsResponse.md +20 -0
  68. data/docs/A1099/V2/Issuers1099Api.md +6 -6
  69. data/docs/A1099/V2/Jobs1099Api.md +1 -1
  70. data/docs/A1099/V2/OfferAndCoverageRequest.md +26 -0
  71. data/docs/A1099/V2/PaginatedQueryResultModelCompanyResponse.md +1 -1
  72. data/docs/A1099/V2/PaginatedQueryResultModelIssuerResponse.md +1 -1
  73. data/docs/A1099/V2/PaginatedQueryResultModelW9FormBaseResponse.md +22 -0
  74. data/docs/A1099/V2/TinMatchStatusResponse.md +22 -0
  75. data/docs/A1099/V2/Update1099Form200Response.md +8 -0
  76. data/docs/A1099/V2/W4FormResponse.md +1 -29
  77. data/docs/A1099/V2/W8BenEFormResponse.md +1 -29
  78. data/docs/A1099/V2/W8BenFormResponse.md +1 -29
  79. data/docs/A1099/V2/W8ImyFormResponse.md +1 -29
  80. data/docs/A1099/V2/W9FormBaseResponse.md +3 -3
  81. data/docs/A1099/V2/W9FormResponse.md +2 -28
  82. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +1 -1
  83. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +3 -3
  84. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +30 -14
  85. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +1 -1
  86. data/lib/avalara_sdk/api/A1099/V2/jobs1099_api.rb +1 -1
  87. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  88. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  89. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  90. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  91. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  92. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  93. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  94. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +2 -0
  95. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +1 -1
  96. data/lib/avalara_sdk/models/A1099/V2/covered_individual_request.rb +79 -79
  97. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +2 -0
  98. data/lib/avalara_sdk/models/A1099/V2/error_response.rb +1 -1
  99. data/lib/avalara_sdk/models/A1099/V2/error_response_item.rb +221 -0
  100. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +824 -0
  101. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +44 -119
  102. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +67 -12
  103. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +55 -132
  104. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +43 -24
  105. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +68 -9
  106. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +54 -119
  107. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +77 -12
  108. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +56 -121
  109. data/lib/avalara_sdk/models/A1099/V2/form1095_b_response.rb +709 -0
  110. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +238 -0
  111. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +662 -0
  112. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +68 -9
  113. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +77 -12
  114. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +781 -0
  115. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +93 -147
  116. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +931 -0
  117. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +93 -149
  118. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +214 -24
  119. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +741 -0
  120. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +238 -0
  121. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +702 -0
  122. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +887 -0
  123. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +684 -0
  124. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +773 -0
  125. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +68 -9
  126. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +56 -119
  127. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +77 -12
  128. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +82 -123
  129. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +839 -0
  130. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +2 -0
  131. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +106 -47
  132. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +52 -135
  133. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +116 -40
  134. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +52 -137
  135. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +49 -39
  136. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +68 -9
  137. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +56 -129
  138. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +77 -12
  139. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +56 -131
  140. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +43 -33
  141. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +22 -4
  142. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +107 -0
  143. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +68 -19
  144. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +46 -119
  145. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +77 -23
  146. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +46 -121
  147. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +839 -0
  148. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail.rb +1 -1
  149. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +54 -119
  150. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +56 -119
  151. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +43 -24
  152. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +56 -121
  153. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +2 -0
  154. data/lib/avalara_sdk/models/A1099/V2/i_create_form1099_request.rb +1 -0
  155. data/lib/avalara_sdk/models/A1099/V2/i_update_form1099_request.rb +1 -0
  156. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +1 -1
  157. data/lib/avalara_sdk/models/A1099/V2/irs_response.rb +221 -0
  158. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +1 -0
  159. data/lib/avalara_sdk/models/A1099/V2/offer_and_coverage_request.rb +256 -0
  160. data/lib/avalara_sdk/models/A1099/V2/paginated_query_result_model_w9_form_base_response.rb +234 -0
  161. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +1 -1
  162. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail.rb +1 -1
  163. data/lib/avalara_sdk/models/A1099/V2/tin_match_status_response.rb +267 -0
  164. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +4 -0
  165. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +1 -1
  166. data/lib/avalara_sdk/models/A1099/V2/w4_form_response.rb +15 -157
  167. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_response.rb +14 -156
  168. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_response.rb +15 -157
  169. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_response.rb +15 -157
  170. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +19 -14
  171. data/lib/avalara_sdk/models/A1099/V2/w9_form_response.rb +18 -150
  172. data/lib/avalara_sdk/version.rb +1 -1
  173. data/lib/avalara_sdk.rb +21 -1
  174. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  175. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  176. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  177. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  178. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  179. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  180. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  181. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  182. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  183. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  184. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  185. metadata +42 -2
@@ -0,0 +1,781 @@
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 Form1099Div
14
+ attr_accessor :total_ordinary_dividends
15
+
16
+ attr_accessor :qualified_dividends
17
+
18
+ attr_accessor :total_capital_gain_distributions
19
+
20
+ attr_accessor :unrecaptured_section1250_gain
21
+
22
+ attr_accessor :section1202_gain
23
+
24
+ attr_accessor :collectibles_gain
25
+
26
+ attr_accessor :section897_ordinary_dividends
27
+
28
+ attr_accessor :section897_capital_gain
29
+
30
+ attr_accessor :nondividend_distributions
31
+
32
+ attr_accessor :federal_income_tax_withheld
33
+
34
+ attr_accessor :section199_a_dividends
35
+
36
+ attr_accessor :investment_expenses
37
+
38
+ attr_accessor :foreign_tax_paid
39
+
40
+ attr_accessor :foreign_country_or_us_possession
41
+
42
+ attr_accessor :cash_liquidation_distributions
43
+
44
+ attr_accessor :noncash_liquidation_distributions
45
+
46
+ attr_accessor :exempt_interest_dividends
47
+
48
+ attr_accessor :specified_private_activity_bond_interest_dividends
49
+
50
+ attr_accessor :fatca_filing_requirement
51
+
52
+ attr_accessor :id
53
+
54
+ attr_accessor :type
55
+
56
+ attr_accessor :issuer_id
57
+
58
+ attr_accessor :issuer_reference_id
59
+
60
+ attr_accessor :issuer_tin
61
+
62
+ attr_accessor :tax_year
63
+
64
+ attr_accessor :federal_efile
65
+
66
+ attr_accessor :federal_efile_status
67
+
68
+ attr_accessor :state_efile
69
+
70
+ attr_accessor :state_efile_status
71
+
72
+ attr_accessor :postal_mail
73
+
74
+ attr_accessor :postal_mail_status
75
+
76
+ attr_accessor :tin_match
77
+
78
+ attr_accessor :tin_match_status
79
+
80
+ attr_accessor :address_verification
81
+
82
+ attr_accessor :address_verification_status
83
+
84
+ attr_accessor :e_delivery_status
85
+
86
+ attr_accessor :reference_id
87
+
88
+ attr_accessor :email
89
+
90
+ attr_accessor :tin_type
91
+
92
+ attr_accessor :tin
93
+
94
+ attr_accessor :no_tin
95
+
96
+ attr_accessor :second_tin_notice
97
+
98
+ attr_accessor :recipient_name
99
+
100
+ attr_accessor :recipient_second_name
101
+
102
+ attr_accessor :address
103
+
104
+ attr_accessor :address2
105
+
106
+ attr_accessor :city
107
+
108
+ attr_accessor :state
109
+
110
+ attr_accessor :zip
111
+
112
+ attr_accessor :non_us_province
113
+
114
+ attr_accessor :country_code
115
+
116
+ attr_accessor :account_number
117
+
118
+ attr_accessor :office_code
119
+
120
+ attr_accessor :validation_errors
121
+
122
+ attr_accessor :created_at
123
+
124
+ attr_accessor :updated_at
125
+
126
+ attr_accessor :state_and_local_withholding
127
+
128
+ # Attribute mapping from ruby-style variable name to JSON key.
129
+ def self.attribute_map
130
+ {
131
+ :'total_ordinary_dividends' => :'totalOrdinaryDividends',
132
+ :'qualified_dividends' => :'qualifiedDividends',
133
+ :'total_capital_gain_distributions' => :'totalCapitalGainDistributions',
134
+ :'unrecaptured_section1250_gain' => :'unrecapturedSection1250Gain',
135
+ :'section1202_gain' => :'section1202Gain',
136
+ :'collectibles_gain' => :'collectiblesGain',
137
+ :'section897_ordinary_dividends' => :'section897OrdinaryDividends',
138
+ :'section897_capital_gain' => :'section897CapitalGain',
139
+ :'nondividend_distributions' => :'nondividendDistributions',
140
+ :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
141
+ :'section199_a_dividends' => :'section199ADividends',
142
+ :'investment_expenses' => :'investmentExpenses',
143
+ :'foreign_tax_paid' => :'foreignTaxPaid',
144
+ :'foreign_country_or_us_possession' => :'foreignCountryOrUSPossession',
145
+ :'cash_liquidation_distributions' => :'cashLiquidationDistributions',
146
+ :'noncash_liquidation_distributions' => :'noncashLiquidationDistributions',
147
+ :'exempt_interest_dividends' => :'exemptInterestDividends',
148
+ :'specified_private_activity_bond_interest_dividends' => :'specifiedPrivateActivityBondInterestDividends',
149
+ :'fatca_filing_requirement' => :'fatcaFilingRequirement',
150
+ :'id' => :'id',
151
+ :'type' => :'type',
152
+ :'issuer_id' => :'issuerId',
153
+ :'issuer_reference_id' => :'issuerReferenceId',
154
+ :'issuer_tin' => :'issuerTin',
155
+ :'tax_year' => :'taxYear',
156
+ :'federal_efile' => :'federalEfile',
157
+ :'federal_efile_status' => :'federalEfileStatus',
158
+ :'state_efile' => :'stateEfile',
159
+ :'state_efile_status' => :'stateEfileStatus',
160
+ :'postal_mail' => :'postalMail',
161
+ :'postal_mail_status' => :'postalMailStatus',
162
+ :'tin_match' => :'tinMatch',
163
+ :'tin_match_status' => :'tinMatchStatus',
164
+ :'address_verification' => :'addressVerification',
165
+ :'address_verification_status' => :'addressVerificationStatus',
166
+ :'e_delivery_status' => :'eDeliveryStatus',
167
+ :'reference_id' => :'referenceId',
168
+ :'email' => :'email',
169
+ :'tin_type' => :'tinType',
170
+ :'tin' => :'tin',
171
+ :'no_tin' => :'noTin',
172
+ :'second_tin_notice' => :'secondTinNotice',
173
+ :'recipient_name' => :'recipientName',
174
+ :'recipient_second_name' => :'recipientSecondName',
175
+ :'address' => :'address',
176
+ :'address2' => :'address2',
177
+ :'city' => :'city',
178
+ :'state' => :'state',
179
+ :'zip' => :'zip',
180
+ :'non_us_province' => :'nonUsProvince',
181
+ :'country_code' => :'countryCode',
182
+ :'account_number' => :'accountNumber',
183
+ :'office_code' => :'officeCode',
184
+ :'validation_errors' => :'validationErrors',
185
+ :'created_at' => :'createdAt',
186
+ :'updated_at' => :'updatedAt',
187
+ :'state_and_local_withholding' => :'stateAndLocalWithholding'
188
+ }
189
+ end
190
+
191
+ # Returns all the JSON keys this model knows about
192
+ def self.acceptable_attributes
193
+ attribute_map.values
194
+ end
195
+
196
+ # Attribute type mapping.
197
+ def self.openapi_types
198
+ {
199
+ :'total_ordinary_dividends' => :'Float',
200
+ :'qualified_dividends' => :'Float',
201
+ :'total_capital_gain_distributions' => :'Float',
202
+ :'unrecaptured_section1250_gain' => :'Float',
203
+ :'section1202_gain' => :'Float',
204
+ :'collectibles_gain' => :'Float',
205
+ :'section897_ordinary_dividends' => :'Float',
206
+ :'section897_capital_gain' => :'Float',
207
+ :'nondividend_distributions' => :'Float',
208
+ :'federal_income_tax_withheld' => :'Float',
209
+ :'section199_a_dividends' => :'Float',
210
+ :'investment_expenses' => :'Float',
211
+ :'foreign_tax_paid' => :'Float',
212
+ :'foreign_country_or_us_possession' => :'String',
213
+ :'cash_liquidation_distributions' => :'Float',
214
+ :'noncash_liquidation_distributions' => :'Float',
215
+ :'exempt_interest_dividends' => :'Float',
216
+ :'specified_private_activity_bond_interest_dividends' => :'Float',
217
+ :'fatca_filing_requirement' => :'Boolean',
218
+ :'id' => :'String',
219
+ :'type' => :'String',
220
+ :'issuer_id' => :'Integer',
221
+ :'issuer_reference_id' => :'String',
222
+ :'issuer_tin' => :'String',
223
+ :'tax_year' => :'Integer',
224
+ :'federal_efile' => :'Boolean',
225
+ :'federal_efile_status' => :'Form1099StatusDetail',
226
+ :'state_efile' => :'Boolean',
227
+ :'state_efile_status' => :'Array<StateEfileStatusDetail>',
228
+ :'postal_mail' => :'Boolean',
229
+ :'postal_mail_status' => :'Form1099StatusDetail',
230
+ :'tin_match' => :'Boolean',
231
+ :'tin_match_status' => :'Form1099StatusDetail',
232
+ :'address_verification' => :'Boolean',
233
+ :'address_verification_status' => :'Form1099StatusDetail',
234
+ :'e_delivery_status' => :'Form1099StatusDetail',
235
+ :'reference_id' => :'String',
236
+ :'email' => :'String',
237
+ :'tin_type' => :'String',
238
+ :'tin' => :'String',
239
+ :'no_tin' => :'Boolean',
240
+ :'second_tin_notice' => :'Boolean',
241
+ :'recipient_name' => :'String',
242
+ :'recipient_second_name' => :'String',
243
+ :'address' => :'String',
244
+ :'address2' => :'String',
245
+ :'city' => :'String',
246
+ :'state' => :'String',
247
+ :'zip' => :'String',
248
+ :'non_us_province' => :'String',
249
+ :'country_code' => :'String',
250
+ :'account_number' => :'String',
251
+ :'office_code' => :'String',
252
+ :'validation_errors' => :'Array<ValidationError>',
253
+ :'created_at' => :'Time',
254
+ :'updated_at' => :'Time',
255
+ :'state_and_local_withholding' => :'StateAndLocalWithholding'
256
+ }
257
+ end
258
+
259
+ # List of attributes with nullable: true
260
+ def self.openapi_nullable
261
+ Set.new([
262
+ :'total_ordinary_dividends',
263
+ :'qualified_dividends',
264
+ :'total_capital_gain_distributions',
265
+ :'unrecaptured_section1250_gain',
266
+ :'section1202_gain',
267
+ :'collectibles_gain',
268
+ :'section897_ordinary_dividends',
269
+ :'section897_capital_gain',
270
+ :'nondividend_distributions',
271
+ :'federal_income_tax_withheld',
272
+ :'section199_a_dividends',
273
+ :'investment_expenses',
274
+ :'foreign_tax_paid',
275
+ :'foreign_country_or_us_possession',
276
+ :'cash_liquidation_distributions',
277
+ :'noncash_liquidation_distributions',
278
+ :'exempt_interest_dividends',
279
+ :'specified_private_activity_bond_interest_dividends',
280
+ :'fatca_filing_requirement',
281
+ :'issuer_reference_id',
282
+ :'issuer_tin',
283
+ :'state_efile_status',
284
+ :'postal_mail_status',
285
+ :'tin_match_status',
286
+ :'address_verification_status',
287
+ :'e_delivery_status',
288
+ :'reference_id',
289
+ :'email',
290
+ :'tin_type',
291
+ :'tin',
292
+ :'second_tin_notice',
293
+ :'recipient_name',
294
+ :'recipient_second_name',
295
+ :'address',
296
+ :'address2',
297
+ :'city',
298
+ :'state',
299
+ :'zip',
300
+ :'non_us_province',
301
+ :'country_code',
302
+ :'account_number',
303
+ :'office_code',
304
+ :'validation_errors',
305
+ :'state_and_local_withholding'
306
+ ])
307
+ end
308
+
309
+ # List of class defined in allOf (OpenAPI v3)
310
+ def self.openapi_all_of
311
+ [
312
+ :'Form1099Base'
313
+ ]
314
+ end
315
+
316
+ # Initializes the object
317
+ # @param [Hash] attributes Model attributes in the form of hash
318
+ def initialize(attributes = {})
319
+ if (!attributes.is_a?(Hash))
320
+ fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099Div` initialize method"
321
+ end
322
+
323
+ # check to see if the attribute exists and convert string to symbol for hash key
324
+ attributes = attributes.each_with_object({}) { |(k, v), h|
325
+ if (!self.class.attribute_map.key?(k.to_sym))
326
+ fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099Div`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
327
+ end
328
+ h[k.to_sym] = v
329
+ }
330
+
331
+ if attributes.key?(:'total_ordinary_dividends')
332
+ self.total_ordinary_dividends = attributes[:'total_ordinary_dividends']
333
+ end
334
+
335
+ if attributes.key?(:'qualified_dividends')
336
+ self.qualified_dividends = attributes[:'qualified_dividends']
337
+ end
338
+
339
+ if attributes.key?(:'total_capital_gain_distributions')
340
+ self.total_capital_gain_distributions = attributes[:'total_capital_gain_distributions']
341
+ end
342
+
343
+ if attributes.key?(:'unrecaptured_section1250_gain')
344
+ self.unrecaptured_section1250_gain = attributes[:'unrecaptured_section1250_gain']
345
+ end
346
+
347
+ if attributes.key?(:'section1202_gain')
348
+ self.section1202_gain = attributes[:'section1202_gain']
349
+ end
350
+
351
+ if attributes.key?(:'collectibles_gain')
352
+ self.collectibles_gain = attributes[:'collectibles_gain']
353
+ end
354
+
355
+ if attributes.key?(:'section897_ordinary_dividends')
356
+ self.section897_ordinary_dividends = attributes[:'section897_ordinary_dividends']
357
+ end
358
+
359
+ if attributes.key?(:'section897_capital_gain')
360
+ self.section897_capital_gain = attributes[:'section897_capital_gain']
361
+ end
362
+
363
+ if attributes.key?(:'nondividend_distributions')
364
+ self.nondividend_distributions = attributes[:'nondividend_distributions']
365
+ end
366
+
367
+ if attributes.key?(:'federal_income_tax_withheld')
368
+ self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
369
+ end
370
+
371
+ if attributes.key?(:'section199_a_dividends')
372
+ self.section199_a_dividends = attributes[:'section199_a_dividends']
373
+ end
374
+
375
+ if attributes.key?(:'investment_expenses')
376
+ self.investment_expenses = attributes[:'investment_expenses']
377
+ end
378
+
379
+ if attributes.key?(:'foreign_tax_paid')
380
+ self.foreign_tax_paid = attributes[:'foreign_tax_paid']
381
+ end
382
+
383
+ if attributes.key?(:'foreign_country_or_us_possession')
384
+ self.foreign_country_or_us_possession = attributes[:'foreign_country_or_us_possession']
385
+ end
386
+
387
+ if attributes.key?(:'cash_liquidation_distributions')
388
+ self.cash_liquidation_distributions = attributes[:'cash_liquidation_distributions']
389
+ end
390
+
391
+ if attributes.key?(:'noncash_liquidation_distributions')
392
+ self.noncash_liquidation_distributions = attributes[:'noncash_liquidation_distributions']
393
+ end
394
+
395
+ if attributes.key?(:'exempt_interest_dividends')
396
+ self.exempt_interest_dividends = attributes[:'exempt_interest_dividends']
397
+ end
398
+
399
+ if attributes.key?(:'specified_private_activity_bond_interest_dividends')
400
+ self.specified_private_activity_bond_interest_dividends = attributes[:'specified_private_activity_bond_interest_dividends']
401
+ end
402
+
403
+ if attributes.key?(:'fatca_filing_requirement')
404
+ self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
405
+ end
406
+
407
+ if attributes.key?(:'id')
408
+ self.id = attributes[:'id']
409
+ end
410
+
411
+ if attributes.key?(:'type')
412
+ self.type = attributes[:'type']
413
+ end
414
+
415
+ if attributes.key?(:'issuer_id')
416
+ self.issuer_id = attributes[:'issuer_id']
417
+ end
418
+
419
+ if attributes.key?(:'issuer_reference_id')
420
+ self.issuer_reference_id = attributes[:'issuer_reference_id']
421
+ end
422
+
423
+ if attributes.key?(:'issuer_tin')
424
+ self.issuer_tin = attributes[:'issuer_tin']
425
+ end
426
+
427
+ if attributes.key?(:'tax_year')
428
+ self.tax_year = attributes[:'tax_year']
429
+ end
430
+
431
+ if attributes.key?(:'federal_efile')
432
+ self.federal_efile = attributes[:'federal_efile']
433
+ end
434
+
435
+ if attributes.key?(:'federal_efile_status')
436
+ self.federal_efile_status = attributes[:'federal_efile_status']
437
+ end
438
+
439
+ if attributes.key?(:'state_efile')
440
+ self.state_efile = attributes[:'state_efile']
441
+ end
442
+
443
+ if attributes.key?(:'state_efile_status')
444
+ if (value = attributes[:'state_efile_status']).is_a?(Array)
445
+ self.state_efile_status = value
446
+ end
447
+ end
448
+
449
+ if attributes.key?(:'postal_mail')
450
+ self.postal_mail = attributes[:'postal_mail']
451
+ end
452
+
453
+ if attributes.key?(:'postal_mail_status')
454
+ self.postal_mail_status = attributes[:'postal_mail_status']
455
+ end
456
+
457
+ if attributes.key?(:'tin_match')
458
+ self.tin_match = attributes[:'tin_match']
459
+ end
460
+
461
+ if attributes.key?(:'tin_match_status')
462
+ self.tin_match_status = attributes[:'tin_match_status']
463
+ end
464
+
465
+ if attributes.key?(:'address_verification')
466
+ self.address_verification = attributes[:'address_verification']
467
+ end
468
+
469
+ if attributes.key?(:'address_verification_status')
470
+ self.address_verification_status = attributes[:'address_verification_status']
471
+ end
472
+
473
+ if attributes.key?(:'e_delivery_status')
474
+ self.e_delivery_status = attributes[:'e_delivery_status']
475
+ end
476
+
477
+ if attributes.key?(:'reference_id')
478
+ self.reference_id = attributes[:'reference_id']
479
+ end
480
+
481
+ if attributes.key?(:'email')
482
+ self.email = attributes[:'email']
483
+ end
484
+
485
+ if attributes.key?(:'tin_type')
486
+ self.tin_type = attributes[:'tin_type']
487
+ end
488
+
489
+ if attributes.key?(:'tin')
490
+ self.tin = attributes[:'tin']
491
+ end
492
+
493
+ if attributes.key?(:'no_tin')
494
+ self.no_tin = attributes[:'no_tin']
495
+ end
496
+
497
+ if attributes.key?(:'second_tin_notice')
498
+ self.second_tin_notice = attributes[:'second_tin_notice']
499
+ end
500
+
501
+ if attributes.key?(:'recipient_name')
502
+ self.recipient_name = attributes[:'recipient_name']
503
+ end
504
+
505
+ if attributes.key?(:'recipient_second_name')
506
+ self.recipient_second_name = attributes[:'recipient_second_name']
507
+ end
508
+
509
+ if attributes.key?(:'address')
510
+ self.address = attributes[:'address']
511
+ end
512
+
513
+ if attributes.key?(:'address2')
514
+ self.address2 = attributes[:'address2']
515
+ end
516
+
517
+ if attributes.key?(:'city')
518
+ self.city = attributes[:'city']
519
+ end
520
+
521
+ if attributes.key?(:'state')
522
+ self.state = attributes[:'state']
523
+ end
524
+
525
+ if attributes.key?(:'zip')
526
+ self.zip = attributes[:'zip']
527
+ end
528
+
529
+ if attributes.key?(:'non_us_province')
530
+ self.non_us_province = attributes[:'non_us_province']
531
+ end
532
+
533
+ if attributes.key?(:'country_code')
534
+ self.country_code = attributes[:'country_code']
535
+ end
536
+
537
+ if attributes.key?(:'account_number')
538
+ self.account_number = attributes[:'account_number']
539
+ end
540
+
541
+ if attributes.key?(:'office_code')
542
+ self.office_code = attributes[:'office_code']
543
+ end
544
+
545
+ if attributes.key?(:'validation_errors')
546
+ if (value = attributes[:'validation_errors']).is_a?(Array)
547
+ self.validation_errors = value
548
+ end
549
+ end
550
+
551
+ if attributes.key?(:'created_at')
552
+ self.created_at = attributes[:'created_at']
553
+ end
554
+
555
+ if attributes.key?(:'updated_at')
556
+ self.updated_at = attributes[:'updated_at']
557
+ end
558
+
559
+ if attributes.key?(:'state_and_local_withholding')
560
+ self.state_and_local_withholding = attributes[:'state_and_local_withholding']
561
+ end
562
+ end
563
+
564
+ # Show invalid properties with the reasons. Usually used together with valid?
565
+ # @return Array for valid properties with the reasons
566
+ def list_invalid_properties
567
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
568
+ invalid_properties = Array.new
569
+ invalid_properties
570
+ end
571
+
572
+ # Check to see if the all the properties in the model are valid
573
+ # @return true if the model is valid
574
+ def valid?
575
+ warn '[DEPRECATED] the `valid?` method is obsolete'
576
+ true
577
+ end
578
+
579
+ # Custom attribute writer method with validation
580
+ # @param [Object] state_efile_status Value to be assigned
581
+ def state_efile_status=(state_efile_status)
582
+ @state_efile_status = state_efile_status
583
+ end
584
+
585
+ # Custom attribute writer method with validation
586
+ # @param [Object] validation_errors Value to be assigned
587
+ def validation_errors=(validation_errors)
588
+ @validation_errors = validation_errors
589
+ end
590
+
591
+ # Checks equality by comparing each attribute.
592
+ # @param [Object] Object to be compared
593
+ def ==(o)
594
+ return true if self.equal?(o)
595
+ self.class == o.class &&
596
+ total_ordinary_dividends == o.total_ordinary_dividends &&
597
+ qualified_dividends == o.qualified_dividends &&
598
+ total_capital_gain_distributions == o.total_capital_gain_distributions &&
599
+ unrecaptured_section1250_gain == o.unrecaptured_section1250_gain &&
600
+ section1202_gain == o.section1202_gain &&
601
+ collectibles_gain == o.collectibles_gain &&
602
+ section897_ordinary_dividends == o.section897_ordinary_dividends &&
603
+ section897_capital_gain == o.section897_capital_gain &&
604
+ nondividend_distributions == o.nondividend_distributions &&
605
+ federal_income_tax_withheld == o.federal_income_tax_withheld &&
606
+ section199_a_dividends == o.section199_a_dividends &&
607
+ investment_expenses == o.investment_expenses &&
608
+ foreign_tax_paid == o.foreign_tax_paid &&
609
+ foreign_country_or_us_possession == o.foreign_country_or_us_possession &&
610
+ cash_liquidation_distributions == o.cash_liquidation_distributions &&
611
+ noncash_liquidation_distributions == o.noncash_liquidation_distributions &&
612
+ exempt_interest_dividends == o.exempt_interest_dividends &&
613
+ specified_private_activity_bond_interest_dividends == o.specified_private_activity_bond_interest_dividends &&
614
+ fatca_filing_requirement == o.fatca_filing_requirement &&
615
+ id == o.id &&
616
+ type == o.type &&
617
+ issuer_id == o.issuer_id &&
618
+ issuer_reference_id == o.issuer_reference_id &&
619
+ issuer_tin == o.issuer_tin &&
620
+ tax_year == o.tax_year &&
621
+ federal_efile == o.federal_efile &&
622
+ federal_efile_status == o.federal_efile_status &&
623
+ state_efile == o.state_efile &&
624
+ state_efile_status == o.state_efile_status &&
625
+ postal_mail == o.postal_mail &&
626
+ postal_mail_status == o.postal_mail_status &&
627
+ tin_match == o.tin_match &&
628
+ tin_match_status == o.tin_match_status &&
629
+ address_verification == o.address_verification &&
630
+ address_verification_status == o.address_verification_status &&
631
+ e_delivery_status == o.e_delivery_status &&
632
+ reference_id == o.reference_id &&
633
+ email == o.email &&
634
+ tin_type == o.tin_type &&
635
+ tin == o.tin &&
636
+ no_tin == o.no_tin &&
637
+ second_tin_notice == o.second_tin_notice &&
638
+ recipient_name == o.recipient_name &&
639
+ recipient_second_name == o.recipient_second_name &&
640
+ address == o.address &&
641
+ address2 == o.address2 &&
642
+ city == o.city &&
643
+ state == o.state &&
644
+ zip == o.zip &&
645
+ non_us_province == o.non_us_province &&
646
+ country_code == o.country_code &&
647
+ account_number == o.account_number &&
648
+ office_code == o.office_code &&
649
+ validation_errors == o.validation_errors &&
650
+ created_at == o.created_at &&
651
+ updated_at == o.updated_at &&
652
+ state_and_local_withholding == o.state_and_local_withholding
653
+ end
654
+
655
+ # @see the `==` method
656
+ # @param [Object] Object to be compared
657
+ def eql?(o)
658
+ self == o
659
+ end
660
+
661
+ # Calculates hash code according to all attributes.
662
+ # @return [Integer] Hash code
663
+ def hash
664
+ [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, id, type, issuer_id, issuer_reference_id, issuer_tin, tax_year, federal_efile, federal_efile_status, state_efile, state_efile_status, postal_mail, postal_mail_status, tin_match, tin_match_status, address_verification, address_verification_status, e_delivery_status, reference_id, email, tin_type, tin, no_tin, second_tin_notice, recipient_name, recipient_second_name, address, address2, city, state, zip, non_us_province, country_code, account_number, office_code, validation_errors, created_at, updated_at, state_and_local_withholding].hash
665
+ end
666
+
667
+ # Builds the object from hash
668
+ # @param [Hash] attributes Model attributes in the form of hash
669
+ # @return [Object] Returns the model itself
670
+ def self.build_from_hash(attributes)
671
+ return nil unless attributes.is_a?(Hash)
672
+ attributes = attributes.transform_keys(&:to_sym)
673
+ transformed_hash = {}
674
+ openapi_types.each_pair do |key, type|
675
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
676
+ transformed_hash["#{key}"] = nil
677
+ elsif type =~ /\AArray<(.*)>/i
678
+ # check to ensure the input is an array given that the attribute
679
+ # is documented as an array but the input is not
680
+ if attributes[attribute_map[key]].is_a?(Array)
681
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
682
+ end
683
+ elsif !attributes[attribute_map[key]].nil?
684
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
685
+ end
686
+ end
687
+ new(transformed_hash)
688
+ end
689
+
690
+ # Deserializes the data based on type
691
+ # @param string type Data type
692
+ # @param string value Value to be deserialized
693
+ # @return [Object] Deserialized data
694
+ def self._deserialize(type, value)
695
+ case type.to_sym
696
+ when :Time
697
+ Time.parse(value)
698
+ when :Date
699
+ Date.parse(value)
700
+ when :String
701
+ value.to_s
702
+ when :Integer
703
+ value.to_i
704
+ when :Float
705
+ value.to_f
706
+ when :Boolean
707
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
708
+ true
709
+ else
710
+ false
711
+ end
712
+ when :Object
713
+ # generic object (usually a Hash), return directly
714
+ value
715
+ when /\AArray<(?<inner_type>.+)>\z/
716
+ inner_type = Regexp.last_match[:inner_type]
717
+ value.map { |v| _deserialize(inner_type, v) }
718
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
719
+ k_type = Regexp.last_match[:k_type]
720
+ v_type = Regexp.last_match[:v_type]
721
+ {}.tap do |hash|
722
+ value.each do |k, v|
723
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
724
+ end
725
+ end
726
+ else # model
727
+ # models (e.g. Pet) or oneOf
728
+ klass = AvalaraSdk::A1099::V2.const_get(type)
729
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
730
+ end
731
+ end
732
+
733
+ # Returns the string representation of the object
734
+ # @return [String] String presentation of the object
735
+ def to_s
736
+ to_hash.to_s
737
+ end
738
+
739
+ # to_body is an alias to to_hash (backward compatibility)
740
+ # @return [Hash] Returns the object in the form of hash
741
+ def to_body
742
+ to_hash
743
+ end
744
+
745
+ # Returns the object in the form of hash
746
+ # @return [Hash] Returns the object in the form of hash
747
+ def to_hash
748
+ hash = {}
749
+ self.class.attribute_map.each_pair do |attr, param|
750
+ value = self.send(attr)
751
+ if value.nil?
752
+ is_nullable = self.class.openapi_nullable.include?(attr)
753
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
754
+ end
755
+
756
+ hash[param] = _to_hash(value)
757
+ end
758
+ hash
759
+ end
760
+
761
+ # Outputs non-array value in the form of hash
762
+ # For object, use to_hash. Otherwise, just return the value
763
+ # @param [Object] value Any valid value
764
+ # @return [Hash] Returns the value in the form of hash
765
+ def _to_hash(value)
766
+ if value.is_a?(Array)
767
+ value.compact.map { |v| _to_hash(v) }
768
+ elsif value.is_a?(Hash)
769
+ {}.tap do |hash|
770
+ value.each { |k, v| hash[k] = _to_hash(v) }
771
+ end
772
+ elsif value.respond_to? :to_hash
773
+ value.to_hash
774
+ else
775
+ value
776
+ end
777
+ end
778
+
779
+ end
780
+
781
+ end