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,251 @@
|
|
|
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
|
+
# InvoiceUpdateRequest Model.
|
|
9
|
+
class InvoiceUpdateRequest < BaseModel
|
|
10
|
+
SKIP = Object.new
|
|
11
|
+
private_constant :SKIP
|
|
12
|
+
|
|
13
|
+
# The invoicer's contact details displayed at the top of the invoice.
|
|
14
|
+
# @return [Array[ContactDetail]]
|
|
15
|
+
attr_accessor :contact_details
|
|
16
|
+
|
|
17
|
+
# The ID of the counterparty receiving the invoice.
|
|
18
|
+
# @return [String]
|
|
19
|
+
attr_accessor :counterparty_id
|
|
20
|
+
|
|
21
|
+
# The counterparty's billing address.
|
|
22
|
+
# @return [CounterpartyBillingAddress]
|
|
23
|
+
attr_accessor :counterparty_billing_address
|
|
24
|
+
|
|
25
|
+
# The counterparty's shipping address where physical goods should be
|
|
26
|
+
# delivered.
|
|
27
|
+
# @return [CounterpartyShippingAddress]
|
|
28
|
+
attr_accessor :counterparty_shipping_address
|
|
29
|
+
|
|
30
|
+
# Three-letter ISO currency code.
|
|
31
|
+
# @return [CurrencyEnum]
|
|
32
|
+
attr_accessor :currency
|
|
33
|
+
|
|
34
|
+
# A free-form description of the invoice.
|
|
35
|
+
# @return [String]
|
|
36
|
+
attr_accessor :description
|
|
37
|
+
|
|
38
|
+
# A future date by when the invoice needs to be paid.
|
|
39
|
+
# @return [DateTime]
|
|
40
|
+
attr_accessor :due_date
|
|
41
|
+
|
|
42
|
+
# The invoice issuer's business address.
|
|
43
|
+
# @return [InvoicerAddress]
|
|
44
|
+
attr_accessor :invoicer_address
|
|
45
|
+
|
|
46
|
+
# The ID of the internal account the invoice should be paid to.
|
|
47
|
+
# @return [String]
|
|
48
|
+
attr_accessor :originating_account_id
|
|
49
|
+
|
|
50
|
+
# The receiving account ID. Can be an `external_account`.
|
|
51
|
+
# @return [UUID | String]
|
|
52
|
+
attr_accessor :receiving_account_id
|
|
53
|
+
|
|
54
|
+
# Date transactions are to be posted to the participants' account. Defaults
|
|
55
|
+
# to the current business day or the next business day if the current day is
|
|
56
|
+
# a bank holiday or weekend. Format: yyyy-mm-dd.
|
|
57
|
+
# @return [Date]
|
|
58
|
+
attr_accessor :payment_effective_date
|
|
59
|
+
|
|
60
|
+
# One of `ach`, `eft`, `wire`, `check`, `sen`, `book`, `rtp`, `sepa`,
|
|
61
|
+
# `bacs`, `au_becs`, `interac`, `signet`, `provexchange`.
|
|
62
|
+
# @return [PaymentType6Enum]
|
|
63
|
+
attr_accessor :payment_type
|
|
64
|
+
|
|
65
|
+
# The method by which the invoice can be paid. `ui` will show the embedded
|
|
66
|
+
# payment collection flow. `automatic` will automatically initiate payment
|
|
67
|
+
# based upon the account details of the receiving_account id.\nIf the
|
|
68
|
+
# invoice amount is positive, the automatically initiated payment order's
|
|
69
|
+
# direction will be debit. If the invoice amount is negative, the
|
|
70
|
+
# automatically initiated payment order's direction will be credit. One of
|
|
71
|
+
# `manual`, `ui`, or `automatic`.
|
|
72
|
+
# @return [PaymentMethod1Enum]
|
|
73
|
+
attr_accessor :payment_method
|
|
74
|
+
|
|
75
|
+
# Invoice status must be updated in a `PATCH` request that does not modify
|
|
76
|
+
# any other invoice attributes. Valid state transitions are
|
|
77
|
+
# `draft` to `unpaid` and `draft` or `unpaid` to `voided`.
|
|
78
|
+
# @return [String]
|
|
79
|
+
attr_accessor :status
|
|
80
|
+
|
|
81
|
+
# A mapping from model property names to API property names.
|
|
82
|
+
def self.names
|
|
83
|
+
@_hash = {} if @_hash.nil?
|
|
84
|
+
@_hash['contact_details'] = 'contact_details'
|
|
85
|
+
@_hash['counterparty_id'] = 'counterparty_id'
|
|
86
|
+
@_hash['counterparty_billing_address'] = 'counterparty_billing_address'
|
|
87
|
+
@_hash['counterparty_shipping_address'] =
|
|
88
|
+
'counterparty_shipping_address'
|
|
89
|
+
@_hash['currency'] = 'currency'
|
|
90
|
+
@_hash['description'] = 'description'
|
|
91
|
+
@_hash['due_date'] = 'due_date'
|
|
92
|
+
@_hash['invoicer_address'] = 'invoicer_address'
|
|
93
|
+
@_hash['originating_account_id'] = 'originating_account_id'
|
|
94
|
+
@_hash['receiving_account_id'] = 'receiving_account_id'
|
|
95
|
+
@_hash['payment_effective_date'] = 'payment_effective_date'
|
|
96
|
+
@_hash['payment_type'] = 'payment_type'
|
|
97
|
+
@_hash['payment_method'] = 'payment_method'
|
|
98
|
+
@_hash['status'] = 'status'
|
|
99
|
+
@_hash
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# An array for optional fields
|
|
103
|
+
def self.optionals
|
|
104
|
+
%w[
|
|
105
|
+
contact_details
|
|
106
|
+
counterparty_id
|
|
107
|
+
counterparty_billing_address
|
|
108
|
+
counterparty_shipping_address
|
|
109
|
+
currency
|
|
110
|
+
description
|
|
111
|
+
due_date
|
|
112
|
+
invoicer_address
|
|
113
|
+
originating_account_id
|
|
114
|
+
receiving_account_id
|
|
115
|
+
payment_effective_date
|
|
116
|
+
payment_type
|
|
117
|
+
payment_method
|
|
118
|
+
status
|
|
119
|
+
]
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# An array for nullable fields
|
|
123
|
+
def self.nullables
|
|
124
|
+
%w[
|
|
125
|
+
counterparty_billing_address
|
|
126
|
+
counterparty_shipping_address
|
|
127
|
+
invoicer_address
|
|
128
|
+
]
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
def initialize(contact_details = SKIP, counterparty_id = SKIP,
|
|
132
|
+
counterparty_billing_address = SKIP,
|
|
133
|
+
counterparty_shipping_address = SKIP, currency = SKIP,
|
|
134
|
+
description = SKIP, due_date = SKIP, invoicer_address = SKIP,
|
|
135
|
+
originating_account_id = SKIP, receiving_account_id = SKIP,
|
|
136
|
+
payment_effective_date = SKIP, payment_type = SKIP,
|
|
137
|
+
payment_method = SKIP, status = SKIP)
|
|
138
|
+
@contact_details = contact_details unless contact_details == SKIP
|
|
139
|
+
@counterparty_id = counterparty_id unless counterparty_id == SKIP
|
|
140
|
+
unless counterparty_billing_address == SKIP
|
|
141
|
+
@counterparty_billing_address =
|
|
142
|
+
counterparty_billing_address
|
|
143
|
+
end
|
|
144
|
+
unless counterparty_shipping_address == SKIP
|
|
145
|
+
@counterparty_shipping_address =
|
|
146
|
+
counterparty_shipping_address
|
|
147
|
+
end
|
|
148
|
+
@currency = currency unless currency == SKIP
|
|
149
|
+
@description = description unless description == SKIP
|
|
150
|
+
@due_date = due_date unless due_date == SKIP
|
|
151
|
+
@invoicer_address = invoicer_address unless invoicer_address == SKIP
|
|
152
|
+
@originating_account_id = originating_account_id unless originating_account_id == SKIP
|
|
153
|
+
@receiving_account_id = receiving_account_id unless receiving_account_id == SKIP
|
|
154
|
+
@payment_effective_date = payment_effective_date unless payment_effective_date == SKIP
|
|
155
|
+
@payment_type = payment_type unless payment_type == SKIP
|
|
156
|
+
@payment_method = payment_method unless payment_method == SKIP
|
|
157
|
+
@status = status unless status == SKIP
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
# Creates an instance of the object from a hash.
|
|
161
|
+
def self.from_hash(hash)
|
|
162
|
+
return nil unless hash
|
|
163
|
+
|
|
164
|
+
# Extract variables from the hash.
|
|
165
|
+
# Parameter is an array, so we need to iterate through it
|
|
166
|
+
contact_details = nil
|
|
167
|
+
unless hash['contact_details'].nil?
|
|
168
|
+
contact_details = []
|
|
169
|
+
hash['contact_details'].each do |structure|
|
|
170
|
+
contact_details << (ContactDetail.from_hash(structure) if structure)
|
|
171
|
+
end
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
contact_details = SKIP unless hash.key?('contact_details')
|
|
175
|
+
counterparty_id =
|
|
176
|
+
hash.key?('counterparty_id') ? hash['counterparty_id'] : SKIP
|
|
177
|
+
if hash['counterparty_billing_address']
|
|
178
|
+
counterparty_billing_address = CounterpartyBillingAddress.from_hash(hash['counterparty_billing_address'])
|
|
179
|
+
end
|
|
180
|
+
if hash['counterparty_shipping_address']
|
|
181
|
+
counterparty_shipping_address = CounterpartyShippingAddress.from_hash(hash['counterparty_shipping_address'])
|
|
182
|
+
end
|
|
183
|
+
currency = hash.key?('currency') ? hash['currency'] : SKIP
|
|
184
|
+
description = hash.key?('description') ? hash['description'] : SKIP
|
|
185
|
+
due_date = if hash.key?('due_date')
|
|
186
|
+
(DateTimeHelper.from_rfc3339(hash['due_date']) if hash['due_date'])
|
|
187
|
+
else
|
|
188
|
+
SKIP
|
|
189
|
+
end
|
|
190
|
+
invoicer_address = InvoicerAddress.from_hash(hash['invoicer_address']) if
|
|
191
|
+
hash['invoicer_address']
|
|
192
|
+
originating_account_id =
|
|
193
|
+
hash.key?('originating_account_id') ? hash['originating_account_id'] : SKIP
|
|
194
|
+
receiving_account_id =
|
|
195
|
+
hash.key?('receiving_account_id') ? hash['receiving_account_id'] : SKIP
|
|
196
|
+
payment_effective_date =
|
|
197
|
+
hash.key?('payment_effective_date') ? hash['payment_effective_date'] : SKIP
|
|
198
|
+
payment_type = hash.key?('payment_type') ? hash['payment_type'] : SKIP
|
|
199
|
+
payment_method =
|
|
200
|
+
hash.key?('payment_method') ? hash['payment_method'] : SKIP
|
|
201
|
+
status = hash.key?('status') ? hash['status'] : SKIP
|
|
202
|
+
|
|
203
|
+
# Create object from extracted values.
|
|
204
|
+
InvoiceUpdateRequest.new(contact_details,
|
|
205
|
+
counterparty_id,
|
|
206
|
+
counterparty_billing_address,
|
|
207
|
+
counterparty_shipping_address,
|
|
208
|
+
currency,
|
|
209
|
+
description,
|
|
210
|
+
due_date,
|
|
211
|
+
invoicer_address,
|
|
212
|
+
originating_account_id,
|
|
213
|
+
receiving_account_id,
|
|
214
|
+
payment_effective_date,
|
|
215
|
+
payment_type,
|
|
216
|
+
payment_method,
|
|
217
|
+
status)
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
def to_custom_due_date
|
|
221
|
+
DateTimeHelper.to_rfc3339(due_date)
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
# Provides a human-readable string representation of the object.
|
|
225
|
+
def to_s
|
|
226
|
+
class_name = self.class.name.split('::').last
|
|
227
|
+
"<#{class_name} contact_details: #{@contact_details}, counterparty_id: #{@counterparty_id},"\
|
|
228
|
+
" counterparty_billing_address: #{@counterparty_billing_address},"\
|
|
229
|
+
" counterparty_shipping_address: #{@counterparty_shipping_address}, currency: #{@currency},"\
|
|
230
|
+
" description: #{@description}, due_date: #{@due_date}, invoicer_address:"\
|
|
231
|
+
" #{@invoicer_address}, originating_account_id: #{@originating_account_id},"\
|
|
232
|
+
" receiving_account_id: #{@receiving_account_id}, payment_effective_date:"\
|
|
233
|
+
" #{@payment_effective_date}, payment_type: #{@payment_type}, payment_method:"\
|
|
234
|
+
" #{@payment_method}, status: #{@status}>"
|
|
235
|
+
end
|
|
236
|
+
|
|
237
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
238
|
+
def inspect
|
|
239
|
+
class_name = self.class.name.split('::').last
|
|
240
|
+
"<#{class_name} contact_details: #{@contact_details.inspect}, counterparty_id:"\
|
|
241
|
+
" #{@counterparty_id.inspect}, counterparty_billing_address:"\
|
|
242
|
+
" #{@counterparty_billing_address.inspect}, counterparty_shipping_address:"\
|
|
243
|
+
" #{@counterparty_shipping_address.inspect}, currency: #{@currency.inspect}, description:"\
|
|
244
|
+
" #{@description.inspect}, due_date: #{@due_date.inspect}, invoicer_address:"\
|
|
245
|
+
" #{@invoicer_address.inspect}, originating_account_id: #{@originating_account_id.inspect},"\
|
|
246
|
+
" receiving_account_id: #{@receiving_account_id.inspect}, payment_effective_date:"\
|
|
247
|
+
" #{@payment_effective_date.inspect}, payment_type: #{@payment_type.inspect},"\
|
|
248
|
+
" payment_method: #{@payment_method.inspect}, status: #{@status.inspect}>"
|
|
249
|
+
end
|
|
250
|
+
end
|
|
251
|
+
end
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# The invoice issuer's business address.
|
|
8
|
+
class InvoicerAddress < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# TODO: Write general description for this method
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_accessor :line1
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for this method
|
|
17
|
+
# @return [String]
|
|
18
|
+
attr_accessor :line2
|
|
19
|
+
|
|
20
|
+
# Locality or City.
|
|
21
|
+
# @return [String]
|
|
22
|
+
attr_accessor :locality
|
|
23
|
+
|
|
24
|
+
# Region or State.
|
|
25
|
+
# @return [String]
|
|
26
|
+
attr_accessor :region
|
|
27
|
+
|
|
28
|
+
# The postal code of the address.
|
|
29
|
+
# @return [String]
|
|
30
|
+
attr_accessor :postal_code
|
|
31
|
+
|
|
32
|
+
# Country code conforms to [ISO 3166-1 alpha-2]
|
|
33
|
+
# @return [String]
|
|
34
|
+
attr_accessor :country
|
|
35
|
+
|
|
36
|
+
# A mapping from model property names to API property names.
|
|
37
|
+
def self.names
|
|
38
|
+
@_hash = {} if @_hash.nil?
|
|
39
|
+
@_hash['line1'] = 'line1'
|
|
40
|
+
@_hash['line2'] = 'line2'
|
|
41
|
+
@_hash['locality'] = 'locality'
|
|
42
|
+
@_hash['region'] = 'region'
|
|
43
|
+
@_hash['postal_code'] = 'postal_code'
|
|
44
|
+
@_hash['country'] = 'country'
|
|
45
|
+
@_hash
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# An array for optional fields
|
|
49
|
+
def self.optionals
|
|
50
|
+
%w[
|
|
51
|
+
line2
|
|
52
|
+
]
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# An array for nullable fields
|
|
56
|
+
def self.nullables
|
|
57
|
+
[]
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def initialize(line1 = nil, locality = nil, region = nil, postal_code = nil,
|
|
61
|
+
country = nil, line2 = SKIP)
|
|
62
|
+
@line1 = line1
|
|
63
|
+
@line2 = line2 unless line2 == SKIP
|
|
64
|
+
@locality = locality
|
|
65
|
+
@region = region
|
|
66
|
+
@postal_code = postal_code
|
|
67
|
+
@country = country
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
# Creates an instance of the object from a hash.
|
|
71
|
+
def self.from_hash(hash)
|
|
72
|
+
return nil unless hash
|
|
73
|
+
|
|
74
|
+
# Extract variables from the hash.
|
|
75
|
+
line1 = hash.key?('line1') ? hash['line1'] : nil
|
|
76
|
+
locality = hash.key?('locality') ? hash['locality'] : nil
|
|
77
|
+
region = hash.key?('region') ? hash['region'] : nil
|
|
78
|
+
postal_code = hash.key?('postal_code') ? hash['postal_code'] : nil
|
|
79
|
+
country = hash.key?('country') ? hash['country'] : nil
|
|
80
|
+
line2 = hash.key?('line2') ? hash['line2'] : SKIP
|
|
81
|
+
|
|
82
|
+
# Create object from extracted values.
|
|
83
|
+
InvoicerAddress.new(line1,
|
|
84
|
+
locality,
|
|
85
|
+
region,
|
|
86
|
+
postal_code,
|
|
87
|
+
country,
|
|
88
|
+
line2)
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# Provides a human-readable string representation of the object.
|
|
92
|
+
def to_s
|
|
93
|
+
class_name = self.class.name.split('::').last
|
|
94
|
+
"<#{class_name} line1: #{@line1}, line2: #{@line2}, locality: #{@locality}, region:"\
|
|
95
|
+
" #{@region}, postal_code: #{@postal_code}, country: #{@country}>"
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
99
|
+
def inspect
|
|
100
|
+
class_name = self.class.name.split('::').last
|
|
101
|
+
"<#{class_name} line1: #{@line1.inspect}, line2: #{@line2.inspect}, locality:"\
|
|
102
|
+
" #{@locality.inspect}, region: #{@region.inspect}, postal_code: #{@postal_code.inspect},"\
|
|
103
|
+
" country: #{@country.inspect}>"
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# itemizable_type1.
|
|
8
|
+
class ItemizableType1Enum
|
|
9
|
+
ITEMIZABLE_TYPE1_ENUM = [
|
|
10
|
+
# TODO: Write general description for EXPECTED_PAYMENTS
|
|
11
|
+
EXPECTED_PAYMENTS = 'expected_payments'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for PAYMENT_ORDERS
|
|
14
|
+
PAYMENT_ORDERS = 'payment_orders'.freeze
|
|
15
|
+
].freeze
|
|
16
|
+
|
|
17
|
+
def self.validate(value)
|
|
18
|
+
return false if value.nil?
|
|
19
|
+
|
|
20
|
+
ITEMIZABLE_TYPE1_ENUM.include?(value)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def self.from_value(value, default_value = EXPECTED_PAYMENTS)
|
|
24
|
+
return default_value if value.nil?
|
|
25
|
+
|
|
26
|
+
str = value.to_s.strip
|
|
27
|
+
|
|
28
|
+
case str.downcase
|
|
29
|
+
when 'expected_payments' then EXPECTED_PAYMENTS
|
|
30
|
+
when 'payment_orders' then PAYMENT_ORDERS
|
|
31
|
+
else
|
|
32
|
+
default_value
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
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 `payment_orders` or `expected_payments`.
|
|
8
|
+
class ItemizableTypeEnum
|
|
9
|
+
ITEMIZABLE_TYPE_ENUM = [
|
|
10
|
+
# TODO: Write general description for EXPECTEDPAYMENT
|
|
11
|
+
EXPECTEDPAYMENT = 'ExpectedPayment'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for PAYMENTORDER
|
|
14
|
+
PAYMENTORDER = 'PaymentOrder'.freeze
|
|
15
|
+
].freeze
|
|
16
|
+
|
|
17
|
+
def self.validate(value)
|
|
18
|
+
return false if value.nil?
|
|
19
|
+
|
|
20
|
+
ITEMIZABLE_TYPE_ENUM.include?(value)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def self.from_value(value, default_value = EXPECTEDPAYMENT)
|
|
24
|
+
return default_value if value.nil?
|
|
25
|
+
|
|
26
|
+
str = value.to_s.strip
|
|
27
|
+
|
|
28
|
+
case str.downcase
|
|
29
|
+
when 'expectedpayment' then EXPECTEDPAYMENT
|
|
30
|
+
when 'paymentorder' then PAYMENTORDER
|
|
31
|
+
else
|
|
32
|
+
default_value
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,158 @@
|
|
|
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
|
+
# Ledger Model.
|
|
9
|
+
class Ledger < 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
|
+
# The name of the ledger.
|
|
42
|
+
# @return [String]
|
|
43
|
+
attr_accessor :name
|
|
44
|
+
|
|
45
|
+
# An optional free-form description for internal use.
|
|
46
|
+
# @return [String]
|
|
47
|
+
attr_accessor :description
|
|
48
|
+
|
|
49
|
+
# Additional data represented as key-value pairs. Both the key and value
|
|
50
|
+
# must be strings.
|
|
51
|
+
# @return [Hash[String, String]]
|
|
52
|
+
attr_accessor :metadata
|
|
53
|
+
|
|
54
|
+
# A mapping from model property names to API property names.
|
|
55
|
+
def self.names
|
|
56
|
+
@_hash = {} if @_hash.nil?
|
|
57
|
+
@_hash['id'] = 'id'
|
|
58
|
+
@_hash['object'] = 'object'
|
|
59
|
+
@_hash['live_mode'] = 'live_mode'
|
|
60
|
+
@_hash['created_at'] = 'created_at'
|
|
61
|
+
@_hash['updated_at'] = 'updated_at'
|
|
62
|
+
@_hash['discarded_at'] = 'discarded_at'
|
|
63
|
+
@_hash['name'] = 'name'
|
|
64
|
+
@_hash['description'] = 'description'
|
|
65
|
+
@_hash['metadata'] = 'metadata'
|
|
66
|
+
@_hash
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# An array for optional fields
|
|
70
|
+
def self.optionals
|
|
71
|
+
[]
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# An array for nullable fields
|
|
75
|
+
def self.nullables
|
|
76
|
+
%w[
|
|
77
|
+
discarded_at
|
|
78
|
+
description
|
|
79
|
+
]
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
|
|
83
|
+
updated_at = nil, discarded_at = nil, name = nil,
|
|
84
|
+
description = nil, metadata = nil)
|
|
85
|
+
@id = id
|
|
86
|
+
@object = object
|
|
87
|
+
@live_mode = live_mode
|
|
88
|
+
@created_at = created_at
|
|
89
|
+
@updated_at = updated_at
|
|
90
|
+
@discarded_at = discarded_at
|
|
91
|
+
@name = name
|
|
92
|
+
@description = description
|
|
93
|
+
@metadata = metadata
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# Creates an instance of the object from a hash.
|
|
97
|
+
def self.from_hash(hash)
|
|
98
|
+
return nil unless hash
|
|
99
|
+
|
|
100
|
+
# Extract variables from the hash.
|
|
101
|
+
id = hash.key?('id') ? hash['id'] : nil
|
|
102
|
+
object = hash.key?('object') ? hash['object'] : nil
|
|
103
|
+
live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
|
|
104
|
+
created_at = if hash.key?('created_at')
|
|
105
|
+
(DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
|
|
106
|
+
end
|
|
107
|
+
updated_at = if hash.key?('updated_at')
|
|
108
|
+
(DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
|
|
109
|
+
end
|
|
110
|
+
discarded_at = if hash.key?('discarded_at')
|
|
111
|
+
(DateTimeHelper.from_rfc3339(hash['discarded_at']) if hash['discarded_at'])
|
|
112
|
+
end
|
|
113
|
+
name = hash.key?('name') ? hash['name'] : nil
|
|
114
|
+
description = hash.key?('description') ? hash['description'] : nil
|
|
115
|
+
metadata = hash.key?('metadata') ? hash['metadata'] : nil
|
|
116
|
+
|
|
117
|
+
# Create object from extracted values.
|
|
118
|
+
Ledger.new(id,
|
|
119
|
+
object,
|
|
120
|
+
live_mode,
|
|
121
|
+
created_at,
|
|
122
|
+
updated_at,
|
|
123
|
+
discarded_at,
|
|
124
|
+
name,
|
|
125
|
+
description,
|
|
126
|
+
metadata)
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
def to_custom_created_at
|
|
130
|
+
DateTimeHelper.to_rfc3339(created_at)
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
def to_custom_updated_at
|
|
134
|
+
DateTimeHelper.to_rfc3339(updated_at)
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
def to_custom_discarded_at
|
|
138
|
+
DateTimeHelper.to_rfc3339(discarded_at)
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
# Provides a human-readable string representation of the object.
|
|
142
|
+
def to_s
|
|
143
|
+
class_name = self.class.name.split('::').last
|
|
144
|
+
"<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
|
|
145
|
+
" #{@created_at}, updated_at: #{@updated_at}, discarded_at: #{@discarded_at}, name:"\
|
|
146
|
+
" #{@name}, description: #{@description}, metadata: #{@metadata}>"
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
150
|
+
def inspect
|
|
151
|
+
class_name = self.class.name.split('::').last
|
|
152
|
+
"<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
|
|
153
|
+
" #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
|
|
154
|
+
" #{@updated_at.inspect}, discarded_at: #{@discarded_at.inspect}, name: #{@name.inspect},"\
|
|
155
|
+
" description: #{@description.inspect}, metadata: #{@metadata.inspect}>"
|
|
156
|
+
end
|
|
157
|
+
end
|
|
158
|
+
end
|