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