avalara_sdk 25.8.2 → 25.9.0

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 (220) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +20 -91
  4. data/docs/A1099/V2/CompaniesW9Api.md +18 -18
  5. data/docs/A1099/V2/CompanyBase.md +50 -0
  6. data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
  7. data/docs/A1099/V2/CompanyRequest.md +50 -0
  8. data/docs/A1099/V2/CompanyResponse.md +37 -37
  9. data/docs/A1099/V2/CoveredIndividual.md +56 -0
  10. data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
  11. data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
  12. data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
  13. data/docs/A1099/V2/EntryStatusResponse.md +20 -0
  14. data/docs/A1099/V2/Form1042S.md +83 -83
  15. data/docs/A1099/V2/Form1095B.md +72 -62
  16. data/docs/A1099/V2/Form1095C.md +112 -0
  17. data/docs/A1099/V2/Form1099Base.md +60 -60
  18. data/docs/A1099/V2/Form1099Div.md +79 -77
  19. data/docs/A1099/V2/Form1099Int.md +76 -74
  20. data/docs/A1099/V2/Form1099K.md +83 -83
  21. data/docs/A1099/V2/Form1099ListRequest.md +20 -0
  22. data/docs/A1099/V2/Form1099Misc.md +79 -77
  23. data/docs/A1099/V2/Form1099Nec.md +64 -64
  24. data/docs/A1099/V2/Form1099R.md +95 -93
  25. data/docs/A1099/V2/Forms1099Api.md +47 -43
  26. data/docs/A1099/V2/FormsW9Api.md +104 -20
  27. data/docs/A1099/V2/Get1099Form200Response.md +19 -19
  28. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
  29. data/docs/A1099/V2/IssuerBase.md +46 -0
  30. data/docs/A1099/V2/IssuerCommand.md +16 -16
  31. data/docs/A1099/V2/IssuerRequest.md +46 -0
  32. data/docs/A1099/V2/IssuerResponse.md +35 -35
  33. data/docs/A1099/V2/Issuers1099Api.md +10 -10
  34. data/docs/A1099/V2/JobResponse.md +56 -0
  35. data/docs/A1099/V2/JobsApi.md +91 -0
  36. data/docs/A1099/V2/OfferAndCoverage.md +28 -0
  37. data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
  38. data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
  39. data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
  40. data/docs/A1099/V2/TinMatchStatusResponse.md +1 -1
  41. data/docs/A1099/V2/ValidationError.md +2 -2
  42. data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
  43. data/docs/A1099/V2/W4FormRequest.md +16 -16
  44. data/docs/A1099/V2/W4FormResponse.md +48 -20
  45. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
  46. data/docs/A1099/V2/W8BenEFormRequest.md +15 -15
  47. data/docs/A1099/V2/W8BenEFormResponse.md +96 -68
  48. data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
  49. data/docs/A1099/V2/W8BenFormRequest.md +11 -11
  50. data/docs/A1099/V2/W8BenFormResponse.md +55 -27
  51. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
  52. data/docs/A1099/V2/W8ImyFormRequest.md +15 -15
  53. data/docs/A1099/V2/W8ImyFormResponse.md +118 -90
  54. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
  55. data/docs/A1099/V2/W9FormBaseRequest.md +7 -7
  56. data/docs/A1099/V2/W9FormBaseResponse.md +6 -6
  57. data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
  58. data/docs/A1099/V2/W9FormRequest.md +15 -15
  59. data/docs/A1099/V2/W9FormResponse.md +44 -16
  60. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
  61. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +93 -61
  62. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +157 -19
  63. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  64. data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
  65. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  66. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  67. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  68. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  69. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  70. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  71. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  72. data/lib/avalara_sdk/api_client.rb +10 -2
  73. data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → company_base.rb} +61 -13
  74. data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
  75. data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → company_request.rb} +62 -64
  76. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
  77. data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
  78. data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
  79. data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
  80. data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
  81. data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
  82. data/lib/avalara_sdk/models/A1099/V2/error_response.rb +0 -6
  83. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +422 -187
  84. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +359 -194
  85. data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +250 -133
  86. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +283 -185
  87. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +307 -179
  88. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +307 -183
  89. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +307 -198
  90. data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → form1099_list_request.rb} +45 -59
  91. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +334 -209
  92. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +297 -192
  93. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +437 -282
  94. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
  95. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +59 -1
  96. data/lib/avalara_sdk/models/A1099/V2/{intermediary_or_flow_through_request.rb → issuer_base.rb} +119 -46
  97. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
  98. data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → issuer_request.rb} +113 -112
  99. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
  100. data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +102 -42
  101. data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
  102. data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
  103. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
  104. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
  105. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -6
  106. data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w4_form_minimal_request.rb} +142 -129
  107. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +62 -34
  108. data/lib/avalara_sdk/models/A1099/V2/w4_form_response.rb +191 -15
  109. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_minimal_request.rb +356 -0
  110. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +68 -33
  111. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_response.rb +190 -14
  112. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_minimal_request.rb +356 -0
  113. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +51 -28
  114. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_response.rb +191 -15
  115. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_minimal_request.rb +356 -0
  116. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +61 -33
  117. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_response.rb +191 -15
  118. data/lib/avalara_sdk/models/A1099/V2/{problem_details.rb → w9_form_base_minimal_request.rb} +61 -35
  119. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +35 -28
  120. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +60 -31
  121. data/lib/avalara_sdk/models/A1099/V2/w9_form_minimal_request.rb +356 -0
  122. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +71 -30
  123. data/lib/avalara_sdk/models/A1099/V2/w9_form_response.rb +190 -14
  124. data/lib/avalara_sdk/version.rb +1 -1
  125. data/lib/avalara_sdk.rb +22 -101
  126. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  127. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  128. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  129. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  130. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  131. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  132. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  133. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  134. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  135. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  136. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  137. metadata +45 -103
  138. data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
  139. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
  140. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
  141. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
  142. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
  143. data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
  144. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
  145. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
  146. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
  147. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
  148. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
  149. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
  150. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
  151. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
  152. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
  153. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
  154. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
  155. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
  156. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list.rb +0 -238
  157. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
  158. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
  159. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
  160. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
  161. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
  162. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
  163. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
  164. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
  165. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
  166. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
  167. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
  168. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
  169. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
  170. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
  171. data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
  172. data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
  173. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
  174. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
  175. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
  176. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
  177. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
  178. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
  179. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
  180. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
  181. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
  182. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
  183. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
  184. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
  185. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
  186. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
  187. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
  188. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
  189. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
  190. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
  191. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
  192. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
  193. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
  194. data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
  195. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
  196. data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
  197. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
  198. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
  199. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
  200. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
  201. data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
  202. data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
  203. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
  204. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
  205. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
  206. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
  207. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
  208. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
  209. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
  210. data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
  211. data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
  212. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
  213. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
  214. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
  215. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
  216. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
  217. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
  218. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
  219. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
  220. data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -10,112 +10,191 @@ require 'date'
