avalara_sdk 25.8.2 → 25.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +18 -79
  4. data/docs/A1099/V2/CompaniesW9Api.md +18 -18
  5. data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
  6. data/docs/A1099/V2/CompanyResponse.md +37 -37
  7. data/docs/A1099/V2/CoveredIndividual.md +56 -0
  8. data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
  9. data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
  10. data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
  11. data/docs/A1099/V2/EntryStatusResponse.md +20 -0
  12. data/docs/A1099/V2/Form1042S.md +83 -83
  13. data/docs/A1099/V2/Form1095B.md +72 -62
  14. data/docs/A1099/V2/Form1095C.md +112 -0
  15. data/docs/A1099/V2/Form1099Base.md +60 -60
  16. data/docs/A1099/V2/Form1099Div.md +79 -77
  17. data/docs/A1099/V2/Form1099Int.md +76 -74
  18. data/docs/A1099/V2/Form1099K.md +83 -83
  19. data/docs/A1099/V2/Form1099ListRequest.md +20 -0
  20. data/docs/A1099/V2/Form1099Misc.md +79 -77
  21. data/docs/A1099/V2/Form1099Nec.md +64 -64
  22. data/docs/A1099/V2/Form1099R.md +95 -93
  23. data/docs/A1099/V2/Forms1099Api.md +45 -41
  24. data/docs/A1099/V2/FormsW9Api.md +98 -14
  25. data/docs/A1099/V2/Get1099Form200Response.md +19 -19
  26. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
  27. data/docs/A1099/V2/IssuerCommand.md +16 -16
  28. data/docs/A1099/V2/IssuerResponse.md +35 -35
  29. data/docs/A1099/V2/Issuers1099Api.md +10 -10
  30. data/docs/A1099/V2/JobResponse.md +56 -0
  31. data/docs/A1099/V2/JobsApi.md +91 -0
  32. data/docs/A1099/V2/OfferAndCoverage.md +28 -0
  33. data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
  34. data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
  35. data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
  36. data/docs/A1099/V2/ValidationError.md +2 -2
  37. data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
  38. data/docs/A1099/V2/W4FormRequest.md +6 -6
  39. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
  40. data/docs/A1099/V2/W8BenEFormRequest.md +6 -6
  41. data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
  42. data/docs/A1099/V2/W8BenFormRequest.md +6 -6
  43. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
  44. data/docs/A1099/V2/W8ImyFormRequest.md +6 -6
  45. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
  46. data/docs/A1099/V2/W9FormBaseRequest.md +6 -6
  47. data/docs/A1099/V2/W9FormBaseResponse.md +3 -3
  48. data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
  49. data/docs/A1099/V2/W9FormRequest.md +6 -6
  50. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
  51. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +89 -57
  52. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +144 -6
  53. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  54. data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
  55. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  56. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  57. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  58. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  59. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  60. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  61. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  62. data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
  63. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
  64. data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
  65. data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
  66. data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
  67. data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
  68. data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
  69. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +424 -179
  70. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +365 -179
  71. data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +259 -111
  72. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +286 -177
  73. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +310 -171
  74. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +308 -174
  75. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +298 -186
  76. data/lib/avalara_sdk/models/A1099/V2/{form1099_div_list.rb → form1099_list_request.rb} +49 -22
  77. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +337 -201
  78. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +298 -183
  79. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +414 -274
  80. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
  81. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +13 -1
  82. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
  83. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
  84. data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +108 -42
  85. data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
  86. data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
  87. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
  88. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
  89. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -0
  90. data/lib/avalara_sdk/models/A1099/V2/w4_form_minimal_request.rb +418 -0
  91. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +53 -27
  92. data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → w8_ben_e_form_minimal_request.rb} +139 -170
  93. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +53 -27
  94. data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → w8_ben_form_minimal_request.rb} +148 -122
  95. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +53 -27
  96. data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w8_imy_form_minimal_request.rb} +135 -132
  97. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +53 -27
  98. data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → w9_form_base_minimal_request.rb} +87 -53
  99. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +60 -27
  100. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +14 -14
  101. data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → w9_form_minimal_request.rb} +140 -148
  102. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +53 -27
  103. data/lib/avalara_sdk/version.rb +1 -1
  104. data/lib/avalara_sdk.rb +22 -105
  105. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  106. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  107. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  108. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  109. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  110. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  111. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  112. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  113. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  114. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  115. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  116. metadata +37 -103
  117. data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
  118. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
  119. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
  120. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
  121. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
  122. data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
  123. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
  124. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
  125. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
  126. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
  127. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
  128. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
  129. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
  130. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
  131. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
  132. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
  133. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
  134. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
  135. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
  136. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
  137. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
  138. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
  139. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
  140. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
  141. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
  142. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
  143. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
  144. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
  145. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
  146. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
  147. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
  148. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
  149. data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
  150. data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
  151. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
  152. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
  153. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
  154. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
  155. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
  156. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
  157. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
  158. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
  159. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
  160. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
  161. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
  162. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
  163. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
  164. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
  165. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
  166. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
  167. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
  168. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
  169. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
  170. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
  171. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
  172. data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
  173. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
  174. data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
  175. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
  176. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
  177. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
  178. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_request.rb +0 -311
  179. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
  180. data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
  181. data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
  182. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
  183. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
  184. data/lib/avalara_sdk/models/A1099/V2/problem_details.rb +0 -251
  185. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
  186. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
  187. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
  188. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
  189. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
  190. data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
  191. data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
  192. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
  193. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
  194. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
  195. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
  196. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
  197. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
  198. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
  199. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
  200. data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -1,627 +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 Form1095BRequest
