fdx-api-sdk-ruby 1.0.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 (634) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +125 -0
  4. data/lib/fdx_api/api_helper.rb +10 -0
  5. data/lib/fdx_api/client.rb +187 -0
  6. data/lib/fdx_api/configuration.rb +133 -0
  7. data/lib/fdx_api/controllers/account_information_controller.rb +135 -0
  8. data/lib/fdx_api/controllers/account_statements_controller.rb +132 -0
  9. data/lib/fdx_api/controllers/account_transactions_controller.rb +126 -0
  10. data/lib/fdx_api/controllers/base_controller.rb +65 -0
  11. data/lib/fdx_api/controllers/event_notifications_controller.rb +274 -0
  12. data/lib/fdx_api/controllers/fraud_notification_controller.rb +37 -0
  13. data/lib/fdx_api/controllers/internal_transfers_controller.rb +206 -0
  14. data/lib/fdx_api/controllers/meta_controller.rb +105 -0
  15. data/lib/fdx_api/controllers/money_movement_controller.rb +92 -0
  16. data/lib/fdx_api/controllers/payee_management_controller.rb +257 -0
  17. data/lib/fdx_api/controllers/payment_initiation_parties_controller.rb +439 -0
  18. data/lib/fdx_api/controllers/payments_controller.rb +280 -0
  19. data/lib/fdx_api/controllers/payroll_information_controller.rb +117 -0
  20. data/lib/fdx_api/controllers/personal_information_controller.rb +155 -0
  21. data/lib/fdx_api/controllers/recipients_controller.rb +197 -0
  22. data/lib/fdx_api/controllers/recurring_payments_controller.rb +339 -0
  23. data/lib/fdx_api/controllers/resource_information_controller.rb +121 -0
  24. data/lib/fdx_api/controllers/reward_program_categories_controller.rb +64 -0
  25. data/lib/fdx_api/controllers/reward_program_information_controller.rb +88 -0
  26. data/lib/fdx_api/controllers/submit_tax_forms_controller.rb +106 -0
  27. data/lib/fdx_api/controllers/tax_forms_controller.rb +190 -0
  28. data/lib/fdx_api/controllers/user_consent_controller.rb +125 -0
  29. data/lib/fdx_api/exceptions/api_exception.rb +21 -0
  30. data/lib/fdx_api/exceptions/error_exception.rb +65 -0
  31. data/lib/fdx_api/exceptions/payee_entity_error_exception.rb +48 -0
  32. data/lib/fdx_api/exceptions/payment_entity_error_exception.rb +160 -0
  33. data/lib/fdx_api/exceptions/recurring_payment_entity_error_exception.rb +140 -0
  34. data/lib/fdx_api/http/api_response.rb +19 -0
  35. data/lib/fdx_api/http/auth/bearer_auth.rb +43 -0
  36. data/lib/fdx_api/http/auth/tax_basic_auth.rb +50 -0
  37. data/lib/fdx_api/http/http_call_back.rb +10 -0
  38. data/lib/fdx_api/http/http_method_enum.rb +10 -0
  39. data/lib/fdx_api/http/http_request.rb +10 -0
  40. data/lib/fdx_api/http/http_response.rb +10 -0
  41. data/lib/fdx_api/http/proxy_settings.rb +13 -0
  42. data/lib/fdx_api/logging/configuration/api_logging_configuration.rb +114 -0
  43. data/lib/fdx_api/logging/sdk_logger.rb +17 -0
  44. data/lib/fdx_api/models/account_bill_pay_status.rb +32 -0
  45. data/lib/fdx_api/models/account_bill_pay_status2.rb +29 -0
  46. data/lib/fdx_api/models/account_category_type.rb +41 -0
  47. data/lib/fdx_api/models/account_contact_entity.rb +132 -0
  48. data/lib/fdx_api/models/account_contact_entity2.rb +142 -0
  49. data/lib/fdx_api/models/account_descriptor_entity.rb +253 -0
  50. data/lib/fdx_api/models/account_entity.rb +380 -0
  51. data/lib/fdx_api/models/account_holder_entity.rb +263 -0
  52. data/lib/fdx_api/models/account_holder_relationship.rb +79 -0
  53. data/lib/fdx_api/models/account_holder_relationship1.rb +79 -0
  54. data/lib/fdx_api/models/account_status.rb +41 -0
  55. data/lib/fdx_api/models/account_status2.rb +42 -0
  56. data/lib/fdx_api/models/account_type.rb +240 -0
  57. data/lib/fdx_api/models/accounts_entity.rb +109 -0
  58. data/lib/fdx_api/models/active_inactive_status.rb +23 -0
  59. data/lib/fdx_api/models/active_inactive_status2.rb +23 -0
  60. data/lib/fdx_api/models/address.rb +151 -0
  61. data/lib/fdx_api/models/an_array_of_statements.rb +105 -0
  62. data/lib/fdx_api/models/annuity_account_entity.rb +347 -0
  63. data/lib/fdx_api/models/array_of_account_payment_networks.rb +104 -0
  64. data/lib/fdx_api/models/asset_class.rb +38 -0
  65. data/lib/fdx_api/models/asset_class2.rb +38 -0
  66. data/lib/fdx_api/models/asset_transfer_network.rb +134 -0
  67. data/lib/fdx_api/models/asset_transfer_network_list.rb +85 -0
  68. data/lib/fdx_api/models/asset_transfer_type.rb +26 -0
  69. data/lib/fdx_api/models/asset_transfer_type2.rb +26 -0
  70. data/lib/fdx_api/models/availability_entity.rb +115 -0
  71. data/lib/fdx_api/models/availability_entity1.rb +115 -0
  72. data/lib/fdx_api/models/availability_list_entity.rb +85 -0
  73. data/lib/fdx_api/models/availability_status.rb +29 -0
  74. data/lib/fdx_api/models/availability_status1.rb +29 -0
  75. data/lib/fdx_api/models/availability_status3.rb +29 -0
  76. data/lib/fdx_api/models/balance_type.rb +25 -0
  77. data/lib/fdx_api/models/balance_type2.rb +24 -0
  78. data/lib/fdx_api/models/base_model.rb +110 -0
  79. data/lib/fdx_api/models/base_payroll_rate.rb +82 -0
  80. data/lib/fdx_api/models/base_payroll_rate1.rb +82 -0
  81. data/lib/fdx_api/models/basic_auth_credentials.rb +105 -0
  82. data/lib/fdx_api/models/basic_auth_credentials1.rb +105 -0
  83. data/lib/fdx_api/models/basic_auth_for_qr.rb +96 -0
  84. data/lib/fdx_api/models/bills_entity.rb +201 -0
  85. data/lib/fdx_api/models/branch_entity.rb +116 -0
  86. data/lib/fdx_api/models/branch_entity1.rb +126 -0
  87. data/lib/fdx_api/models/business_customer_entity.rb +136 -0
  88. data/lib/fdx_api/models/business_income_statement.rb +604 -0
  89. data/lib/fdx_api/models/business_name.rb +85 -0
  90. data/lib/fdx_api/models/business_or_consumer_type.rb +23 -0
  91. data/lib/fdx_api/models/business_or_consumer_type1.rb +23 -0
  92. data/lib/fdx_api/models/call_type.rb +29 -0
  93. data/lib/fdx_api/models/call_type2.rb +29 -0
  94. data/lib/fdx_api/models/capability_entity.rb +139 -0
  95. data/lib/fdx_api/models/card_art_entity.rb +91 -0
  96. data/lib/fdx_api/models/card_art_entity2.rb +101 -0
  97. data/lib/fdx_api/models/certification_metric_entity.rb +172 -0
  98. data/lib/fdx_api/models/certification_metrics_entity.rb +84 -0
  99. data/lib/fdx_api/models/code_and_amount.rb +85 -0
  100. data/lib/fdx_api/models/commercial_account_entity.rb +457 -0
  101. data/lib/fdx_api/models/commercial_balance_entity.rb +106 -0
  102. data/lib/fdx_api/models/commercial_code_entity.rb +91 -0
  103. data/lib/fdx_api/models/commercial_code_entity1.rb +96 -0
  104. data/lib/fdx_api/models/commercial_transaction_entity.rb +286 -0
  105. data/lib/fdx_api/models/compounding_period.rb +38 -0
  106. data/lib/fdx_api/models/compounding_period2.rb +38 -0
  107. data/lib/fdx_api/models/consent_duration_type.rb +26 -0
  108. data/lib/fdx_api/models/consent_grant_entity.rb +232 -0
  109. data/lib/fdx_api/models/consent_grant_resource_entity.rb +92 -0
  110. data/lib/fdx_api/models/consent_grant_status.rb +26 -0
  111. data/lib/fdx_api/models/consent_grant_status1.rb +26 -0
  112. data/lib/fdx_api/models/consent_grant_status3.rb +26 -0
  113. data/lib/fdx_api/models/consent_request_entity.rb +121 -0
  114. data/lib/fdx_api/models/consent_requested_resource_entity.rb +82 -0
  115. data/lib/fdx_api/models/consent_resource_type.rb +27 -0
  116. data/lib/fdx_api/models/consent_resource_type1.rb +26 -0
  117. data/lib/fdx_api/models/consent_resource_type3.rb +26 -0
  118. data/lib/fdx_api/models/consent_revocation_entity.rb +114 -0
  119. data/lib/fdx_api/models/consent_revocation_list_entity.rb +85 -0
  120. data/lib/fdx_api/models/consent_revocation_request_entity.rb +85 -0
  121. data/lib/fdx_api/models/consent_update_reason.rb +23 -0
  122. data/lib/fdx_api/models/consent_update_reason1.rb +23 -0
  123. data/lib/fdx_api/models/contact_preferences_type.rb +32 -0
  124. data/lib/fdx_api/models/contact_preferences_type2.rb +32 -0
  125. data/lib/fdx_api/models/contacts_entity.rb +113 -0
  126. data/lib/fdx_api/models/content_types.rb +38 -0
  127. data/lib/fdx_api/models/contribution_entity.rb +275 -0
  128. data/lib/fdx_api/models/coupon_mature_frequency.rb +32 -0
  129. data/lib/fdx_api/models/coupon_mature_frequency2.rb +32 -0
  130. data/lib/fdx_api/models/coverage_month.rb +56 -0
  131. data/lib/fdx_api/models/coverage_month1.rb +56 -0
  132. data/lib/fdx_api/models/coverage_month3.rb +56 -0
  133. data/lib/fdx_api/models/cryptocurrency_tax_statement_list.rb +239 -0
  134. data/lib/fdx_api/models/cryptocurrency_tax_statement_list1.rb +239 -0
  135. data/lib/fdx_api/models/currency_entity.rb +98 -0
  136. data/lib/fdx_api/models/currency_entity1.rb +108 -0
  137. data/lib/fdx_api/models/currency_entity2.rb +108 -0
  138. data/lib/fdx_api/models/currency_entity4.rb +108 -0
  139. data/lib/fdx_api/models/customer_entity.rb +241 -0
  140. data/lib/fdx_api/models/customer_name_entity.rb +134 -0
  141. data/lib/fdx_api/models/customer_name_entity1.rb +134 -0
  142. data/lib/fdx_api/models/customer_to_account_relationship_entity.rb +114 -0
  143. data/lib/fdx_api/models/customers_entity.rb +104 -0
  144. data/lib/fdx_api/models/data_cluster.rb +63 -0
  145. data/lib/fdx_api/models/date_and_amount.rb +95 -0
  146. data/lib/fdx_api/models/debit_credit_memo.rb +26 -0
  147. data/lib/fdx_api/models/debit_credit_memo2.rb +26 -0
  148. data/lib/fdx_api/models/debt_class.rb +29 -0
  149. data/lib/fdx_api/models/debt_class2.rb +29 -0
  150. data/lib/fdx_api/models/debt_security_entity.rb +209 -0
  151. data/lib/fdx_api/models/debt_type.rb +23 -0
  152. data/lib/fdx_api/models/debt_type2.rb +23 -0
  153. data/lib/fdx_api/models/delivery_address.rb +160 -0
  154. data/lib/fdx_api/models/delivery_address1.rb +150 -0
  155. data/lib/fdx_api/models/delivery_address_type.rb +29 -0
  156. data/lib/fdx_api/models/deposit_account_entity.rb +335 -0
  157. data/lib/fdx_api/models/deposit_transaction_entity.rb +223 -0
  158. data/lib/fdx_api/models/deposit_transaction_type.rb +59 -0
  159. data/lib/fdx_api/models/deposit_transaction_type2.rb +61 -0
  160. data/lib/fdx_api/models/description_and_amount.rb +85 -0
  161. data/lib/fdx_api/models/digital_wallet_account_entity.rb +316 -0
  162. data/lib/fdx_api/models/digital_wallet_transaction_entity.rb +213 -0
  163. data/lib/fdx_api/models/digital_wallet_transaction_type.rb +59 -0
  164. data/lib/fdx_api/models/digital_wallet_transaction_type2.rb +61 -0
  165. data/lib/fdx_api/models/direct_deposit_entity.rb +98 -0
  166. data/lib/fdx_api/models/document_status.rb +26 -0
  167. data/lib/fdx_api/models/document_status2.rb +26 -0
  168. data/lib/fdx_api/models/domicile_entity.rb +95 -0
  169. data/lib/fdx_api/models/domicile_entity1.rb +95 -0
  170. data/lib/fdx_api/models/electronic_address_entity.rb +87 -0
  171. data/lib/fdx_api/models/employee_entity.rb +175 -0
  172. data/lib/fdx_api/models/employee_entity1.rb +175 -0
  173. data/lib/fdx_api/models/employer_entity.rb +125 -0
  174. data/lib/fdx_api/models/employer_entity1.rb +125 -0
  175. data/lib/fdx_api/models/employment.rb +149 -0
  176. data/lib/fdx_api/models/employment1.rb +149 -0
  177. data/lib/fdx_api/models/employment_type.rb +36 -0
  178. data/lib/fdx_api/models/employment_type2.rb +36 -0
  179. data/lib/fdx_api/models/error1.rb +113 -0
  180. data/lib/fdx_api/models/expired_option_type.rb +23 -0
  181. data/lib/fdx_api/models/expired_option_type2.rb +24 -0
  182. data/lib/fdx_api/models/external_account_id_scheme_entity.rb +85 -0
  183. data/lib/fdx_api/models/external_financial_institution_id_scheme_entity.rb +85 -0
  184. data/lib/fdx_api/models/farm_income_statement.rb +628 -0
  185. data/lib/fdx_api/models/farm_rental_income_statement.rb +586 -0
  186. data/lib/fdx_api/models/fdx_api_actor_type.rb +24 -0
  187. data/lib/fdx_api/models/fdx_jwt_profile.rb +171 -0
  188. data/lib/fdx_api/models/fdx_oauth_token_introspection_response.rb +180 -0
  189. data/lib/fdx_api/models/fdx_resource_operation_id.rb +227 -0
  190. data/lib/fdx_api/models/fdx_resource_operation_id1.rb +227 -0
  191. data/lib/fdx_api/models/fdx_resource_operation_id3.rb +227 -0
  192. data/lib/fdx_api/models/fdx_version.rb +119 -0
  193. data/lib/fdx_api/models/fi_attribute_entity.rb +95 -0
  194. data/lib/fdx_api/models/fi_portion_entity.rb +95 -0
  195. data/lib/fdx_api/models/financial_institution_entity.rb +116 -0
  196. data/lib/fdx_api/models/financial_institution_entity2.rb +116 -0
  197. data/lib/fdx_api/models/form1041_k1.rb +572 -0
  198. data/lib/fdx_api/models/form1041_k11.rb +570 -0
  199. data/lib/fdx_api/models/form1042_s.rb +541 -0
  200. data/lib/fdx_api/models/form1042_s1.rb +539 -0
  201. data/lib/fdx_api/models/form1042_s_agent.rb +207 -0
  202. data/lib/fdx_api/models/form1042_s_agent1.rb +196 -0
  203. data/lib/fdx_api/models/form1042_s_agent2.rb +196 -0
  204. data/lib/fdx_api/models/form1042_s_agent3.rb +196 -0
  205. data/lib/fdx_api/models/form1042_s_agent4.rb +196 -0
  206. data/lib/fdx_api/models/form1042_s_recipient.rb +216 -0
  207. data/lib/fdx_api/models/form1042_s_recipient1.rb +216 -0
  208. data/lib/fdx_api/models/form1065_k1.rb +1177 -0
  209. data/lib/fdx_api/models/form1065_k11.rb +1176 -0
  210. data/lib/fdx_api/models/form1095_a.rb +364 -0
  211. data/lib/fdx_api/models/form1095_a1.rb +364 -0
  212. data/lib/fdx_api/models/form1095_b.rb +281 -0
  213. data/lib/fdx_api/models/form1095_b1.rb +280 -0
  214. data/lib/fdx_api/models/form1095_c.rb +294 -0
  215. data/lib/fdx_api/models/form1095_c1.rb +293 -0
  216. data/lib/fdx_api/models/form1097_btc.rb +314 -0
  217. data/lib/fdx_api/models/form1097_btc1.rb +313 -0
  218. data/lib/fdx_api/models/form1098.rb +388 -0
  219. data/lib/fdx_api/models/form10981.rb +387 -0
  220. data/lib/fdx_api/models/form1098_c.rb +421 -0
  221. data/lib/fdx_api/models/form1098_c1.rb +420 -0
  222. data/lib/fdx_api/models/form1098_e.rb +255 -0
  223. data/lib/fdx_api/models/form1098_e1.rb +254 -0
  224. data/lib/fdx_api/models/form1098_ma.rb +276 -0
  225. data/lib/fdx_api/models/form1098_ma1.rb +275 -0
  226. data/lib/fdx_api/models/form1098_q.rb +338 -0
  227. data/lib/fdx_api/models/form1098_q1.rb +337 -0
  228. data/lib/fdx_api/models/form1098_t.rb +338 -0
  229. data/lib/fdx_api/models/form1098_t1.rb +337 -0
  230. data/lib/fdx_api/models/form1099_a.rb +289 -0
  231. data/lib/fdx_api/models/form1099_a1.rb +288 -0
  232. data/lib/fdx_api/models/form1099_b.rb +368 -0
  233. data/lib/fdx_api/models/form1099_b1.rb +367 -0
  234. data/lib/fdx_api/models/form1099_c.rb +310 -0
  235. data/lib/fdx_api/models/form1099_c1.rb +309 -0
  236. data/lib/fdx_api/models/form1099_cap.rb +274 -0
  237. data/lib/fdx_api/models/form1099_cap1.rb +273 -0
  238. data/lib/fdx_api/models/form1099_consolidated_statement.rb +327 -0
  239. data/lib/fdx_api/models/form1099_consolidated_statement1.rb +325 -0
  240. data/lib/fdx_api/models/form1099_div.rb +538 -0
  241. data/lib/fdx_api/models/form1099_div1.rb +537 -0
  242. data/lib/fdx_api/models/form1099_g.rb +363 -0
  243. data/lib/fdx_api/models/form1099_g1.rb +362 -0
  244. data/lib/fdx_api/models/form1099_h.rb +263 -0
  245. data/lib/fdx_api/models/form1099_h1.rb +262 -0
  246. data/lib/fdx_api/models/form1099_int.rb +488 -0
  247. data/lib/fdx_api/models/form1099_int1.rb +487 -0
  248. data/lib/fdx_api/models/form1099_k.rb +413 -0
  249. data/lib/fdx_api/models/form1099_k1.rb +412 -0
  250. data/lib/fdx_api/models/form1099_ls.rb +274 -0
  251. data/lib/fdx_api/models/form1099_ls1.rb +273 -0
  252. data/lib/fdx_api/models/form1099_ltc.rb +339 -0
  253. data/lib/fdx_api/models/form1099_ltc1.rb +338 -0
  254. data/lib/fdx_api/models/form1099_misc.rb +438 -0
  255. data/lib/fdx_api/models/form1099_misc1.rb +437 -0
  256. data/lib/fdx_api/models/form1099_nec.rb +301 -0
  257. data/lib/fdx_api/models/form1099_nec1.rb +300 -0
  258. data/lib/fdx_api/models/form1099_oid.rb +431 -0
  259. data/lib/fdx_api/models/form1099_oid1.rb +430 -0
  260. data/lib/fdx_api/models/form1099_patr.rb +421 -0
  261. data/lib/fdx_api/models/form1099_patr1.rb +420 -0
  262. data/lib/fdx_api/models/form1099_q.rb +335 -0
  263. data/lib/fdx_api/models/form1099_q1.rb +334 -0
  264. data/lib/fdx_api/models/form1099_qa.rb +295 -0
  265. data/lib/fdx_api/models/form1099_qa1.rb +294 -0
  266. data/lib/fdx_api/models/form1099_r.rb +475 -0
  267. data/lib/fdx_api/models/form1099_r1.rb +474 -0
  268. data/lib/fdx_api/models/form1099_s.rb +306 -0
  269. data/lib/fdx_api/models/form1099_s1.rb +305 -0
  270. data/lib/fdx_api/models/form1099_sa.rb +306 -0
  271. data/lib/fdx_api/models/form1099_sa1.rb +305 -0
  272. data/lib/fdx_api/models/form1099_sb.rb +267 -0
  273. data/lib/fdx_api/models/form1099_sb1.rb +266 -0
  274. data/lib/fdx_api/models/form1120_sk1.rb +670 -0
  275. data/lib/fdx_api/models/form1120_sk11.rb +669 -0
  276. data/lib/fdx_api/models/form2439.rb +306 -0
  277. data/lib/fdx_api/models/form24391.rb +305 -0
  278. data/lib/fdx_api/models/form3921.rb +298 -0
  279. data/lib/fdx_api/models/form39211.rb +297 -0
  280. data/lib/fdx_api/models/form3922.rb +327 -0
  281. data/lib/fdx_api/models/form39221.rb +326 -0
  282. data/lib/fdx_api/models/form5498.rb +486 -0
  283. data/lib/fdx_api/models/form54981.rb +485 -0
  284. data/lib/fdx_api/models/form5498_esa.rb +258 -0
  285. data/lib/fdx_api/models/form5498_esa1.rb +257 -0
  286. data/lib/fdx_api/models/form5498_qa.rb +311 -0
  287. data/lib/fdx_api/models/form5498_qa1.rb +310 -0
  288. data/lib/fdx_api/models/form5498_sa.rb +321 -0
  289. data/lib/fdx_api/models/form5498_sa1.rb +320 -0
  290. data/lib/fdx_api/models/form_w2.rb +459 -0
  291. data/lib/fdx_api/models/form_w21.rb +458 -0
  292. data/lib/fdx_api/models/form_w22.rb +458 -0
  293. data/lib/fdx_api/models/form_w24.rb +458 -0
  294. data/lib/fdx_api/models/form_w2_c.rb +276 -0
  295. data/lib/fdx_api/models/form_w2_c2.rb +275 -0
  296. data/lib/fdx_api/models/form_w2_g.rb +354 -0
  297. data/lib/fdx_api/models/form_w2_g2.rb +353 -0
  298. data/lib/fdx_api/models/gain_or_loss_from_cryptocurrency_transaction.rb +173 -0
  299. data/lib/fdx_api/models/generic_account_identification_entity.rb +107 -0
  300. data/lib/fdx_api/models/generic_financial_institution_id_entity.rb +107 -0
  301. data/lib/fdx_api/models/government_issued_id_type.rb +23 -0
  302. data/lib/fdx_api/models/government_issued_id_type2.rb +23 -0
  303. data/lib/fdx_api/models/government_issued_party_identification_entity.rb +118 -0
  304. data/lib/fdx_api/models/hateoas_link.rb +119 -0
  305. data/lib/fdx_api/models/health_insurance_coverage.rb +115 -0
  306. data/lib/fdx_api/models/health_insurance_covered_individual.rb +118 -0
  307. data/lib/fdx_api/models/health_insurance_marketplace_covered_individual.rb +119 -0
  308. data/lib/fdx_api/models/held_in_account.rb +29 -0
  309. data/lib/fdx_api/models/held_in_account2.rb +29 -0
  310. data/lib/fdx_api/models/holding_entity.rb +448 -0
  311. data/lib/fdx_api/models/holding_sub_type.rb +23 -0
  312. data/lib/fdx_api/models/holding_sub_type2.rb +23 -0
  313. data/lib/fdx_api/models/holding_type.rb +51 -0
  314. data/lib/fdx_api/models/holding_type2.rb +41 -0
  315. data/lib/fdx_api/models/http_action_type.rb +32 -0
  316. data/lib/fdx_api/models/iban2007_identifier_entity.rb +86 -0
  317. data/lib/fdx_api/models/income.rb +124 -0
  318. data/lib/fdx_api/models/income_type.rb +26 -0
  319. data/lib/fdx_api/models/income_type2.rb +27 -0
  320. data/lib/fdx_api/models/incoming_and_outgoing_transfer_limits.rb +85 -0
  321. data/lib/fdx_api/models/incoming_and_outgoing_transfer_limits2.rb +85 -0
  322. data/lib/fdx_api/models/individual_name.rb +115 -0
  323. data/lib/fdx_api/models/industry_classification_system.rb +38 -0
  324. data/lib/fdx_api/models/industry_code.rb +95 -0
  325. data/lib/fdx_api/models/insurance_account_entity.rb +326 -0
  326. data/lib/fdx_api/models/insurance_transaction_entity.rb +201 -0
  327. data/lib/fdx_api/models/insurance_transaction_type.rb +29 -0
  328. data/lib/fdx_api/models/interest_rate_type.rb +23 -0
  329. data/lib/fdx_api/models/interest_rate_type2.rb +23 -0
  330. data/lib/fdx_api/models/intermediary.rb +139 -0
  331. data/lib/fdx_api/models/investment401_k_source_type.rb +38 -0
  332. data/lib/fdx_api/models/investment401_k_source_type1.rb +40 -0
  333. data/lib/fdx_api/models/investment401_k_source_type2.rb +39 -0
  334. data/lib/fdx_api/models/investment401_k_source_type4.rb +39 -0
  335. data/lib/fdx_api/models/investment_account_entity.rb +548 -0
  336. data/lib/fdx_api/models/investment_balance_entity.rb +138 -0
  337. data/lib/fdx_api/models/investment_balance_type.rb +23 -0
  338. data/lib/fdx_api/models/investment_balance_type2.rb +23 -0
  339. data/lib/fdx_api/models/investment_loan_entity.rb +261 -0
  340. data/lib/fdx_api/models/investment_sale_type.rb +38 -0
  341. data/lib/fdx_api/models/investment_transaction_entity.rb +669 -0
  342. data/lib/fdx_api/models/investment_transaction_type.rb +155 -0
  343. data/lib/fdx_api/models/investment_transaction_type2.rb +161 -0
  344. data/lib/fdx_api/models/investment_transfer_action_direction.rb +23 -0
  345. data/lib/fdx_api/models/investment_transfer_action_direction2.rb +23 -0
  346. data/lib/fdx_api/models/iso3166_country_code.rb +764 -0
  347. data/lib/fdx_api/models/iso3166_country_code1.rb +764 -0
  348. data/lib/fdx_api/models/iso3166_country_code2.rb +764 -0
  349. data/lib/fdx_api/models/iso4217_currency_code.rb +560 -0
  350. data/lib/fdx_api/models/iso4217_currency_code1.rb +560 -0
  351. data/lib/fdx_api/models/iso4217_currency_code2.rb +560 -0
  352. data/lib/fdx_api/models/iso93622014_business_identifier_code_entity.rb +93 -0
  353. data/lib/fdx_api/models/iso93622022_business_identifier_code_entity.rb +91 -0
  354. data/lib/fdx_api/models/line_item_entity.rb +156 -0
  355. data/lib/fdx_api/models/line_of_credit_account_entity.rb +474 -0
  356. data/lib/fdx_api/models/line_of_credit_transaction_entity.rb +223 -0
  357. data/lib/fdx_api/models/line_of_credit_transaction_type.rb +38 -0
  358. data/lib/fdx_api/models/line_of_credit_transaction_type2.rb +38 -0
  359. data/lib/fdx_api/models/loan_account_entity.rb +432 -0
  360. data/lib/fdx_api/models/loan_payment_frequency.rb +47 -0
  361. data/lib/fdx_api/models/loan_payment_frequency2.rb +48 -0
  362. data/lib/fdx_api/models/loan_transaction_entity.rb +212 -0
  363. data/lib/fdx_api/models/loan_transaction_type.rb +49 -0
  364. data/lib/fdx_api/models/loan_transaction_type2.rb +41 -0
  365. data/lib/fdx_api/models/local_tax_withholding.rb +96 -0
  366. data/lib/fdx_api/models/local_tax_withholding1.rb +96 -0
  367. data/lib/fdx_api/models/merchant_entity.rb +159 -0
  368. data/lib/fdx_api/models/merchant_entity1.rb +159 -0
  369. data/lib/fdx_api/models/merchant_for_update_entity.rb +118 -0
  370. data/lib/fdx_api/models/merchant_for_update_entity1.rb +118 -0
  371. data/lib/fdx_api/models/message_format.rb +20 -0
  372. data/lib/fdx_api/models/message_format2.rb +20 -0
  373. data/lib/fdx_api/models/monetary_amount.rb +84 -0
  374. data/lib/fdx_api/models/monetary_amount1.rb +84 -0
  375. data/lib/fdx_api/models/monetary_amount2.rb +84 -0
  376. data/lib/fdx_api/models/monetary_amount3.rb +84 -0
  377. data/lib/fdx_api/models/monetary_amount4.rb +84 -0
  378. data/lib/fdx_api/models/monetary_amount5.rb +84 -0
  379. data/lib/fdx_api/models/monetary_amount6.rb +84 -0
  380. data/lib/fdx_api/models/month_abbreviation.rb +53 -0
  381. data/lib/fdx_api/models/month_abbreviation1.rb +53 -0
  382. data/lib/fdx_api/models/month_and_amount.rb +85 -0
  383. data/lib/fdx_api/models/mutual_fund_security_entity.rb +161 -0
  384. data/lib/fdx_api/models/mutual_fund_type.rb +26 -0
  385. data/lib/fdx_api/models/mutual_fund_type2.rb +26 -0
  386. data/lib/fdx_api/models/name_address_and_phone.rb +171 -0
  387. data/lib/fdx_api/models/name_address_and_phone1.rb +171 -0
  388. data/lib/fdx_api/models/name_and_address.rb +159 -0
  389. data/lib/fdx_api/models/notification_category.rb +32 -0
  390. data/lib/fdx_api/models/notification_category1.rb +32 -0
  391. data/lib/fdx_api/models/notification_entity.rb +169 -0
  392. data/lib/fdx_api/models/notification_payload_entity.rb +95 -0
  393. data/lib/fdx_api/models/notification_payload_entity2.rb +95 -0
  394. data/lib/fdx_api/models/notification_payload_id_type.rb +32 -0
  395. data/lib/fdx_api/models/notification_payload_id_type2.rb +32 -0
  396. data/lib/fdx_api/models/notification_priority.rb +26 -0
  397. data/lib/fdx_api/models/notification_priority2.rb +26 -0
  398. data/lib/fdx_api/models/notification_severity.rb +32 -0
  399. data/lib/fdx_api/models/notification_severity2.rb +32 -0
  400. data/lib/fdx_api/models/notification_subscription_entity.rb +123 -0
  401. data/lib/fdx_api/models/notification_type.rb +38 -0
  402. data/lib/fdx_api/models/notifications_entity.rb +104 -0
  403. data/lib/fdx_api/models/occurrence_based_limits_for_a_payment_network.rb +95 -0
  404. data/lib/fdx_api/models/occurrence_based_limits_for_a_payment_network2.rb +94 -0
  405. data/lib/fdx_api/models/offer_of_health_insurance_coverage.rb +119 -0
  406. data/lib/fdx_api/models/open_order_entity.rb +231 -0
  407. data/lib/fdx_api/models/operation_entity.rb +150 -0
  408. data/lib/fdx_api/models/option_security_entity.rb +135 -0
  409. data/lib/fdx_api/models/option_type.rb +23 -0
  410. data/lib/fdx_api/models/option_type2.rb +23 -0
  411. data/lib/fdx_api/models/order_duration.rb +26 -0
  412. data/lib/fdx_api/models/order_duration2.rb +26 -0
  413. data/lib/fdx_api/models/order_type.rb +41 -0
  414. data/lib/fdx_api/models/order_type2.rb +42 -0
  415. data/lib/fdx_api/models/organization_name_entity.rb +87 -0
  416. data/lib/fdx_api/models/other_monetary_amount.rb +94 -0
  417. data/lib/fdx_api/models/other_security_entity.rb +94 -0
  418. data/lib/fdx_api/models/page_metadata.rb +108 -0
  419. data/lib/fdx_api/models/page_metadata_links.rb +95 -0
  420. data/lib/fdx_api/models/page_metadata_links1.rb +85 -0
  421. data/lib/fdx_api/models/party_entity.rb +139 -0
  422. data/lib/fdx_api/models/party_group_entity.rb +86 -0
  423. data/lib/fdx_api/models/party_status.rb +33 -0
  424. data/lib/fdx_api/models/party_status1.rb +29 -0
  425. data/lib/fdx_api/models/party_status3.rb +29 -0
  426. data/lib/fdx_api/models/party_type.rb +35 -0
  427. data/lib/fdx_api/models/party_type1.rb +35 -0
  428. data/lib/fdx_api/models/party_type2.rb +35 -0
  429. data/lib/fdx_api/models/payee_entity.rb +75 -0
  430. data/lib/fdx_api/models/payee_for_update_entity.rb +74 -0
  431. data/lib/fdx_api/models/payee_for_update_entity1.rb +74 -0
  432. data/lib/fdx_api/models/payees_entity.rb +113 -0
  433. data/lib/fdx_api/models/payment_amounts.rb +133 -0
  434. data/lib/fdx_api/models/payment_amounts1.rb +92 -0
  435. data/lib/fdx_api/models/payment_amounts2.rb +133 -0
  436. data/lib/fdx_api/models/payment_amounts3.rb +92 -0
  437. data/lib/fdx_api/models/payment_delivery_address_entity.rb +99 -0
  438. data/lib/fdx_api/models/payment_details_entity.rb +142 -0
  439. data/lib/fdx_api/models/payment_entity.rb +262 -0
  440. data/lib/fdx_api/models/payment_for_update_entity.rb +113 -0
  441. data/lib/fdx_api/models/payment_for_update_entity1.rb +113 -0
  442. data/lib/fdx_api/models/payment_for_update_entity2.rb +113 -0
  443. data/lib/fdx_api/models/payment_frequency.rb +38 -0
  444. data/lib/fdx_api/models/payment_frequency1.rb +38 -0
  445. data/lib/fdx_api/models/payment_frequency3.rb +38 -0
  446. data/lib/fdx_api/models/payment_generic_account_entity.rb +138 -0
  447. data/lib/fdx_api/models/payment_generic_account_entity1.rb +138 -0
  448. data/lib/fdx_api/models/payment_generic_account_entity2.rb +138 -0
  449. data/lib/fdx_api/models/payment_initiation_parties_entity.rb +108 -0
  450. data/lib/fdx_api/models/payment_initiation_party_contact_method_entity.rb +97 -0
  451. data/lib/fdx_api/models/payment_initiation_party_create_response_entity.rb +85 -0
  452. data/lib/fdx_api/models/payment_initiation_party_entity.rb +292 -0
  453. data/lib/fdx_api/models/payment_initiation_party_method_create_response_entity.rb +78 -0
  454. data/lib/fdx_api/models/payment_initiation_party_name_entity.rb +98 -0
  455. data/lib/fdx_api/models/payment_initiation_party_name_entity1.rb +97 -0
  456. data/lib/fdx_api/models/payment_initiation_party_name_entity3.rb +97 -0
  457. data/lib/fdx_api/models/payment_initiation_party_summary_entity.rb +90 -0
  458. data/lib/fdx_api/models/payment_initiation_party_to_payment_method_entity.rb +130 -0
  459. data/lib/fdx_api/models/payment_method_credit_account_entity.rb +111 -0
  460. data/lib/fdx_api/models/payment_method_debit_account_entity.rb +100 -0
  461. data/lib/fdx_api/models/payment_method_entity.rb +139 -0
  462. data/lib/fdx_api/models/payment_method_entity2.rb +149 -0
  463. data/lib/fdx_api/models/payment_method_id.rb +96 -0
  464. data/lib/fdx_api/models/payment_method_system_code.rb +90 -0
  465. data/lib/fdx_api/models/payment_method_system_proprietary.rb +85 -0
  466. data/lib/fdx_api/models/payment_network_identifier_type.rb +23 -0
  467. data/lib/fdx_api/models/payment_network_identifier_type1.rb +23 -0
  468. data/lib/fdx_api/models/payment_network_identifier_type3.rb +23 -0
  469. data/lib/fdx_api/models/payment_network_supported_by_account.rb +161 -0
  470. data/lib/fdx_api/models/payment_network_type.rb +43 -0
  471. data/lib/fdx_api/models/payment_network_type2.rb +39 -0
  472. data/lib/fdx_api/models/payment_status.rb +41 -0
  473. data/lib/fdx_api/models/payment_status1.rb +35 -0
  474. data/lib/fdx_api/models/payment_status3.rb +35 -0
  475. data/lib/fdx_api/models/payments_entity.rb +113 -0
  476. data/lib/fdx_api/models/payout_mode.rb +41 -0
  477. data/lib/fdx_api/models/payout_mode2.rb +38 -0
  478. data/lib/fdx_api/models/payout_type.rb +26 -0
  479. data/lib/fdx_api/models/payout_type2.rb +23 -0
  480. data/lib/fdx_api/models/payroll_frequency_type.rb +50 -0
  481. data/lib/fdx_api/models/payroll_frequency_type2.rb +50 -0
  482. data/lib/fdx_api/models/payroll_rate_type.rb +29 -0
  483. data/lib/fdx_api/models/payroll_rate_type2.rb +29 -0
  484. data/lib/fdx_api/models/payroll_report_entity.rb +162 -0
  485. data/lib/fdx_api/models/payroll_report_list_entity.rb +103 -0
  486. data/lib/fdx_api/models/payroll_report_summary_entity.rb +160 -0
  487. data/lib/fdx_api/models/payroll_report_type.rb +24 -0
  488. data/lib/fdx_api/models/payroll_report_type1.rb +23 -0
  489. data/lib/fdx_api/models/pension_source_entity.rb +136 -0
  490. data/lib/fdx_api/models/period_certain_type.rb +36 -0
  491. data/lib/fdx_api/models/period_certain_type2.rb +33 -0
  492. data/lib/fdx_api/models/planned_availability_entity.rb +122 -0
  493. data/lib/fdx_api/models/policy_premium_term_type.rb +23 -0
  494. data/lib/fdx_api/models/policy_premium_term_type2.rb +23 -0
  495. data/lib/fdx_api/models/policy_product_type.rb +26 -0
  496. data/lib/fdx_api/models/policy_product_type2.rb +23 -0
  497. data/lib/fdx_api/models/policy_status.rb +52 -0
  498. data/lib/fdx_api/models/policy_status2.rb +41 -0
  499. data/lib/fdx_api/models/portion_entity.rb +95 -0
  500. data/lib/fdx_api/models/position_type.rb +23 -0
  501. data/lib/fdx_api/models/position_type1.rb +23 -0
  502. data/lib/fdx_api/models/proprietary_account_id_scheme_entity.rb +88 -0
  503. data/lib/fdx_api/models/proprietary_financial_institution_id_scheme_entity.rb +86 -0
  504. data/lib/fdx_api/models/recipient_provider.rb +293 -0
  505. data/lib/fdx_api/models/recipient_record_at_ecosystem_registry.rb +223 -0
  506. data/lib/fdx_api/models/recipient_records_at_ecosystem_registry.rb +105 -0
  507. data/lib/fdx_api/models/recipient_request.rb +214 -0
  508. data/lib/fdx_api/models/recurring_payment_duration_entity.rb +86 -0
  509. data/lib/fdx_api/models/recurring_payment_duration_entity2.rb +86 -0
  510. data/lib/fdx_api/models/recurring_payment_duration_type.rb +24 -0
  511. data/lib/fdx_api/models/recurring_payment_duration_type2.rb +23 -0
  512. data/lib/fdx_api/models/recurring_payment_entity.rb +231 -0
  513. data/lib/fdx_api/models/recurring_payment_for_update_entity.rb +133 -0
  514. data/lib/fdx_api/models/recurring_payment_for_update_entity1.rb +132 -0
  515. data/lib/fdx_api/models/recurring_payment_for_update_entity2.rb +132 -0
  516. data/lib/fdx_api/models/recurring_payment_frequency.rb +46 -0
  517. data/lib/fdx_api/models/recurring_payment_frequency2.rb +44 -0
  518. data/lib/fdx_api/models/recurring_payment_status.rb +33 -0
  519. data/lib/fdx_api/models/recurring_payment_status2.rb +29 -0
  520. data/lib/fdx_api/models/recurring_payments_entity.rb +113 -0
  521. data/lib/fdx_api/models/registry.rb +30 -0
  522. data/lib/fdx_api/models/registry_reference.rb +102 -0
  523. data/lib/fdx_api/models/rental_income_statement.rb +424 -0
  524. data/lib/fdx_api/models/resource_entity.rb +114 -0
  525. data/lib/fdx_api/models/resource_list_entity.rb +104 -0
  526. data/lib/fdx_api/models/resource_status.rb +26 -0
  527. data/lib/fdx_api/models/resource_status2.rb +26 -0
  528. data/lib/fdx_api/models/result_type.rb +26 -0
  529. data/lib/fdx_api/models/reward_balance_entity.rb +144 -0
  530. data/lib/fdx_api/models/reward_categories_entity.rb +104 -0
  531. data/lib/fdx_api/models/reward_category_entity.rb +136 -0
  532. data/lib/fdx_api/models/reward_program_entity.rb +136 -0
  533. data/lib/fdx_api/models/reward_program_membership_entity.rb +147 -0
  534. data/lib/fdx_api/models/reward_programs_entity.rb +104 -0
  535. data/lib/fdx_api/models/reward_type.rb +30 -0
  536. data/lib/fdx_api/models/reward_type2.rb +26 -0
  537. data/lib/fdx_api/models/royalty_income_statement.rb +424 -0
  538. data/lib/fdx_api/models/sale_proceeds_type.rb +23 -0
  539. data/lib/fdx_api/models/sale_proceeds_type2.rb +23 -0
  540. data/lib/fdx_api/models/secured.rb +23 -0
  541. data/lib/fdx_api/models/secured2.rb +23 -0
  542. data/lib/fdx_api/models/security_category.rb +35 -0
  543. data/lib/fdx_api/models/security_detail_irs_form1099_b.rb +390 -0
  544. data/lib/fdx_api/models/security_entity.rb +96 -0
  545. data/lib/fdx_api/models/security_id_entity.rb +95 -0
  546. data/lib/fdx_api/models/security_id_type.rb +60 -0
  547. data/lib/fdx_api/models/security_id_type1.rb +50 -0
  548. data/lib/fdx_api/models/security_type.rb +51 -0
  549. data/lib/fdx_api/models/security_type2.rb +41 -0
  550. data/lib/fdx_api/models/state_and_local_tax_withholding.rb +95 -0
  551. data/lib/fdx_api/models/state_and_local_tax_withholding1.rb +95 -0
  552. data/lib/fdx_api/models/state_and_local_tax_withholding2.rb +95 -0
  553. data/lib/fdx_api/models/state_code.rb +203 -0
  554. data/lib/fdx_api/models/state_tax_withholding.rb +95 -0
  555. data/lib/fdx_api/models/state_tax_withholding2.rb +95 -0
  556. data/lib/fdx_api/models/statement_entity.rb +135 -0
  557. data/lib/fdx_api/models/stock_security_entity.rb +147 -0
  558. data/lib/fdx_api/models/stock_type.rb +29 -0
  559. data/lib/fdx_api/models/stock_type2.rb +29 -0
  560. data/lib/fdx_api/models/sub_account_type.rb +29 -0
  561. data/lib/fdx_api/models/sub_account_type1.rb +29 -0
  562. data/lib/fdx_api/models/sub_account_type2.rb +29 -0
  563. data/lib/fdx_api/models/sub_account_type4.rb +29 -0
  564. data/lib/fdx_api/models/supplemental_status.rb +44 -0
  565. data/lib/fdx_api/models/supplemental_status2.rb +44 -0
  566. data/lib/fdx_api/models/suspected_fraud_incident_entity.rb +133 -0
  567. data/lib/fdx_api/models/sweep_security_entity.rb +135 -0
  568. data/lib/fdx_api/models/synchronizable_array_entity.rb +96 -0
  569. data/lib/fdx_api/models/synchronizable_array_links_entity.rb +95 -0
  570. data/lib/fdx_api/models/synchronizable_array_links_entity2.rb +95 -0
  571. data/lib/fdx_api/models/tax.rb +218 -0
  572. data/lib/fdx_api/models/tax_data.rb +653 -0
  573. data/lib/fdx_api/models/tax_data_for_qr.rb +675 -0
  574. data/lib/fdx_api/models/tax_form_attribute.rb +106 -0
  575. data/lib/fdx_api/models/tax_lot_entity.rb +140 -0
  576. data/lib/fdx_api/models/tax_party.rb +138 -0
  577. data/lib/fdx_api/models/tax_party1.rb +140 -0
  578. data/lib/fdx_api/models/tax_party2.rb +138 -0
  579. data/lib/fdx_api/models/tax_party3.rb +138 -0
  580. data/lib/fdx_api/models/tax_party4.rb +139 -0
  581. data/lib/fdx_api/models/tax_party6.rb +140 -0
  582. data/lib/fdx_api/models/tax_party7.rb +140 -0
  583. data/lib/fdx_api/models/tax_party8.rb +139 -0
  584. data/lib/fdx_api/models/tax_party_type.rb +23 -0
  585. data/lib/fdx_api/models/tax_party_type2.rb +24 -0
  586. data/lib/fdx_api/models/tax_refund_direct_deposit.rb +108 -0
  587. data/lib/fdx_api/models/tax_refund_direct_deposit2.rb +108 -0
  588. data/lib/fdx_api/models/tax_statement.rb +174 -0
  589. data/lib/fdx_api/models/tax_statement1.rb +175 -0
  590. data/lib/fdx_api/models/tax_statement2.rb +175 -0
  591. data/lib/fdx_api/models/tax_statement4.rb +175 -0
  592. data/lib/fdx_api/models/tax_statement6.rb +175 -0
  593. data/lib/fdx_api/models/tax_statement_list.rb +85 -0
  594. data/lib/fdx_api/models/telephone_number.rb +105 -0
  595. data/lib/fdx_api/models/telephone_number_plus_extension.rb +105 -0
  596. data/lib/fdx_api/models/telephone_number_plus_extension1.rb +105 -0
  597. data/lib/fdx_api/models/telephone_number_plus_extension2.rb +105 -0
  598. data/lib/fdx_api/models/telephone_number_type.rb +29 -0
  599. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits.rb +115 -0
  600. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits1.rb +115 -0
  601. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits3.rb +115 -0
  602. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network.rb +139 -0
  603. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network1.rb +138 -0
  604. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network2.rb +138 -0
  605. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network3.rb +138 -0
  606. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network5.rb +138 -0
  607. data/lib/fdx_api/models/transaction.rb +357 -0
  608. data/lib/fdx_api/models/transaction_reason.rb +26 -0
  609. data/lib/fdx_api/models/transaction_reason2.rb +27 -0
  610. data/lib/fdx_api/models/transaction_reward_entity.rb +97 -0
  611. data/lib/fdx_api/models/transaction_reward_entity2.rb +107 -0
  612. data/lib/fdx_api/models/transaction_status.rb +29 -0
  613. data/lib/fdx_api/models/transaction_status2.rb +29 -0
  614. data/lib/fdx_api/models/transactions_entity.rb +109 -0
  615. data/lib/fdx_api/models/transfer_entity.rb +169 -0
  616. data/lib/fdx_api/models/transfer_for_create_entity.rb +129 -0
  617. data/lib/fdx_api/models/transfer_for_create_entity1.rb +129 -0
  618. data/lib/fdx_api/models/transfers_entity.rb +113 -0
  619. data/lib/fdx_api/models/treasury_management_type.rb +30 -0
  620. data/lib/fdx_api/models/type_data_type.rb +26 -0
  621. data/lib/fdx_api/models/type_data_type2.rb +24 -0
  622. data/lib/fdx_api/models/type_form_type.rb +176 -0
  623. data/lib/fdx_api/models/type_form_type1.rb +176 -0
  624. data/lib/fdx_api/models/unit_type.rb +23 -0
  625. data/lib/fdx_api/models/unit_type1.rb +23 -0
  626. data/lib/fdx_api/models/unit_type3.rb +23 -0
  627. data/lib/fdx_api/models/updates_metadata_entity.rb +77 -0
  628. data/lib/fdx_api/models/updates_metadata_entity2.rb +77 -0
  629. data/lib/fdx_api/models/vesting_entity.rb +186 -0
  630. data/lib/fdx_api/utilities/date_time_helper.rb +11 -0
  631. data/lib/fdx_api/utilities/file_wrapper.rb +28 -0
  632. data/lib/fdx_api/utilities/union_type_lookup.rb +240 -0
  633. data/lib/fdx_api.rb +661 -0
  634. metadata +717 -0