10
10
  require 'time'
11
11
 
12
12
  module AvalaraSdk::A1099::V2
13
- class Form1099Int
13
+ # Form 1099-INT: Interest Imcome *At least one of the following amounts must be provided:* Interest Income, Interest on U.S. Savings Bonds and Treasury obligations, or Tax-Exempt Interest.
14
+ class Form1099Int
15
+ # Interest Income
14
16
  attr_accessor :interest_income
15
17
 
18
+ # Early Withdrawal Penalty
16
19
  attr_accessor :early_withdrawal_penalty
17
20
 
21
+ # Interest on U.S. Savings Bonds and Treasury obligations
18
22
  attr_accessor :us_savings_bonds_interest
19
23
 
24
+ # Federal income tax withheld
20
25
  attr_accessor :federal_income_tax_withheld
21
26
 
27
+ # Investment Expenses
22
28
  attr_accessor :investment_expenses
23
29
 
30
+ # Foreign tax paid
24
31
  attr_accessor :foreign_tax_paid
25
32
 
33
+ # Foreign country or U.S. possession
26
34
  attr_accessor :foreign_country
27
35
 
36
+ # Tax-Exempt Interest
28
37
  attr_accessor :tax_exempt_interest
29
38
 
39
+ # Specified Private activity
30
40
  attr_accessor :specified_private_activity_bond_interest
31
41
 
42
+ # Market Discount
32
43
  attr_accessor :market_discount
33
44
 
45
+ # Bond Premium
34
46
  attr_accessor :bond_premium
35
47
 
48
+ # Bond Premium on Treasury obligations
36
49
  attr_accessor :bond_premium_on_treasury_obligations
37
50
 
51
+ # Bond Premium on tax exempt bond
38
52
  attr_accessor :bond_premium_on_tax_exempt_bond
39
53
 
54
+ # Tax exempt bond CUSIP no. Enter VARIOUS if the tax-exempt interest is reported in the aggregate for multiple bonds or accounts.
40
55
  attr_accessor :tax_exempt_bond_cusip_number
41
56
 
42
- attr_accessor :id
57
+ # FATCA filing requirement.
58
+ attr_accessor :fatca_filing_requirement
43
59
 
60
+ # Form type.
44
61
  attr_accessor :type
45
62
 
63
+ # Form ID. Unique identifier set when the record is created.
64
+ attr_accessor :id
65
+
66
+ # Issuer ID - only required when creating forms
46
67
  attr_accessor :issuer_id
47
68
 
69
+ # Issuer Reference ID - only required when creating forms via $bulk-upsert
48
70
  attr_accessor :issuer_reference_id
49
71
 
72
+ # Issuer TIN - readonly
50
73
  attr_accessor :issuer_tin
51
74
 
75
+ # Tax Year - only required when creating forms via $bulk-upsert
52
76
  attr_accessor :tax_year
53
77
 
54
- attr_accessor :federal_efile
78
+ # Internal reference ID. Never shown to any agency or recipient.
79
+ attr_accessor :reference_id
55
80
 
56
- attr_accessor :federal_efile_status
81
+ # Recipient's Federal Tax Identification Number (TIN).
82
+ attr_accessor :tin
57
83
 
58
- attr_accessor :state_efile
84
+ # Recipient name
85
+ attr_accessor :recipient_name
59
86
 
60
- attr_accessor :state_efile_status
87
+ # Tax Identification Number (TIN) type. Available values: - EIN: Employer Identification Number - SSN: Social Security Number - ITIN: Individual Taxpayer Identification Number - ATIN: Adoption Taxpayer Identification Number
88
+ attr_accessor :tin_type
61
89
 
62
- attr_accessor :postal_mail
90
+ # Recipient second name
91
+ attr_accessor :recipient_second_name
63
92
 
64
- attr_accessor :postal_mail_status
93
+ # Address.
94
+ attr_accessor :address
65
95
 
66
- attr_accessor :tin_match
96
+ # Address line 2.
97
+ attr_accessor :address2
67
98
 