14
- # Employee's first name
15
- attr_accessor :employee_first_name
16
-
17
- # Employee's middle name
18
- attr_accessor :employee_middle_name
19
-
20
- # Employee's last name
21
- attr_accessor :employee_last_name
22
-
23
- # Employee's name suffix
24
- attr_accessor :employee_name_suffix
25
-
26
- # Employee's date of birth
27
- attr_accessor :employee_date_of_birth
28
-
29
- # Origin of health coverage code
30
- attr_accessor :origin_of_health_coverage_code
31
-
32
- # Covered individuals information
33
- attr_accessor :covered_individuals
34
-
35
- attr_accessor :type
36
-
37
- # Issuer ID
38
- attr_accessor :issuer_id
39
-
40
- # Reference ID
41
- attr_accessor :reference_id
42
-
43
- # Recipient Tax ID Number
44
- attr_accessor :recipient_tin
45
-
46
- # Recipient name
47
- attr_accessor :recipient_name
48
-
49
- # Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
50
- attr_accessor :tin_type
51
-
52
- # Recipient second name
53
- attr_accessor :recipient_second_name
54
-
55
- # Address
56
- attr_accessor :address
57
-
58
- # Address line 2
59
- attr_accessor :address2
60
-
61
- # City
62
- attr_accessor :city
63
-
64
- # US state. Required if CountryCode is \"US\".
65
- attr_accessor :state
66
-
67
- # Zip/postal code
68
- attr_accessor :zip
69
-
70
- # Recipient email address
71
- attr_accessor :email
72
-
73
- # Account number
74
- attr_accessor :account_number
75
-
76
- # Office code
77
- attr_accessor :office_code
78
-
79
- # Foreign province
80
- attr_accessor :non_us_province
81
-
82
- # Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
83
- attr_accessor :country_code
84
-
85
- # Boolean indicating that federal e-filing should be scheduled for this form
86
- attr_accessor :federal_e_file
87
-
88
- # Boolean indicating that postal mailing to the recipient should be scheduled for this form
89
- attr_accessor :postal_mail
90
-
91
- # Boolean indicating that state e-filing should be scheduled for this form
92
- attr_accessor :state_e_file
93
-
94
- # Boolean indicating that TIN Matching should be scheduled for this form
95
- attr_accessor :tin_match
96
-
97
- # Indicates whether the recipient has no TIN
98
- attr_accessor :no_tin
99
-
100
- # Second TIN notice in three years
101
- attr_accessor :second_tin_notice
102
-
103
- # Fatca filing requirement
104
- attr_accessor :fatca_filing_requirement
105
-
106
- # Boolean indicating that address verification should be scheduled for this form
107
- attr_accessor :address_verification
108
-
109
- # State and local withholding information
110
- attr_accessor :state_and_local_withholding
111
-
112
- class EnumAttributeValidator
113
- attr_reader :datatype
114
- attr_reader :allowable_values
115
-
116
- def initialize(datatype, allowable_values)
117
- @allowable_values = allowable_values.map do |value|
118
- case datatype.to_s
119
- when /Integer/i
120
- value.to_i
121
- when /Float/i
122
- value.to_f
123
- else
124
- value
125
- end
126
- end
127
- end
128
-
129
- def valid?(value)
130
- !value || allowable_values.include?(value)
131
- end
132
- end
133
-
134
- # Attribute mapping from ruby-style variable name to JSON key.
135
- def self.attribute_map
136
- {
137
- :'employee_first_name' => :'employeeFirstName',
138
- :'employee_middle_name' => :'employeeMiddleName',
139
- :'employee_last_name' => :'employeeLastName',
140
- :'employee_name_suffix' => :'employeeNameSuffix',
141
- :'employee_date_of_birth' => :'employeeDateOfBirth',
142
- :'origin_of_health_coverage_code' => :'originOfHealthCoverageCode',
143
- :'covered_individuals' => :'coveredIndividuals',
144
- :'type' => :'type',
145
- :'issuer_id' => :'issuerId',
146
- :'reference_id' => :'referenceId',
147
- :'recipient_tin' => :'recipientTin',
148
- :'recipient_name' => :'recipientName',
149
- :'tin_type' => :'tinType',
150
- :'recipient_second_name' => :'recipientSecondName',
151
- :'address' => :'address',
152
- :'address2' => :'address2',
153
- :'city' => :'city',
154
- :'state' => :'state',
155
- :'zip' => :'zip',
156
- :'email' => :'email',
157
- :'account_number' => :'accountNumber',
158
- :'office_code' => :'officeCode',
159
- :'non_us_province' => :'nonUsProvince',
160
- :'country_code' => :'countryCode',
161
- :'federal_e_file' => :'federalEFile',
162
- :'postal_mail' => :'postalMail',
163
- :'state_e_file' => :'stateEFile',
164
- :'tin_match' => :'tinMatch',
165
- :'no_tin' => :'noTin',
166
- :'second_tin_notice' => :'secondTinNotice',
167
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
168
- :'address_verification' => :'addressVerification',
169
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
170
- }
171
- end
172
-
173
- # Returns all the JSON keys this model knows about
174
- def self.acceptable_attributes
175
- attribute_map.values
176
- end
177
-
178
- # Attribute type mapping.
179
- def self.openapi_types
180
- {
181
- :'employee_first_name' => :'String',
182
- :'employee_middle_name' => :'String',
183
- :'employee_last_name' => :'String',
184
- :'employee_name_suffix' => :'String',
185
- :'employee_date_of_birth' => :'Time',
186
- :'origin_of_health_coverage_code' => :'String',
187
- :'covered_individuals' => :'Array<CoveredIndividualRequest>',
188
- :'type' => :'String',
189
- :'issuer_id' => :'String',
190
- :'reference_id' => :'String',
191
- :'recipient_tin' => :'String',
192
- :'recipient_name' => :'String',
193
- :'tin_type' => :'String',
194
- :'recipient_second_name' => :'String',
195
- :'address' => :'String',
196
- :'address2' => :'String',
197
- :'city' => :'String',
198
- :'state' => :'String',
199
- :'zip' => :'String',
200
- :'email' => :'String',
201
- :'account_number' => :'String',
202
- :'office_code' => :'String',
203
- :'non_us_province' => :'String',
204
- :'country_code' => :'String',
205
- :'federal_e_file' => :'Boolean',
206
- :'postal_mail' => :'Boolean',
207
- :'state_e_file' => :'Boolean',
208
- :'tin_match' => :'Boolean',
209
- :'no_tin' => :'Boolean',
210
- :'second_tin_notice' => :'Boolean',
211
- :'fatca_filing_requirement' => :'Boolean',
212
- :'address_verification' => :'Boolean',
213
- :'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
214
- }
215
- end
216
-
217
- # List of attributes with nullable: true
218
- def self.openapi_nullable
219
- Set.new([
220
- :'employee_middle_name',
221
- :'employee_name_suffix',
222
- :'employee_date_of_birth',
223
- :'issuer_id',
224
- :'reference_id',
225
- :'recipient_tin',
226
- :'recipient_name',
227
- :'recipient_second_name',
228
- :'address',
229
- :'address2',
230
- :'city',
231
- :'state',
232
- :'zip',
233
- :'email',
234
- :'account_number',
235
- :'office_code',
236
- :'non_us_province',
237
- :'country_code',
238
- :'second_tin_notice',
239
- :'state_and_local_withholding'
240
- ])
241
- end
242
-
243
- # List of class defined in allOf (OpenAPI v3)
244
- def self.openapi_all_of
245
- [
246
- :'FormSingleRequestBase'
247
- ]
248
- end
249
-
250
- # Initializes the object
251
- # @param [Hash] attributes Model attributes in the form of hash
252
- def initialize(attributes = {})
253
- if (!attributes.is_a?(Hash))
254
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1095BRequest` initialize method"
255
- end
256
-
257
- # check to see if the attribute exists and convert string to symbol for hash key
258
- attributes = attributes.each_with_object({}) { |(k, v), h|
259
- if (!self.class.attribute_map.key?(k.to_sym))
260
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1095BRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
261
- end
262
- h[k.to_sym] = v
263
- }
264
-
265
- if attributes.key?(:'employee_first_name')
266
- self.employee_first_name = attributes[:'employee_first_name']
267
- end
268
-
269
- if attributes.key?(:'employee_middle_name')
270
- self.employee_middle_name = attributes[:'employee_middle_name']
271
- end
272
-
273
- if attributes.key?(:'employee_last_name')
274
- self.employee_last_name = attributes[:'employee_last_name']
275
- end
276
-
277
- if attributes.key?(:'employee_name_suffix')
278
- self.employee_name_suffix = attributes[:'employee_name_suffix']
279
- end
280
-
281
- if attributes.key?(:'employee_date_of_birth')
282
- self.employee_date_of_birth = attributes[:'employee_date_of_birth']
283
- end
284
-
285
- if attributes.key?(:'origin_of_health_coverage_code')
286
- self.origin_of_health_coverage_code = attributes[:'origin_of_health_coverage_code']
287
- end
288
-
289
- if attributes.key?(:'covered_individuals')
290
- if (value = attributes[:'covered_individuals']).is_a?(Array)
291
- self.covered_individuals = value
292
- end
293
- end
294
-
295
- if attributes.key?(:'type')
296
- self.type = attributes[:'type']
297
- end
298
-
299
- if attributes.key?(:'issuer_id')
300
- self.issuer_id = attributes[:'issuer_id']
301
- end
302
-
303
- if attributes.key?(:'reference_id')
304
- self.reference_id = attributes[:'reference_id']
305
- end
306
-
307
- if attributes.key?(:'recipient_tin')
308
- self.recipient_tin = attributes[:'recipient_tin']
309
- end
310
-
311
- if attributes.key?(:'recipient_name')
312
- self.recipient_name = attributes[:'recipient_name']
313
- end
314
-
315
- if attributes.key?(:'tin_type')
316
- self.tin_type = attributes[:'tin_type']
317
- end
318
-
319
- if attributes.key?(:'recipient_second_name')
320
- self.recipient_second_name = attributes[:'recipient_second_name']
321
- end
322
-
323
- if attributes.key?(:'address')
324
- self.address = attributes[:'address']
325
- end
326
-
327
- if attributes.key?(:'address2')
328
- self.address2 = attributes[:'address2']
329
- end
330
-
331
- if attributes.key?(:'city')
332
- self.city = attributes[:'city']
333
- end
334
-
335
- if attributes.key?(:'state')
336
- self.state = attributes[:'state']
337
- end
338
-
339
- if attributes.key?(:'zip')
340
- self.zip = attributes[:'zip']
341
- end
342
-
343
- if attributes.key?(:'email')
344
- self.email = attributes[:'email']
345
- end
346
-
347
- if attributes.key?(:'account_number')
348
- self.account_number = attributes[:'account_number']
349
- end
350
-
351
- if attributes.key?(:'office_code')
352
- self.office_code = attributes[:'office_code']
353
- end
354
-
355
- if attributes.key?(:'non_us_province')
356
- self.non_us_province = attributes[:'non_us_province']
357
- end
358
-
359
- if attributes.key?(:'country_code')
360
- self.country_code = attributes[:'country_code']
361
- end
362
-
363
- if attributes.key?(:'federal_e_file')
364
- self.federal_e_file = attributes[:'federal_e_file']
365
- end
366
-
367
- if attributes.key?(:'postal_mail')
368
- self.postal_mail = attributes[:'postal_mail']
369
- end
370
-
371
- if attributes.key?(:'state_e_file')
372
- self.state_e_file = attributes[:'state_e_file']
373
- end
374
-
375
- if attributes.key?(:'tin_match')
376
- self.tin_match = attributes[:'tin_match']
377
- end
378
-
379
- if attributes.key?(:'no_tin')
380
- self.no_tin = attributes[:'no_tin']
381
- end
382
-
383
- if attributes.key?(:'second_tin_notice')
384
- self.second_tin_notice = attributes[:'second_tin_notice']
385
- end
386
-
387
- if attributes.key?(:'fatca_filing_requirement')
388
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
389
- end
390
-
391
- if attributes.key?(:'address_verification')
392
- self.address_verification = attributes[:'address_verification']
393
- end
394
-
395
- if attributes.key?(:'state_and_local_withholding')
396
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
397
- end
398
- end
399
-
400
- # Show invalid properties with the reasons. Usually used together with valid?
401
- # @return Array for valid properties with the reasons
402
- def list_invalid_properties
403
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
404
- invalid_properties = Array.new
405
- invalid_properties
406
- end
407
-
408
- # Check to see if the all the properties in the model are valid
409
- # @return true if the model is valid
410
- def valid?
411
- warn '[DEPRECATED] the `valid?` method is obsolete'
412
- origin_of_health_coverage_code_validator = EnumAttributeValidator.new('String', ["A", "B", "C", "D", "E", "F", "G"])
413
- return false unless origin_of_health_coverage_code_validator.valid?(@origin_of_health_coverage_code)
414
- type_validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
415
- return false unless type_validator.valid?(@type)
416
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
417
- return false unless tin_type_validator.valid?(@tin_type)
418
- true
419
- end
420
-
421
- # Custom attribute writer method checking allowed values (enum).
422
- # @param [Object] origin_of_health_coverage_code Object to be assigned
423
- def origin_of_health_coverage_code=(origin_of_health_coverage_code)
424
- validator = EnumAttributeValidator.new('String', ["A", "B", "C", "D", "E", "F", "G"])
425
- unless validator.valid?(origin_of_health_coverage_code)
426
- fail ArgumentError, "invalid value for \"origin_of_health_coverage_code\", must be one of #{validator.allowable_values}."
427
- end
428
- @origin_of_health_coverage_code = origin_of_health_coverage_code
429
- end
430
-
431
- # Custom attribute writer method with validation
432
- # @param [Object] covered_individuals Value to be assigned
433
- def covered_individuals=(covered_individuals)
434
- if covered_individuals.nil?
435
- fail ArgumentError, 'covered_individuals cannot be nil'
436
- end
437
-
438
- @covered_individuals = covered_individuals
439
- end
440
-
441
- # Custom attribute writer method checking allowed values (enum).
442
- # @param [Object] type Object to be assigned
443
- def type=(type)
444
- validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
445
- unless validator.valid?(type)
446
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
447
- end
448
- @type = type
449
- end
450
-
451
- # Custom attribute writer method checking allowed values (enum).
452
- # @param [Object] tin_type Object to be assigned
453
- def tin_type=(tin_type)
454
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
455
- unless validator.valid?(tin_type)
456
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
457
- end
458
- @tin_type = tin_type
459
- end
460
-
461
- # Checks equality by comparing each attribute.
462
- # @param [Object] Object to be compared
463
- def ==(o)
464
- return true if self.equal?(o)
465
- self.class == o.class &&
466
- employee_first_name == o.employee_first_name &&
467
- employee_middle_name == o.employee_middle_name &&
468
- employee_last_name == o.employee_last_name &&
469
- employee_name_suffix == o.employee_name_suffix &&
470
- employee_date_of_birth == o.employee_date_of_birth &&
471
- origin_of_health_coverage_code == o.origin_of_health_coverage_code &&
472
- covered_individuals == o.covered_individuals &&
473
- type == o.type &&
474
- issuer_id == o.issuer_id &&
475
- reference_id == o.reference_id &&
476
- recipient_tin == o.recipient_tin &&
477
- recipient_name == o.recipient_name &&
478
- tin_type == o.tin_type &&
479
- recipient_second_name == o.recipient_second_name &&
480
- address == o.address &&
481
- address2 == o.address2 &&
482
- city == o.city &&
483
- state == o.state &&
484
- zip == o.zip &&
485
- email == o.email &&
486
- account_number == o.account_number &&
487
- office_code == o.office_code &&
488
- non_us_province == o.non_us_province &&
489
- country_code == o.country_code &&
490
- federal_e_file == o.federal_e_file &&
491
- postal_mail == o.postal_mail &&
492
- state_e_file == o.state_e_file &&
493
- tin_match == o.tin_match &&
494
- no_tin == o.no_tin &&
495
- second_tin_notice == o.second_tin_notice &&
496
- fatca_filing_requirement == o.fatca_filing_requirement &&
497
- address_verification == o.address_verification &&
498
- state_and_local_withholding == o.state_and_local_withholding
499
- end
500
-
501
- # @see the `==` method
502
- # @param [Object] Object to be compared
503
- def eql?(o)
504
- self == o
505
- end
506
-
507
- # Calculates hash code according to all attributes.
508
- # @return [Integer] Hash code
509
- def hash
510
- [employee_first_name, employee_middle_name, employee_last_name, employee_name_suffix, employee_date_of_birth, origin_of_health_coverage_code, covered_individuals, 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
511
- end
512
-
513
- # Builds the object from hash
514
- # @param [Hash] attributes Model attributes in the form of hash
515
- # @return [Object] Returns the model itself
516
- def self.build_from_hash(attributes)
517
- return nil unless attributes.is_a?(Hash)
518
- attributes = attributes.transform_keys(&:to_sym)
519
- transformed_hash = {}
520
- openapi_types.each_pair do |key, type|
521
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
522
- transformed_hash["#{key}"] = nil
523
- elsif type =~ /\AArray<(.*)>/i
524
- # check to ensure the input is an array given that the attribute
525
- # is documented as an array but the input is not
526
- if attributes[attribute_map[key]].is_a?(Array)
527
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
528
- end
529
- elsif !attributes[attribute_map[key]].nil?
530
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
531
- end
532
- end
533
- new(transformed_hash)
534
- end
535
-
536
- # Deserializes the data based on type
537
- # @param string type Data type
538
- # @param string value Value to be deserialized
539
- # @return [Object] Deserialized data
540
- def self._deserialize(type, value)
541
- case type.to_sym
542
- when :Time
543
- Time.parse(value)
544
- when :Date
545
- Date.parse(value)
546
- when :String
547
- value.to_s
548
- when :Integer
549
- value.to_i
550
- when :Float
551
- value.to_f
552
- when :Boolean
553
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
554
- true
555
- else
556
- false
557
- end
558
- when :Object
559
- # generic object (usually a Hash), return directly
560
- value
561
- when /\AArray<(?<inner_type>.+)>\z/
562
- inner_type = Regexp.last_match[:inner_type]
563
- value.map { |v| _deserialize(inner_type, v) }
564
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
565
- k_type = Regexp.last_match[:k_type]
566
- v_type = Regexp.last_match[:v_type]
567
- {}.tap do |hash|
568
- value.each do |k, v|
569
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
570
- end
571
- end
572
- else # model
573
- # models (e.g. Pet) or oneOf
574
- klass = AvalaraSdk::A1099::V2.const_get(type)
575
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
576
- end
577
- end
578
-
579
- # Returns the string representation of the object
580
- # @return [String] String presentation of the object
581
- def to_s
582
- to_hash.to_s
583
- end
584
-
585
- # to_body is an alias to to_hash (backward compatibility)
586
- # @return [Hash] Returns the object in the form of hash
587
- def to_body
588
- to_hash
589
- end
590
-
591
- # Returns the object in the form of hash
592
- # @return [Hash] Returns the object in the form of hash
593
- def to_hash
594
- hash = {}
595
- self.class.attribute_map.each_pair do |attr, param|
596
- value = self.send(attr)
597
- if value.nil?
598
- is_nullable = self.class.openapi_nullable.include?(attr)
599
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
600
- end
601
-
602
- hash[param] = _to_hash(value)
603
- end
604
- hash
605
- end
606
-
607
- # Outputs non-array value in the form of hash
608
- # For object, use to_hash. Otherwise, just return the value
609
- # @param [Object] value Any valid value
610
- # @return [Hash] Returns the value in the form of hash
611
- def _to_hash(value)
612
- if value.is_a?(Array)
613
- value.compact.map { |v| _to_hash(v) }
614
- elsif value.is_a?(Hash)
615
- {}.tap do |hash|
616
- value.each { |k, v| hash[k] = _to_hash(v) }
617
- end
618
- elsif value.respond_to? :to_hash
619
- value.to_hash
620
- else
621
- value
622
- end
623
- end
624
-
625
- end
626
-
627
- end