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
@@ -1,586 +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
- # 1099-NEC - Nonemployee compensation
14
- class Form1099NecListItem
15
- # Nonemployee compensation
16
- attr_accessor :nonemployee_compensation
17
-
18
- # Payer made direct sales totaling $5,000 or more of consumer products to recipient for resale
19
- attr_accessor :direct_sales_indicator
20
-
21
- # Federal income tax withheld
22
- attr_accessor :federal_income_tax_withheld
23
-
24
- # Issuer Reference ID. One of `issuerReferenceId` or `issuerTin` is required.
25
- attr_accessor :issuer_reference_id
26
-
27
- # Issuer TIN. One of `issuerReferenceId` or `issuerTin` is required.
28
- attr_accessor :issuer_tin
29
-
30
- # Tax year
31
- attr_accessor :tax_year
32
-
33
- # Issuer ID
34
- attr_accessor :issuer_id
35
-
36
- # Reference ID
37
- attr_accessor :reference_id
38
-
39
- # Recipient Tax ID Number
40
- attr_accessor :recipient_tin
41
-
42
- # Recipient name
43
- attr_accessor :recipient_name
44
-
45
- # Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
46
- attr_accessor :tin_type
47
-
48
- # Recipient second name
49
- attr_accessor :recipient_second_name
50
-
51
- # Address
52
- attr_accessor :address
53
-
54
- # Address line 2
55
- attr_accessor :address2
56
-
57
- # City
58
- attr_accessor :city
59
-
60
- # US state. Required if CountryCode is \"US\".
61
- attr_accessor :state
62
-
63
- # Zip/postal code
64
- attr_accessor :zip
65
-
66
- # Recipient email address
67
- attr_accessor :email
68
-
69
- # Account number
70
- attr_accessor :account_number
71
-
72
- # Office code
73
- attr_accessor :office_code
74
-
75
- # Foreign province
76
- attr_accessor :non_us_province
77
-
78
- # Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
79
- attr_accessor :country_code
80
-
81
- # Boolean indicating that federal e-filing should be scheduled for this form
82
- attr_accessor :federal_e_file
83
-
84
- # Boolean indicating that postal mailing to the recipient should be scheduled for this form
85
- attr_accessor :postal_mail
86
-
87
- # Boolean indicating that state e-filing should be scheduled for this form
88
- attr_accessor :state_e_file
89
-
90
- # Boolean indicating that TIN Matching should be scheduled for this form
91
- attr_accessor :tin_match
92
-
93
- # Indicates whether the recipient has no TIN
94
- attr_accessor :no_tin
95
-
96
- # Second TIN notice in three years
97
- attr_accessor :second_tin_notice
98
-
99
- # Fatca filing requirement
100
- attr_accessor :fatca_filing_requirement
101
-
102
- # Boolean indicating that address verification should be scheduled for this form
103
- attr_accessor :address_verification
104
-
105
- # State and local withholding information
106
- attr_accessor :state_and_local_withholding
107
-
108
- class EnumAttributeValidator
109
- attr_reader :datatype
110
- attr_reader :allowable_values
111
-
112
- def initialize(datatype, allowable_values)
113
- @allowable_values = allowable_values.map do |value|
114
- case datatype.to_s
115
- when /Integer/i
116
- value.to_i
117
- when /Float/i
118
- value.to_f
119
- else
120
- value
121
- end
122
- end
123
- end
124
-
125
- def valid?(value)
126
- !value || allowable_values.include?(value)
127
- end
128
- end
129
-
130
- # Attribute mapping from ruby-style variable name to JSON key.
131
- def self.attribute_map
132
- {
133
- :'nonemployee_compensation' => :'nonemployeeCompensation',
134
- :'direct_sales_indicator' => :'directSalesIndicator',
135
- :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
136
- :'issuer_reference_id' => :'issuerReferenceId',
137
- :'issuer_tin' => :'issuerTin',
138
- :'tax_year' => :'taxYear',
139
- :'issuer_id' => :'issuerId',
140
- :'reference_id' => :'referenceId',
141
- :'recipient_tin' => :'recipientTin',
142
- :'recipient_name' => :'recipientName',
143
- :'tin_type' => :'tinType',
144
- :'recipient_second_name' => :'recipientSecondName',
145
- :'address' => :'address',
146
- :'address2' => :'address2',
147
- :'city' => :'city',
148
- :'state' => :'state',
149
- :'zip' => :'zip',
150
- :'email' => :'email',
151
- :'account_number' => :'accountNumber',
152
- :'office_code' => :'officeCode',
153
- :'non_us_province' => :'nonUsProvince',
154
- :'country_code' => :'countryCode',
155
- :'federal_e_file' => :'federalEFile',
156
- :'postal_mail' => :'postalMail',
157
- :'state_e_file' => :'stateEFile',
158
- :'tin_match' => :'tinMatch',
159
- :'no_tin' => :'noTin',
160
- :'second_tin_notice' => :'secondTinNotice',
161
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
162
- :'address_verification' => :'addressVerification',
163
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
164
- }
165
- end
166
-
167
- # Returns all the JSON keys this model knows about
168
- def self.acceptable_attributes
169
- attribute_map.values
170
- end
171
-
172
- # Attribute type mapping.
173
- def self.openapi_types
174
- {
175
- :'nonemployee_compensation' => :'Float',
176
- :'direct_sales_indicator' => :'Boolean',
177
- :'federal_income_tax_withheld' => :'Float',
178
- :'issuer_reference_id' => :'String',
179
- :'issuer_tin' => :'String',
180
- :'tax_year' => :'Integer',
181
- :'issuer_id' => :'String',
182
- :'reference_id' => :'String',
183
- :'recipient_tin' => :'String',
184
- :'recipient_name' => :'String',
185
- :'tin_type' => :'String',
186
- :'recipient_second_name' => :'String',
187
- :'address' => :'String',
188
- :'address2' => :'String',
189
- :'city' => :'String',
190
- :'state' => :'String',
191
- :'zip' => :'String',
192
- :'email' => :'String',
193
- :'account_number' => :'String',
194
- :'office_code' => :'String',
195
- :'non_us_province' => :'String',
196
- :'country_code' => :'String',
197
- :'federal_e_file' => :'Boolean',
198
- :'postal_mail' => :'Boolean',
199
- :'state_e_file' => :'Boolean',
200
- :'tin_match' => :'Boolean',
201
- :'no_tin' => :'Boolean',
202
- :'second_tin_notice' => :'Boolean',
203
- :'fatca_filing_requirement' => :'Boolean',
204
- :'address_verification' => :'Boolean',
205
- :'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
206
- }
207
- end
208
-
209
- # List of attributes with nullable: true
210
- def self.openapi_nullable
211
- Set.new([
212
- :'issuer_reference_id',
213
- :'issuer_tin',
214
- :'issuer_id',
215
- :'reference_id',
216
- :'recipient_tin',
217
- :'recipient_name',
218
- :'recipient_second_name',
219
- :'address',
220
- :'address2',
221
- :'city',
222
- :'state',
223
- :'zip',
224
- :'email',
225
- :'account_number',
226
- :'office_code',
227
- :'non_us_province',
228
- :'country_code',
229
- :'second_tin_notice',
230
- :'state_and_local_withholding'
231
- ])
232
- end
233
-
234
- # List of class defined in allOf (OpenAPI v3)
235
- def self.openapi_all_of
236
- [
237
- :'FormRequestListItemBase'
238
- ]
239
- end
240
-
241
- # Initializes the object
242
- # @param [Hash] attributes Model attributes in the form of hash
243
- def initialize(attributes = {})
244
- if (!attributes.is_a?(Hash))
245
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099NecListItem` initialize method"
246
- end
247
-
248
- # check to see if the attribute exists and convert string to symbol for hash key
249
- attributes = attributes.each_with_object({}) { |(k, v), h|
250
- if (!self.class.attribute_map.key?(k.to_sym))
251
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099NecListItem`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
252
- end
253
- h[k.to_sym] = v
254
- }
255
-
256
- if attributes.key?(:'nonemployee_compensation')
257
- self.nonemployee_compensation = attributes[:'nonemployee_compensation']
258
- else
259
- self.nonemployee_compensation = nil
260
- end
261
-
262
- if attributes.key?(:'direct_sales_indicator')
263
- self.direct_sales_indicator = attributes[:'direct_sales_indicator']
264
- end
265
-
266
- if attributes.key?(:'federal_income_tax_withheld')
267
- self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
268
- end
269
-
270
- if attributes.key?(:'issuer_reference_id')
271
- self.issuer_reference_id = attributes[:'issuer_reference_id']
272
- end
273
-
274
- if attributes.key?(:'issuer_tin')
275
- self.issuer_tin = attributes[:'issuer_tin']
276
- end
277
-
278
- if attributes.key?(:'tax_year')
279
- self.tax_year = attributes[:'tax_year']
280
- else
281
- self.tax_year = nil
282
- end
283
-
284
- if attributes.key?(:'issuer_id')
285
- self.issuer_id = attributes[:'issuer_id']
286
- end
287
-
288
- if attributes.key?(:'reference_id')
289
- self.reference_id = attributes[:'reference_id']
290
- end
291
-
292
- if attributes.key?(:'recipient_tin')
293
- self.recipient_tin = attributes[:'recipient_tin']
294
- end
295
-
296
- if attributes.key?(:'recipient_name')
297
- self.recipient_name = attributes[:'recipient_name']
298
- end
299
-
300
- if attributes.key?(:'tin_type')
301
- self.tin_type = attributes[:'tin_type']
302
- end
303
-
304
- if attributes.key?(:'recipient_second_name')
305
- self.recipient_second_name = attributes[:'recipient_second_name']
306
- end
307
-
308
- if attributes.key?(:'address')
309
- self.address = attributes[:'address']
310
- end
311
-
312
- if attributes.key?(:'address2')
313
- self.address2 = attributes[:'address2']
314
- end
315
-
316
- if attributes.key?(:'city')
317
- self.city = attributes[:'city']
318
- end
319
-
320
- if attributes.key?(:'state')
321
- self.state = attributes[:'state']
322
- end
323
-
324
- if attributes.key?(:'zip')
325
- self.zip = attributes[:'zip']
326
- end
327
-
328
- if attributes.key?(:'email')
329
- self.email = attributes[:'email']
330
- end
331
-
332
- if attributes.key?(:'account_number')
333
- self.account_number = attributes[:'account_number']
334
- end
335
-
336
- if attributes.key?(:'office_code')
337
- self.office_code = attributes[:'office_code']
338
- end
339
-
340
- if attributes.key?(:'non_us_province')
341
- self.non_us_province = attributes[:'non_us_province']
342
- end
343
-
344
- if attributes.key?(:'country_code')
345
- self.country_code = attributes[:'country_code']
346
- end
347
-
348
- if attributes.key?(:'federal_e_file')
349
- self.federal_e_file = attributes[:'federal_e_file']
350
- end
351
-
352
- if attributes.key?(:'postal_mail')
353
- self.postal_mail = attributes[:'postal_mail']
354
- end
355
-
356
- if attributes.key?(:'state_e_file')
357
- self.state_e_file = attributes[:'state_e_file']
358
- end
359
-
360
- if attributes.key?(:'tin_match')
361
- self.tin_match = attributes[:'tin_match']
362
- end
363
-
364
- if attributes.key?(:'no_tin')
365
- self.no_tin = attributes[:'no_tin']
366
- end
367
-
368
- if attributes.key?(:'second_tin_notice')
369
- self.second_tin_notice = attributes[:'second_tin_notice']
370
- end
371
-
372
- if attributes.key?(:'fatca_filing_requirement')
373
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
374
- end
375
-
376
- if attributes.key?(:'address_verification')
377
- self.address_verification = attributes[:'address_verification']
378
- end
379
-
380
- if attributes.key?(:'state_and_local_withholding')
381
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
382
- end
383
- end
384
-
385
- # Show invalid properties with the reasons. Usually used together with valid?
386
- # @return Array for valid properties with the reasons
387
- def list_invalid_properties
388
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
389
- invalid_properties = Array.new
390
- if @nonemployee_compensation.nil?
391
- invalid_properties.push('invalid value for "nonemployee_compensation", nonemployee_compensation cannot be nil.')
392
- end
393
-
394
- if @tax_year.nil?
395
- invalid_properties.push('invalid value for "tax_year", tax_year cannot be nil.')
396
- end
397
-
398
- invalid_properties
399
- end
400
-
401
- # Check to see if the all the properties in the model are valid
402
- # @return true if the model is valid
403
- def valid?
404
- warn '[DEPRECATED] the `valid?` method is obsolete'
405
- return false if @nonemployee_compensation.nil?
406
- return false if @tax_year.nil?
407
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
408
- return false unless tin_type_validator.valid?(@tin_type)
409
- true
410
- end
411
-
412
- # Custom attribute writer method checking allowed values (enum).
413
- # @param [Object] tin_type Object to be assigned
414
- def tin_type=(tin_type)
415
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
416
- unless validator.valid?(tin_type)
417
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
418
- end
419
- @tin_type = tin_type
420
- end
421
-
422
- # Checks equality by comparing each attribute.
423
- # @param [Object] Object to be compared
424
- def ==(o)
425
- return true if self.equal?(o)
426
- self.class == o.class &&
427
- nonemployee_compensation == o.nonemployee_compensation &&
428
- direct_sales_indicator == o.direct_sales_indicator &&
429
- federal_income_tax_withheld == o.federal_income_tax_withheld &&
430
- issuer_reference_id == o.issuer_reference_id &&
431
- issuer_tin == o.issuer_tin &&
432
- tax_year == o.tax_year &&
433
- issuer_id == o.issuer_id &&
434
- reference_id == o.reference_id &&
435
- recipient_tin == o.recipient_tin &&
436
- recipient_name == o.recipient_name &&
437
- tin_type == o.tin_type &&
438
- recipient_second_name == o.recipient_second_name &&
439
- address == o.address &&
440
- address2 == o.address2 &&
441
- city == o.city &&
442
- state == o.state &&
443
- zip == o.zip &&
444
- email == o.email &&
445
- account_number == o.account_number &&
446
- office_code == o.office_code &&
447
- non_us_province == o.non_us_province &&
448
- country_code == o.country_code &&
449
- federal_e_file == o.federal_e_file &&
450
- postal_mail == o.postal_mail &&
451
- state_e_file == o.state_e_file &&
452
- tin_match == o.tin_match &&
453
- no_tin == o.no_tin &&
454
- second_tin_notice == o.second_tin_notice &&
455
- fatca_filing_requirement == o.fatca_filing_requirement &&
456
- address_verification == o.address_verification &&
457
- state_and_local_withholding == o.state_and_local_withholding
458
- end
459
-
460
- # @see the `==` method
461
- # @param [Object] Object to be compared
462
- def eql?(o)
463
- self == o
464
- end
465
-
466
- # Calculates hash code according to all attributes.
467
- # @return [Integer] Hash code
468
- def hash
469
- [nonemployee_compensation, direct_sales_indicator, federal_income_tax_withheld, issuer_reference_id, issuer_tin, tax_year, issuer_id, reference_id, recipient_tin, recipient_name, tin_type, recipient_second_name, address, address2, city, state, zip, email, account_number, office_code, non_us_province, country_code, federal_e_file, postal_mail, state_e_file, tin_match, no_tin, second_tin_notice, fatca_filing_requirement, address_verification, state_and_local_withholding].hash
470
- end
471
-
472
- # Builds the object from hash
473
- # @param [Hash] attributes Model attributes in the form of hash
474
- # @return [Object] Returns the model itself
475
- def self.build_from_hash(attributes)
476
- return nil unless attributes.is_a?(Hash)
477
- attributes = attributes.transform_keys(&:to_sym)
478
- transformed_hash = {}
479
- openapi_types.each_pair do |key, type|
480
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
481
- transformed_hash["#{key}"] = nil
482
- elsif type =~ /\AArray<(.*)>/i
483
- # check to ensure the input is an array given that the attribute
484
- # is documented as an array but the input is not
485
- if attributes[attribute_map[key]].is_a?(Array)
486
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
487
- end
488
- elsif !attributes[attribute_map[key]].nil?
489
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
490
- end
491
- end
492
- new(transformed_hash)
493
- end
494
-
495
- # Deserializes the data based on type
496
- # @param string type Data type
497
- # @param string value Value to be deserialized
498
- # @return [Object] Deserialized data
499
- def self._deserialize(type, value)
500
- case type.to_sym
501
- when :Time
502
- Time.parse(value)
503
- when :Date
504
- Date.parse(value)
505
- when :String
506
- value.to_s
507
- when :Integer
508
- value.to_i
509
- when :Float
510
- value.to_f
511
- when :Boolean
512
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
513
- true
514
- else
515
- false
516
- end
517
- when :Object
518
- # generic object (usually a Hash), return directly
519
- value
520
- when /\AArray<(?<inner_type>.+)>\z/
521
- inner_type = Regexp.last_match[:inner_type]
522
- value.map { |v| _deserialize(inner_type, v) }
523
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
524
- k_type = Regexp.last_match[:k_type]
525
- v_type = Regexp.last_match[:v_type]
526
- {}.tap do |hash|
527
- value.each do |k, v|
528
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
529
- end
530
- end
531
- else # model
532
- # models (e.g. Pet) or oneOf
533
- klass = AvalaraSdk::A1099::V2.const_get(type)
534
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
535
- end
536
- end
537
-
538
- # Returns the string representation of the object
539
- # @return [String] String presentation of the object
540
- def to_s
541
- to_hash.to_s
542
- end
543
-
544
- # to_body is an alias to to_hash (backward compatibility)
545
- # @return [Hash] Returns the object in the form of hash
546
- def to_body
547
- to_hash
548
- end
549
-
550
- # Returns the object in the form of hash
551
- # @return [Hash] Returns the object in the form of hash
552
- def to_hash
553
- hash = {}
554
- self.class.attribute_map.each_pair do |attr, param|
555
- value = self.send(attr)
556
- if value.nil?
557
- is_nullable = self.class.openapi_nullable.include?(attr)
558
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
559
- end
560
-
561
- hash[param] = _to_hash(value)
562
- end
563
- hash
564
- end
565
-
566
- # Outputs non-array value in the form of hash
567
- # For object, use to_hash. Otherwise, just return the value
568
- # @param [Object] value Any valid value
569
- # @return [Hash] Returns the value in the form of hash
570
- def _to_hash(value)
571
- if value.is_a?(Array)
572
- value.compact.map { |v| _to_hash(v) }
573
- elsif value.is_a?(Hash)
574
- {}.tap do |hash|
575
- value.each { |k, v| hash[k] = _to_hash(v) }
576
- end
577
- elsif value.respond_to? :to_hash
578
- value.to_hash
579
- else
580
- value
581
- end
582
- end
583
-
584
- end
585
-
586
- end