68
- attr_accessor :tin_match_status
99
+ # City.
100
+ attr_accessor :city
69
101
 
70
- attr_accessor :address_verification
102
+ # Two-letter US state or Canadian province code (required for US/CA addresses).
103
+ attr_accessor :state
71
104
 
72
- attr_accessor :address_verification_status
105
+ # ZIP/postal code.
106
+ attr_accessor :zip
73
107
 
74
- attr_accessor :e_delivery_status
108
+ # Recipient's Contact email address.
109
+ attr_accessor :email
75
110
 
76
- attr_accessor :reference_id
111
+ # Account number
112
+ attr_accessor :account_number
77
113
 
78
- attr_accessor :email
114
+ # Office code
115
+ attr_accessor :office_code
79
116
 
80
- attr_accessor :tin_type
117
+ # Province or region for non-US/CA addresses.
118
+ attr_accessor :non_us_province
81
119
 
82
- attr_accessor :fatca_filing_requirement
120
+ # Two-letter IRS country code (e.g., 'US', 'CA'), as defined at https://www.irs.gov/e-file-providers/country-codes.
121
+ attr_accessor :country_code
83
122
 
84
- attr_accessor :tin
123
+ # Date when federal e-filing should be scheduled. If set between current date and beginning of blackout period, scheduled to that date. If in the past or blackout period, scheduled to next available date. For blackout period information, see https://www.track1099.com/info/IRS_info. Set to null to leave unscheduled.
124
+ attr_accessor :federal_efile_date
85
125
 
86
- attr_accessor :no_tin
126
+ # Boolean indicating that postal mailing to the recipient should be scheduled for this form
127
+ attr_accessor :postal_mail
87
128
 
88
- attr_accessor :second_tin_notice
129
+ # Date when state e-filing should be scheduled. Must be on or after federalEfileDate. If set between current date and beginning of blackout period, scheduled to that date. If in the past or blackout period, scheduled to next available date. For blackout period information, see https://www.track1099.com/info/IRS_info. Set to null to leave unscheduled.
130
+ attr_accessor :state_efile_date
89
131
 
90
- attr_accessor :recipient_name
132
+ # Date when recipient e-delivery should be scheduled. If set between current date and beginning of blackout period, scheduled to that date. If in the past or blackout period, scheduled to next available date. For blackout period information, see https://www.track1099.com/info/IRS_info. Set to null to leave unscheduled.
133
+ attr_accessor :recipient_edelivery_date
91
134
 
92
- attr_accessor :recipient_second_name
135
+ # Boolean indicating that TIN Matching should be scheduled for this form
136
+ attr_accessor :tin_match
93
137
 
94
- attr_accessor :address
138
+ # No TIN indicator
139
+ attr_accessor :no_tin
95
140
 
96
- attr_accessor :address2
141
+ # Boolean indicating that address verification should be scheduled for this form
142
+ attr_accessor :address_verification
97
143
 
98
- attr_accessor :city
144
+ # State and local withholding information
145
+ attr_accessor :state_and_local_withholding
99
146
 
100
- attr_accessor :state
147
+ # Second TIN notice
148
+ attr_accessor :second_tin_notice
101
149
 
102
- attr_accessor :zip
150
+ # Federal e-file status. Available values: - unscheduled: Form has not been scheduled for federal e-filing - scheduled: Form is scheduled for federal e-filing - airlock: Form is in process of being uploaded to the IRS (forms exist in this state for a very short period and cannot be updated while in this state) - sent: Form has been sent to the IRS - accepted: Form was accepted by the IRS - corrected_scheduled: Correction is scheduled to be sent - corrected_airlock: Correction is in process of being uploaded to the IRS (forms exist in this state for a very short period and cannot be updated while in this state) - corrected: A correction has been sent to the IRS - corrected_accepted: Correction was accepted by the IRS - rejected: Form was rejected by the IRS - corrected_rejected: Correction was rejected by the IRS - held: Form is held and will not be submitted to IRS (used for certain forms submitted only to states)
151
+ attr_accessor :federal_efile_status
103
152
 
104
- attr_accessor :non_us_province
153
+ # State e-file status. Available values: - unscheduled: Form has not been scheduled for state e-filing - scheduled: Form is scheduled for state e-filing - airlocked: Form is in process of being uploaded to the state - sent: Form has been sent to the state - rejected: Form was rejected by the state - accepted: Form was accepted by the state - corrected_scheduled: Correction is scheduled to be sent - corrected_airlocked: Correction is in process of being uploaded to the state - corrected_sent: Correction has been sent to the state - corrected_rejected: Correction was rejected by the state - corrected_accepted: Correction was accepted by the state
154
+ attr_accessor :state_efile_status
105
155
 
106
- attr_accessor :country_code
156
+ # Postal mail to recipient status. Available values: - unscheduled: Postal mail has not been scheduled - pending: Postal mail is pending to be sent - sent: Postal mail has been sent - delivered: Postal mail has been delivered
157
+ attr_accessor :postal_mail_status
107
158
 
108
- attr_accessor :account_number
159
+ # TIN Match status. Available values: - none: TIN matching has not been performed - pending: TIN matching request is pending - matched: Name/TIN combination matches IRS records - unknown: TIN is missing, invalid, or request contains errors - rejected: Name/TIN combination does not match IRS records or TIN not currently issued
160
+ attr_accessor :tin_match_status
109
161
 
