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,770 +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 Form1099KRequest
14
- # Filer type (PSE or EPF)
15
- attr_accessor :filer_type
16
-
17
- # Payment type (payment card or third party network)
18
- attr_accessor :payment_type
19
-
20
- # Payment settlement entity name and phone number
21
- attr_accessor :payment_settlement_entity_name_phone_number
22
-
23
- # Gross amount of payment card/third party network transactions
24
- attr_accessor :gross_amount_payment_card
25
-
26
- # Card not present transactions
27
- attr_accessor :card_not_present_transactions
28
-
29
- # Merchant category code
30
- attr_accessor :merchant_category_code
31
-
32
- # Number of payment transactions
33
- attr_accessor :payment_transaction_number
34
-
35
- # Federal income tax withheld
36
- attr_accessor :federal_income_tax_withheld
37
-
38
- # January gross payments
39
- attr_accessor :january
40
-
41
- # February gross payments
42
- attr_accessor :february
43
-
44
- # March gross payments
45
- attr_accessor :march
46
-
47
- # April gross payments
48
- attr_accessor :april
49
-
50
- # May gross payments
51
- attr_accessor :may
52
-
53
- # June gross payments
54
- attr_accessor :june
55
-
56
- # July gross payments
57
- attr_accessor :july
58
-
59
- # August gross payments
60
- attr_accessor :august
61
-
62
- # September gross payments
63
- attr_accessor :sept
64
-
65
- # October gross payments
66
- attr_accessor :october
67
-
68
- # November gross payments
69
- attr_accessor :november
70
-
71
- # December gross payments
72
- attr_accessor :december
73
-
74
- attr_accessor :type
75
-
76
- # Issuer ID
77
- attr_accessor :issuer_id
78
-
79
- # Reference ID
80
- attr_accessor :reference_id
81
-
82
- # Recipient Tax ID Number
83
- attr_accessor :recipient_tin
84
-
85
- # Recipient name
86
- attr_accessor :recipient_name
87
-
88
- # Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
89
- attr_accessor :tin_type
90
-
91
- # Recipient second name
92
- attr_accessor :recipient_second_name
93
-
94
- # Address
95
- attr_accessor :address
96
-
97
- # Address line 2
98
- attr_accessor :address2
99
-
100
- # City
101
- attr_accessor :city
102
-
103
- # US state. Required if CountryCode is \"US\".
104
- attr_accessor :state
105
-
106
- # Zip/postal code
107
- attr_accessor :zip
108
-
109
- # Recipient email address
110
- attr_accessor :email
111
-
112
- # Account number
113
- attr_accessor :account_number
114
-
115
- # Office code
116
- attr_accessor :office_code
117
-
118
- # Foreign province
119
- attr_accessor :non_us_province
120
-
121
- # Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
122
- attr_accessor :country_code
123
-
124
- # Boolean indicating that federal e-filing should be scheduled for this form
125
- attr_accessor :federal_e_file
126
-
127
- # Boolean indicating that postal mailing to the recipient should be scheduled for this form
128
- attr_accessor :postal_mail
129
-
130
- # Boolean indicating that state e-filing should be scheduled for this form
131
- attr_accessor :state_e_file
132
-
133
- # Boolean indicating that TIN Matching should be scheduled for this form
134
- attr_accessor :tin_match
135
-
136
- # Indicates whether the recipient has no TIN
137
- attr_accessor :no_tin
138
-
139
- # Second TIN notice in three years
140
- attr_accessor :second_tin_notice
141
-
142
- # Fatca filing requirement
143
- attr_accessor :fatca_filing_requirement
144
-
145
- # Boolean indicating that address verification should be scheduled for this form
146
- attr_accessor :address_verification
147
-
148
- # State and local withholding information
149
- attr_accessor :state_and_local_withholding
150
-
151
- class EnumAttributeValidator
152
- attr_reader :datatype
153
- attr_reader :allowable_values
154
-
155
- def initialize(datatype, allowable_values)
156
- @allowable_values = allowable_values.map do |value|
157
- case datatype.to_s
158
- when /Integer/i
159
- value.to_i
160
- when /Float/i
161
- value.to_f
162
- else
163
- value
164
- end
165
- end
166
- end
167
-
168
- def valid?(value)
169
- !value || allowable_values.include?(value)
170
- end
171
- end
172
-
173
- # Attribute mapping from ruby-style variable name to JSON key.
174
- def self.attribute_map
175
- {
176
- :'filer_type' => :'filerType',
177
- :'payment_type' => :'paymentType',
178
- :'payment_settlement_entity_name_phone_number' => :'paymentSettlementEntityNamePhoneNumber',
179
- :'gross_amount_payment_card' => :'grossAmountPaymentCard',
180
- :'card_not_present_transactions' => :'cardNotPresentTransactions',
181
- :'merchant_category_code' => :'merchantCategoryCode',
182
- :'payment_transaction_number' => :'paymentTransactionNumber',
183
- :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
184
- :'january' => :'january',
185
- :'february' => :'february',
186
- :'march' => :'march',
187
- :'april' => :'april',
188
- :'may' => :'may',
189
- :'june' => :'june',
190
- :'july' => :'july',
191
- :'august' => :'august',
192
- :'sept' => :'sept',
193
- :'october' => :'october',
194
- :'november' => :'november',
195
- :'december' => :'december',
196
- :'type' => :'type',
197
- :'issuer_id' => :'issuerId',
198
- :'reference_id' => :'referenceId',
199
- :'recipient_tin' => :'recipientTin',
200
- :'recipient_name' => :'recipientName',
201
- :'tin_type' => :'tinType',
202
- :'recipient_second_name' => :'recipientSecondName',
203
- :'address' => :'address',
204
- :'address2' => :'address2',
205
- :'city' => :'city',
206
- :'state' => :'state',
207
- :'zip' => :'zip',
208
- :'email' => :'email',
209
- :'account_number' => :'accountNumber',
210
- :'office_code' => :'officeCode',
211
- :'non_us_province' => :'nonUsProvince',
212
- :'country_code' => :'countryCode',
213
- :'federal_e_file' => :'federalEFile',
214
- :'postal_mail' => :'postalMail',
215
- :'state_e_file' => :'stateEFile',
216
- :'tin_match' => :'tinMatch',
217
- :'no_tin' => :'noTin',
218
- :'second_tin_notice' => :'secondTinNotice',
219
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
220
- :'address_verification' => :'addressVerification',
221
- :'state_and_local_withholding' => :'stateAndLocalWithholding'
222
- }
223
- end
224
-
225
- # Returns all the JSON keys this model knows about
226
- def self.acceptable_attributes
227
- attribute_map.values
228
- end
229
-
230
- # Attribute type mapping.
231
- def self.openapi_types
232
- {
233
- :'filer_type' => :'String',
234
- :'payment_type' => :'String',
235
- :'payment_settlement_entity_name_phone_number' => :'String',
236
- :'gross_amount_payment_card' => :'Float',
237
- :'card_not_present_transactions' => :'Float',
238
- :'merchant_category_code' => :'String',
239
- :'payment_transaction_number' => :'Float',
240
- :'federal_income_tax_withheld' => :'Float',
241
- :'january' => :'Float',
242
- :'february' => :'Float',
243
- :'march' => :'Float',
244
- :'april' => :'Float',
245
- :'may' => :'Float',
246
- :'june' => :'Float',
247
- :'july' => :'Float',
248
- :'august' => :'Float',
249
- :'sept' => :'Float',
250
- :'october' => :'Float',
251
- :'november' => :'Float',
252
- :'december' => :'Float',
253
- :'type' => :'String',
254
- :'issuer_id' => :'String',
255
- :'reference_id' => :'String',
256
- :'recipient_tin' => :'String',
257
- :'recipient_name' => :'String',
258
- :'tin_type' => :'String',
259
- :'recipient_second_name' => :'String',
260
- :'address' => :'String',
261
- :'address2' => :'String',
262
- :'city' => :'String',
263
- :'state' => :'String',
264
- :'zip' => :'String',
265
- :'email' => :'String',
266
- :'account_number' => :'String',
267
- :'office_code' => :'String',
268
- :'non_us_province' => :'String',
269
- :'country_code' => :'String',
270
- :'federal_e_file' => :'Boolean',
271
- :'postal_mail' => :'Boolean',
272
- :'state_e_file' => :'Boolean',
273
- :'tin_match' => :'Boolean',
274
- :'no_tin' => :'Boolean',
275
- :'second_tin_notice' => :'Boolean',
276
- :'fatca_filing_requirement' => :'Boolean',
277
- :'address_verification' => :'Boolean',
278
- :'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
279
- }
280
- end
281
-
282
- # List of attributes with nullable: true
283
- def self.openapi_nullable
284
- Set.new([
285
- :'payment_settlement_entity_name_phone_number',
286
- :'card_not_present_transactions',
287
- :'merchant_category_code',
288
- :'federal_income_tax_withheld',
289
- :'january',
290
- :'february',
291
- :'march',
292
- :'april',
293
- :'may',
294
- :'june',
295
- :'july',
296
- :'august',
297
- :'sept',
298
- :'october',
299
- :'november',
300
- :'december',
301
- :'issuer_id',
302
- :'reference_id',
303
- :'recipient_tin',
304
- :'recipient_name',
305
- :'recipient_second_name',
306
- :'address',
307
- :'address2',
308
- :'city',
309
- :'state',
310
- :'zip',
311
- :'email',
312
- :'account_number',
313
- :'office_code',
314
- :'non_us_province',
315
- :'country_code',
316
- :'second_tin_notice',
317
- :'state_and_local_withholding'
318
- ])
319
- end
320
-
321
- # List of class defined in allOf (OpenAPI v3)
322
- def self.openapi_all_of
323
- [
324
- :'FormSingleRequestBase'
325
- ]
326
- end
327
-
328
- # Initializes the object
329
- # @param [Hash] attributes Model attributes in the form of hash
330
- def initialize(attributes = {})
331
- if (!attributes.is_a?(Hash))
332
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099KRequest` initialize method"
333
- end
334
-
335
- # check to see if the attribute exists and convert string to symbol for hash key
336
- attributes = attributes.each_with_object({}) { |(k, v), h|
337
- if (!self.class.attribute_map.key?(k.to_sym))
338
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099KRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
339
- end
340
- h[k.to_sym] = v
341
- }
342
-
343
- if attributes.key?(:'filer_type')
344
- self.filer_type = attributes[:'filer_type']
345
- end
346
-
347
- if attributes.key?(:'payment_type')
348
- self.payment_type = attributes[:'payment_type']
349
- end
350
-
351
- if attributes.key?(:'payment_settlement_entity_name_phone_number')
352
- self.payment_settlement_entity_name_phone_number = attributes[:'payment_settlement_entity_name_phone_number']
353
- end
354
-
355
- if attributes.key?(:'gross_amount_payment_card')
356
- self.gross_amount_payment_card = attributes[:'gross_amount_payment_card']
357
- end
358
-
359
- if attributes.key?(:'card_not_present_transactions')
360
- self.card_not_present_transactions = attributes[:'card_not_present_transactions']
361
- end
362
-
363
- if attributes.key?(:'merchant_category_code')
364
- self.merchant_category_code = attributes[:'merchant_category_code']
365
- end
366
-
367
- if attributes.key?(:'payment_transaction_number')
368
- self.payment_transaction_number = attributes[:'payment_transaction_number']
369
- end
370
-
371
- if attributes.key?(:'federal_income_tax_withheld')
372
- self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
373
- end
374
-
375
- if attributes.key?(:'january')
376
- self.january = attributes[:'january']
377
- end
378
-
379
- if attributes.key?(:'february')
380
- self.february = attributes[:'february']
381
- end
382
-
383
- if attributes.key?(:'march')
384
- self.march = attributes[:'march']
385
- end
386
-
387
- if attributes.key?(:'april')
388
- self.april = attributes[:'april']
389
- end
390
-
391
- if attributes.key?(:'may')
392
- self.may = attributes[:'may']
393
- end
394
-
395
- if attributes.key?(:'june')
396
- self.june = attributes[:'june']
397
- end
398
-
399
- if attributes.key?(:'july')
400
- self.july = attributes[:'july']
401
- end
402
-
403
- if attributes.key?(:'august')
404
- self.august = attributes[:'august']
405
- end
406
-
407
- if attributes.key?(:'sept')
408
- self.sept = attributes[:'sept']
409
- end
410
-
411
- if attributes.key?(:'october')
412
- self.october = attributes[:'october']
413
- end
414
-
415
- if attributes.key?(:'november')
416
- self.november = attributes[:'november']
417
- end
418
-
419
- if attributes.key?(:'december')
420
- self.december = attributes[:'december']
421
- end
422
-
423
- if attributes.key?(:'type')
424
- self.type = attributes[:'type']
425
- end
426
-
427
- if attributes.key?(:'issuer_id')
428
- self.issuer_id = attributes[:'issuer_id']
429
- end
430
-
431
- if attributes.key?(:'reference_id')
432
- self.reference_id = attributes[:'reference_id']
433
- end
434
-
435
- if attributes.key?(:'recipient_tin')
436
- self.recipient_tin = attributes[:'recipient_tin']
437
- end
438
-
439
- if attributes.key?(:'recipient_name')
440
- self.recipient_name = attributes[:'recipient_name']
441
- end
442
-
443
- if attributes.key?(:'tin_type')
444
- self.tin_type = attributes[:'tin_type']
445
- end
446
-
447
- if attributes.key?(:'recipient_second_name')
448
- self.recipient_second_name = attributes[:'recipient_second_name']
449
- end
450
-
451
- if attributes.key?(:'address')
452
- self.address = attributes[:'address']
453
- end
454
-
455
- if attributes.key?(:'address2')
456
- self.address2 = attributes[:'address2']
457
- end
458
-
459
- if attributes.key?(:'city')
460
- self.city = attributes[:'city']
461
- end
462
-
463
- if attributes.key?(:'state')
464
- self.state = attributes[:'state']
465
- end
466
-
467
- if attributes.key?(:'zip')
468
- self.zip = attributes[:'zip']
469
- end
470
-
471
- if attributes.key?(:'email')
472
- self.email = attributes[:'email']
473
- end
474
-
475
- if attributes.key?(:'account_number')
476
- self.account_number = attributes[:'account_number']
477
- end
478
-
479
- if attributes.key?(:'office_code')
480
- self.office_code = attributes[:'office_code']
481
- end
482
-
483
- if attributes.key?(:'non_us_province')
484
- self.non_us_province = attributes[:'non_us_province']
485
- end
486
-
487
- if attributes.key?(:'country_code')
488
- self.country_code = attributes[:'country_code']
489
- end
490
-
491
- if attributes.key?(:'federal_e_file')
492
- self.federal_e_file = attributes[:'federal_e_file']
493
- end
494
-
495
- if attributes.key?(:'postal_mail')
496
- self.postal_mail = attributes[:'postal_mail']
497
- end
498
-
499
- if attributes.key?(:'state_e_file')
500
- self.state_e_file = attributes[:'state_e_file']
501
- end
502
-
503
- if attributes.key?(:'tin_match')
504
- self.tin_match = attributes[:'tin_match']
505
- end
506
-
507
- if attributes.key?(:'no_tin')
508
- self.no_tin = attributes[:'no_tin']
509
- end
510
-
511
- if attributes.key?(:'second_tin_notice')
512
- self.second_tin_notice = attributes[:'second_tin_notice']
513
- end
514
-
515
- if attributes.key?(:'fatca_filing_requirement')
516
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
517
- end
518
-
519
- if attributes.key?(:'address_verification')
520
- self.address_verification = attributes[:'address_verification']
521
- end
522
-
523
- if attributes.key?(:'state_and_local_withholding')
524
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
525
- end
526
- end
527
-
528
- # Show invalid properties with the reasons. Usually used together with valid?
529
- # @return Array for valid properties with the reasons
530
- def list_invalid_properties
531
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
532
- invalid_properties = Array.new
533
- invalid_properties
534
- end
535
-
536
- # Check to see if the all the properties in the model are valid
537
- # @return true if the model is valid
538
- def valid?
539
- warn '[DEPRECATED] the `valid?` method is obsolete'
540
- filer_type_validator = EnumAttributeValidator.new('String', ["PSE", "EPF", "Other"])
541
- return false unless filer_type_validator.valid?(@filer_type)
542
- payment_type_validator = EnumAttributeValidator.new('String', ["MerchantPaymentCard", "ThirdPartyNetwork"])
543
- return false unless payment_type_validator.valid?(@payment_type)
544
- type_validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
545
- return false unless type_validator.valid?(@type)
546
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
547
- return false unless tin_type_validator.valid?(@tin_type)
548
- true
549
- end
550
-
551
- # Custom attribute writer method checking allowed values (enum).
552
- # @param [Object] filer_type Object to be assigned
553
- def filer_type=(filer_type)
554
- validator = EnumAttributeValidator.new('String', ["PSE", "EPF", "Other"])
555
- unless validator.valid?(filer_type)
556
- fail ArgumentError, "invalid value for \"filer_type\", must be one of #{validator.allowable_values}."
557
- end
558
- @filer_type = filer_type
559
- end
560
-
561
- # Custom attribute writer method checking allowed values (enum).
562
- # @param [Object] payment_type Object to be assigned
563
- def payment_type=(payment_type)
564
- validator = EnumAttributeValidator.new('String', ["MerchantPaymentCard", "ThirdPartyNetwork"])
565
- unless validator.valid?(payment_type)
566
- fail ArgumentError, "invalid value for \"payment_type\", must be one of #{validator.allowable_values}."
567
- end
568
- @payment_type = payment_type
569
- end
570
-
571
- # Custom attribute writer method checking allowed values (enum).
572
- # @param [Object] type Object to be assigned
573
- def type=(type)
574
- validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
575
- unless validator.valid?(type)
576
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
577
- end
578
- @type = type
579
- end
580
-
581
- # Custom attribute writer method checking allowed values (enum).
582
- # @param [Object] tin_type Object to be assigned
583
- def tin_type=(tin_type)
584
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
585
- unless validator.valid?(tin_type)
586
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
587
- end
588
- @tin_type = tin_type
589
- end
590
-
591
- # Checks equality by comparing each attribute.
592
- # @param [Object] Object to be compared
593
- def ==(o)
594
- return true if self.equal?(o)
595
- self.class == o.class &&
596
- filer_type == o.filer_type &&
597
- payment_type == o.payment_type &&
598
- payment_settlement_entity_name_phone_number == o.payment_settlement_entity_name_phone_number &&
599
- gross_amount_payment_card == o.gross_amount_payment_card &&
600
- card_not_present_transactions == o.card_not_present_transactions &&
601
- merchant_category_code == o.merchant_category_code &&
602
- payment_transaction_number == o.payment_transaction_number &&
603
- federal_income_tax_withheld == o.federal_income_tax_withheld &&
604
- january == o.january &&
605
- february == o.february &&
606
- march == o.march &&
607
- april == o.april &&
608
- may == o.may &&
609
- june == o.june &&
610
- july == o.july &&
611
- august == o.august &&
612
- sept == o.sept &&
613
- october == o.october &&
614
- november == o.november &&
615
- december == o.december &&
616
- type == o.type &&
617
- issuer_id == o.issuer_id &&
618
- reference_id == o.reference_id &&
619
- recipient_tin == o.recipient_tin &&
620
- recipient_name == o.recipient_name &&
621
- tin_type == o.tin_type &&
622
- recipient_second_name == o.recipient_second_name &&
623
- address == o.address &&
624
- address2 == o.address2 &&
625
- city == o.city &&
626
- state == o.state &&
627
- zip == o.zip &&
628
- email == o.email &&
629
- account_number == o.account_number &&
630
- office_code == o.office_code &&
631
- non_us_province == o.non_us_province &&
632
- country_code == o.country_code &&
633
- federal_e_file == o.federal_e_file &&
634
- postal_mail == o.postal_mail &&
635
- state_e_file == o.state_e_file &&
636
- tin_match == o.tin_match &&
637
- no_tin == o.no_tin &&
638
- second_tin_notice == o.second_tin_notice &&
639
- fatca_filing_requirement == o.fatca_filing_requirement &&
640
- address_verification == o.address_verification &&
641
- state_and_local_withholding == o.state_and_local_withholding
642
- end
643
-
644
- # @see the `==` method
645
- # @param [Object] Object to be compared
646
- def eql?(o)
647
- self == o
648
- end
649
-
650
- # Calculates hash code according to all attributes.
651
- # @return [Integer] Hash code
652
- def hash
653
- [filer_type, payment_type, payment_settlement_entity_name_phone_number, gross_amount_payment_card, card_not_present_transactions, merchant_category_code, payment_transaction_number, federal_income_tax_withheld, january, february, march, april, may, june, july, august, sept, october, november, december, 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
654
- end
655
-
656
- # Builds the object from hash
657
- # @param [Hash] attributes Model attributes in the form of hash
658
- # @return [Object] Returns the model itself
659
- def self.build_from_hash(attributes)
660
- return nil unless attributes.is_a?(Hash)
661
- attributes = attributes.transform_keys(&:to_sym)
662
- transformed_hash = {}
663
- openapi_types.each_pair do |key, type|
664
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
665
- transformed_hash["#{key}"] = nil
666
- elsif type =~ /\AArray<(.*)>/i
667
- # check to ensure the input is an array given that the attribute
668
- # is documented as an array but the input is not
669
- if attributes[attribute_map[key]].is_a?(Array)
670
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
671
- end
672
- elsif !attributes[attribute_map[key]].nil?
673
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
674
- end
675
- end
676
- new(transformed_hash)
677
- end
678
-
679
- # Deserializes the data based on type
680
- # @param string type Data type
681
- # @param string value Value to be deserialized
682
- # @return [Object] Deserialized data
683
- def self._deserialize(type, value)
684
- case type.to_sym
685
- when :Time
686
- Time.parse(value)
687
- when :Date
688
- Date.parse(value)
689
- when :String
690
- value.to_s
691
- when :Integer
692
- value.to_i
693
- when :Float
694
- value.to_f
695
- when :Boolean
696
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
697
- true
698
- else
699
- false
700
- end
701
- when :Object
702
- # generic object (usually a Hash), return directly
703
- value
704
- when /\AArray<(?<inner_type>.+)>\z/
705
- inner_type = Regexp.last_match[:inner_type]
706
- value.map { |v| _deserialize(inner_type, v) }
707
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
708
- k_type = Regexp.last_match[:k_type]
709
- v_type = Regexp.last_match[:v_type]
710
- {}.tap do |hash|
711
- value.each do |k, v|
712
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
713
- end
714
- end
715
- else # model
716
- # models (e.g. Pet) or oneOf
717
- klass = AvalaraSdk::A1099::V2.const_get(type)
718
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
719
- end
720
- end
721
-
722
- # Returns the string representation of the object
723
- # @return [String] String presentation of the object
724
- def to_s
725
- to_hash.to_s
726
- end
727
-
728
- # to_body is an alias to to_hash (backward compatibility)
729
- # @return [Hash] Returns the object in the form of hash
730
- def to_body
731
- to_hash
732
- end
733
-
734
- # Returns the object in the form of hash
735
- # @return [Hash] Returns the object in the form of hash
736
- def to_hash
737
- hash = {}
738
- self.class.attribute_map.each_pair do |attr, param|
739
- value = self.send(attr)
740
- if value.nil?
741
- is_nullable = self.class.openapi_nullable.include?(attr)
742
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
743
- end
744
-
745
- hash[param] = _to_hash(value)
746
- end
747
- hash
748
- end
749
-
750
- # Outputs non-array value in the form of hash
751
- # For object, use to_hash. Otherwise, just return the value
752
- # @param [Object] value Any valid value
753
- # @return [Hash] Returns the value in the form of hash
754
- def _to_hash(value)
755
- if value.is_a?(Array)
756
- value.compact.map { |v| _to_hash(v) }
757
- elsif value.is_a?(Hash)
758
- {}.tap do |hash|
759
- value.each { |k, v| hash[k] = _to_hash(v) }
760
- end
761
- elsif value.respond_to? :to_hash
762
- value.to_hash
763
- else
764
- value
765
- end
766
- end
767
-
768
- end
769
-
770
- end