Class: ModernTreasury::Models::PaymentOrderCreateParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/modern_treasury/models/payment_order_create_params.rb

Overview

Defined Under Namespace

Modules: ChargeBearer, Direction, FallbackType, ForeignExchangeIndicator, Priority, ReconciliationStatus Classes: Accounting, Document, LineItem, ReceivingAccount

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(amount: , accounting_category_id: nil, description: nil, metadata: nil) ⇒ Object

Some parameter documentations has been truncated, see LineItem for more details.

Parameters:

  • amount (Integer) (defaults to: )

    Value in specified currency’s smallest unit. e.g. $10 would be represented as 10

  • accounting_category_id (String, nil) (defaults to: nil)

    The ID of one of your accounting categories. Note that these will only be access

  • description (String, nil) (defaults to: nil)

    A free-form description of the line item.

  • metadata (Hash{Symbol=>String}) (defaults to: nil)

    Additional data represented as key-value pairs. Both the key and value must be s



# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 294


Instance Attribute Details

#accountingModernTreasury::Models::PaymentOrderCreateParams::Accounting?

Deprecated.


44
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 44

optional :accounting, -> { ModernTreasury::PaymentOrderCreateParams::Accounting }

#accounting_category_idString?

Deprecated.

The ID of one of your accounting categories. Note that these will only be accessible if your accounting system has been connected.

Returns:

  • (String, nil)


53
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 53

optional :accounting_category_id, String, nil?: true

#accounting_ledger_class_idString?

Deprecated.

The ID of one of your accounting ledger classes. Note that these will only be accessible if your accounting system has been connected.

Returns:

  • (String, nil)


62
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 62

optional :accounting_ledger_class_id, String, nil?: true

#amountInteger

Value in specified currency’s smallest unit. e.g. $10 would be represented as 1000 (cents). For RTP, the maximum amount allowed by the network is $100,000.

Returns:

  • (Integer)


15
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 15

required :amount, Integer

#charge_bearerSymbol, ...

The party that will pay the fees for the payment order. See docs.moderntreasury.com/payments/docs/charge-bearer to understand the differences between the options.



70
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 70

optional :charge_bearer, enum: -> { ModernTreasury::PaymentOrderCreateParams::ChargeBearer }, nil?: true

#currencySymbol, ...

Defaults to the currency of the originating account.

Returns:



76
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 76

optional :currency, enum: -> { ModernTreasury::Currency }

#descriptionString?

An optional description for internal use.

Returns:

  • (String, nil)


82
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 82

optional :description, String, nil?: true

#directionSymbol, ModernTreasury::Models::PaymentOrderCreateParams::Direction

One of ‘credit`, `debit`. Describes the direction money is flowing in the transaction. A `credit` moves money from your account to someone else’s. A ‘debit` pulls money from someone else’s account to your own. Note that wire, rtp, and check payments will always be ‘credit`.



24
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 24

required :direction, enum: -> { ModernTreasury::PaymentOrderCreateParams::Direction }

#documentsArray<ModernTreasury::Models::PaymentOrderCreateParams::Document>?

An array of documents to be attached to the payment order. Note that if you attach documents, the request’s content type must be ‘multipart/form-data`.



89
90
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 89

optional :documents,
-> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::PaymentOrderCreateParams::Document] }

#effective_dateDate?

Date transactions are to be posted to the participants’ account. Defaults to the current business day or the next business day if the current day is a bank holiday or weekend. Format: yyyy-mm-dd.

Returns:

  • (Date, nil)


98
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 98

optional :effective_date, Date

#expires_atTime?

RFP payments require an expires_at. This value must be past the effective_date.

Returns:

  • (Time, nil)


104
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 104

optional :expires_at, Time, nil?: true

#fallback_typeSymbol, ...

A payment type to fallback to if the original type is not valid for the receiving account. Currently, this only supports falling back from RTP to ACH (type=rtp and fallback_type=ach)



112
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 112

optional :fallback_type, enum: -> { ModernTreasury::PaymentOrderCreateParams::FallbackType }

#foreign_exchange_contractString?

If present, indicates a specific foreign exchange contract number that has been generated by your financial institution.

Returns:

  • (String, nil)


119
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 119

optional :foreign_exchange_contract, String, nil?: true

#foreign_exchange_indicatorSymbol, ...

Indicates the type of FX transfer to initiate, can be either ‘variable_to_fixed`, `fixed_to_variable`, or `null` if the payment order currency matches the originating account currency.



127
128
129
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 127

optional :foreign_exchange_indicator,
enum: -> { ModernTreasury::PaymentOrderCreateParams::ForeignExchangeIndicator },
nil?: true

#ledger_transactionModernTreasury::Models::LedgerTransactionCreateRequest?

Specifies a ledger transaction object that will be created with the payment order. If the ledger transaction cannot be created, then the payment order creation will fail. The resulting ledger transaction will mirror the status of the payment order.



138
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 138

optional :ledger_transaction, -> { ModernTreasury::LedgerTransactionCreateRequest }

#ledger_transaction_idString?

Either ledger_transaction or ledger_transaction_id can be provided. Only a pending ledger transaction can be attached upon payment order creation. Once the payment order is created, the status of the ledger transaction tracks the payment order automatically.

Returns:

  • (String, nil)


147
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 147

optional :ledger_transaction_id, String

#line_itemsArray<ModernTreasury::Models::PaymentOrderCreateParams::LineItem>?

An array of line items that must sum up to the amount of the payment order.



153
154
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 153

optional :line_items,
-> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::PaymentOrderCreateParams::LineItem] }

#metadataHash{Symbol=>String}?

Additional data represented as key-value pairs. Both the key and value must be strings.

Returns:

  • (Hash{Symbol=>String}, nil)


161
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 161

optional :metadata, ModernTreasury::Internal::Type::HashOf[String]

#nsf_protectedBoolean?

A boolean to determine if NSF Protection is enabled for this payment order. Note that this setting must also be turned on in your organization settings page.

Returns:

  • (Boolean, nil)


168
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 168

optional :nsf_protected, ModernTreasury::Internal::Type::Boolean

#originating_account_idString

The ID of one of your organization’s internal accounts.

Returns:

  • (String)


30
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 30

required :originating_account_id, String

#originating_party_nameString?

If present, this will replace your default company name on receiver’s bank statement. This field can only be used for ACH payments currently. For ACH, only the first 16 characters of this string will be used. Any additional characters will be truncated.

Returns:

  • (String, nil)


177
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 177

optional :originating_party_name, String, nil?: true

#prioritySymbol, ...

Either ‘normal` or `high`. For ACH and EFT payments, `high` represents a same-day ACH or EFT transfer, respectively. For check payments, `high` can mean an overnight check rather than standard mail.