110
- attr_accessor :office_code
162
+ # Address verification status. Available values: - unknown: Address verification has not been checked - pending: Address verification is in progress - failed: Address verification failed - incomplete: Address verification is incomplete - unchanged: User declined address changes - verified: Address has been verified and accepted
163
+ attr_accessor :address_verification_status
111
164
 
165
+ # EDelivery status. Available values: - unscheduled: E-delivery has not been scheduled - scheduled: E-delivery is scheduled to be sent - sent: E-delivery has been sent to recipient - bounced: E-delivery bounced back (invalid email) - refused: E-delivery was refused by recipient - bad_verify: E-delivery failed verification - accepted: E-delivery was accepted by recipient - bad_verify_limit: E-delivery failed verification limit reached - second_delivery: Second e-delivery attempt - undelivered: E-delivery is undelivered (temporary state allowing resend)
166
+ attr_accessor :e_delivery_status
167
+
168
+ # Validation errors
112
169
  attr_accessor :validation_errors
113
170
 
171
+ # Date time when the record was created.
114
172
  attr_accessor :created_at
115
173
 
174
+ # Date time when the record was last updated.
116
175
  attr_accessor :updated_at
117
176
 
118
- attr_accessor :state_and_local_withholding
177
+ class EnumAttributeValidator
178
+ attr_reader :datatype
179
+ attr_reader :allowable_values
180
+
181
+ def initialize(datatype, allowable_values)
182
+ @allowable_values = allowable_values.map do |value|
183
+ case datatype.to_s
184
+ when /Integer/i
185
+ value.to_i
186
+ when /Float/i
187
+ value.to_f
188
+ else
189
+ value
190
+ end
191
+ end
192
+ end
193
+
194
+ def valid?(value)
195
+ !value || allowable_values.include?(value)
196
+ end
197
+ end
119
198
 
120
199
  # Attribute mapping from ruby-style variable name to JSON key.
121
200
  def self.attribute_map
@@ -134,45 +213,46 @@ module AvalaraSdk::A1099::V2
134
213
  :'bond_premium_on_treasury_obligations' => :'bondPremiumOnTreasuryObligations',
135
214
  :'bond_premium_on_tax_exempt_bond' => :'bondPremiumOnTaxExemptBond',
136
215
  :'tax_exempt_bond_cusip_number' => :'taxExemptBondCusipNumber',
137
- :'id' => :'id',
216
+ :'fatca_filing_requirement' => :'fatcaFilingRequirement',
138
217
  :'type' => :'type',
218
+ :'id' => :'id',
139
219
  :'issuer_id' => :'issuerId',
140
220
  :'issuer_reference_id' => :'issuerReferenceId',
141
221
  :'issuer_tin' => :'issuerTin',
142
222
  :'tax_year' => :'taxYear',
143
- :'federal_efile' => :'federalEfile',
144
- :'federal_efile_status' => :'federalEfileStatus',
145
- :'state_efile' => :'stateEfile',
146
- :'state_efile_status' => :'stateEfileStatus',
147
- :'postal_mail' => :'postalMail',
148
- :'postal_mail_status' => :'postalMailStatus',
149
- :'tin_match' => :'tinMatch',
150
- :'tin_match_status' => :'tinMatchStatus',
151
- :'address_verification' => :'addressVerification',
152
- :'address_verification_status' => :'addressVerificationStatus',
153
- :'e_delivery_status' => :'eDeliveryStatus',
154
223
  :'reference_id' => :'referenceId',
155
- :'email' => :'email',
156
- :'tin_type' => :'tinType',
157
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
158
224
  :'tin' => :'tin',
159
- :'no_tin' => :'noTin',
160
- :'second_tin_notice' => :'secondTinNotice',
161
225
  :'recipient_name' => :'recipientName',
226
+ :'tin_type' => :'tinType',
162
227
  :'recipient_second_name' => :'recipientSecondName',
163
228
  :'address' => :'address',
164
229
  :'address2' => :'address2',
165
230
  :'city' => :'city',
166
231
  :'state' => :'state',
167
232
  :'zip' => :'zip',
168
- :'non_us_province' => :'nonUsProvince',
169
- :'country_code' => :'countryCode',
233
+ :'email' => :'email',
170
234
  :'account_number' => :'accountNumber',
171
235
  :'office_code' => :'officeCode',
236
+ :'non_us_province' => :'nonUsProvince',
237
+ :'country_code' => :'countryCode',
238
+ :'federal_efile_date' => :'federalEfileDate',
239
+ :'postal_mail' => :'postalMail',
240
+ :'state_efile_date' => :'stateEfileDate',
241
+ :'recipient_edelivery_date' => :'recipientEdeliveryDate',
242
+ :'tin_match' => :'tinMatch',
243
+ :'no_tin' => :'noTin',
244
+ :'address_verification' => :'addressVerification',
245
+ :'state_and_local_withholding' => :'stateAndLocalWithholding',
246
+ :'second_tin_notice' => :'secondTinNotice',
247
+ :'federal_efile_status' => :'federalEfileStatus',
248
+ :'state_efile_status' => :'stateEfileStatus',
249
+ :'postal_mail_status' => :'postalMailStatus',
250
+ :'tin_match_status' => :'tinMatchStatus',
251
+ :'address_verification_status' => :'addressVerificationStatus',
252
+ :'e_delivery_status' => :'eDeliveryStatus',
172
253
  :'validation_errors' => :'validationErrors',
173
254
  :'created_at' => :'createdAt',
174
- :'updated_at' => :'updatedAt',
175
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
255
+ :'updated_at' => :'updatedAt'
176
256
  }
