mt-sdk 0.0.1
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.
- checksums.yaml +7 -0
- data/LICENSE +28 -0
- data/README.md +188 -0
- data/bin/console +15 -0
- data/lib/modern_treasury/api_helper.rb +10 -0
- data/lib/modern_treasury/client.rb +275 -0
- data/lib/modern_treasury/configuration.rb +206 -0
- data/lib/modern_treasury/controllers/account_collection_flow_controller.rb +130 -0
- data/lib/modern_treasury/controllers/account_detail_controller.rb +131 -0
- data/lib/modern_treasury/controllers/balance_report_controller.rb +76 -0
- data/lib/modern_treasury/controllers/base_controller.rb +60 -0
- data/lib/modern_treasury/controllers/connection_controller.rb +40 -0
- data/lib/modern_treasury/controllers/counterparty_controller.rb +188 -0
- data/lib/modern_treasury/controllers/document_controller.rb +285 -0
- data/lib/modern_treasury/controllers/event_controller.rb +72 -0
- data/lib/modern_treasury/controllers/expected_payment_controller.rb +162 -0
- data/lib/modern_treasury/controllers/external_account_controller.rb +202 -0
- data/lib/modern_treasury/controllers/incoming_payment_detail_controller.rb +150 -0
- data/lib/modern_treasury/controllers/internal_account_controller.rb +134 -0
- data/lib/modern_treasury/controllers/invoice_controller.rb +98 -0
- data/lib/modern_treasury/controllers/invoice_line_item_controller.rb +136 -0
- data/lib/modern_treasury/controllers/ledger_account_category_controller.rb +292 -0
- data/lib/modern_treasury/controllers/ledger_account_controller.rb +202 -0
- data/lib/modern_treasury/controllers/ledger_account_payout_controller.rb +126 -0
- data/lib/modern_treasury/controllers/ledger_account_statement_controller.rb +60 -0
- data/lib/modern_treasury/controllers/ledger_controller.rb +152 -0
- data/lib/modern_treasury/controllers/ledger_entry_controller.rb +148 -0
- data/lib/modern_treasury/controllers/ledger_event_handler_controller.rb +119 -0
- data/lib/modern_treasury/controllers/ledger_transaction_controller.rb +328 -0
- data/lib/modern_treasury/controllers/ledgerable_event_controller.rb +61 -0
- data/lib/modern_treasury/controllers/line_item_controller.rb +107 -0
- data/lib/modern_treasury/controllers/paper_item_controller.rb +69 -0
- data/lib/modern_treasury/controllers/payment_flow_controller.rb +138 -0
- data/lib/modern_treasury/controllers/payment_order_controller.rb +368 -0
- data/lib/modern_treasury/controllers/payment_reference_controller.rb +64 -0
- data/lib/modern_treasury/controllers/ping_controller.rb +34 -0
- data/lib/modern_treasury/controllers/return_controller.rb +105 -0
- data/lib/modern_treasury/controllers/reversal_controller.rb +99 -0
- data/lib/modern_treasury/controllers/routing_detail_controller.rb +131 -0
- data/lib/modern_treasury/controllers/transaction_controller.rb +133 -0
- data/lib/modern_treasury/controllers/transaction_line_item_controller.rb +39 -0
- data/lib/modern_treasury/controllers/validation_controller.rb +41 -0
- data/lib/modern_treasury/controllers/virtual_account_controller.rb +142 -0
- data/lib/modern_treasury/exceptions/api_exception.rb +21 -0
- data/lib/modern_treasury/exceptions/error_message_exception.rb +46 -0
- data/lib/modern_treasury/http/auth/basic_auth.rb +62 -0
- data/lib/modern_treasury/http/http_call_back.rb +10 -0
- data/lib/modern_treasury/http/http_method_enum.rb +10 -0
- data/lib/modern_treasury/http/http_request.rb +10 -0
- data/lib/modern_treasury/http/http_response.rb +10 -0
- data/lib/modern_treasury/http/proxy_settings.rb +22 -0
- data/lib/modern_treasury/models/account.rb +304 -0
- data/lib/modern_treasury/models/account1.rb +217 -0
- data/lib/modern_treasury/models/account_collection_flow.rb +178 -0
- data/lib/modern_treasury/models/account_collection_flow_create_request.rb +70 -0
- data/lib/modern_treasury/models/account_collection_flow_update_request.rb +61 -0
- data/lib/modern_treasury/models/account_detail.rb +211 -0
- data/lib/modern_treasury/models/account_detail1.rb +74 -0
- data/lib/modern_treasury/models/account_detail_create_request.rb +75 -0
- data/lib/modern_treasury/models/account_number_type2_enum.rb +48 -0
- data/lib/modern_treasury/models/account_number_type_enum.rb +49 -0
- data/lib/modern_treasury/models/account_type5_enum.rb +56 -0
- data/lib/modern_treasury/models/account_type_enum.rb +56 -0
- data/lib/modern_treasury/models/accounting.rb +88 -0
- data/lib/modern_treasury/models/accounting1.rb +63 -0
- data/lib/modern_treasury/models/accounts_type1_enum.rb +26 -0
- data/lib/modern_treasury/models/accounts_type_enum.rb +36 -0
- data/lib/modern_treasury/models/address.rb +231 -0
- data/lib/modern_treasury/models/address_request.rb +118 -0
- data/lib/modern_treasury/models/async_response.rb +68 -0
- data/lib/modern_treasury/models/balance.rb +164 -0
- data/lib/modern_treasury/models/balance_report.rb +178 -0
- data/lib/modern_treasury/models/balance_report_type1_enum.rb +44 -0
- data/lib/modern_treasury/models/balance_report_type_enum.rb +45 -0
- data/lib/modern_treasury/models/balance_type_enum.rb +63 -0
- data/lib/modern_treasury/models/balances.rb +71 -0
- data/lib/modern_treasury/models/balances1.rb +81 -0
- data/lib/modern_treasury/models/balances2.rb +120 -0
- data/lib/modern_treasury/models/balances3.rb +130 -0
- data/lib/modern_treasury/models/base_model.rb +110 -0
- data/lib/modern_treasury/models/charge_bearer_enum.rb +42 -0
- data/lib/modern_treasury/models/code1_enum.rb +200 -0
- data/lib/modern_treasury/models/code_enum.rb +68 -0
- data/lib/modern_treasury/models/connection.rb +209 -0
- data/lib/modern_treasury/models/contact_detail.rb +200 -0
- data/lib/modern_treasury/models/contact_detail_create_request.rb +75 -0
- data/lib/modern_treasury/models/contact_identifier_type_enum.rb +40 -0
- data/lib/modern_treasury/models/content_type_enum.rb +36 -0
- data/lib/modern_treasury/models/counterparty.rb +200 -0
- data/lib/modern_treasury/models/counterparty_billing_address.rb +106 -0
- data/lib/modern_treasury/models/counterparty_collect_account_request.rb +104 -0
- data/lib/modern_treasury/models/counterparty_collect_account_response.rb +82 -0
- data/lib/modern_treasury/models/counterparty_create_request.rb +161 -0
- data/lib/modern_treasury/models/counterparty_shipping_address.rb +107 -0
- data/lib/modern_treasury/models/counterparty_update_request.rb +107 -0
- data/lib/modern_treasury/models/created_at_enum.rb +36 -0
- data/lib/modern_treasury/models/currency1_enum.rb +37 -0
- data/lib/modern_treasury/models/currency_enum.rb +784 -0
- data/lib/modern_treasury/models/direction10_enum.rb +38 -0
- data/lib/modern_treasury/models/direction14_enum.rb +36 -0
- data/lib/modern_treasury/models/direction15_enum.rb +36 -0
- data/lib/modern_treasury/models/direction1_enum.rb +37 -0
- data/lib/modern_treasury/models/direction4_enum.rb +36 -0
- data/lib/modern_treasury/models/direction5_enum.rb +39 -0
- data/lib/modern_treasury/models/direction9_enum.rb +37 -0
- data/lib/modern_treasury/models/direction_enum.rb +38 -0
- data/lib/modern_treasury/models/document.rb +207 -0
- data/lib/modern_treasury/models/document_create_request.rb +92 -0
- data/lib/modern_treasury/models/document_detail.rb +154 -0
- data/lib/modern_treasury/models/documentable_type1_enum.rb +72 -0
- data/lib/modern_treasury/models/documentable_type2_enum.rb +72 -0
- data/lib/modern_treasury/models/documentable_type_enum.rb +75 -0
- data/lib/modern_treasury/models/effective_at_enum.rb +36 -0
- data/lib/modern_treasury/models/errors.rb +81 -0
- data/lib/modern_treasury/models/event.rb +162 -0
- data/lib/modern_treasury/models/expected_payment.rb +343 -0
- data/lib/modern_treasury/models/expected_payment_create_request.rb +254 -0
- data/lib/modern_treasury/models/expected_payment_update_request.rb +239 -0
- data/lib/modern_treasury/models/external_account.rb +283 -0
- data/lib/modern_treasury/models/external_account_complete_verification_request.rb +62 -0
- data/lib/modern_treasury/models/external_account_create_request.rb +230 -0
- data/lib/modern_treasury/models/external_account_update_request.rb +132 -0
- data/lib/modern_treasury/models/external_account_verify_request.rb +83 -0
- data/lib/modern_treasury/models/fallback_type_enum.rb +28 -0
- data/lib/modern_treasury/models/field_enum.rb +112 -0
- data/lib/modern_treasury/models/file.rb +81 -0
- data/lib/modern_treasury/models/foreign_exchange_indicator_enum.rb +38 -0
- data/lib/modern_treasury/models/incoming_payment_detail.rb +348 -0
- data/lib/modern_treasury/models/incoming_payment_detail_create_request.rb +141 -0
- data/lib/modern_treasury/models/incoming_payment_detail_update_request.rb +63 -0
- data/lib/modern_treasury/models/internal_account.rb +361 -0
- data/lib/modern_treasury/models/internal_account_create_request.rb +135 -0
- data/lib/modern_treasury/models/internal_account_update_request.rb +95 -0
- data/lib/modern_treasury/models/invoice.rb +342 -0
- data/lib/modern_treasury/models/invoice_create_request.rb +235 -0
- data/lib/modern_treasury/models/invoice_line_item.rb +171 -0
- data/lib/modern_treasury/models/invoice_line_item_create_request.rb +104 -0
- data/lib/modern_treasury/models/invoice_line_item_update_request.rb +240 -0
- data/lib/modern_treasury/models/invoice_update_request.rb +251 -0
- data/lib/modern_treasury/models/invoicer_address.rb +106 -0
- data/lib/modern_treasury/models/itemizable_type1_enum.rb +36 -0
- data/lib/modern_treasury/models/itemizable_type_enum.rb +36 -0
- data/lib/modern_treasury/models/ledger.rb +158 -0
- data/lib/modern_treasury/models/ledger_account.rb +220 -0
- data/lib/modern_treasury/models/ledger_account_category.rb +187 -0
- data/lib/modern_treasury/models/ledger_account_category_create_request.rb +125 -0
- data/lib/modern_treasury/models/ledger_account_category_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledger_account_create_request.rb +150 -0
- data/lib/modern_treasury/models/ledger_account_normal_balance_enum.rb +36 -0
- data/lib/modern_treasury/models/ledger_account_payout.rb +238 -0
- data/lib/modern_treasury/models/ledger_account_payout_create_request.rb +152 -0
- data/lib/modern_treasury/models/ledger_account_payout_update_request.rb +85 -0
- data/lib/modern_treasury/models/ledger_account_statement.rb +233 -0
- data/lib/modern_treasury/models/ledger_account_statement_create_request.rb +122 -0
- data/lib/modern_treasury/models/ledger_account_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledger_balance.rb +97 -0
- data/lib/modern_treasury/models/ledger_balances.rb +81 -0
- data/lib/modern_treasury/models/ledger_balances_with_effective_at.rb +123 -0
- data/lib/modern_treasury/models/ledger_create_request.rb +83 -0
- data/lib/modern_treasury/models/ledger_entry.rb +247 -0
- data/lib/modern_treasury/models/ledger_entry_create_request.rb +177 -0
- data/lib/modern_treasury/models/ledger_entry_of_transaction_version.rb +214 -0
- data/lib/modern_treasury/models/ledger_event_handler.rb +182 -0
- data/lib/modern_treasury/models/ledger_event_handler_conditions.rb +78 -0
- data/lib/modern_treasury/models/ledger_event_handler_create_request.rb +119 -0
- data/lib/modern_treasury/models/ledger_event_handler_ledger_entries.rb +80 -0
- data/lib/modern_treasury/models/ledger_event_handler_ledger_transaction_template.rb +103 -0
- data/lib/modern_treasury/models/ledger_transaction.rb +259 -0
- data/lib/modern_treasury/models/ledger_transaction_create_request.rb +164 -0
- data/lib/modern_treasury/models/ledger_transaction_reversal_create_request.rb +142 -0
- data/lib/modern_treasury/models/ledger_transaction_update_request.rb +115 -0
- data/lib/modern_treasury/models/ledger_transaction_version.rb +254 -0
- data/lib/modern_treasury/models/ledger_type_enum.rb +37 -0
- data/lib/modern_treasury/models/ledger_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledgerable_event.rb +206 -0
- data/lib/modern_treasury/models/ledgerable_event_create_request.rb +140 -0
- data/lib/modern_treasury/models/ledgerable_type2_enum.rb +71 -0
- data/lib/modern_treasury/models/ledgerable_type5_enum.rb +69 -0
- data/lib/modern_treasury/models/ledgerable_type6_enum.rb +68 -0
- data/lib/modern_treasury/models/ledgerable_type_enum.rb +38 -0
- data/lib/modern_treasury/models/legacy_document_create_request.rb +70 -0
- data/lib/modern_treasury/models/line_item.rb +200 -0
- data/lib/modern_treasury/models/line_item_request.rb +98 -0
- data/lib/modern_treasury/models/line_item_update_request.rb +63 -0
- data/lib/modern_treasury/models/mreturn.rb +425 -0
- data/lib/modern_treasury/models/normal_balance2_enum.rb +36 -0
- data/lib/modern_treasury/models/normal_balance_enum.rb +36 -0
- data/lib/modern_treasury/models/order_by.rb +72 -0
- data/lib/modern_treasury/models/originating_account_number_type_enum.rb +48 -0
- data/lib/modern_treasury/models/originating_routing_number_type_enum.rb +68 -0
- data/lib/modern_treasury/models/paper_item.rb +249 -0
- data/lib/modern_treasury/models/party_address.rb +106 -0
- data/lib/modern_treasury/models/party_type5_enum.rb +36 -0
- data/lib/modern_treasury/models/party_type_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_direction_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_flow.rb +230 -0
- data/lib/modern_treasury/models/payment_flow_create_request.rb +103 -0
- data/lib/modern_treasury/models/payment_flow_update_request.rb +61 -0
- data/lib/modern_treasury/models/payment_method1_enum.rb +46 -0
- data/lib/modern_treasury/models/payment_method_enum.rb +42 -0
- data/lib/modern_treasury/models/payment_order.rb +820 -0
- data/lib/modern_treasury/models/payment_order_async_create_request.rb +536 -0
- data/lib/modern_treasury/models/payment_order_create_request.rb +556 -0
- data/lib/modern_treasury/models/payment_order_update_request.rb +543 -0
- data/lib/modern_treasury/models/payment_reference.rb +175 -0
- data/lib/modern_treasury/models/payment_reference_object.rb +156 -0
- data/lib/modern_treasury/models/payment_type13_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type1_enum.rb +97 -0
- data/lib/modern_treasury/models/payment_type2_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type4_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type5_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_type6_enum.rb +97 -0
- data/lib/modern_treasury/models/payment_type_enum.rb +37 -0
- data/lib/modern_treasury/models/ping_response.rb +60 -0
- data/lib/modern_treasury/models/priority4_enum.rb +36 -0
- data/lib/modern_treasury/models/priority_enum.rb +38 -0
- data/lib/modern_treasury/models/reason1_enum.rb +50 -0
- data/lib/modern_treasury/models/reason_enum.rb +48 -0
- data/lib/modern_treasury/models/receiving_account.rb +304 -0
- data/lib/modern_treasury/models/receiving_account1.rb +219 -0
- data/lib/modern_treasury/models/receiving_account_type_enum.rb +36 -0
- data/lib/modern_treasury/models/reconciliation_method_enum.rb +38 -0
- data/lib/modern_treasury/models/reference_number_type1_enum.rb +248 -0
- data/lib/modern_treasury/models/reference_number_type_enum.rb +248 -0
- data/lib/modern_treasury/models/referenceable_type1_enum.rb +40 -0
- data/lib/modern_treasury/models/referenceable_type_enum.rb +41 -0
- data/lib/modern_treasury/models/return_create_request.rb +119 -0
- data/lib/modern_treasury/models/returnable_type1_enum.rb +48 -0
- data/lib/modern_treasury/models/returnable_type_enum.rb +48 -0
- data/lib/modern_treasury/models/reversal.rb +151 -0
- data/lib/modern_treasury/models/reversal_create_request.rb +86 -0
- data/lib/modern_treasury/models/role_enum.rb +36 -0
- data/lib/modern_treasury/models/routing_detail.rb +242 -0
- data/lib/modern_treasury/models/routing_detail1.rb +83 -0
- data/lib/modern_treasury/models/routing_detail_create_request.rb +87 -0
- data/lib/modern_treasury/models/routing_number_lookup_request.rb +124 -0
- data/lib/modern_treasury/models/routing_number_type1_enum.rb +68 -0
- data/lib/modern_treasury/models/routing_number_type7_enum.rb +55 -0
- data/lib/modern_treasury/models/routing_number_type8_enum.rb +68 -0
- data/lib/modern_treasury/models/routing_number_type_enum.rb +69 -0
- data/lib/modern_treasury/models/status11_enum.rb +40 -0
- data/lib/modern_treasury/models/status12_enum.rb +40 -0
- data/lib/modern_treasury/models/status15_enum.rb +41 -0
- data/lib/modern_treasury/models/status16_enum.rb +41 -0
- data/lib/modern_treasury/models/status17_enum.rb +45 -0
- data/lib/modern_treasury/models/status18_enum.rb +74 -0
- data/lib/modern_treasury/models/status19_enum.rb +52 -0
- data/lib/modern_treasury/models/status1_enum.rb +40 -0
- data/lib/modern_treasury/models/status20_enum.rb +40 -0
- data/lib/modern_treasury/models/status21_enum.rb +40 -0
- data/lib/modern_treasury/models/status22_enum.rb +40 -0
- data/lib/modern_treasury/models/status24_enum.rb +72 -0
- data/lib/modern_treasury/models/status2_enum.rb +41 -0
- data/lib/modern_treasury/models/status3_enum.rb +72 -0
- data/lib/modern_treasury/models/status4_enum.rb +52 -0
- data/lib/modern_treasury/models/status5_enum.rb +48 -0
- data/lib/modern_treasury/models/status6_enum.rb +49 -0
- data/lib/modern_treasury/models/status7_enum.rb +37 -0
- data/lib/modern_treasury/models/status8_enum.rb +37 -0
- data/lib/modern_treasury/models/status9_enum.rb +41 -0
- data/lib/modern_treasury/models/status_enum.rb +45 -0
- data/lib/modern_treasury/models/subtype_enum.rb +71 -0
- data/lib/modern_treasury/models/supported_payment_type_enum.rb +96 -0
- data/lib/modern_treasury/models/transactable_type_enum.rb +53 -0
- data/lib/modern_treasury/models/transaction.rb +311 -0
- data/lib/modern_treasury/models/transaction_line_item.rb +211 -0
- data/lib/modern_treasury/models/type10_enum.rb +64 -0
- data/lib/modern_treasury/models/type11_enum.rb +97 -0
- data/lib/modern_treasury/models/type12_enum.rb +37 -0
- data/lib/modern_treasury/models/type13_enum.rb +96 -0
- data/lib/modern_treasury/models/type14_enum.rb +64 -0
- data/lib/modern_treasury/models/type16_enum.rb +36 -0
- data/lib/modern_treasury/models/type1_enum.rb +97 -0
- data/lib/modern_treasury/models/type4_enum.rb +65 -0
- data/lib/modern_treasury/models/type5_enum.rb +97 -0
- data/lib/modern_treasury/models/type6_enum.rb +77 -0
- data/lib/modern_treasury/models/type_enum.rb +37 -0
- data/lib/modern_treasury/models/vendor_code_type1_enum.rb +111 -0
- data/lib/modern_treasury/models/vendor_code_type_enum.rb +108 -0
- data/lib/modern_treasury/models/verification_status1_enum.rb +44 -0
- data/lib/modern_treasury/models/verification_status_enum.rb +40 -0
- data/lib/modern_treasury/models/virtual_account.rb +247 -0
- data/lib/modern_treasury/models/virtual_account_create_request.rb +172 -0
- data/lib/modern_treasury/models/virtual_account_update_request.rb +85 -0
- data/lib/modern_treasury/utilities/date_time_helper.rb +11 -0
- data/lib/modern_treasury/utilities/file_wrapper.rb +28 -0
- data/lib/modern_treasury/utilities/union_type_lookup.rb +32 -0
- data/lib/modern_treasury.rb +316 -0
- data/test/controllers/controller_test_base.rb +23 -0
- data/test/controllers/test_account_collection_flow_controller.rb +64 -0
- data/test/controllers/test_connection_controller.rb +41 -0
- data/test/controllers/test_counterparty_controller.rb +65 -0
- data/test/controllers/test_document_controller.rb +41 -0
- data/test/controllers/test_event_controller.rb +46 -0
- data/test/controllers/test_expected_payment_controller.rb +71 -0
- data/test/controllers/test_external_account_controller.rb +63 -0
- data/test/controllers/test_incoming_payment_detail_controller.rb +68 -0
- data/test/controllers/test_internal_account_controller.rb +65 -0
- data/test/controllers/test_invoice_controller.rb +56 -0
- data/test/controllers/test_ledger_account_category_controller.rb +67 -0
- data/test/controllers/test_ledger_account_controller.rb +70 -0
- data/test/controllers/test_ledger_account_payout_controller.rb +62 -0
- data/test/controllers/test_ledger_account_statement_controller.rb +36 -0
- data/test/controllers/test_ledger_controller.rb +59 -0
- data/test/controllers/test_ledger_entry_controller.rb +65 -0
- data/test/controllers/test_ledger_event_handler_controller.rb +63 -0
- data/test/controllers/test_ledger_transaction_controller.rb +112 -0
- data/test/controllers/test_ledgerable_event_controller.rb +36 -0
- data/test/controllers/test_paper_item_controller.rb +43 -0
- data/test/controllers/test_payment_flow_controller.rb +67 -0
- data/test/controllers/test_payment_order_controller.rb +76 -0
- data/test/controllers/test_payment_reference_controller.rb +43 -0
- data/test/controllers/test_ping_controller.rb +31 -0
- data/test/controllers/test_return_controller.rb +64 -0
- data/test/controllers/test_transaction_controller.rb +56 -0
- data/test/controllers/test_virtual_account_controller.rb +63 -0
- data/test/http_response_catcher.rb +19 -0
- metadata +429 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# If a matching object exists in Modern Treasury, the type will be populated
|
|
8
|
+
# here, otherwise `null`.
|
|
9
|
+
class TransactableTypeEnum
|
|
10
|
+
TRANSACTABLE_TYPE_ENUM = [
|
|
11
|
+
# TODO: Write general description for INCOMING_PAYMENT_DETAIL
|
|
12
|
+
INCOMING_PAYMENT_DETAIL = 'incoming_payment_detail'.freeze,
|
|
13
|
+
|
|
14
|
+
# TODO: Write general description for PAPER_ITEM
|
|
15
|
+
PAPER_ITEM = 'paper_item'.freeze,
|
|
16
|
+
|
|
17
|
+
# TODO: Write general description for PAYMENT_ORDER
|
|
18
|
+
PAYMENT_ORDER = 'payment_order'.freeze,
|
|
19
|
+
|
|
20
|
+
# TODO: Write general description for PAYMENT_ORDER_ATTEMPT
|
|
21
|
+
PAYMENT_ORDER_ATTEMPT = 'payment_order_attempt'.freeze,
|
|
22
|
+
|
|
23
|
+
# TODO: Write general description for ENUM_RETURN
|
|
24
|
+
ENUM_RETURN = 'return'.freeze,
|
|
25
|
+
|
|
26
|
+
# TODO: Write general description for REVERSAL
|
|
27
|
+
REVERSAL = 'reversal'.freeze
|
|
28
|
+
].freeze
|
|
29
|
+
|
|
30
|
+
def self.validate(value)
|
|
31
|
+
return false if value.nil?
|
|
32
|
+
|
|
33
|
+
TRANSACTABLE_TYPE_ENUM.include?(value)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def self.from_value(value, default_value = INCOMING_PAYMENT_DETAIL)
|
|
37
|
+
return default_value if value.nil?
|
|
38
|
+
|
|
39
|
+
str = value.to_s.strip
|
|
40
|
+
|
|
41
|
+
case str.downcase
|
|
42
|
+
when 'incoming_payment_detail' then INCOMING_PAYMENT_DETAIL
|
|
43
|
+
when 'paper_item' then PAPER_ITEM
|
|
44
|
+
when 'payment_order' then PAYMENT_ORDER
|
|
45
|
+
when 'payment_order_attempt' then PAYMENT_ORDER_ATTEMPT
|
|
46
|
+
when 'enum_return' then ENUM_RETURN
|
|
47
|
+
when 'reversal' then REVERSAL
|
|
48
|
+
else
|
|
49
|
+
default_value
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
require 'date'
|
|
7
|
+
module ModernTreasury
|
|
8
|
+
# Transaction Model.
|
|
9
|
+
class Transaction < BaseModel
|
|
10
|
+
SKIP = Object.new
|
|
11
|
+
private_constant :SKIP
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for this method
|
|
14
|
+
# @return [UUID | String]
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
# TODO: Write general description for this method
|
|
18
|
+
# @return [String]
|
|
19
|
+
attr_accessor :object
|
|
20
|
+
|
|
21
|
+
# This field will be true if this object exists in the live environment or
|
|
22
|
+
# false if it exists in the test environment.
|
|
23
|
+
# @return [TrueClass | FalseClass]
|
|
24
|
+
attr_accessor :live_mode
|
|
25
|
+
|
|
26
|
+
# This field will be true if this object exists in the live environment or
|
|
27
|
+
# false if it exists in the test environment.
|
|
28
|
+
# @return [DateTime]
|
|
29
|
+
attr_accessor :created_at
|
|
30
|
+
|
|
31
|
+
# This field will be true if this object exists in the live environment or
|
|
32
|
+
# false if it exists in the test environment.
|
|
33
|
+
# @return [DateTime]
|
|
34
|
+
attr_accessor :updated_at
|
|
35
|
+
|
|
36
|
+
# This field will be true if this object exists in the live environment or
|
|
37
|
+
# false if it exists in the test environment.
|
|
38
|
+
# @return [DateTime]
|
|
39
|
+
attr_accessor :discarded_at
|
|
40
|
+
|
|
41
|
+
# Value in specified currency's smallest unit. e.g. $10 would be represented
|
|
42
|
+
# as 1000.
|
|
43
|
+
# @return [Integer]
|
|
44
|
+
attr_accessor :amount
|
|
45
|
+
|
|
46
|
+
# Three-letter ISO currency code.
|
|
47
|
+
# @return [CurrencyEnum]
|
|
48
|
+
attr_accessor :currency
|
|
49
|
+
|
|
50
|
+
# Either `credit` or `debit`.
|
|
51
|
+
# @return [String]
|
|
52
|
+
attr_accessor :direction
|
|
53
|
+
|
|
54
|
+
# The transaction detail text that often appears in on your bank statement
|
|
55
|
+
# and in your banking portal.
|
|
56
|
+
# @return [String]
|
|
57
|
+
attr_accessor :vendor_description
|
|
58
|
+
|
|
59
|
+
# When applicable, the bank-given code that determines the transaction's
|
|
60
|
+
# category. For most banks this is the BAI2/BTRS transaction code.
|
|
61
|
+
# @return [String]
|
|
62
|
+
attr_accessor :vendor_code
|
|
63
|
+
|
|
64
|
+
# The type of `vendor_code` being reported. Can be one of `bai2`,
|
|
65
|
+
# `bankprov`, `bnk_dev`, `cleartouch`, `currencycloud`, `cross_river`,
|
|
66
|
+
# `dc_bank`, `dwolla`, `evolve`, `goldman_sachs`, `iso20022`, `jpmc`, `mx`,
|
|
67
|
+
# `signet`, `silvergate`, `swift`, or `us_bank`.
|
|
68
|
+
# @return [VendorCodeType1Enum]
|
|
69
|
+
attr_accessor :vendor_code_type
|
|
70
|
+
|
|
71
|
+
# An identifier given to this transaction by the bank.
|
|
72
|
+
# @return [String]
|
|
73
|
+
attr_accessor :vendor_id
|
|
74
|
+
|
|
75
|
+
# The date on which the transaction occurred.
|
|
76
|
+
# @return [Date]
|
|
77
|
+
attr_accessor :as_of_date
|
|
78
|
+
|
|
79
|
+
# The time on which the transaction occurred. Depending on the granularity
|
|
80
|
+
# of the timestamp information received from the bank, it may be `null`.
|
|
81
|
+
# @return [DateTime]
|
|
82
|
+
attr_accessor :as_of_time
|
|
83
|
+
|
|
84
|
+
# The ID of the relevant Internal Account.
|
|
85
|
+
# @return [UUID | String]
|
|
86
|
+
attr_accessor :internal_account_id
|
|
87
|
+
|
|
88
|
+
# Additional data represented as key-value pairs. Both the key and value
|
|
89
|
+
# must be strings.
|
|
90
|
+
# @return [Hash[String, String]]
|
|
91
|
+
attr_accessor :metadata
|
|
92
|
+
|
|
93
|
+
# This field will be `true` if the transaction has posted to the account.
|
|
94
|
+
# @return [TrueClass | FalseClass]
|
|
95
|
+
attr_accessor :posted
|
|
96
|
+
|
|
97
|
+
# An identifier given to this transaction by the bank, often `null`.
|
|
98
|
+
# @return [String]
|
|
99
|
+
attr_accessor :vendor_customer_id
|
|
100
|
+
|
|
101
|
+
# This field will be `true` if a transaction is reconciled by the Modern
|
|
102
|
+
# Treasury system. This means that it has transaction line items that sum up
|
|
103
|
+
# to the transaction's amount.
|
|
104
|
+
# @return [TrueClass | FalseClass]
|
|
105
|
+
attr_accessor :reconciled
|
|
106
|
+
|
|
107
|
+
# This field contains additional information that the bank provided about
|
|
108
|
+
# the transaction. This is structured data. Some of the data in here might
|
|
109
|
+
# overlap with what is in the `vendor_description`. For example, the OBI
|
|
110
|
+
# could be a part of the vendor description, and it would also be included
|
|
111
|
+
# in here. The attributes that are passed through the details field will
|
|
112
|
+
# vary based on your banking partner. Currently, the following keys may be
|
|
113
|
+
# in the details object: `originator_name`,
|
|
114
|
+
# `originator_to_beneficiary_information`.
|
|
115
|
+
# @return [Hash[String, String]]
|
|
116
|
+
attr_accessor :details
|
|
117
|
+
|
|
118
|
+
# The type of the transaction. Can be one of `ach`, `wire`, `check`, `rtp`,
|
|
119
|
+
# `book`, or `sen`.
|
|
120
|
+
# @return [Type11Enum]
|
|
121
|
+
attr_accessor :type
|
|
122
|
+
|
|
123
|
+
# A mapping from model property names to API property names.
|
|
124
|
+
def self.names
|
|
125
|
+
@_hash = {} if @_hash.nil?
|
|
126
|
+
@_hash['id'] = 'id'
|
|
127
|
+
@_hash['object'] = 'object'
|
|
128
|
+
@_hash['live_mode'] = 'live_mode'
|
|
129
|
+
@_hash['created_at'] = 'created_at'
|
|
130
|
+
@_hash['updated_at'] = 'updated_at'
|
|
131
|
+
@_hash['discarded_at'] = 'discarded_at'
|
|
132
|
+
@_hash['amount'] = 'amount'
|
|
133
|
+
@_hash['currency'] = 'currency'
|
|
134
|
+
@_hash['direction'] = 'direction'
|
|
135
|
+
@_hash['vendor_description'] = 'vendor_description'
|
|
136
|
+
@_hash['vendor_code'] = 'vendor_code'
|
|
137
|
+
@_hash['vendor_code_type'] = 'vendor_code_type'
|
|
138
|
+
@_hash['vendor_id'] = 'vendor_id'
|
|
139
|
+
@_hash['as_of_date'] = 'as_of_date'
|
|
140
|
+
@_hash['as_of_time'] = 'as_of_time'
|
|
141
|
+
@_hash['internal_account_id'] = 'internal_account_id'
|
|
142
|
+
@_hash['metadata'] = 'metadata'
|
|
143
|
+
@_hash['posted'] = 'posted'
|
|
144
|
+
@_hash['vendor_customer_id'] = 'vendor_customer_id'
|
|
145
|
+
@_hash['reconciled'] = 'reconciled'
|
|
146
|
+
@_hash['details'] = 'details'
|
|
147
|
+
@_hash['type'] = 'type'
|
|
148
|
+
@_hash
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# An array for optional fields
|
|
152
|
+
def self.optionals
|
|
153
|
+
[]
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# An array for nullable fields
|
|
157
|
+
def self.nullables
|
|
158
|
+
%w[
|
|
159
|
+
discarded_at
|
|
160
|
+
vendor_description
|
|
161
|
+
vendor_code
|
|
162
|
+
vendor_code_type
|
|
163
|
+
vendor_id
|
|
164
|
+
as_of_date
|
|
165
|
+
as_of_time
|
|
166
|
+
vendor_customer_id
|
|
167
|
+
]
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
|
|
171
|
+
updated_at = nil, discarded_at = nil, amount = nil,
|
|
172
|
+
currency = nil, direction = nil, vendor_description = nil,
|
|
173
|
+
vendor_code = nil, vendor_code_type = nil, vendor_id = nil,
|
|
174
|
+
as_of_date = nil, as_of_time = nil,
|
|
175
|
+
internal_account_id = nil, metadata = nil, posted = nil,
|
|
176
|
+
vendor_customer_id = nil, reconciled = nil, details = nil,
|
|
177
|
+
type = nil)
|
|
178
|
+
@id = id
|
|
179
|
+
@object = object
|
|
180
|
+
@live_mode = live_mode
|
|
181
|
+
@created_at = created_at
|
|
182
|
+
@updated_at = updated_at
|
|
183
|
+
@discarded_at = discarded_at
|
|
184
|
+
@amount = amount
|
|
185
|
+
@currency = currency
|
|
186
|
+
@direction = direction
|
|
187
|
+
@vendor_description = vendor_description
|
|
188
|
+
@vendor_code = vendor_code
|
|
189
|
+
@vendor_code_type = vendor_code_type
|
|
190
|
+
@vendor_id = vendor_id
|
|
191
|
+
@as_of_date = as_of_date
|
|
192
|
+
@as_of_time = as_of_time
|
|
193
|
+
@internal_account_id = internal_account_id
|
|
194
|
+
@metadata = metadata
|
|
195
|
+
@posted = posted
|
|
196
|
+
@vendor_customer_id = vendor_customer_id
|
|
197
|
+
@reconciled = reconciled
|
|
198
|
+
@details = details
|
|
199
|
+
@type = type
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
# Creates an instance of the object from a hash.
|
|
203
|
+
def self.from_hash(hash)
|
|
204
|
+
return nil unless hash
|
|
205
|
+
|
|
206
|
+
# Extract variables from the hash.
|
|
207
|
+
id = hash.key?('id') ? hash['id'] : nil
|
|
208
|
+
object = hash.key?('object') ? hash['object'] : nil
|
|
209
|
+
live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
|
|
210
|
+
created_at = if hash.key?('created_at')
|
|
211
|
+
(DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
|
|
212
|
+
end
|
|
213
|
+
updated_at = if hash.key?('updated_at')
|
|
214
|
+
(DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
|
|
215
|
+
end
|
|
216
|
+
discarded_at = if hash.key?('discarded_at')
|
|
217
|
+
(DateTimeHelper.from_rfc3339(hash['discarded_at']) if hash['discarded_at'])
|
|
218
|
+
end
|
|
219
|
+
amount = hash.key?('amount') ? hash['amount'] : nil
|
|
220
|
+
currency = hash.key?('currency') ? hash['currency'] : nil
|
|
221
|
+
direction = hash.key?('direction') ? hash['direction'] : nil
|
|
222
|
+
vendor_description =
|
|
223
|
+
hash.key?('vendor_description') ? hash['vendor_description'] : nil
|
|
224
|
+
vendor_code = hash.key?('vendor_code') ? hash['vendor_code'] : nil
|
|
225
|
+
vendor_code_type =
|
|
226
|
+
hash.key?('vendor_code_type') ? hash['vendor_code_type'] : nil
|
|
227
|
+
vendor_id = hash.key?('vendor_id') ? hash['vendor_id'] : nil
|
|
228
|
+
as_of_date = hash.key?('as_of_date') ? hash['as_of_date'] : nil
|
|
229
|
+
as_of_time = if hash.key?('as_of_time')
|
|
230
|
+
(DateTimeHelper.from_rfc3339(hash['as_of_time']) if hash['as_of_time'])
|
|
231
|
+
end
|
|
232
|
+
internal_account_id =
|
|
233
|
+
hash.key?('internal_account_id') ? hash['internal_account_id'] : nil
|
|
234
|
+
metadata = hash.key?('metadata') ? hash['metadata'] : nil
|
|
235
|
+
posted = hash.key?('posted') ? hash['posted'] : nil
|
|
236
|
+
vendor_customer_id =
|
|
237
|
+
hash.key?('vendor_customer_id') ? hash['vendor_customer_id'] : nil
|
|
238
|
+
reconciled = hash.key?('reconciled') ? hash['reconciled'] : nil
|
|
239
|
+
details = hash.key?('details') ? hash['details'] : nil
|
|
240
|
+
type = hash.key?('type') ? hash['type'] : nil
|
|
241
|
+
|
|
242
|
+
# Create object from extracted values.
|
|
243
|
+
Transaction.new(id,
|
|
244
|
+
object,
|
|
245
|
+
live_mode,
|
|
246
|
+
created_at,
|
|
247
|
+
updated_at,
|
|
248
|
+
discarded_at,
|
|
249
|
+
amount,
|
|
250
|
+
currency,
|
|
251
|
+
direction,
|
|
252
|
+
vendor_description,
|
|
253
|
+
vendor_code,
|
|
254
|
+
vendor_code_type,
|
|
255
|
+
vendor_id,
|
|
256
|
+
as_of_date,
|
|
257
|
+
as_of_time,
|
|
258
|
+
internal_account_id,
|
|
259
|
+
metadata,
|
|
260
|
+
posted,
|
|
261
|
+
vendor_customer_id,
|
|
262
|
+
reconciled,
|
|
263
|
+
details,
|
|
264
|
+
type)
|
|
265
|
+
end
|
|
266
|
+
|
|
267
|
+
def to_custom_created_at
|
|
268
|
+
DateTimeHelper.to_rfc3339(created_at)
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
def to_custom_updated_at
|
|
272
|
+
DateTimeHelper.to_rfc3339(updated_at)
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
def to_custom_discarded_at
|
|
276
|
+
DateTimeHelper.to_rfc3339(discarded_at)
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
def to_custom_as_of_time
|
|
280
|
+
DateTimeHelper.to_rfc3339(as_of_time)
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
# Provides a human-readable string representation of the object.
|
|
284
|
+
def to_s
|
|
285
|
+
class_name = self.class.name.split('::').last
|
|
286
|
+
"<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
|
|
287
|
+
" #{@created_at}, updated_at: #{@updated_at}, discarded_at: #{@discarded_at}, amount:"\
|
|
288
|
+
" #{@amount}, currency: #{@currency}, direction: #{@direction}, vendor_description:"\
|
|
289
|
+
" #{@vendor_description}, vendor_code: #{@vendor_code}, vendor_code_type:"\
|
|
290
|
+
" #{@vendor_code_type}, vendor_id: #{@vendor_id}, as_of_date: #{@as_of_date}, as_of_time:"\
|
|
291
|
+
" #{@as_of_time}, internal_account_id: #{@internal_account_id}, metadata: #{@metadata},"\
|
|
292
|
+
" posted: #{@posted}, vendor_customer_id: #{@vendor_customer_id}, reconciled:"\
|
|
293
|
+
" #{@reconciled}, details: #{@details}, type: #{@type}>"
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
297
|
+
def inspect
|
|
298
|
+
class_name = self.class.name.split('::').last
|
|
299
|
+
"<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
|
|
300
|
+
" #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
|
|
301
|
+
" #{@updated_at.inspect}, discarded_at: #{@discarded_at.inspect}, amount:"\
|
|
302
|
+
" #{@amount.inspect}, currency: #{@currency.inspect}, direction: #{@direction.inspect},"\
|
|
303
|
+
" vendor_description: #{@vendor_description.inspect}, vendor_code: #{@vendor_code.inspect},"\
|
|
304
|
+
" vendor_code_type: #{@vendor_code_type.inspect}, vendor_id: #{@vendor_id.inspect},"\
|
|
305
|
+
" as_of_date: #{@as_of_date.inspect}, as_of_time: #{@as_of_time.inspect},"\
|
|
306
|
+
" internal_account_id: #{@internal_account_id.inspect}, metadata: #{@metadata.inspect},"\
|
|
307
|
+
" posted: #{@posted.inspect}, vendor_customer_id: #{@vendor_customer_id.inspect},"\
|
|
308
|
+
" reconciled: #{@reconciled.inspect}, details: #{@details.inspect}, type: #{@type.inspect}>"
|
|
309
|
+
end
|
|
310
|
+
end
|
|
311
|
+
end
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
require 'date'
|
|
7
|
+
module ModernTreasury
|
|
8
|
+
# TransactionLineItem Model.
|
|
9
|
+
class TransactionLineItem < BaseModel
|
|
10
|
+
SKIP = Object.new
|
|
11
|
+
private_constant :SKIP
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for this method
|
|
14
|
+
# @return [UUID | String]
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
# TODO: Write general description for this method
|
|
18
|
+
# @return [String]
|
|
19
|
+
attr_accessor :object
|
|
20
|
+
|
|
21
|
+
# This field will be true if this object exists in the live environment, or
|
|
22
|
+
# false if it exists in the test environment.
|
|
23
|
+
# @return [TrueClass | FalseClass]
|
|
24
|
+
attr_accessor :live_mode
|
|
25
|
+
|
|
26
|
+
# This field will be true if this object exists in the live environment, or
|
|
27
|
+
# false if it exists in the test environment.
|
|
28
|
+
# @return [DateTime]
|
|
29
|
+
attr_accessor :created_at
|
|
30
|
+
|
|
31
|
+
# This field will be true if this object exists in the live environment, or
|
|
32
|
+
# false if it exists in the test environment.
|
|
33
|
+
# @return [DateTime]
|
|
34
|
+
attr_accessor :updated_at
|
|
35
|
+
|
|
36
|
+
# This field will be true if this object exists in the live environment, or
|
|
37
|
+
# false if it exists in the test environment.
|
|
38
|
+
# @return [DateTime]
|
|
39
|
+
attr_accessor :discarded_at
|
|
40
|
+
|
|
41
|
+
# Indicates whether the line item is `originating` or `receiving` (see
|
|
42
|
+
# https://www.moderntreasury.com/journal/beginners-guide-to-ach for more).
|
|
43
|
+
# @return [Type12Enum]
|
|
44
|
+
attr_accessor :type
|
|
45
|
+
|
|
46
|
+
# If a matching object exists in Modern Treasury, the type will be populated
|
|
47
|
+
# here, otherwise `null`.
|
|
48
|
+
# @return [TransactableTypeEnum]
|
|
49
|
+
attr_accessor :transactable_type
|
|
50
|
+
|
|
51
|
+
# If a matching object exists in Modern Treasury, the ID will be populated
|
|
52
|
+
# here, otherwise `null`.
|
|
53
|
+
# @return [String]
|
|
54
|
+
attr_accessor :transactable_id
|
|
55
|
+
|
|
56
|
+
# If a matching object exists in Modern Treasury, `amount` will be
|
|
57
|
+
# populated. Value in specified currency's smallest unit (taken from parent
|
|
58
|
+
# Transaction).
|
|
59
|
+
# @return [Integer]
|
|
60
|
+
attr_accessor :amount
|
|
61
|
+
|
|
62
|
+
# If no matching object is found, `description` will be a free-form text
|
|
63
|
+
# field describing the line item. This field may contain personally
|
|
64
|
+
# identifiable information (PII) and is not included in API responses by
|
|
65
|
+
# default. Learn more about changing your settings at
|
|
66
|
+
# https://docs.moderntreasury.com/reference/personally-identifiable-informat
|
|
67
|
+
# ion.
|
|
68
|
+
# @return [String]
|
|
69
|
+
attr_accessor :description
|
|
70
|
+
|
|
71
|
+
# The ID for the counterparty for this transaction line item.
|
|
72
|
+
# @return [String]
|
|
73
|
+
attr_accessor :counterparty_id
|
|
74
|
+
|
|
75
|
+
# The ID of the reconciled Expected Payment, otherwise `null`.
|
|
76
|
+
# @return [String]
|
|
77
|
+
attr_accessor :expected_payment_id
|
|
78
|
+
|
|
79
|
+
# A mapping from model property names to API property names.
|
|
80
|
+
def self.names
|
|
81
|
+
@_hash = {} if @_hash.nil?
|
|
82
|
+
@_hash['id'] = 'id'
|
|
83
|
+
@_hash['object'] = 'object'
|
|
84
|
+
@_hash['live_mode'] = 'live_mode'
|
|
85
|
+
@_hash['created_at'] = 'created_at'
|
|
86
|
+
@_hash['updated_at'] = 'updated_at'
|
|
87
|
+
@_hash['discarded_at'] = 'discarded_at'
|
|
88
|
+
@_hash['type'] = 'type'
|
|
89
|
+
@_hash['transactable_type'] = 'transactable_type'
|
|
90
|
+
@_hash['transactable_id'] = 'transactable_id'
|
|
91
|
+
@_hash['amount'] = 'amount'
|
|
92
|
+
@_hash['description'] = 'description'
|
|
93
|
+
@_hash['counterparty_id'] = 'counterparty_id'
|
|
94
|
+
@_hash['expected_payment_id'] = 'expected_payment_id'
|
|
95
|
+
@_hash
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# An array for optional fields
|
|
99
|
+
def self.optionals
|
|
100
|
+
[]
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
# An array for nullable fields
|
|
104
|
+
def self.nullables
|
|
105
|
+
%w[
|
|
106
|
+
discarded_at
|
|
107
|
+
transactable_type
|
|
108
|
+
transactable_id
|
|
109
|
+
]
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
|
|
113
|
+
updated_at = nil, discarded_at = nil, type = nil,
|
|
114
|
+
transactable_type = nil, transactable_id = nil, amount = nil,
|
|
115
|
+
description = nil, counterparty_id = nil,
|
|
116
|
+
expected_payment_id = nil)
|
|
117
|
+
@id = id
|
|
118
|
+
@object = object
|
|
119
|
+
@live_mode = live_mode
|
|
120
|
+
@created_at = created_at
|
|
121
|
+
@updated_at = updated_at
|
|
122
|
+
@discarded_at = discarded_at
|
|
123
|
+
@type = type
|
|
124
|
+
@transactable_type = transactable_type
|
|
125
|
+
@transactable_id = transactable_id
|
|
126
|
+
@amount = amount
|
|
127
|
+
@description = description
|
|
128
|
+
@counterparty_id = counterparty_id
|
|
129
|
+
@expected_payment_id = expected_payment_id
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
# Creates an instance of the object from a hash.
|
|
133
|
+
def self.from_hash(hash)
|
|
134
|
+
return nil unless hash
|
|
135
|
+
|
|
136
|
+
# Extract variables from the hash.
|
|
137
|
+
id = hash.key?('id') ? hash['id'] : nil
|
|
138
|
+
object = hash.key?('object') ? hash['object'] : nil
|
|
139
|
+
live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
|
|
140
|
+
created_at = if hash.key?('created_at')
|
|
141
|
+
(DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
|
|
142
|
+
end
|
|
143
|
+
updated_at = if hash.key?('updated_at')
|
|
144
|
+
(DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
|
|
145
|
+
end
|
|
146
|
+
discarded_at = if hash.key?('discarded_at')
|
|
147
|
+
(DateTimeHelper.from_rfc3339(hash['discarded_at']) if hash['discarded_at'])
|
|
148
|
+
end
|
|
149
|
+
type = hash.key?('type') ? hash['type'] : nil
|
|
150
|
+
transactable_type =
|
|
151
|
+
hash.key?('transactable_type') ? hash['transactable_type'] : nil
|
|
152
|
+
transactable_id =
|
|
153
|
+
hash.key?('transactable_id') ? hash['transactable_id'] : nil
|
|
154
|
+
amount = hash.key?('amount') ? hash['amount'] : nil
|
|
155
|
+
description = hash.key?('description') ? hash['description'] : nil
|
|
156
|
+
counterparty_id =
|
|
157
|
+
hash.key?('counterparty_id') ? hash['counterparty_id'] : nil
|
|
158
|
+
expected_payment_id =
|
|
159
|
+
hash.key?('expected_payment_id') ? hash['expected_payment_id'] : nil
|
|
160
|
+
|
|
161
|
+
# Create object from extracted values.
|
|
162
|
+
TransactionLineItem.new(id,
|
|
163
|
+
object,
|
|
164
|
+
live_mode,
|
|
165
|
+
created_at,
|
|
166
|
+
updated_at,
|
|
167
|
+
discarded_at,
|
|
168
|
+
type,
|
|
169
|
+
transactable_type,
|
|
170
|
+
transactable_id,
|
|
171
|
+
amount,
|
|
172
|
+
description,
|
|
173
|
+
counterparty_id,
|
|
174
|
+
expected_payment_id)
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
def to_custom_created_at
|
|
178
|
+
DateTimeHelper.to_rfc3339(created_at)
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
def to_custom_updated_at
|
|
182
|
+
DateTimeHelper.to_rfc3339(updated_at)
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
def to_custom_discarded_at
|
|
186
|
+
DateTimeHelper.to_rfc3339(discarded_at)
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Provides a human-readable string representation of the object.
|
|
190
|
+
def to_s
|
|
191
|
+
class_name = self.class.name.split('::').last
|
|
192
|
+
"<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
|
|
193
|
+
" #{@created_at}, updated_at: #{@updated_at}, discarded_at: #{@discarded_at}, type:"\
|
|
194
|
+
" #{@type}, transactable_type: #{@transactable_type}, transactable_id: #{@transactable_id},"\
|
|
195
|
+
" amount: #{@amount}, description: #{@description}, counterparty_id: #{@counterparty_id},"\
|
|
196
|
+
" expected_payment_id: #{@expected_payment_id}>"
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
200
|
+
def inspect
|
|
201
|
+
class_name = self.class.name.split('::').last
|
|
202
|
+
"<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
|
|
203
|
+
" #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
|
|
204
|
+
" #{@updated_at.inspect}, discarded_at: #{@discarded_at.inspect}, type: #{@type.inspect},"\
|
|
205
|
+
" transactable_type: #{@transactable_type.inspect}, transactable_id:"\
|
|
206
|
+
" #{@transactable_id.inspect}, amount: #{@amount.inspect}, description:"\
|
|
207
|
+
" #{@description.inspect}, counterparty_id: #{@counterparty_id.inspect},"\
|
|
208
|
+
" expected_payment_id: #{@expected_payment_id.inspect}>"
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
end
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# One of `ach`, `wire`, `check`.
|
|
8
|
+
class Type10Enum
|
|
9
|
+
TYPE10_ENUM = [
|
|
10
|
+
# TODO: Write general description for ACH
|
|
11
|
+
ACH = 'ach'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for BOOK
|
|
14
|
+
BOOK = 'book'.freeze,
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for CHECK
|
|
17
|
+
CHECK = 'check'.freeze,
|
|
18
|
+
|
|
19
|
+
# TODO: Write general description for EFT
|
|
20
|
+
EFT = 'eft'.freeze,
|
|
21
|
+
|
|
22
|
+
# TODO: Write general description for INTERAC
|
|
23
|
+
INTERAC = 'interac'.freeze,
|
|
24
|
+
|
|
25
|
+
# TODO: Write general description for RTP
|
|
26
|
+
RTP = 'rtp'.freeze,
|
|
27
|
+
|
|
28
|
+
# TODO: Write general description for SEPA
|
|
29
|
+
SEPA = 'sepa'.freeze,
|
|
30
|
+
|
|
31
|
+
# TODO: Write general description for SIGNET
|
|
32
|
+
SIGNET = 'signet'.freeze,
|
|
33
|
+
|
|
34
|
+
# TODO: Write general description for WIRE
|
|
35
|
+
WIRE = 'wire'.freeze
|
|
36
|
+
].freeze
|
|
37
|
+
|
|
38
|
+
def self.validate(value)
|
|
39
|
+
return false if value.nil?
|
|
40
|
+
|
|
41
|
+
TYPE10_ENUM.include?(value)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def self.from_value(value, default_value = ACH)
|
|
45
|
+
return default_value if value.nil?
|
|
46
|
+
|
|
47
|
+
str = value.to_s.strip
|
|
48
|
+
|
|
49
|
+
case str.downcase
|
|
50
|
+
when 'ach' then ACH
|
|
51
|
+
when 'book' then BOOK
|
|
52
|
+
when 'check' then CHECK
|
|
53
|
+
when 'eft' then EFT
|
|
54
|
+
when 'interac' then INTERAC
|
|
55
|
+
when 'rtp' then RTP
|
|
56
|
+
when 'sepa' then SEPA
|
|
57
|
+
when 'signet' then SIGNET
|
|
58
|
+
when 'wire' then WIRE
|
|
59
|
+
else
|
|
60
|
+
default_value
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|