185
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 185

optional :priority, enum: -> { ModernTreasury::PaymentOrderCreateParams::Priority }

#process_afterTime?

If present, Modern Treasury will not process the payment until after this time. If ‘process_after` is past the cutoff for `effective_date`, `process_after` will take precedence and `effective_date` will automatically update to reflect the earliest possible sending date after `process_after`. Format is ISO8601 timestamp.

Returns:

  • (Time, nil)


195
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 195

optional :process_after, Time, nil?: true

#purposeString?

For ‘wire`, this is usually the purpose which is transmitted via the “InstrForDbtrAgt” field in the ISO20022 file. For `eft`, this field is the 3 digit CPA Code that will be attached to the payment.

Returns:

  • (String, nil)


203
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 203

optional :purpose, String, nil?: true

#receiving_accountModernTreasury::Models::PaymentOrderCreateParams::ReceivingAccount?

Either ‘receiving_account` or `receiving_account_id` must be present. When using `receiving_account_id`, you may pass the id of an external account or an internal account.



211
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 211

optional :receiving_account, -> { ModernTreasury::PaymentOrderCreateParams::ReceivingAccount }

#receiving_account_idString?

Either ‘receiving_account` or `receiving_account_id` must be present. When using `receiving_account_id`, you may pass the id of an external account or an internal account.

Returns:

  • (String, nil)


219
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 219

optional :receiving_account_id, String

#reconciliation_statusSymbol, ...

One of ‘unreconciled`, `tentatively_reconciled` or `reconciled`.



225
226
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 225

optional :reconciliation_status,
enum: -> { ModernTreasury::PaymentOrderCreateParams::ReconciliationStatus }

#remittance_informationString?

For ‘ach`, this field will be passed through on an addenda record. For `wire` payments the field will be passed through as the “Originator to Beneficiary Information”, also known as OBI or Fedwire tag 6000.

Returns:

  • (String, nil)


234
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 234

optional :remittance_information, String, nil?: true

#send_remittance_adviceBoolean?

Send an email to the counterparty when the payment order is sent to the bank. If ‘null`, `send_remittance_advice` on the Counterparty is used.

Returns:

  • (Boolean, nil)


241
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 241

optional :send_remittance_advice, ModernTreasury::Internal::Type::Boolean, nil?: true

#statement_descriptorString?

An optional descriptor which will appear in the receiver’s statement. For ‘check` payments this field will be used as the memo line. For `ach` the maximum length is 10 characters. Note that for ACH payments, the name on your bank account will be included automatically by the bank, so you can use the characters for other useful information. For `eft` the maximum length is 15 characters.

Returns:

  • (String, nil)


252
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 252

optional :statement_descriptor, String, nil?: true

#subtypeSymbol, ...

An additional layer of classification for the type of payment order you are doing. This field is only used for ‘ach` payment orders currently. For `ach` payment orders, the `subtype` represents the SEC code. We currently support `CCD`, `PPD`, `IAT`, `CTX`, `WEB`, `CIE`, and `TEL`.



261
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 261

optional :subtype, enum: -> { ModernTreasury::PaymentOrderSubtype }, nil?: true

#transaction_monitoring_enabledBoolean?

A flag that determines whether a payment order should go through transaction monitoring.

Returns:

  • (Boolean, nil)


268
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 268

optional :transaction_monitoring_enabled, ModernTreasury::Internal::Type::Boolean

#typeSymbol, ModernTreasury::Models::PaymentOrderType

One of ‘ach`, `se_bankgirot`, `eft`, `wire`, `check`, `sen`, `book`, `rtp`, `sepa`, `bacs`, `au_becs`, `interac`, `neft`, `nics`, `nz_national_clearing_code`, `sic`, `signet`, `provexchange`, `zengin`.



38
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 38

required :type, enum: -> { ModernTreasury::PaymentOrderType }

#ultimate_originating_party_identifierString?

Identifier of the ultimate originator of the payment order.

Returns:

  • (String, nil)


274
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 274

optional :ultimate_originating_party_identifier, String, nil?: true

#ultimate_originating_party_nameString?

Name of the ultimate originator of the payment order.

Returns:

  • (String, nil)


280
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 280

optional :ultimate_originating_party_name, String, nil?: true

#ultimate_receiving_party_identifierString?

Identifier of the ultimate funds recipient.

Returns:

  • (String, nil)


286
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 286

optional :ultimate_receiving_party_identifier, String, nil?: true

#ultimate_receiving_party_nameString?

Name of the ultimate funds recipient.

Returns:

  • (String, nil)


292
# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 292

optional :ultimate_receiving_party_name, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/modern_treasury/models/payment_order_create_params.rb', line 384