177
257
  end
178
258
 
@@ -198,45 +278,46 @@ module AvalaraSdk::A1099::V2
198
278
  :'bond_premium_on_treasury_obligations' => :'Float',
199
279
  :'bond_premium_on_tax_exempt_bond' => :'Float',
200
280
  :'tax_exempt_bond_cusip_number' => :'String',
201
- :'id' => :'String',
281
+ :'fatca_filing_requirement' => :'Boolean',
202
282
  :'type' => :'String',
203
- :'issuer_id' => :'Integer',
283
+ :'id' => :'String',
284
+ :'issuer_id' => :'String',
204
285
  :'issuer_reference_id' => :'String',
205
286
  :'issuer_tin' => :'String',
206
287
  :'tax_year' => :'Integer',
207
- :'federal_efile' => :'Boolean',
208
- :'federal_efile_status' => :'Form1099StatusDetail',
209
- :'state_efile' => :'Boolean',
210
- :'state_efile_status' => :'Array<StateEfileStatusDetail>',
211
- :'postal_mail' => :'Boolean',
212
- :'postal_mail_status' => :'Form1099StatusDetail',
213
- :'tin_match' => :'Boolean',
214
- :'tin_match_status' => :'Form1099StatusDetail',
215
- :'address_verification' => :'Boolean',
216
- :'address_verification_status' => :'Form1099StatusDetail',
217
- :'e_delivery_status' => :'Form1099StatusDetail',
218
288
  :'reference_id' => :'String',
219
- :'email' => :'String',
220
- :'tin_type' => :'String',
221
- :'fatca_filing_requirement' => :'Boolean',
222
289
  :'tin' => :'String',
223
- :'no_tin' => :'Boolean',
224
- :'second_tin_notice' => :'Boolean',
225
290
  :'recipient_name' => :'String',
291
+ :'tin_type' => :'String',
226
292
  :'recipient_second_name' => :'String',
227
293
  :'address' => :'String',
228
294
  :'address2' => :'String',
229
295
  :'city' => :'String',
230
296
  :'state' => :'String',
231
297
  :'zip' => :'String',
232
- :'non_us_province' => :'String',
233
- :'country_code' => :'String',
298
+ :'email' => :'String',
234
299
  :'account_number' => :'String',
235
300
  :'office_code' => :'String',
301
+ :'non_us_province' => :'String',
302
+ :'country_code' => :'String',
303
+ :'federal_efile_date' => :'Date',
304
+ :'postal_mail' => :'Boolean',
305
+ :'state_efile_date' => :'Date',
306
+ :'recipient_edelivery_date' => :'Date',
307
+ :'tin_match' => :'Boolean',
308
+ :'no_tin' => :'Boolean',
309
+ :'address_verification' => :'Boolean',
310
+ :'state_and_local_withholding' => :'StateAndLocalWithholding',
311
+ :'second_tin_notice' => :'Boolean',
312
+ :'federal_efile_status' => :'Form1099StatusDetail',
313
+ :'state_efile_status' => :'Array<StateEfileStatusDetail>',
314
+ :'postal_mail_status' => :'Form1099StatusDetail',
315
+ :'tin_match_status' => :'Form1099StatusDetail',
316
+ :'address_verification_status' => :'Form1099StatusDetail',
317
+ :'e_delivery_status' => :'Form1099StatusDetail',
236
318
  :'validation_errors' => :'Array<ValidationError>',
237
319
  :'created_at' => :'Time',
238
- :'updated_at' => :'Time',
239
- :'state_and_local_withholding' => :'StateAndLocalWithholding'
320
+ :'updated_at' => :'Time'
240
321
  }
241
322
  end
242
323
 
@@ -257,32 +338,43 @@ module AvalaraSdk::A1099::V2
257
338
  :'bond_premium_on_treasury_obligations',
258
339
  :'bond_premium_on_tax_exempt_bond',
259
340
  :'tax_exempt_bond_cusip_number',
341
+ :'fatca_filing_requirement',
342
+ :'id',
343
+ :'issuer_id',
260
344
  :'issuer_reference_id',
261
345
  :'issuer_tin',
262
- :'state_efile_status',
263
- :'postal_mail_status',
264
- :'tin_match_status',
265
- :'address_verification_status',
266
- :'e_delivery_status',
346
+ :'tax_year',
267
347
  :'reference_id',
268
- :'email',
269
- :'tin_type',
270
- :'fatca_filing_requirement',
271
348
  :'tin',
272
- :'second_tin_notice',
273
349
  :'recipient_name',
350
+ :'tin_type',
274
351
  :'recipient_second_name',
275
352
  :'address',
276
353
  :'address2',
277
354
  :'city',
278
355
  :'state',
279
356
  :'zip',
280
- :'non_us_province',
281
- :'country_code',
357
+ :'email',
282
358
  :'account_number',
283
359
  :'office_code',
360
+ :'non_us_province',
361
+ :'country_code',
362
+ :'federal_efile_date',
363
+ :'postal_mail',
364
+ :'state_efile_date',
365
+ :'recipient_edelivery_date',
366
+ :'tin_match',
367
+ :'no_tin',
368
+ :'address_verification',
369
+ :'state_and_local_withholding',
370
+ :'second_tin_notice',
371
+ :'federal_efile_status',
372
+ :'state_efile_status',
373
+ :'postal_mail_status',
374
+ :'tin_match_status',
375
+ :'address_verification_status',
376
+ :'e_delivery_status',
284
377
  :'validation_errors',
