xero-apimatic-sdk 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 (289) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +175 -0
  4. data/bin/console +15 -0
  5. data/lib/xero_ap_is/api_helper.rb +10 -0
  6. data/lib/xero_ap_is/apis/accounting_api.rb +8328 -0
  7. data/lib/xero_ap_is/apis/asset_api.rb +210 -0
  8. data/lib/xero_ap_is/apis/bank_feeds_api.rb +268 -0
  9. data/lib/xero_ap_is/apis/base_api.rb +67 -0
  10. data/lib/xero_ap_is/apis/identity_api.rb +51 -0
  11. data/lib/xero_ap_is/apis/oauth_authorization_api.rb +87 -0
  12. data/lib/xero_ap_is/apis/project_api.rb +662 -0
  13. data/lib/xero_ap_is/client.rb +110 -0
  14. data/lib/xero_ap_is/configuration.rb +196 -0
  15. data/lib/xero_ap_is/exceptions/api_exception.rb +21 -0
  16. data/lib/xero_ap_is/exceptions/asset_types400_error_exception.rb +72 -0
  17. data/lib/xero_ap_is/exceptions/assets400_error_exception.rb +72 -0
  18. data/lib/xero_ap_is/exceptions/error_error1_exception.rb +63 -0
  19. data/lib/xero_ap_is/exceptions/error_error2_exception.rb +51 -0
  20. data/lib/xero_ap_is/exceptions/error_exception.rb +72 -0
  21. data/lib/xero_ap_is/exceptions/feed_connections_error_exception.rb +60 -0
  22. data/lib/xero_ap_is/exceptions/oauth_provider_exception.rb +64 -0
  23. data/lib/xero_ap_is/exceptions/statements_error_exception.rb +60 -0
  24. data/lib/xero_ap_is/http/api_response.rb +19 -0
  25. data/lib/xero_ap_is/http/auth/basic_auth.rb +62 -0
  26. data/lib/xero_ap_is/http/auth/oauth_2.rb +161 -0
  27. data/lib/xero_ap_is/http/http_call_back.rb +10 -0
  28. data/lib/xero_ap_is/http/http_method_enum.rb +10 -0
  29. data/lib/xero_ap_is/http/http_request.rb +10 -0
  30. data/lib/xero_ap_is/http/http_response.rb +10 -0
  31. data/lib/xero_ap_is/http/proxy_settings.rb +22 -0
  32. data/lib/xero_ap_is/logging/configuration/api_logging_configuration.rb +186 -0
  33. data/lib/xero_ap_is/logging/sdk_logger.rb +17 -0
  34. data/lib/xero_ap_is/models/access_token.rb +116 -0
  35. data/lib/xero_ap_is/models/account.rb +300 -0
  36. data/lib/xero_ap_is/models/account_type.rb +100 -0
  37. data/lib/xero_ap_is/models/account_type1.rb +37 -0
  38. data/lib/xero_ap_is/models/accounts.rb +84 -0
  39. data/lib/xero_ap_is/models/accounts_payable.rb +85 -0
  40. data/lib/xero_ap_is/models/accounts_receivable.rb +85 -0
  41. data/lib/xero_ap_is/models/action.rb +85 -0
  42. data/lib/xero_ap_is/models/actions.rb +84 -0
  43. data/lib/xero_ap_is/models/address.rb +167 -0
  44. data/lib/xero_ap_is/models/address_for_organisation.rb +167 -0
  45. data/lib/xero_ap_is/models/address_type.rb +40 -0
  46. data/lib/xero_ap_is/models/address_type1.rb +36 -0
  47. data/lib/xero_ap_is/models/allocation.rb +174 -0
  48. data/lib/xero_ap_is/models/allocations.rb +85 -0
  49. data/lib/xero_ap_is/models/amount.rb +85 -0
  50. data/lib/xero_ap_is/models/asset.rb +249 -0
  51. data/lib/xero_ap_is/models/asset_status.rb +40 -0
  52. data/lib/xero_ap_is/models/asset_status_query_param.rb +40 -0
  53. data/lib/xero_ap_is/models/asset_type.rb +154 -0
  54. data/lib/xero_ap_is/models/assets.rb +94 -0
  55. data/lib/xero_ap_is/models/attachment.rb +126 -0
  56. data/lib/xero_ap_is/models/attachments.rb +85 -0
  57. data/lib/xero_ap_is/models/averaging_method.rb +36 -0
  58. data/lib/xero_ap_is/models/balance_details.rb +98 -0
  59. data/lib/xero_ap_is/models/balances.rb +89 -0
  60. data/lib/xero_ap_is/models/bank_account_type.rb +44 -0
  61. data/lib/xero_ap_is/models/bank_transaction.rb +319 -0
  62. data/lib/xero_ap_is/models/bank_transactions.rb +114 -0
  63. data/lib/xero_ap_is/models/bank_transfer.rb +224 -0
  64. data/lib/xero_ap_is/models/bank_transfers.rb +85 -0
  65. data/lib/xero_ap_is/models/base_model.rb +110 -0
  66. data/lib/xero_ap_is/models/batch_payment.rb +275 -0
  67. data/lib/xero_ap_is/models/batch_payment_delete.rb +84 -0
  68. data/lib/xero_ap_is/models/batch_payment_delete_by_url_param.rb +73 -0
  69. data/lib/xero_ap_is/models/batch_payment_details.rb +128 -0
  70. data/lib/xero_ap_is/models/batch_payments.rb +85 -0
  71. data/lib/xero_ap_is/models/bill.rb +85 -0
  72. data/lib/xero_ap_is/models/book_depreciation_detail.rb +243 -0
  73. data/lib/xero_ap_is/models/book_depreciation_setting.rb +170 -0
  74. data/lib/xero_ap_is/models/branding_theme.rb +129 -0
  75. data/lib/xero_ap_is/models/branding_themes.rb +85 -0
  76. data/lib/xero_ap_is/models/budget.rb +145 -0
  77. data/lib/xero_ap_is/models/budget_balance.rb +105 -0
  78. data/lib/xero_ap_is/models/budget_line.rb +105 -0
  79. data/lib/xero_ap_is/models/budgets.rb +84 -0
  80. data/lib/xero_ap_is/models/charge_type.rb +42 -0
  81. data/lib/xero_ap_is/models/cis_org_setting.rb +105 -0
  82. data/lib/xero_ap_is/models/cis_org_settings.rb +85 -0
  83. data/lib/xero_ap_is/models/cis_setting.rb +86 -0
  84. data/lib/xero_ap_is/models/cis_settings.rb +85 -0
  85. data/lib/xero_ap_is/models/class1.rb +113 -0
  86. data/lib/xero_ap_is/models/connection.rb +155 -0
  87. data/lib/xero_ap_is/models/contact.rb +661 -0
  88. data/lib/xero_ap_is/models/contact_group.rb +119 -0
  89. data/lib/xero_ap_is/models/contact_groups.rb +85 -0
  90. data/lib/xero_ap_is/models/contact_person.rb +108 -0
  91. data/lib/xero_ap_is/models/contact_status.rb +40 -0
  92. data/lib/xero_ap_is/models/contacts.rb +113 -0
  93. data/lib/xero_ap_is/models/conversion_balances.rb +108 -0
  94. data/lib/xero_ap_is/models/conversion_date.rb +87 -0
  95. data/lib/xero_ap_is/models/country_code.rb +990 -0
  96. data/lib/xero_ap_is/models/credit_debit_indicator.rb +37 -0
  97. data/lib/xero_ap_is/models/credit_note.rb +453 -0
  98. data/lib/xero_ap_is/models/credit_notes.rb +113 -0
  99. data/lib/xero_ap_is/models/currencies.rb +85 -0
  100. data/lib/xero_ap_is/models/currency.rb +85 -0
  101. data/lib/xero_ap_is/models/currency_code.rb +700 -0
  102. data/lib/xero_ap_is/models/currency_code1.rb +680 -0
  103. data/lib/xero_ap_is/models/depreciation_calculation_method.rb +40 -0
  104. data/lib/xero_ap_is/models/depreciation_method.rb +52 -0
  105. data/lib/xero_ap_is/models/due_date_type.rb +52 -0
  106. data/lib/xero_ap_is/models/edition.rb +38 -0
  107. data/lib/xero_ap_is/models/element.rb +160 -0
  108. data/lib/xero_ap_is/models/employee.rb +160 -0
  109. data/lib/xero_ap_is/models/employees.rb +85 -0
  110. data/lib/xero_ap_is/models/end_balance.rb +89 -0
  111. data/lib/xero_ap_is/models/error1.rb +138 -0
  112. data/lib/xero_ap_is/models/error2.rb +106 -0
  113. data/lib/xero_ap_is/models/error3.rb +85 -0
  114. data/lib/xero_ap_is/models/expense_claim.rb +209 -0
  115. data/lib/xero_ap_is/models/expense_claims.rb +85 -0
  116. data/lib/xero_ap_is/models/external_link.rb +95 -0
  117. data/lib/xero_ap_is/models/federal_tax_classification.rb +56 -0
  118. data/lib/xero_ap_is/models/feed_connection.rb +177 -0
  119. data/lib/xero_ap_is/models/feed_connections.rb +94 -0
  120. data/lib/xero_ap_is/models/field_validation_errors_element.rb +127 -0
  121. data/lib/xero_ap_is/models/history_record.rb +105 -0
  122. data/lib/xero_ap_is/models/history_records.rb +85 -0
  123. data/lib/xero_ap_is/models/import_summary.rb +87 -0
  124. data/lib/xero_ap_is/models/import_summary_accounts.rb +154 -0
  125. data/lib/xero_ap_is/models/import_summary_object.rb +76 -0
  126. data/lib/xero_ap_is/models/import_summary_organisation.rb +75 -0
  127. data/lib/xero_ap_is/models/invoice.rb +586 -0
  128. data/lib/xero_ap_is/models/invoice_address.rb +158 -0
  129. data/lib/xero_ap_is/models/invoice_address_type.rb +37 -0
  130. data/lib/xero_ap_is/models/invoice_reminder.rb +75 -0
  131. data/lib/xero_ap_is/models/invoice_reminders.rb +85 -0
  132. data/lib/xero_ap_is/models/invoices.rb +113 -0
  133. data/lib/xero_ap_is/models/item.rb +259 -0
  134. data/lib/xero_ap_is/models/items.rb +84 -0
  135. data/lib/xero_ap_is/models/journal.rb +157 -0
  136. data/lib/xero_ap_is/models/journal_line.rb +201 -0
  137. data/lib/xero_ap_is/models/journals.rb +103 -0
  138. data/lib/xero_ap_is/models/line_amount_types.rb +41 -0
  139. data/lib/xero_ap_is/models/line_item.rb +287 -0
  140. data/lib/xero_ap_is/models/line_item_item.rb +95 -0
  141. data/lib/xero_ap_is/models/line_item_tracking.rb +108 -0
  142. data/lib/xero_ap_is/models/link_type.rb +48 -0
  143. data/lib/xero_ap_is/models/linked_transaction.rb +215 -0
  144. data/lib/xero_ap_is/models/linked_transactions.rb +85 -0
  145. data/lib/xero_ap_is/models/manual_journal.rb +255 -0
  146. data/lib/xero_ap_is/models/manual_journal_line.rb +156 -0
  147. data/lib/xero_ap_is/models/manual_journals.rb +114 -0
  148. data/lib/xero_ap_is/models/mclass.rb +48 -0
  149. data/lib/xero_ap_is/models/oauth_provider_error.rb +62 -0
  150. data/lib/xero_ap_is/models/oauth_scope_oauth_2.rb +113 -0
  151. data/lib/xero_ap_is/models/oauth_token.rb +96 -0
  152. data/lib/xero_ap_is/models/online_invoice.rb +77 -0
  153. data/lib/xero_ap_is/models/online_invoices.rb +85 -0
  154. data/lib/xero_ap_is/models/order_by.rb +56 -0
  155. data/lib/xero_ap_is/models/organisation.rb +467 -0
  156. data/lib/xero_ap_is/models/organisation_entity_type.rb +80 -0
  157. data/lib/xero_ap_is/models/organisation_role.rb +61 -0
  158. data/lib/xero_ap_is/models/organisation_type.rb +80 -0
  159. data/lib/xero_ap_is/models/organisations.rb +85 -0
  160. data/lib/xero_ap_is/models/overpayment.rb +309 -0
  161. data/lib/xero_ap_is/models/overpayments.rb +113 -0
  162. data/lib/xero_ap_is/models/pagination.rb +105 -0
  163. data/lib/xero_ap_is/models/payment.rb +381 -0
  164. data/lib/xero_ap_is/models/payment_delete.rb +73 -0
  165. data/lib/xero_ap_is/models/payment_service.rb +143 -0
  166. data/lib/xero_ap_is/models/payment_services.rb +85 -0
  167. data/lib/xero_ap_is/models/payment_term.rb +85 -0
  168. data/lib/xero_ap_is/models/payment_term_type.rb +44 -0
  169. data/lib/xero_ap_is/models/payment_type.rb +60 -0
  170. data/lib/xero_ap_is/models/payments.rb +113 -0
  171. data/lib/xero_ap_is/models/phone.rb +108 -0
  172. data/lib/xero_ap_is/models/phone_type.rb +48 -0
  173. data/lib/xero_ap_is/models/prepayment.rb +309 -0
  174. data/lib/xero_ap_is/models/prepayments.rb +113 -0
  175. data/lib/xero_ap_is/models/project.rb +328 -0
  176. data/lib/xero_ap_is/models/project_create_or_update.rb +115 -0
  177. data/lib/xero_ap_is/models/project_patch.rb +73 -0
  178. data/lib/xero_ap_is/models/project_status.rb +36 -0
  179. data/lib/xero_ap_is/models/project_user.rb +95 -0
  180. data/lib/xero_ap_is/models/project_users.rb +94 -0
  181. data/lib/xero_ap_is/models/projects.rb +94 -0
  182. data/lib/xero_ap_is/models/purchase.rb +112 -0
  183. data/lib/xero_ap_is/models/purchase_order.rb +408 -0
  184. data/lib/xero_ap_is/models/purchase_orders.rb +114 -0
  185. data/lib/xero_ap_is/models/purchases_default_line_amount_type.rb +42 -0
  186. data/lib/xero_ap_is/models/quote.rb +338 -0
  187. data/lib/xero_ap_is/models/quote_line_amount_types.rb +41 -0
  188. data/lib/xero_ap_is/models/quote_status_codes.rb +52 -0
  189. data/lib/xero_ap_is/models/quotes.rb +84 -0
  190. data/lib/xero_ap_is/models/receipt.rb +287 -0
  191. data/lib/xero_ap_is/models/receipts.rb +84 -0
  192. data/lib/xero_ap_is/models/refresh_token.rb +106 -0
  193. data/lib/xero_ap_is/models/repeating_invoice.rb +290 -0
  194. data/lib/xero_ap_is/models/repeating_invoices.rb +85 -0
  195. data/lib/xero_ap_is/models/report.rb +136 -0
  196. data/lib/xero_ap_is/models/report_attribute.rb +85 -0
  197. data/lib/xero_ap_is/models/report_cell.rb +94 -0
  198. data/lib/xero_ap_is/models/report_fields.rb +95 -0
  199. data/lib/xero_ap_is/models/report_row.rb +104 -0
  200. data/lib/xero_ap_is/models/report_rows.rb +123 -0
  201. data/lib/xero_ap_is/models/report_tax_type.rb +424 -0
  202. data/lib/xero_ap_is/models/report_type.rb +26 -0
  203. data/lib/xero_ap_is/models/report_with_row.rb +176 -0
  204. data/lib/xero_ap_is/models/report_with_rows.rb +84 -0
  205. data/lib/xero_ap_is/models/reports.rb +84 -0
  206. data/lib/xero_ap_is/models/request_empty.rb +75 -0
  207. data/lib/xero_ap_is/models/resource_validation_errors_element.rb +116 -0
  208. data/lib/xero_ap_is/models/row_type.rb +44 -0
  209. data/lib/xero_ap_is/models/sales_default_line_amount_type.rb +42 -0
  210. data/lib/xero_ap_is/models/sales_tax_basis.rb +60 -0
  211. data/lib/xero_ap_is/models/sales_tax_period.rb +88 -0
  212. data/lib/xero_ap_is/models/sales_tracking_category.rb +89 -0
  213. data/lib/xero_ap_is/models/schedule.rb +140 -0
  214. data/lib/xero_ap_is/models/setting.rb +175 -0
  215. data/lib/xero_ap_is/models/setup.rb +117 -0
  216. data/lib/xero_ap_is/models/sort_direction.rb +36 -0
  217. data/lib/xero_ap_is/models/source_transaction_type_code.rb +38 -0
  218. data/lib/xero_ap_is/models/source_type.rb +128 -0
  219. data/lib/xero_ap_is/models/start_balance.rb +88 -0
  220. data/lib/xero_ap_is/models/statement.rb +194 -0
  221. data/lib/xero_ap_is/models/statement_line.rb +162 -0
  222. data/lib/xero_ap_is/models/statements.rb +94 -0
  223. data/lib/xero_ap_is/models/status.rb +41 -0
  224. data/lib/xero_ap_is/models/status1.rb +38 -0
  225. data/lib/xero_ap_is/models/status10.rb +40 -0
  226. data/lib/xero_ap_is/models/status11.rb +44 -0
  227. data/lib/xero_ap_is/models/status110.rb +40 -0
  228. data/lib/xero_ap_is/models/status111.rb +43 -0
  229. data/lib/xero_ap_is/models/status12.rb +48 -0
  230. data/lib/xero_ap_is/models/status13.rb +48 -0
  231. data/lib/xero_ap_is/models/status14.rb +52 -0
  232. data/lib/xero_ap_is/models/status15.rb +48 -0
  233. data/lib/xero_ap_is/models/status16.rb +36 -0
  234. data/lib/xero_ap_is/models/status17.rb +48 -0
  235. data/lib/xero_ap_is/models/status18.rb +40 -0
  236. data/lib/xero_ap_is/models/status19.rb +44 -0
  237. data/lib/xero_ap_is/models/status2.rb +40 -0
  238. data/lib/xero_ap_is/models/status20.rb +48 -0
  239. data/lib/xero_ap_is/models/status21.rb +36 -0
  240. data/lib/xero_ap_is/models/status22.rb +44 -0
  241. data/lib/xero_ap_is/models/status3.rb +52 -0
  242. data/lib/xero_ap_is/models/status4.rb +40 -0
  243. data/lib/xero_ap_is/models/status5.rb +40 -0
  244. data/lib/xero_ap_is/models/status6.rb +52 -0
  245. data/lib/xero_ap_is/models/status7.rb +36 -0
  246. data/lib/xero_ap_is/models/status8.rb +37 -0
  247. data/lib/xero_ap_is/models/status9.rb +40 -0
  248. data/lib/xero_ap_is/models/system_account.rb +110 -0
  249. data/lib/xero_ap_is/models/task.rb +234 -0
  250. data/lib/xero_ap_is/models/task_create_or_update.rb +105 -0
  251. data/lib/xero_ap_is/models/tasks.rb +94 -0
  252. data/lib/xero_ap_is/models/tax_breakdown_component.rb +172 -0
  253. data/lib/xero_ap_is/models/tax_component.rb +108 -0
  254. data/lib/xero_ap_is/models/tax_number_type.rb +45 -0
  255. data/lib/xero_ap_is/models/tax_rate.rb +213 -0
  256. data/lib/xero_ap_is/models/tax_rates.rb +85 -0
  257. data/lib/xero_ap_is/models/tax_type.rb +520 -0
  258. data/lib/xero_ap_is/models/taxability.rb +48 -0
  259. data/lib/xero_ap_is/models/ten_ninety_nine_contact.rb +318 -0
  260. data/lib/xero_ap_is/models/time_entries.rb +94 -0
  261. data/lib/xero_ap_is/models/time_entry.rb +179 -0
  262. data/lib/xero_ap_is/models/time_entry_create_or_update.rb +120 -0
  263. data/lib/xero_ap_is/models/time_zone.rb +592 -0
  264. data/lib/xero_ap_is/models/timeframe.rb +40 -0
  265. data/lib/xero_ap_is/models/tracking_categories.rb +85 -0
  266. data/lib/xero_ap_is/models/tracking_category.rb +140 -0
  267. data/lib/xero_ap_is/models/tracking_option.rb +109 -0
  268. data/lib/xero_ap_is/models/tracking_options.rb +84 -0
  269. data/lib/xero_ap_is/models/type.rb +60 -0
  270. data/lib/xero_ap_is/models/type1.rb +26 -0
  271. data/lib/xero_ap_is/models/type10.rb +36 -0
  272. data/lib/xero_ap_is/models/type11.rb +114 -0
  273. data/lib/xero_ap_is/models/type2.rb +48 -0
  274. data/lib/xero_ap_is/models/type3.rb +60 -0
  275. data/lib/xero_ap_is/models/type4.rb +44 -0
  276. data/lib/xero_ap_is/models/type5.rb +40 -0
  277. data/lib/xero_ap_is/models/type6.rb +36 -0
  278. data/lib/xero_ap_is/models/type7.rb +37 -0
  279. data/lib/xero_ap_is/models/type8.rb +36 -0
  280. data/lib/xero_ap_is/models/type9.rb +26 -0
  281. data/lib/xero_ap_is/models/unit.rb +36 -0
  282. data/lib/xero_ap_is/models/user.rb +139 -0
  283. data/lib/xero_ap_is/models/users.rb +84 -0
  284. data/lib/xero_ap_is/models/validation_error.rb +75 -0
  285. data/lib/xero_ap_is/models/version.rb +68 -0
  286. data/lib/xero_ap_is/utilities/date_time_helper.rb +11 -0
  287. data/lib/xero_ap_is/utilities/file_wrapper.rb +28 -0
  288. data/lib/xero_ap_is.rb +309 -0
  289. metadata +372 -0