@@ -0,0 +1,669 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module FdxApi
7
+ # Shareholder's Share of Income, Deductions, Credits, etc.
8
+ class Form1120Sk11 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Year for which taxes are being paid
13
+ # @return [Integer]
14
+ attr_accessor :tax_year
15
+
16
+ # True to indicate this is a corrected tax form
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :corrected
19
+
20
+ # Long-term persistent identity of the source account. Not the account
21
+ # number
22
+ # @return [String]
23
+ attr_accessor :account_id
24
+
25
+ # Long-term persistent id for this tax form. Depending upon the data
26
+ # provider, this may be the same id as the enclosing tax statement id, or
27
+ # this may be a different id, or this id may be omitted.
28
+ # @return [String]
29
+ attr_accessor :tax_form_id
30
+
31
+ # Date of production or delivery of the tax form
32
+ # @return [Date]
33
+ attr_accessor :tax_form_date
34
+
35
+ # Additional explanation text or content about this tax form
36
+ # @return [String]
37
+ attr_accessor :additional_information
38
+
39
+ # Enumerated name of the tax form entity e.g. "TaxW2"
40
+ # @return [TypeFormType1]
41
+ attr_accessor :tax_form_type
42
+
43
+ # Issuer's name, address, phone, and TIN. Issuer data need only be
44
+ # transmitted on enclosing TaxStatement, if it is the same on all its
45
+ # included tax forms.
46
+ # @return [TaxParty8]
47
+ attr_accessor :issuer
48
+
49
+ # Recipient's name, address, phone, and TIN. Recipient data need only be
50
+ # transmitted on enclosing TaxStatement, if it is the same on all its
51
+ # included tax forms.
52
+ # @return [TaxParty1]
53
+ attr_accessor :recipient
54
+
55
+ # Additional attributes for this tax form when defined fields are not
56
+ # available. Some specific additional attributes already defined by
57
+ # providers: Fields required by [IRS
58
+ # FIRE](https://www.irs.gov/e-file-providers/filing-information-returns-elec
59
+ # tronically-fire): Name Control, Type of Identification Number (EIN, SSN,
60
+ # ITIN, ATIN). (ATIN is tax ID number for pending adoptions.) Tax form
61
+ # provider field for taxpayer notification: Recipient Email Address.
62
+ # @return [Array[TaxFormAttribute]]
63
+ attr_accessor :attributes
64
+
65
+ # Present if an error was encountered while retrieving this form
66
+ # @return [Error1]
67
+ attr_accessor :error
68
+
69
+ # Links to retrieve this form as data or image, or to invoke other APIs
70
+ # @return [Array[HateoasLink]]
71
+ attr_accessor :links
72
+
73
+ # Final K-1
74
+ # @return [TrueClass | FalseClass]
75
+ attr_accessor :final_k1
76
+
77
+ # Amended K-1
78
+ # @return [TrueClass | FalseClass]
79
+ attr_accessor :amended_k1
80
+
81
+ # Fiscal year begin date
82
+ # @return [Date]
83
+ attr_accessor :fiscal_year_begin
84
+
85
+ # Fiscal year end date
86
+ # @return [Date]
87
+ attr_accessor :fiscal_year_end
88
+
89
+ # Box C, IRS Center where corporation filed return
90
+ # @return [String]
91
+ attr_accessor :irs_center
92
+
93
+ # Box D, Corporation's total number of shares, Beginning of tax year
94
+ # @return [Float]
95
+ attr_accessor :corporation_beginning_shares
96
+
97
+ # Box D, Corporation's total number of shares, End of tax year
98
+ # @return [Float]
99
+ attr_accessor :corporation_ending_shares
100
+
101
+ # Box G, Current year allocation percentage
102
+ # @return [Float]
103
+ attr_accessor :percent_ownership
104
+
105
+ # Box H, Shareholder's number of shares, Beginning of tax year
106
+ # @return [Float]
107
+ attr_accessor :beginning_shares
108
+
109
+ # Box H, Shareholder's number of shares, End of tax year
110
+ # @return [Float]
111
+ attr_accessor :ending_shares
112
+
113
+ # Box I, Loans from shareholder, Beginning of tax year
114
+ # @return [Float]
115
+ attr_accessor :beginning_loans
116
+
117
+ # Box I, Loans from shareholder, Ending of tax year
118
+ # @return [Float]
119
+ attr_accessor :ending_loans
120
+
121
+ # Box 1, Ordinary business income (loss)
122
+ # @return [Float]
123
+ attr_accessor :ordinary_income
124
+
125
+ # Box 2, Net rental real estate income (loss)
126
+ # @return [Float]
127
+ attr_accessor :net_rental_real_estate_income
128
+
129
+ # Box 3, Other net rental income (loss)
130
+ # @return [Float]
131
+ attr_accessor :other_rental_income
132
+
133
+ # Box 4, Interest income
134
+ # @return [Float]
135
+ attr_accessor :interest_income
136
+
137
+ # Box 5a, Ordinary dividends
138
+ # @return [Float]
139
+ attr_accessor :ordinary_dividends
140
+
141
+ # Box 5b, Qualified dividends
142
+ # @return [Float]
143
+ attr_accessor :qualified_dividends
144
+
145
+ # Box 6, Royalties
146
+ # @return [Float]
147
+ attr_accessor :royalties
148
+
149
+ # Box 7, Net short-term capital gain (loss)
150
+ # @return [Float]
151
+ attr_accessor :net_short_term_gain
152
+
153
+ # Box 8a, Net long-term capital gain (loss)
154
+ # @return [Float]
155
+ attr_accessor :net_long_term_gain
156
+
157
+ # Box 8b, Collectibles (28%) gain (loss)
158
+ # @return [Float]
159
+ attr_accessor :collectibles_gain
160
+
161
+ # Box 8c, Unrecaptured section 1250 gain
162
+ # @return [Float]
163
+ attr_accessor :unrecaptured1250_gain
164
+
165
+ # Box 9, Net section 1231 gain (loss)
166
+ # @return [Float]
167
+ attr_accessor :net1231_gain
168
+
169
+ # Box 10, Other income (loss)
170
+ # @return [Array[CodeAndAmount]]
171
+ attr_accessor :other_income
172
+
173
+ # Box 11, Section 179 deduction
174
+ # @return [Float]
175
+ attr_accessor :section179_deduction
176
+
177
+ # Box 12, Other deductions
178
+ # @return [Array[CodeAndAmount]]
179
+ attr_accessor :other_deductions
180
+
181
+ # Box 13, Credits
182
+ # @return [Array[CodeAndAmount]]
183
+ attr_accessor :credits
184
+
185
+ # Box 14, Schedule K-3 is attached
186
+ # @return [TrueClass | FalseClass]
187
+ attr_accessor :schedule_k3
188
+
189
+ # Box 15, Alternative minimum tax (AMT) items
190
+ # @return [Array[CodeAndAmount]]
191
+ attr_accessor :amt_items
192
+
193
+ # Box 16, Items affecting shareholder basis
194
+ # @return [Array[CodeAndAmount]]
195
+ attr_accessor :basis_items
196
+
197
+ # Box 17, Other information
198
+ # @return [Array[CodeAndAmount]]
199
+ attr_accessor :other_info
200
+
201
+ # Box 18, More than one activity for at-risk purposes
202
+ # @return [TrueClass | FalseClass]
203
+ attr_accessor :multiple_at_risk_activities
204
+
205
+ # Box 19, More than one activity for passive activity purposes
206
+ # @return [TrueClass | FalseClass]
207
+ attr_accessor :multiple_passive_activities
208
+
209
+ # A mapping from model property names to API property names.
210
+ def self.names
211
+ @_hash = {} if @_hash.nil?
212
+ @_hash['tax_year'] = 'taxYear'
213
+ @_hash['corrected'] = 'corrected'
214
+ @_hash['account_id'] = 'accountId'
215
+ @_hash['tax_form_id'] = 'taxFormId'
216
+ @_hash['tax_form_date'] = 'taxFormDate'
217
+ @_hash['additional_information'] = 'additionalInformation'
218
+ @_hash['tax_form_type'] = 'taxFormType'
219
+ @_hash['issuer'] = 'issuer'
220
+ @_hash['recipient'] = 'recipient'
221
+ @_hash['attributes'] = 'attributes'
222
+ @_hash['error'] = 'error'
223
+ @_hash['links'] = 'links'
224
+ @_hash['final_k1'] = 'finalK1'
225
+ @_hash['amended_k1'] = 'amendedK1'
226
+ @_hash['fiscal_year_begin'] = 'fiscalYearBegin'
227
+ @_hash['fiscal_year_end'] = 'fiscalYearEnd'
228
+ @_hash['irs_center'] = 'irsCenter'
229
+ @_hash['corporation_beginning_shares'] = 'corporationBeginningShares'
230
+ @_hash['corporation_ending_shares'] = 'corporationEndingShares'
231
+ @_hash['percent_ownership'] = 'percentOwnership'
232
+ @_hash['beginning_shares'] = 'beginningShares'
233
+ @_hash['ending_shares'] = 'endingShares'
234
+ @_hash['beginning_loans'] = 'beginningLoans'
235
+ @_hash['ending_loans'] = 'endingLoans'
236
+ @_hash['ordinary_income'] = 'ordinaryIncome'
237
+ @_hash['net_rental_real_estate_income'] = 'netRentalRealEstateIncome'
238
+ @_hash['other_rental_income'] = 'otherRentalIncome'
239
+ @_hash['interest_income'] = 'interestIncome'
240
+ @_hash['ordinary_dividends'] = 'ordinaryDividends'
241
+ @_hash['qualified_dividends'] = 'qualifiedDividends'
242
+ @_hash['royalties'] = 'royalties'
243
+ @_hash['net_short_term_gain'] = 'netShortTermGain'
244
+ @_hash['net_long_term_gain'] = 'netLongTermGain'
245
+ @_hash['collectibles_gain'] = 'collectiblesGain'
246
+ @_hash['unrecaptured1250_gain'] = 'unrecaptured1250Gain'
247
+ @_hash['net1231_gain'] = 'net1231Gain'
248
+ @_hash['other_income'] = 'otherIncome'
249
+ @_hash['section179_deduction'] = 'section179Deduction'
250
+ @_hash['other_deductions'] = 'otherDeductions'
251
+ @_hash['credits'] = 'credits'
252
+ @_hash['schedule_k3'] = 'scheduleK3'
253
+ @_hash['amt_items'] = 'amtItems'
254
+ @_hash['basis_items'] = 'basisItems'
255
+ @_hash['other_info'] = 'otherInfo'
256
+ @_hash['multiple_at_risk_activities'] = 'multipleAtRiskActivities'
257
+ @_hash['multiple_passive_activities'] = 'multiplePassiveActivities'
258
+ @_hash
259
+ end
260
+
261
+ # An array for optional fields
262
+ def self.optionals
263
+ %w[
264
+ tax_year
265
+ corrected
266
+ account_id
267
+ tax_form_id
268
+ tax_form_date
269
+ additional_information
270
+ tax_form_type
271
+ issuer
272
+ recipient
273
+ attributes
274
+ error
275
+ links
276
+ final_k1
277
+ amended_k1
278
+ fiscal_year_begin
279
+ fiscal_year_end
280
+ irs_center
281
+ corporation_beginning_shares
282
+ corporation_ending_shares
283
+ percent_ownership
284
+ beginning_shares
285
+ ending_shares
286
+ beginning_loans
287
+ ending_loans
288
+ ordinary_income
289
+ net_rental_real_estate_income
290
+ other_rental_income
291
+ interest_income
292
+ ordinary_dividends
293
+ qualified_dividends
294
+ royalties
295
+ net_short_term_gain
296
+ net_long_term_gain
297
+ collectibles_gain
298
+ unrecaptured1250_gain
299
+ net1231_gain
300
+ other_income
301
+ section179_deduction
302
+ other_deductions
303
+ credits
304
+ schedule_k3
305
+ amt_items
306
+ basis_items
307
+ other_info
308
+ multiple_at_risk_activities
309
+ multiple_passive_activities
310
+ ]
311
+ end
312
+
313
+ # An array for nullable fields
314
+ def self.nullables
315
+ []
316
+ end
317
+
318
+ def initialize(tax_year: SKIP, corrected: SKIP, account_id: SKIP,
319
+ tax_form_id: SKIP, tax_form_date: SKIP,
320
+ additional_information: SKIP, tax_form_type: SKIP,
321
+ issuer: SKIP, recipient: SKIP, attributes: SKIP, error: SKIP,
322
+ links: SKIP, final_k1: SKIP, amended_k1: SKIP,
323
+ fiscal_year_begin: SKIP, fiscal_year_end: SKIP,
324
+ irs_center: SKIP, corporation_beginning_shares: SKIP,
325
+ corporation_ending_shares: SKIP, percent_ownership: SKIP,
326
+ beginning_shares: SKIP, ending_shares: SKIP,
327
+ beginning_loans: SKIP, ending_loans: SKIP,
328
+ ordinary_income: SKIP, net_rental_real_estate_income: SKIP,
329
+ other_rental_income: SKIP, interest_income: SKIP,
330
+ ordinary_dividends: SKIP, qualified_dividends: SKIP,
331
+ royalties: SKIP, net_short_term_gain: SKIP,
332
+ net_long_term_gain: SKIP, collectibles_gain: SKIP,
333
+ unrecaptured1250_gain: SKIP, net1231_gain: SKIP,
334
+ other_income: SKIP, section179_deduction: SKIP,
335
+ other_deductions: SKIP, credits: SKIP, schedule_k3: SKIP,
336
+ amt_items: SKIP, basis_items: SKIP, other_info: SKIP,
337
+ multiple_at_risk_activities: SKIP,
338
+ multiple_passive_activities: SKIP,
339
+ additional_properties: nil)
340
+ # Add additional model properties to the instance
341
+ additional_properties = {} if additional_properties.nil?
342
+
343
+ @tax_year = tax_year unless tax_year == SKIP
344
+ @corrected = corrected unless corrected == SKIP
345
+ @account_id = account_id unless account_id == SKIP
346
+ @tax_form_id = tax_form_id unless tax_form_id == SKIP
347
+ @tax_form_date = tax_form_date unless tax_form_date == SKIP
348
+ @additional_information = additional_information unless additional_information == SKIP
349
+ @tax_form_type = tax_form_type unless tax_form_type == SKIP
350
+ @issuer = issuer unless issuer == SKIP
351
+ @recipient = recipient unless recipient == SKIP
352
+ @attributes = attributes unless attributes == SKIP
353
+ @error = error unless error == SKIP
354
+ @links = links unless links == SKIP
355
+ @final_k1 = final_k1 unless final_k1 == SKIP
356
+ @amended_k1 = amended_k1 unless amended_k1 == SKIP
357
+ @fiscal_year_begin = fiscal_year_begin unless fiscal_year_begin == SKIP
358
+ @fiscal_year_end = fiscal_year_end unless fiscal_year_end == SKIP
359
+ @irs_center = irs_center unless irs_center == SKIP
360
+ unless corporation_beginning_shares == SKIP
361
+ @corporation_beginning_shares =
362
+ corporation_beginning_shares
363
+ end
364
+ unless corporation_ending_shares == SKIP
365
+ @corporation_ending_shares =
366
+ corporation_ending_shares
367
+ end
368
+ @percent_ownership = percent_ownership unless percent_ownership == SKIP
369
+ @beginning_shares = beginning_shares unless beginning_shares == SKIP
370
+ @ending_shares = ending_shares unless ending_shares == SKIP
371
+ @beginning_loans = beginning_loans unless beginning_loans == SKIP
372
+ @ending_loans = ending_loans unless ending_loans == SKIP
373
+ @ordinary_income = ordinary_income unless ordinary_income == SKIP
374
+ unless net_rental_real_estate_income == SKIP
375
+ @net_rental_real_estate_income =
376
+ net_rental_real_estate_income
377
+ end
378
+ @other_rental_income = other_rental_income unless other_rental_income == SKIP
379
+ @interest_income = interest_income unless interest_income == SKIP
380
+ @ordinary_dividends = ordinary_dividends unless ordinary_dividends == SKIP
381
+ @qualified_dividends = qualified_dividends unless qualified_dividends == SKIP
382
+ @royalties = royalties unless royalties == SKIP
383
+ @net_short_term_gain = net_short_term_gain unless net_short_term_gain == SKIP
384
+ @net_long_term_gain = net_long_term_gain unless net_long_term_gain == SKIP
385
+ @collectibles_gain = collectibles_gain unless collectibles_gain == SKIP
386
+ @unrecaptured1250_gain = unrecaptured1250_gain unless unrecaptured1250_gain == SKIP
387
+ @net1231_gain = net1231_gain unless net1231_gain == SKIP
388
+ @other_income = other_income unless other_income == SKIP
389
+ @section179_deduction = section179_deduction unless section179_deduction == SKIP
390
+ @other_deductions = other_deductions unless other_deductions == SKIP
391
+ @credits = credits unless credits == SKIP
392
+ @schedule_k3 = schedule_k3 unless schedule_k3 == SKIP
393
+ @amt_items = amt_items unless amt_items == SKIP
394
+ @basis_items = basis_items unless basis_items == SKIP
395
+ @other_info = other_info unless other_info == SKIP
396
+ unless multiple_at_risk_activities == SKIP
397
+ @multiple_at_risk_activities =
398
+ multiple_at_risk_activities
399
+ end
400
+ unless multiple_passive_activities == SKIP
401
+ @multiple_passive_activities =
402
+ multiple_passive_activities
403
+ end
404
+ @additional_properties = additional_properties
405
+ end
406
+
407
+ # Creates an instance of the object from a hash.
408
+ def self.from_hash(hash)
409
+ return nil unless hash
410
+
411
+ # Extract variables from the hash.
412
+ tax_year = hash.key?('taxYear') ? hash['taxYear'] : SKIP
413
+ corrected = hash.key?('corrected') ? hash['corrected'] : SKIP
414
+ account_id = hash.key?('accountId') ? hash['accountId'] : SKIP
415
+ tax_form_id = hash.key?('taxFormId') ? hash['taxFormId'] : SKIP
416
+ tax_form_date = hash.key?('taxFormDate') ? hash['taxFormDate'] : SKIP
417
+ additional_information =
418
+ hash.key?('additionalInformation') ? hash['additionalInformation'] : SKIP
419
+ tax_form_type = hash.key?('taxFormType') ? hash['taxFormType'] : SKIP
420
+ issuer = TaxParty8.from_hash(hash['issuer']) if hash['issuer']
421
+ recipient = TaxParty1.from_hash(hash['recipient']) if hash['recipient']
422
+ # Parameter is an array, so we need to iterate through it
423
+ attributes = nil
424
+ unless hash['attributes'].nil?
425
+ attributes = []
426
+ hash['attributes'].each do |structure|
427
+ attributes << (TaxFormAttribute.from_hash(structure) if structure)
428
+ end
429
+ end
430
+
431
+ attributes = SKIP unless hash.key?('attributes')
432
+ error = Error1.from_hash(hash['error']) if hash['error']
433
+ # Parameter is an array, so we need to iterate through it
434
+ links = nil
435
+ unless hash['links'].nil?
436
+ links = []
437
+ hash['links'].each do |structure|
438
+ links << (HateoasLink.from_hash(structure) if structure)
439
+ end
440
+ end
441
+
442
+ links = SKIP unless hash.key?('links')
443
+ final_k1 = hash.key?('finalK1') ? hash['finalK1'] : SKIP
444
+ amended_k1 = hash.key?('amendedK1') ? hash['amendedK1'] : SKIP
445
+ fiscal_year_begin =
446
+ hash.key?('fiscalYearBegin') ? hash['fiscalYearBegin'] : SKIP
447
+ fiscal_year_end =
448
+ hash.key?('fiscalYearEnd') ? hash['fiscalYearEnd'] : SKIP
449
+ irs_center = hash.key?('irsCenter') ? hash['irsCenter'] : SKIP
450
+ corporation_beginning_shares =
451
+ hash.key?('corporationBeginningShares') ? hash['corporationBeginningShares'] : SKIP
452
+ corporation_ending_shares =
453
+ hash.key?('corporationEndingShares') ? hash['corporationEndingShares'] : SKIP
454
+ percent_ownership =
455
+ hash.key?('percentOwnership') ? hash['percentOwnership'] : SKIP
456
+ beginning_shares =
457
+ hash.key?('beginningShares') ? hash['beginningShares'] : SKIP
458
+ ending_shares = hash.key?('endingShares') ? hash['endingShares'] : SKIP
459
+ beginning_loans =
460
+ hash.key?('beginningLoans') ? hash['beginningLoans'] : SKIP
461
+ ending_loans = hash.key?('endingLoans') ? hash['endingLoans'] : SKIP
462
+ ordinary_income =
463
+ hash.key?('ordinaryIncome') ? hash['ordinaryIncome'] : SKIP
464
+ net_rental_real_estate_income =
465
+ hash.key?('netRentalRealEstateIncome') ? hash['netRentalRealEstateIncome'] : SKIP
466
+ other_rental_income =
467
+ hash.key?('otherRentalIncome') ? hash['otherRentalIncome'] : SKIP
468
+ interest_income =
469
+ hash.key?('interestIncome') ? hash['interestIncome'] : SKIP
470
+ ordinary_dividends =
471
+ hash.key?('ordinaryDividends') ? hash['ordinaryDividends'] : SKIP
472
+ qualified_dividends =
473
+ hash.key?('qualifiedDividends') ? hash['qualifiedDividends'] : SKIP
474
+ royalties = hash.key?('royalties') ? hash['royalties'] : SKIP
475
+ net_short_term_gain =
476
+ hash.key?('netShortTermGain') ? hash['netShortTermGain'] : SKIP
477
+ net_long_term_gain =
478
+ hash.key?('netLongTermGain') ? hash['netLongTermGain'] : SKIP
479
+ collectibles_gain =
480
+ hash.key?('collectiblesGain') ? hash['collectiblesGain'] : SKIP
481
+ unrecaptured1250_gain =
482
+ hash.key?('unrecaptured1250Gain') ? hash['unrecaptured1250Gain'] : SKIP
483
+ net1231_gain = hash.key?('net1231Gain') ? hash['net1231Gain'] : SKIP
484
+ # Parameter is an array, so we need to iterate through it
485
+ other_income = nil
486
+ unless hash['otherIncome'].nil?
487
+ other_income = []
488
+ hash['otherIncome'].each do |structure|
489
+ other_income << (CodeAndAmount.from_hash(structure) if structure)
490
+ end
491
+ end
492
+
493
+ other_income = SKIP unless hash.key?('otherIncome')
494
+ section179_deduction =
495
+ hash.key?('section179Deduction') ? hash['section179Deduction'] : SKIP
496
+ # Parameter is an array, so we need to iterate through it
497
+ other_deductions = nil
498
+ unless hash['otherDeductions'].nil?
499
+ other_deductions = []
500
+ hash['otherDeductions'].each do |structure|
501
+ other_deductions << (CodeAndAmount.from_hash(structure) if structure)
502
+ end
503
+ end
504
+
505
+ other_deductions = SKIP unless hash.key?('otherDeductions')
506
+ # Parameter is an array, so we need to iterate through it
507
+ credits = nil
508
+ unless hash['credits'].nil?
509
+ credits = []
510
+ hash['credits'].each do |structure|
511
+ credits << (CodeAndAmount.from_hash(structure) if structure)
512
+ end
513
+ end
514
+
515
+ credits = SKIP unless hash.key?('credits')
516
+ schedule_k3 = hash.key?('scheduleK3') ? hash['scheduleK3'] : SKIP
517
+ # Parameter is an array, so we need to iterate through it
518
+ amt_items = nil
519
+ unless hash['amtItems'].nil?
520
+ amt_items = []
521
+ hash['amtItems'].each do |structure|
522
+ amt_items << (CodeAndAmount.from_hash(structure) if structure)
523
+ end
524
+ end
525
+
526
+ amt_items = SKIP unless hash.key?('amtItems')
527
+ # Parameter is an array, so we need to iterate through it
528
+ basis_items = nil
529
+ unless hash['basisItems'].nil?
530
+ basis_items = []
531
+ hash['basisItems'].each do |structure|
532
+ basis_items << (CodeAndAmount.from_hash(structure) if structure)
533
+ end
534
+ end
535
+
536
+ basis_items = SKIP unless hash.key?('basisItems')
537
+ # Parameter is an array, so we need to iterate through it
538
+ other_info = nil
539
+ unless hash['otherInfo'].nil?
540
+ other_info = []
541
+ hash['otherInfo'].each do |structure|
542
+ other_info << (CodeAndAmount.from_hash(structure) if structure)
543
+ end
544
+ end
545
+
546
+ other_info = SKIP unless hash.key?('otherInfo')
547
+ multiple_at_risk_activities =
548
+ hash.key?('multipleAtRiskActivities') ? hash['multipleAtRiskActivities'] : SKIP
549
+ multiple_passive_activities =
550
+ hash.key?('multiplePassiveActivities') ? hash['multiplePassiveActivities'] : SKIP
551
+
552
+ # Create a new hash for additional properties, removing known properties.
553
+ new_hash = hash.reject { |k, _| names.value?(k) }
554
+
555
+ additional_properties = APIHelper.get_additional_properties(
556
+ new_hash, proc { |value| value }
557
+ )
558
+
559
+ # Create object from extracted values.
560
+ Form1120Sk11.new(tax_year: tax_year,
561
+ corrected: corrected,
562
+ account_id: account_id,
563
+ tax_form_id: tax_form_id,
564
+ tax_form_date: tax_form_date,
565
+ additional_information: additional_information,
566
+ tax_form_type: tax_form_type,
567
+ issuer: issuer,
568
+ recipient: recipient,
569
+ attributes: attributes,
570
+ error: error,
571
+ links: links,
572
+ final_k1: final_k1,
573
+ amended_k1: amended_k1,
574
+ fiscal_year_begin: fiscal_year_begin,
575
+ fiscal_year_end: fiscal_year_end,
576
+ irs_center: irs_center,
577
+ corporation_beginning_shares: corporation_beginning_shares,
578
+ corporation_ending_shares: corporation_ending_shares,
579
+ percent_ownership: percent_ownership,
580
+ beginning_shares: beginning_shares,
581
+ ending_shares: ending_shares,
582
+ beginning_loans: beginning_loans,
583
+ ending_loans: ending_loans,
584
+ ordinary_income: ordinary_income,
585
+ net_rental_real_estate_income: net_rental_real_estate_income,
586
+ other_rental_income: other_rental_income,
587
+ interest_income: interest_income,
588
+ ordinary_dividends: ordinary_dividends,
589
+ qualified_dividends: qualified_dividends,
590
+ royalties: royalties,
591
+ net_short_term_gain: net_short_term_gain,
592
+ net_long_term_gain: net_long_term_gain,
593
+ collectibles_gain: collectibles_gain,
594
+ unrecaptured1250_gain: unrecaptured1250_gain,
595
+ net1231_gain: net1231_gain,
596
+ other_income: other_income,
597
+ section179_deduction: section179_deduction,
598
+ other_deductions: other_deductions,
599
+ credits: credits,
600
+ schedule_k3: schedule_k3,
601
+ amt_items: amt_items,
602
+ basis_items: basis_items,
603
+ other_info: other_info,
604
+ multiple_at_risk_activities: multiple_at_risk_activities,
605
+ multiple_passive_activities: multiple_passive_activities,
606
+ additional_properties: additional_properties)
607
+ end
608
+
609
+ # Provides a human-readable string representation of the object.
610
+ def to_s
611
+ class_name = self.class.name.split('::').last
612
+ "<#{class_name} tax_year: #{@tax_year}, corrected: #{@corrected}, account_id:"\
613
+ " #{@account_id}, tax_form_id: #{@tax_form_id}, tax_form_date: #{@tax_form_date},"\
614
+ " additional_information: #{@additional_information}, tax_form_type: #{@tax_form_type},"\
615
+ " issuer: #{@issuer}, recipient: #{@recipient}, attributes: #{@attributes}, error:"\
616
+ " #{@error}, links: #{@links}, final_k1: #{@final_k1}, amended_k1: #{@amended_k1},"\
617
+ " fiscal_year_begin: #{@fiscal_year_begin}, fiscal_year_end: #{@fiscal_year_end},"\
618
+ " irs_center: #{@irs_center}, corporation_beginning_shares:"\
619
+ " #{@corporation_beginning_shares}, corporation_ending_shares:"\
620
+ " #{@corporation_ending_shares}, percent_ownership: #{@percent_ownership}, beginning_shares:"\
621
+ " #{@beginning_shares}, ending_shares: #{@ending_shares}, beginning_loans:"\
622
+ " #{@beginning_loans}, ending_loans: #{@ending_loans}, ordinary_income: #{@ordinary_income},"\
623
+ " net_rental_real_estate_income: #{@net_rental_real_estate_income}, other_rental_income:"\
624
+ " #{@other_rental_income}, interest_income: #{@interest_income}, ordinary_dividends:"\
625
+ " #{@ordinary_dividends}, qualified_dividends: #{@qualified_dividends}, royalties:"\
626
+ " #{@royalties}, net_short_term_gain: #{@net_short_term_gain}, net_long_term_gain:"\
627
+ " #{@net_long_term_gain}, collectibles_gain: #{@collectibles_gain}, unrecaptured1250_gain:"\
628
+ " #{@unrecaptured1250_gain}, net1231_gain: #{@net1231_gain}, other_income: #{@other_income},"\
629
+ " section179_deduction: #{@section179_deduction}, other_deductions: #{@other_deductions},"\
630
+ " credits: #{@credits}, schedule_k3: #{@schedule_k3}, amt_items: #{@amt_items}, basis_items:"\
631
+ " #{@basis_items}, other_info: #{@other_info}, multiple_at_risk_activities:"\
632
+ " #{@multiple_at_risk_activities}, multiple_passive_activities:"\
633
+ " #{@multiple_passive_activities}, additional_properties: #{@additional_properties}>"
634
+ end
635
+
636
+ # Provides a debugging-friendly string with detailed object information.
637
+ def inspect
638
+ class_name = self.class.name.split('::').last
639
+ "<#{class_name} tax_year: #{@tax_year.inspect}, corrected: #{@corrected.inspect},"\
640
+ " account_id: #{@account_id.inspect}, tax_form_id: #{@tax_form_id.inspect}, tax_form_date:"\
641
+ " #{@tax_form_date.inspect}, additional_information: #{@additional_information.inspect},"\
642
+ " tax_form_type: #{@tax_form_type.inspect}, issuer: #{@issuer.inspect}, recipient:"\
643
+ " #{@recipient.inspect}, attributes: #{@attributes.inspect}, error: #{@error.inspect},"\
644
+ " links: #{@links.inspect}, final_k1: #{@final_k1.inspect}, amended_k1:"\
645
+ " #{@amended_k1.inspect}, fiscal_year_begin: #{@fiscal_year_begin.inspect}, fiscal_year_end:"\
646
+ " #{@fiscal_year_end.inspect}, irs_center: #{@irs_center.inspect},"\
647
+ " corporation_beginning_shares: #{@corporation_beginning_shares.inspect},"\
648
+ " corporation_ending_shares: #{@corporation_ending_shares.inspect}, percent_ownership:"\
649
+ " #{@percent_ownership.inspect}, beginning_shares: #{@beginning_shares.inspect},"\
650
+ " ending_shares: #{@ending_shares.inspect}, beginning_loans: #{@beginning_loans.inspect},"\
651
+ " ending_loans: #{@ending_loans.inspect}, ordinary_income: #{@ordinary_income.inspect},"\
652
+ " net_rental_real_estate_income: #{@net_rental_real_estate_income.inspect},"\
653
+ " other_rental_income: #{@other_rental_income.inspect}, interest_income:"\
654
+ " #{@interest_income.inspect}, ordinary_dividends: #{@ordinary_dividends.inspect},"\
655
+ " qualified_dividends: #{@qualified_dividends.inspect}, royalties: #{@royalties.inspect},"\
656
+ " net_short_term_gain: #{@net_short_term_gain.inspect}, net_long_term_gain:"\
657
+ " #{@net_long_term_gain.inspect}, collectibles_gain: #{@collectibles_gain.inspect},"\
658
+ " unrecaptured1250_gain: #{@unrecaptured1250_gain.inspect}, net1231_gain:"\
659
+ " #{@net1231_gain.inspect}, other_income: #{@other_income.inspect}, section179_deduction:"\
660
+ " #{@section179_deduction.inspect}, other_deductions: #{@other_deductions.inspect}, credits:"\
661
+ " #{@credits.inspect}, schedule_k3: #{@schedule_k3.inspect}, amt_items:"\
662
+ " #{@amt_items.inspect}, basis_items: #{@basis_items.inspect}, other_info:"\
663
+ " #{@other_info.inspect}, multiple_at_risk_activities:"\
664
+ " #{@multiple_at_risk_activities.inspect}, multiple_passive_activities:"\
665
+ " #{@multiple_passive_activities.inspect}, additional_properties:"\
666
+ " #{@additional_properties}>"
667
+ end
668
+ end
669
+ end