285
- :'state_and_local_withholding'
286
378
  ])
287
379
  end
288
380
 
@@ -364,12 +456,18 @@ module AvalaraSdk::A1099::V2
364
456
  self.tax_exempt_bond_cusip_number = attributes[:'tax_exempt_bond_cusip_number']
365
457
  end
366
458
 
367
- if attributes.key?(:'id')
368
- self.id = attributes[:'id']
459
+ if attributes.key?(:'fatca_filing_requirement')
460
+ self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
369
461
  end
370
462
 
371
463
  if attributes.key?(:'type')
372
464
  self.type = attributes[:'type']
465
+ else
466
+ self.type = nil
467
+ end
468
+
469
+ if attributes.key?(:'id')
470
+ self.id = attributes[:'id']
373
471
  end
374
472
 
375
473
  if attributes.key?(:'issuer_id')
@@ -388,122 +486,134 @@ module AvalaraSdk::A1099::V2
388
486
  self.tax_year = attributes[:'tax_year']
389
487
  end
390
488
 
391
- if attributes.key?(:'federal_efile')
392
- self.federal_efile = attributes[:'federal_efile']
489
+ if attributes.key?(:'reference_id')
490
+ self.reference_id = attributes[:'reference_id']
393
491
  end
394
492
 
395
- if attributes.key?(:'federal_efile_status')
396
- self.federal_efile_status = attributes[:'federal_efile_status']
493
+ if attributes.key?(:'tin')
494
+ self.tin = attributes[:'tin']
397
495
  end
398
496
 
399
- if attributes.key?(:'state_efile')
400
- self.state_efile = attributes[:'state_efile']
497
+ if attributes.key?(:'recipient_name')
498
+ self.recipient_name = attributes[:'recipient_name']
499
+ else
500
+ self.recipient_name = nil
401
501
  end
402
502
 
403
- if attributes.key?(:'state_efile_status')
404
- if (value = attributes[:'state_efile_status']).is_a?(Array)
405
- self.state_efile_status = value
406
- end
503
+ if attributes.key?(:'tin_type')
504
+ self.tin_type = attributes[:'tin_type']
407
505
  end
408
506
 
409
- if attributes.key?(:'postal_mail')
410
- self.postal_mail = attributes[:'postal_mail']
507
+ if attributes.key?(:'recipient_second_name')
508
+ self.recipient_second_name = attributes[:'recipient_second_name']
411
509
  end
412
510
 
413
- if attributes.key?(:'postal_mail_status')
414
- self.postal_mail_status = attributes[:'postal_mail_status']
511
+ if attributes.key?(:'address')
512
+ self.address = attributes[:'address']
513
+ else
514
+ self.address = nil
415
515
  end
416
516
 
417
- if attributes.key?(:'tin_match')
418
- self.tin_match = attributes[:'tin_match']
517
+ if attributes.key?(:'address2')
518
+ self.address2 = attributes[:'address2']
419
519
  end
420
520
 
421
- if attributes.key?(:'tin_match_status')
422
- self.tin_match_status = attributes[:'tin_match_status']
521
+ if attributes.key?(:'city')
522
+ self.city = attributes[:'city']
523
+ else
524
+ self.city = nil
423
525
  end
424
526
 
425
- if attributes.key?(:'address_verification')
426
- self.address_verification = attributes[:'address_verification']
527
+ if attributes.key?(:'state')
528
+ self.state = attributes[:'state']
427
529
  end
428
530
 
429
- if attributes.key?(:'address_verification_status')
430
- self.address_verification_status = attributes[:'address_verification_status']
531
+ if attributes.key?(:'zip')
532
+ self.zip = attributes[:'zip']
431
533
  end
432
534
 
433
- if attributes.key?(:'e_delivery_status')
434
- self.e_delivery_status = attributes[:'e_delivery_status']
535
+ if attributes.key?(:'email')
536
+ self.email = attributes[:'email']
435
537
  end
436
538
 
437
- if attributes.key?(:'reference_id')
438
- self.reference_id = attributes[:'reference_id']
539
+ if attributes.key?(:'account_number')
540
+ self.account_number = attributes[:'account_number']
439
541
  end
440
542
 
441
- if attributes.key?(:'email')
442
- self.email = attributes[:'email']
543
+ if attributes.key?(:'office_code')
544
+ self.office_code = attributes[:'office_code']
443
545
  end
444
546
 
445
- if attributes.key?(:'tin_type')
446
- self.tin_type = attributes[:'tin_type']
547
+ if attributes.key?(:'non_us_province')
548
+ self.non_us_province = attributes[:'non_us_province']
447
549
  end
448
550
 
449
- if attributes.key?(:'fatca_filing_requirement')
450
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
551
+ if attributes.key?(:'country_code')
552
+ self.country_code = attributes[:'country_code']
553
+ else
554
+ self.country_code = nil
451
555
  end
452
556
 
453
- if attributes.key?(:'tin')
454
- self.tin = attributes[:'tin']
557
+ if attributes.key?(:'federal_efile_date')
558
+ self.federal_efile_date = attributes[:'federal_efile_date']
455
559
  end
456
560
 
457
- if attributes.key?(:'no_tin')
458
- self.no_tin = attributes[:'no_tin']
561
+ if attributes.key?(:'postal_mail')
562
+ self.postal_mail = attributes[:'postal_mail']
459
563
  end
460
564
 