@@ -0,0 +1,224 @@
1
+ # xero_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module XeroApIs
7
+ # BankTransfer Model.
8
+ class BankTransfer < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Account]
14
+ attr_accessor :from_bank_account
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Account]
18
+ attr_accessor :to_bank_account
19
+
20
+ # amount of the transaction
21
+ # @return [Float]
22
+ attr_accessor :amount
23
+
24
+ # The date of the Transfer YYYY-MM-DD
25
+ # @return [String]
26
+ attr_accessor :date
27
+
28
+ # The identifier of the Bank Transfer
29
+ # @return [UUID | String]
30
+ attr_accessor :bank_transfer_id
31
+
32
+ # The currency rate
33
+ # @return [Float]
34
+ attr_accessor :currency_rate
35
+
36
+ # The Bank Transaction ID for the source account
37
+ # @return [UUID | String]
38
+ attr_accessor :from_bank_transaction_id
39
+
40
+ # The Bank Transaction ID for the destination account
41
+ # @return [UUID | String]
42
+ attr_accessor :to_bank_transaction_id
43
+
44
+ # The Bank Transaction boolean to show if it is reconciled for the source
45
+ # account
46
+ # @return [TrueClass | FalseClass]
47
+ attr_accessor :from_is_reconciled
48
+
49
+ # The Bank Transaction boolean to show if it is reconciled for the
50
+ # destination account
51
+ # @return [TrueClass | FalseClass]
52
+ attr_accessor :to_is_reconciled
53
+
54
+ # Reference for the transactions.
55
+ # @return [String]
56
+ attr_accessor :reference
57
+
58
+ # Boolean to indicate if a Bank Transfer has an attachment
59
+ # @return [TrueClass | FalseClass]
60
+ attr_accessor :has_attachments
61
+
62
+ # UTC timestamp of creation date of bank transfer
63
+ # @return [String]
64
+ attr_accessor :created_date_utc
65
+
66
+ # Displays array of validation error messages from the API
67
+ # @return [Array[ValidationError]]
68
+ attr_accessor :validation_errors
69
+
70
+ # A mapping from model property names to API property names.
71
+ def self.names
72
+ @_hash = {} if @_hash.nil?
73
+ @_hash['from_bank_account'] = 'FromBankAccount'
74
+ @_hash['to_bank_account'] = 'ToBankAccount'
75
+ @_hash['amount'] = 'Amount'
76
+ @_hash['date'] = 'Date'
77
+ @_hash['bank_transfer_id'] = 'BankTransferID'
78
+ @_hash['currency_rate'] = 'CurrencyRate'
79
+ @_hash['from_bank_transaction_id'] = 'FromBankTransactionID'
80
+ @_hash['to_bank_transaction_id'] = 'ToBankTransactionID'
81
+ @_hash['from_is_reconciled'] = 'FromIsReconciled'
82
+ @_hash['to_is_reconciled'] = 'ToIsReconciled'
83
+ @_hash['reference'] = 'Reference'
84
+ @_hash['has_attachments'] = 'HasAttachments'
85
+ @_hash['created_date_utc'] = 'CreatedDateUTC'
86
+ @_hash['validation_errors'] = 'ValidationErrors'
87
+ @_hash
88
+ end
89
+
90
+ # An array for optional fields
91
+ def self.optionals
92
+ %w[
93
+ date
94
+ bank_transfer_id
95
+ currency_rate
96
+ from_bank_transaction_id
97
+ to_bank_transaction_id
98
+ from_is_reconciled
99
+ to_is_reconciled
100
+ reference
101
+ has_attachments
102
+ created_date_utc
103
+ validation_errors
104
+ ]
105
+ end
106
+
107
+ # An array for nullable fields
108
+ def self.nullables
109
+ []
110
+ end
111
+
112
+ def initialize(from_bank_account:, to_bank_account:, amount:, date: SKIP,
113
+ bank_transfer_id: SKIP, currency_rate: SKIP,
114
+ from_bank_transaction_id: SKIP, to_bank_transaction_id: SKIP,
115
+ from_is_reconciled: false, to_is_reconciled: false,
116
+ reference: SKIP, has_attachments: false,
117
+ created_date_utc: SKIP, validation_errors: SKIP,
118
+ additional_properties: nil)
119
+ # Add additional model properties to the instance
120
+ additional_properties = {} if additional_properties.nil?
121
+
122
+ @from_bank_account = from_bank_account
123
+ @to_bank_account = to_bank_account
124
+ @amount = amount
125
+ @date = date unless date == SKIP
126
+ @bank_transfer_id = bank_transfer_id unless bank_transfer_id == SKIP
127
+ @currency_rate = currency_rate unless currency_rate == SKIP
128
+ @from_bank_transaction_id = from_bank_transaction_id unless from_bank_transaction_id == SKIP
129
+ @to_bank_transaction_id = to_bank_transaction_id unless to_bank_transaction_id == SKIP
130
+ @from_is_reconciled = from_is_reconciled unless from_is_reconciled == SKIP
131
+ @to_is_reconciled = to_is_reconciled unless to_is_reconciled == SKIP
132
+ @reference = reference unless reference == SKIP
133
+ @has_attachments = has_attachments unless has_attachments == SKIP
134
+ @created_date_utc = created_date_utc unless created_date_utc == SKIP
135
+ @validation_errors = validation_errors unless validation_errors == SKIP
136
+ @additional_properties = additional_properties
137
+ end
138
+
139
+ # Creates an instance of the object from a hash.
140
+ def self.from_hash(hash)
141
+ return nil unless hash
142
+
143
+ # Extract variables from the hash.
144
+ from_bank_account = Account.from_hash(hash['FromBankAccount']) if hash['FromBankAccount']
145
+ to_bank_account = Account.from_hash(hash['ToBankAccount']) if hash['ToBankAccount']
146
+ amount = hash.key?('Amount') ? hash['Amount'] : nil
147
+ date = hash.key?('Date') ? hash['Date'] : SKIP
148
+ bank_transfer_id =
149
+ hash.key?('BankTransferID') ? hash['BankTransferID'] : SKIP
150
+ currency_rate = hash.key?('CurrencyRate') ? hash['CurrencyRate'] : SKIP
151
+ from_bank_transaction_id =
152
+ hash.key?('FromBankTransactionID') ? hash['FromBankTransactionID'] : SKIP
153
+ to_bank_transaction_id =
154
+ hash.key?('ToBankTransactionID') ? hash['ToBankTransactionID'] : SKIP
155
+ from_is_reconciled = hash['FromIsReconciled'] ||= false
156
+ to_is_reconciled = hash['ToIsReconciled'] ||= false
157
+ reference = hash.key?('Reference') ? hash['Reference'] : SKIP
158
+ has_attachments = hash['HasAttachments'] ||= false
159
+ created_date_utc =
160
+ hash.key?('CreatedDateUTC') ? hash['CreatedDateUTC'] : SKIP
161
+ # Parameter is an array, so we need to iterate through it
162
+ validation_errors = nil
163
+ unless hash['ValidationErrors'].nil?
164
+ validation_errors = []
165
+ hash['ValidationErrors'].each do |structure|
166
+ validation_errors << (ValidationError.from_hash(structure) if structure)
167
+ end
168
+ end
169
+
170
+ validation_errors = SKIP unless hash.key?('ValidationErrors')
171
+
172
+ # Create a new hash for additional properties, removing known properties.
173
+ new_hash = hash.reject { |k, _| names.value?(k) }
174
+
175
+ additional_properties = APIHelper.get_additional_properties(
176
+ new_hash, proc { |value| value }
177
+ )
178
+
179
+ # Create object from extracted values.
180
+ BankTransfer.new(from_bank_account: from_bank_account,
181
+ to_bank_account: to_bank_account,
182
+ amount: amount,
183
+ date: date,
184
+ bank_transfer_id: bank_transfer_id,
185
+ currency_rate: currency_rate,
186
+ from_bank_transaction_id: from_bank_transaction_id,
187
+ to_bank_transaction_id: to_bank_transaction_id,
188
+ from_is_reconciled: from_is_reconciled,
189
+ to_is_reconciled: to_is_reconciled,
190
+ reference: reference,
191
+ has_attachments: has_attachments,
192
+ created_date_utc: created_date_utc,
193
+ validation_errors: validation_errors,
194
+ additional_properties: additional_properties)
195
+ end
196
+
197
+ # Provides a human-readable string representation of the object.
198
+ def to_s
199
+ class_name = self.class.name.split('::').last
200
+ "<#{class_name} from_bank_account: #{@from_bank_account}, to_bank_account:"\
201
+ " #{@to_bank_account}, amount: #{@amount}, date: #{@date}, bank_transfer_id:"\
202
+ " #{@bank_transfer_id}, currency_rate: #{@currency_rate}, from_bank_transaction_id:"\
203
+ " #{@from_bank_transaction_id}, to_bank_transaction_id: #{@to_bank_transaction_id},"\
204
+ " from_is_reconciled: #{@from_is_reconciled}, to_is_reconciled: #{@to_is_reconciled},"\
205
+ " reference: #{@reference}, has_attachments: #{@has_attachments}, created_date_utc:"\
206
+ " #{@created_date_utc}, validation_errors: #{@validation_errors}, additional_properties:"\
207
+ " #{@additional_properties}>"
208
+ end
209
+
210
+ # Provides a debugging-friendly string with detailed object information.
211
+ def inspect
212
+ class_name = self.class.name.split('::').last
213
+ "<#{class_name} from_bank_account: #{@from_bank_account.inspect}, to_bank_account:"\
214
+ " #{@to_bank_account.inspect}, amount: #{@amount.inspect}, date: #{@date.inspect},"\
215
+ " bank_transfer_id: #{@bank_transfer_id.inspect}, currency_rate: #{@currency_rate.inspect},"\
216
+ " from_bank_transaction_id: #{@from_bank_transaction_id.inspect}, to_bank_transaction_id:"\
217
+ " #{@to_bank_transaction_id.inspect}, from_is_reconciled: #{@from_is_reconciled.inspect},"\
218
+ " to_is_reconciled: #{@to_is_reconciled.inspect}, reference: #{@reference.inspect},"\
219
+ " has_attachments: #{@has_attachments.inspect}, created_date_utc:"\
220
+ " #{@created_date_utc.inspect}, validation_errors: #{@validation_errors.inspect},"\
221
+ " additional_properties: #{@additional_properties}>"
222
+ end
223
+ end
224
+ end
@@ -0,0 +1,85 @@
1
+ # xero_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module XeroApIs
7
+ # BankTransfers Model.
8
+ class BankTransfers < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[BankTransfer]]
14
+ attr_accessor :bank_transfers
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['bank_transfers'] = 'BankTransfers'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ bank_transfers
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(bank_transfers: SKIP, additional_properties: nil)
36
+ # Add additional model properties to the instance
37
+ additional_properties = {} if additional_properties.nil?
38
+
39
+ @bank_transfers = bank_transfers unless bank_transfers == SKIP
40
+ @additional_properties = additional_properties
41
+ end
42
+
43
+ # Creates an instance of the object from a hash.
44
+ def self.from_hash(hash)
45
+ return nil unless hash
46
+
47
+ # Extract variables from the hash.
48
+ # Parameter is an array, so we need to iterate through it
49
+ bank_transfers = nil
50
+ unless hash['BankTransfers'].nil?
51
+ bank_transfers = []
52
+ hash['BankTransfers'].each do |structure|
53
+ bank_transfers << (BankTransfer.from_hash(structure) if structure)
54
+ end
55
+ end
56
+
57
+ bank_transfers = SKIP unless hash.key?('BankTransfers')
58
+
59
+ # Create a new hash for additional properties, removing known properties.
60
+ new_hash = hash.reject { |k, _| names.value?(k) }
61
+
62
+ additional_properties = APIHelper.get_additional_properties(
63
+ new_hash, proc { |value| value }
64
+ )
65
+
66
+ # Create object from extracted values.
67
+ BankTransfers.new(bank_transfers: bank_transfers,
68
+ additional_properties: additional_properties)
69
+ end
70
+
71
+ # Provides a human-readable string representation of the object.
72
+ def to_s
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} bank_transfers: #{@bank_transfers}, additional_properties:"\
75
+ " #{@additional_properties}>"
76
+ end
77
+
78
+ # Provides a debugging-friendly string with detailed object information.
79
+ def inspect
80
+ class_name = self.class.name.split('::').last
81
+ "<#{class_name} bank_transfers: #{@bank_transfers.inspect}, additional_properties:"\
82
+ " #{@additional_properties}>"
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,110 @@
1
+ # xero_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module XeroApIs
7
+ # Base model.
8
+ # rubocop:disable all
9
+ class BaseModel < CoreLibrary::BaseModel
10
+ # Returns a Hash representation of the current object.
11
+ def to_hash
12
+ # validating the model being serialized
13
+ self.class.validate(self) if self.class.respond_to?(:validate)
14
+
15
+ hash = {}
16
+ instance_variables.each do |name|
17
+ value = instance_variable_get(name)
18
+ name = name[1..]
19
+ if name == 'additional_properties'
20
+ additional_properties = process_additional_properties(value, self.class.names)
21
+ hash.merge!(additional_properties)
22
+ else
23
+ key = self.class.names.key?(name) ? self.class.names[name] : name
24
+ optional_fields = self.class.optionals
25
+ nullable_fields = self.class.nullables
26
+ if value.nil?
27
+ next unless nullable_fields.include?(name)
28
+
29
+ if !optional_fields.include?(name) && !nullable_fields.include?(name)
30
+ raise ArgumentError,
31
+ "`#{name}` cannot be nil in `#{self.class}`. Please specify a valid value."
32
+ end
33
+ end
34
+
35
+ hash[key] = nil
36
+ unless value.nil?
37
+ if respond_to?("to_custom_#{name}")
38
+ if (value.instance_of? Array) || (value.instance_of? Hash)
39
+ params = [hash, key]
40
+ hash[key] = send("to_custom_#{name}", *params)
41
+ else
42
+ hash[key] = send("to_custom_#{name}")
43
+ end
44
+ elsif respond_to?("to_union_type_#{name}")
45
+ hash[key] = send("to_union_type_#{name}")
46
+ elsif value.instance_of? Array
47
+ hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
48
+ elsif value.instance_of? Hash
49
+ hash[key] = {}
50
+ value.each do |k, v|
51
+ hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
52
+ end
53
+ else
54
+ hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
55
+ end
56
+ end
57
+ end
58
+ end
59
+ hash
60
+ end
61
+
62
+ # Processes additional properties, ensuring no conflicts with existing properties.
63
+ def process_additional_properties(additional_properties, existing_prop_names)
64
+ hash = {}
65
+ additional_properties.each do |name, value|
66
+ check_for_conflict(name, existing_prop_names)
67
+
68
+ hash[name] = if value.is_a?(Array)
69
+ process_array(value)
70
+ elsif value.is_a?(Hash)
71
+ process_hash(value)
72
+ else
73
+ process_basic_value(value)
74
+ end
75
+ end
76
+ hash
77
+ end
78
+
79
+ # Checks if an additional property conflicts with a model's existing property.
80
+ def check_for_conflict(name, existing_prop_names)
81
+ return unless existing_prop_names.key?(name)
82
+
83
+ raise ArgumentError, "An additional property key, '#{name}' conflicts with one of the model's properties"
84
+ end
85
+
86
+ # Processes an array of values, recursively calling `to_hash` on BaseModel objects.
87
+ def process_array(value)
88
+ value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
89
+ end
90
+
91
+ # Processes a hash of values, recursively calling `to_hash` on BaseModel objects.
92
+ def process_hash(value)
93
+ value.transform_values do |v|
94
+ v.is_a?(BaseModel) ? v.to_hash : v
95
+ end
96
+ end
97
+
98
+ # Processes a basic value (non-array, non-hash).
99
+ def process_basic_value(value)
100
+ value.is_a?(BaseModel) ? value.to_hash : value
101
+ end
102
+
103
+ # Returns a JSON representation of the curent object.
104
+ def to_json(options = {})
105
+ hash = to_hash
106
+ hash.to_json(options)
107
+ end
108
+ end
109
+ # rubocop:enable all
110
+ end
@@ -0,0 +1,275 @@
1
+ # xero_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module XeroApIs
7
+ # BatchPayment Model.
8
+ class BatchPayment < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Account]
14
+ attr_accessor :account
15
+
16
+ # (NZ Only) Optional references for the batch payment transaction. It will
17
+ # also show with the batch payment transaction in the bank reconciliation
18
+ # Find & Match screen. Depending on your individual bank, the detail may
19
+ # also show on the bank statement you import into Xero.
20
+ # @return [String]
21
+ attr_accessor :reference
22
+
23
+ # (NZ Only) Optional references for the batch payment transaction. It will
24
+ # also show with the batch payment transaction in the bank reconciliation
25
+ # Find & Match screen. Depending on your individual bank, the detail may
26
+ # also show on the bank statement you import into Xero.
27
+ # @return [String]
28
+ attr_accessor :particulars
29
+
30
+ # (NZ Only) Optional references for the batch payment transaction. It will
31
+ # also show with the batch payment transaction in the bank reconciliation
32
+ # Find & Match screen. Depending on your individual bank, the detail may
33
+ # also show on the bank statement you import into Xero.
34
+ # @return [String]
35
+ attr_accessor :code
36
+
37
+ # (Non-NZ Only) These details are sent to the org’s bank as a reference for
38
+ # the batch payment transaction. They will also show with the batch payment
39
+ # transaction in the bank reconciliation Find & Match screen. Depending on
40
+ # your individual bank, the detail may also show on the bank statement
41
+ # imported into Xero. Maximum field length = 18
42
+ # @return [String]
43
+ attr_accessor :details
44
+
45
+ # (UK Only) Only shows on the statement line in Xero. Max length =18
46
+ # @return [String]
47
+ attr_accessor :narrative
48
+
49
+ # The Xero generated unique identifier for the bank transaction (read-only)
50
+ # @return [UUID | String]
51
+ attr_accessor :batch_payment_id
52
+
53
+ # Date the payment is being made (YYYY-MM-DD) e.g. 2009-09-06
54
+ # @return [String]
55
+ attr_accessor :date_string
56
+
57
+ # Date the payment is being made (YYYY-MM-DD) e.g. 2009-09-06
58
+ # @return [String]
59
+ attr_accessor :date
60
+
61
+ # The amount of the payment. Must be less than or equal to the outstanding
62
+ # amount owing on the invoice e.g. 200.00
63
+ # @return [Float]
64
+ attr_accessor :amount
65
+
66
+ # An array of payments
67
+ # @return [Array[Payment]]
68
+ attr_accessor :payments
69
+
70
+ # PAYBATCH for bill payments or RECBATCH for sales invoice payments
71
+ # (read-only)
72
+ # @return [Type7]
73
+ attr_accessor :type
74
+
75
+ # AUTHORISED or DELETED (read-only). New batch payments will have a status
76
+ # of AUTHORISED. It is not possible to delete batch payments via the API.
77
+ # @return [Status8]
78
+ attr_accessor :status
79
+
80
+ # The total of the payments that make up the batch (read-only)
81
+ # @return [Float]
82
+ attr_accessor :total_amount
83
+
84
+ # UTC timestamp of last update to the payment
85
+ # @return [String]
86
+ attr_accessor :updated_date_utc
87
+
88
+ # Booelan that tells you if the batch payment has been reconciled
89
+ # (read-only)
90
+ # @return [TrueClass | FalseClass]
91
+ attr_accessor :is_reconciled
92
+
93
+ # Displays array of validation error messages from the API
94
+ # @return [Array[ValidationError]]
95
+ attr_accessor :validation_errors
96
+
97
+ # A mapping from model property names to API property names.
98
+ def self.names
99
+ @_hash = {} if @_hash.nil?
100
+ @_hash['account'] = 'Account'
101
+ @_hash['reference'] = 'Reference'
102
+ @_hash['particulars'] = 'Particulars'
103
+ @_hash['code'] = 'Code'
104
+ @_hash['details'] = 'Details'
105
+ @_hash['narrative'] = 'Narrative'
106
+ @_hash['batch_payment_id'] = 'BatchPaymentID'
107
+ @_hash['date_string'] = 'DateString'
108
+ @_hash['date'] = 'Date'
109
+ @_hash['amount'] = 'Amount'
110
+ @_hash['payments'] = 'Payments'
111
+ @_hash['type'] = 'Type'
112
+ @_hash['status'] = 'Status'
113
+ @_hash['total_amount'] = 'TotalAmount'
114
+ @_hash['updated_date_utc'] = 'UpdatedDateUTC'
115
+ @_hash['is_reconciled'] = 'IsReconciled'
116
+ @_hash['validation_errors'] = 'ValidationErrors'
117
+ @_hash
118
+ end
119
+
120
+ # An array for optional fields
121
+ def self.optionals
122
+ %w[
123
+ account
124
+ reference
125
+ particulars
126
+ code
127
+ details
128
+ narrative
129
+ batch_payment_id
130
+ date_string
131
+ date
132
+ amount
133
+ payments
134
+ type
135
+ status
136
+ total_amount
137
+ updated_date_utc
138
+ is_reconciled
139
+ validation_errors
140
+ ]
141
+ end
142
+
143
+ # An array for nullable fields
144
+ def self.nullables
145
+ []
146
+ end
147
+
148
+ def initialize(account: SKIP, reference: SKIP, particulars: SKIP,
149
+ code: SKIP, details: SKIP, narrative: SKIP,
150
+ batch_payment_id: SKIP, date_string: SKIP, date: SKIP,
151
+ amount: SKIP, payments: SKIP, type: SKIP, status: SKIP,
152
+ total_amount: SKIP, updated_date_utc: SKIP,
153
+ is_reconciled: SKIP, validation_errors: SKIP,
154
+ additional_properties: nil)
155
+ # Add additional model properties to the instance
156
+ additional_properties = {} if additional_properties.nil?
157
+
158
+ @account = account unless account == SKIP
159
+ @reference = reference unless reference == SKIP
160
+ @particulars = particulars unless particulars == SKIP
161
+ @code = code unless code == SKIP
162
+ @details = details unless details == SKIP
163
+ @narrative = narrative unless narrative == SKIP
164
+ @batch_payment_id = batch_payment_id unless batch_payment_id == SKIP
165
+ @date_string = date_string unless date_string == SKIP
166
+ @date = date unless date == SKIP
167
+ @amount = amount unless amount == SKIP
168
+ @payments = payments unless payments == SKIP
169
+ @type = type unless type == SKIP
170
+ @status = status unless status == SKIP
171
+ @total_amount = total_amount unless total_amount == SKIP
172
+ @updated_date_utc = updated_date_utc unless updated_date_utc == SKIP
173
+ @is_reconciled = is_reconciled unless is_reconciled == SKIP
174
+ @validation_errors = validation_errors unless validation_errors == SKIP
175
+ @additional_properties = additional_properties
176
+ end
177
+
178
+ # Creates an instance of the object from a hash.
179
+ def self.from_hash(hash)
180
+ return nil unless hash
181
+
182
+ # Extract variables from the hash.
183
+ account = Account.from_hash(hash['Account']) if hash['Account']
184
+ reference = hash.key?('Reference') ? hash['Reference'] : SKIP
185
+ particulars = hash.key?('Particulars') ? hash['Particulars'] : SKIP
186
+ code = hash.key?('Code') ? hash['Code'] : SKIP
187
+ details = hash.key?('Details') ? hash['Details'] : SKIP
188
+ narrative = hash.key?('Narrative') ? hash['Narrative'] : SKIP
189
+ batch_payment_id =
190
+ hash.key?('BatchPaymentID') ? hash['BatchPaymentID'] : SKIP
191
+ date_string = hash.key?('DateString') ? hash['DateString'] : SKIP
192
+ date = hash.key?('Date') ? hash['Date'] : SKIP
193
+ amount = hash.key?('Amount') ? hash['Amount'] : SKIP
194
+ # Parameter is an array, so we need to iterate through it
195
+ payments = nil
196
+ unless hash['Payments'].nil?
197
+ payments = []
198
+ hash['Payments'].each do |structure|
199
+ payments << (Payment.from_hash(structure) if structure)
200
+ end
201
+ end
202
+
203
+ payments = SKIP unless hash.key?('Payments')
204
+ type = hash.key?('Type') ? hash['Type'] : SKIP
205
+ status = hash.key?('Status') ? hash['Status'] : SKIP
206
+ total_amount = hash.key?('TotalAmount') ? hash['TotalAmount'] : SKIP
207
+ updated_date_utc =
208
+ hash.key?('UpdatedDateUTC') ? hash['UpdatedDateUTC'] : SKIP
209
+ is_reconciled = hash.key?('IsReconciled') ? hash['IsReconciled'] : SKIP
210
+ # Parameter is an array, so we need to iterate through it
211
+ validation_errors = nil
212
+ unless hash['ValidationErrors'].nil?
213
+ validation_errors = []
214
+ hash['ValidationErrors'].each do |structure|
215
+ validation_errors << (ValidationError.from_hash(structure) if structure)
216
+ end
217
+ end
218
+
219
+ validation_errors = SKIP unless hash.key?('ValidationErrors')
220
+
221
+ # Create a new hash for additional properties, removing known properties.
222
+ new_hash = hash.reject { |k, _| names.value?(k) }
223
+
224
+ additional_properties = APIHelper.get_additional_properties(
225
+ new_hash, proc { |value| value }
226
+ )
227
+
228
+ # Create object from extracted values.
229
+ BatchPayment.new(account: account,
230
+ reference: reference,
231
+ particulars: particulars,
232
+ code: code,
233
+ details: details,
234
+ narrative: narrative,
235
+ batch_payment_id: batch_payment_id,
236
+ date_string: date_string,
237
+ date: date,
238
+ amount: amount,
239
+ payments: payments,
240
+ type: type,
241
+ status: status,
242
+ total_amount: total_amount,
243
+ updated_date_utc: updated_date_utc,
244
+ is_reconciled: is_reconciled,
245
+ validation_errors: validation_errors,
246
+ additional_properties: additional_properties)
247
+ end
248
+
249
+ # Provides a human-readable string representation of the object.
250
+ def to_s
251
+ class_name = self.class.name.split('::').last
252
+ "<#{class_name} account: #{@account}, reference: #{@reference}, particulars:"\
253
+ " #{@particulars}, code: #{@code}, details: #{@details}, narrative: #{@narrative},"\
254
+ " batch_payment_id: #{@batch_payment_id}, date_string: #{@date_string}, date: #{@date},"\
255
+ " amount: #{@amount}, payments: #{@payments}, type: #{@type}, status: #{@status},"\
256
+ " total_amount: #{@total_amount}, updated_date_utc: #{@updated_date_utc}, is_reconciled:"\
257
+ " #{@is_reconciled}, validation_errors: #{@validation_errors}, additional_properties:"\
258
+ " #{@additional_properties}>"
259
+ end
260
+
261
+ # Provides a debugging-friendly string with detailed object information.
262
+ def inspect
263
+ class_name = self.class.name.split('::').last
264
+ "<#{class_name} account: #{@account.inspect}, reference: #{@reference.inspect},"\
265
+ " particulars: #{@particulars.inspect}, code: #{@code.inspect}, details:"\
266
+ " #{@details.inspect}, narrative: #{@narrative.inspect}, batch_payment_id:"\
267
+ " #{@batch_payment_id.inspect}, date_string: #{@date_string.inspect}, date:"\
268
+ " #{@date.inspect}, amount: #{@amount.inspect}, payments: #{@payments.inspect}, type:"\
269
+ " #{@type.inspect}, status: #{@status.inspect}, total_amount: #{@total_amount.inspect},"\
270
+ " updated_date_utc: #{@updated_date_utc.inspect}, is_reconciled: #{@is_reconciled.inspect},"\
271
+ " validation_errors: #{@validation_errors.inspect}, additional_properties:"\
272
+ " #{@additional_properties}>"
273
+ end
274
+ end
275
+ end