461
- if attributes.key?(:'second_tin_notice')
462
- self.second_tin_notice = attributes[:'second_tin_notice']
565
+ if attributes.key?(:'state_efile_date')
566
+ self.state_efile_date = attributes[:'state_efile_date']
463
567
  end
464
568
 
465
- if attributes.key?(:'recipient_name')
466
- self.recipient_name = attributes[:'recipient_name']
569
+ if attributes.key?(:'recipient_edelivery_date')
570
+ self.recipient_edelivery_date = attributes[:'recipient_edelivery_date']
467
571
  end
468
572
 
469
- if attributes.key?(:'recipient_second_name')
470
- self.recipient_second_name = attributes[:'recipient_second_name']
573
+ if attributes.key?(:'tin_match')
574
+ self.tin_match = attributes[:'tin_match']
471
575
  end
472
576
 
473
- if attributes.key?(:'address')
474
- self.address = attributes[:'address']
577
+ if attributes.key?(:'no_tin')
578
+ self.no_tin = attributes[:'no_tin']
475
579
  end
476
580
 
477
- if attributes.key?(:'address2')
478
- self.address2 = attributes[:'address2']
581
+ if attributes.key?(:'address_verification')
582
+ self.address_verification = attributes[:'address_verification']
479
583
  end
480
584
 
481
- if attributes.key?(:'city')
482
- self.city = attributes[:'city']
585
+ if attributes.key?(:'state_and_local_withholding')
586
+ self.state_and_local_withholding = attributes[:'state_and_local_withholding']
483
587
  end
484
588
 
485
- if attributes.key?(:'state')
486
- self.state = attributes[:'state']
589
+ if attributes.key?(:'second_tin_notice')
590
+ self.second_tin_notice = attributes[:'second_tin_notice']
487
591
  end
488
592
 
489
- if attributes.key?(:'zip')
490
- self.zip = attributes[:'zip']
593
+ if attributes.key?(:'federal_efile_status')
594
+ self.federal_efile_status = attributes[:'federal_efile_status']
491
595
  end
492
596
 
493
- if attributes.key?(:'non_us_province')
494
- self.non_us_province = attributes[:'non_us_province']
597
+ if attributes.key?(:'state_efile_status')
598
+ if (value = attributes[:'state_efile_status']).is_a?(Array)
599
+ self.state_efile_status = value
600
+ end
495
601
  end
496
602
 
497
- if attributes.key?(:'country_code')
498
- self.country_code = attributes[:'country_code']
603
+ if attributes.key?(:'postal_mail_status')
604
+ self.postal_mail_status = attributes[:'postal_mail_status']
499
605
  end
500
606
 
501
- if attributes.key?(:'account_number')
502
- self.account_number = attributes[:'account_number']
607
+ if attributes.key?(:'tin_match_status')
608
+ self.tin_match_status = attributes[:'tin_match_status']
503
609
  end
504
610
 
505
- if attributes.key?(:'office_code')
506
- self.office_code = attributes[:'office_code']
611
+ if attributes.key?(:'address_verification_status')
612
+ self.address_verification_status = attributes[:'address_verification_status']
613
+ end
614
+
615
+ if attributes.key?(:'e_delivery_status')
616
+ self.e_delivery_status = attributes[:'e_delivery_status']
507
617
  end
508
618
 
509
619
  if attributes.key?(:'validation_errors')
@@ -519,10 +629,6 @@ module AvalaraSdk::A1099::V2
519
629
  if attributes.key?(:'updated_at')
520
630
  self.updated_at = attributes[:'updated_at']
521
631
  end
522
-
523
- if attributes.key?(:'state_and_local_withholding')
524
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
525
- end
526
632
  end
527
633
 
528
634
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -530,6 +636,10 @@ module AvalaraSdk::A1099::V2
530
636
  def list_invalid_properties
531
637
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
532
638
  invalid_properties = Array.new
639
+ if @type.nil?
640
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
641
+ end
642
+
533
643
  invalid_properties
534
644
  end
535
645
 
@@ -537,19 +647,32 @@ module AvalaraSdk::A1099::V2
537
647
  # @return true if the model is valid
538
648
  def valid?
539
649
  warn '[DEPRECATED] the `valid?` method is obsolete'
650
+ return false if @type.nil?
651
+ type_validator = EnumAttributeValidator.new('String', ["Form1099Nec", "Form1099Misc", "Form1099Div", "Form1099R", "Form1099K", "Form1095B", "Form1042S", "Form1095C", "Form1099Int"])
652
+ return false unless type_validator.valid?(@type)
653
+ tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
654
+ return false unless tin_type_validator.valid?(@tin_type)
540
655
  true
541
656
  end
542
657
 
543
- # Custom attribute writer method with validation
544
- # @param [Object] state_efile_status Value to be assigned
545
- def state_efile_status=(state_efile_status)
546
- @state_efile_status = state_efile_status
658
+ # Custom attribute writer method checking allowed values (enum).
659
+ # @param [Object] type Object to be assigned
660
+ def type=(type)
661
+ validator = EnumAttributeValidator.new('String', ["Form1099Nec", "Form1099Misc", "Form1099Div", "Form1099R", "Form1099K", "Form1095B", "Form1042S", "Form1095C", "Form1099Int"])
662
+ unless validator.valid?(type)
663
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
664
+ end
665
+ @type = type
547
666
  end
548
667
 
549
- # Custom attribute writer method with validation
550
- # @param [Object] validation_errors Value to be assigned
551
- def validation_errors=(validation_errors)
552
- @validation_errors = validation_errors
668
+ # Custom attribute writer method checking allowed values (enum).
669
+ # @param [Object] tin_type Object to be assigned
670
+ def tin_type=(tin_type)
671
+ validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
672
+ unless validator.valid?(tin_type)
673
+ fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
674
+ end
675
+ @tin_type = tin_type
553
676
  end
554
677
 
555
678
  # Checks equality by comparing each attribute.
@@ -571,45 +694,46 @@ module AvalaraSdk::A1099::V2
571
694
  bond_premium_on_treasury_obligations == o.bond_premium_on_treasury_obligations &&
572
695
  bond_premium_on_tax_exempt_bond == o.bond_premium_on_tax_exempt_bond &&
573
696
  tax_exempt_bond_cusip_number == o.tax_exempt_bond_cusip_number &&
574
- id == o.id &&
697
+ fatca_filing_requirement == o.fatca_filing_requirement &&
575
698
  type == o.type &&
699
+ id == o.id &&
576
700
  issuer_id == o.issuer_id &&
577
701
  issuer_reference_id == o.issuer_reference_id &&
578
702
  issuer_tin == o.issuer_tin &&
579
703
  tax_year == o.tax_year &&
580
- federal_efile == o.federal_efile &&
581
- federal_efile_status == o.federal_efile_status &&
582
- state_efile == o.state_efile &&
583
- state_efile_status == o.state_efile_status &&
584
- postal_mail == o.postal_mail &&
585
- postal_mail_status == o.postal_mail_status &&
586
- tin_match == o.tin_match &&
587
- tin_match_status == o.tin_match_status &&
588
- address_verification == o.address_verification &&
589
- address_verification_status == o.address_verification_status &&
590
- e_delivery_status == o.e_delivery_status &&
591
704
  reference_id == o.reference_id &&
592
- email == o.email &&
593
- tin_type == o.tin_type &&
594
- fatca_filing_requirement == o.fatca_filing_requirement &&
595
705
  tin == o.tin &&
596
- no_tin == o.no_tin &&
597
- second_tin_notice == o.second_tin_notice &&
598
706
  recipient_name == o.recipient_name &&
707
+ tin_type == o.tin_type &&
599
708
  recipient_second_name == o.recipient_second_name &&
600
709
  address == o.address &&
601
710
  address2 == o.address2 &&
602
711
  city == o.city &&
603
712
  state == o.state &&
604
713
  zip == o.zip &&
605
- non_us_province == o.non_us_province &&
606
- country_code == o.country_code &&
714
+ email == o.email &&
607
715
  account_number == o.account_number &&
608
716
  office_code == o.office_code &&
717
+ non_us_province == o.non_us_province &&
718
+ country_code == o.country_code &&
719
+ federal_efile_date == o.federal_efile_date &&
720
+ postal_mail == o.postal_mail &&
721
+ state_efile_date == o.state_efile_date &&
722
+ recipient_edelivery_date == o.recipient_edelivery_date &&
723
+ tin_match == o.tin_match &&
724
+ no_tin == o.no_tin &&
725
+ address_verification == o.address_verification &&
726
+ state_and_local_withholding == o.state_and_local_withholding &&
727
+ second_tin_notice == o.second_tin_notice &&
728
+ federal_efile_status == o.federal_efile_status &&
729
+ state_efile_status == o.state_efile_status &&
730
+ postal_mail_status == o.postal_mail_status &&
731
+ tin_match_status == o.tin_match_status &&
732
+ address_verification_status == o.address_verification_status &&
733
+ e_delivery_status == o.e_delivery_status &&
609
734
  validation_errors == o.validation_errors &&
610
735
  created_at == o.created_at &&
611
- updated_at == o.updated_at &&
612
- state_and_local_withholding == o.state_and_local_withholding
736
+ updated_at == o.updated_at
613
737
  end
614
738
 
615
739
  # @see the `==` method
@@ -621,7 +745,7 @@ module AvalaraSdk::A1099::V2
621
745
  # Calculates hash code according to all attributes.
622
746
  # @return [Integer] Hash code
623
747
  def hash
624
- [interest_income, early_withdrawal_penalty, us_savings_bonds_interest, federal_income_tax_withheld, investment_expenses, foreign_tax_paid, foreign_country, tax_exempt_interest, specified_private_activity_bond_interest, market_discount, bond_premium, bond_premium_on_treasury_obligations, bond_premium_on_tax_exempt_bond, tax_exempt_bond_cusip_number, 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, fatca_filing_requirement, 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
748
+ [interest_income, early_withdrawal_penalty, us_savings_bonds_interest, federal_income_tax_withheld, investment_expenses, foreign_tax_paid, foreign_country, tax_exempt_interest, specified_private_activity_bond_interest, market_discount, bond_premium, bond_premium_on_treasury_obligations, bond_premium_on_tax_exempt_bond, tax_exempt_bond_cusip_number, fatca_filing_requirement, type, id, issuer_id, issuer_reference_id, issuer_tin, tax_year, reference_id, tin, recipient_name, tin_type, recipient_second_name, address, address2, city, state, zip, email, account_number, office_code, non_us_province, country_code, federal_efile_date, postal_mail, state_efile_date, recipient_edelivery_date, tin_match, no_tin, address_verification, state_and_local_withholding, second_tin_notice, federal_efile_status, state_efile_status, postal_mail_status, tin_match_status, address_verification_status, e_delivery_status, validation_errors, created_at, updated_at].hash
625
749
  end
626
750
 
627
751
  # Builds the object from hash