Class: Increase::Models::ACHTransferCreateParams::Addenda

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/increase/models/ach_transfer_create_params.rb,
sig/increase/models/ach_transfer_create_params.rbs

Defined Under Namespace

Modules: Category Classes: Freeform, PaymentOrderRemittanceAdvice

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

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(payment_related_information:) ⇒ Object

Parameters:

  • payment_related_information (String)

    The payment related information passed in the addendum.



249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
# File 'lib/increase/models/ach_transfer_create_params.rb', line 249

class Addenda < Increase::Internal::Type::BaseModel
  # @!attribute category
  #   The type of addenda to pass with the transfer.
  #
  #   @return [Symbol, Increase::Models::ACHTransferCreateParams::Addenda::Category]
  required :category, enum: -> { Increase::ACHTransferCreateParams::Addenda::Category }

  # @!attribute freeform
  #   Unstructured `payment_related_information` passed through with the transfer.
  #   Required if and only if `category` is `freeform`.
  #
  #   @return [Increase::Models::ACHTransferCreateParams::Addenda::Freeform, nil]
  optional :freeform, -> { Increase::ACHTransferCreateParams::Addenda::Freeform }

  # @!attribute payment_order_remittance_advice
  #   Structured ASC X12 820 remittance advice records. Please reach out to
  #   [support@increase.com](mailto:support@increase.com) for more information.
  #   Required if and only if `category` is `payment_order_remittance_advice`.
  #
  #   @return [Increase::Models::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice, nil]
  optional :payment_order_remittance_advice,
           -> { Increase::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice }

  # @!method initialize(category:, freeform: nil, payment_order_remittance_advice: nil)
  #   Additional information passed through to the receiving bank with the transfer.
  #   Most ACH transfers do not need this. Only set this if your recipient has asked
  #   for addendum data, typically unstructured remittance information. Corporate
  #   Trade Exchange (CTX) flows can carry structured X12 remittance advice instead.
  #
  #   @param category [Symbol, Increase::Models::ACHTransferCreateParams::Addenda::Category]
  #     The type of addenda to pass with the transfer.
  #
  #   @param freeform [Increase::Models::ACHTransferCreateParams::Addenda::Freeform]
  #     Unstructured `payment_related_information` passed through with the transfer.
  #     Required if and only if `category` is `freeform`.
  #
  #   @param payment_order_remittance_advice [Increase::Models::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice]
  #     Structured ASC X12 820 remittance advice records. Please reach out to
  #     [support@increase.com](mailto:support@increase.com) for more information.
  #     Required if and only if `category` is `payment_order_remittance_advice`.

  # The type of addenda to pass with the transfer.
  #
  # @see Increase::Models::ACHTransferCreateParams::Addenda#category
  module Category
    extend Increase::Internal::Type::Enum

    # Unstructured `payment_related_information` passed through with the transfer.
    FREEFORM = :freeform

    # Structured ASC X12 820 remittance advice records. Please reach out to [support@increase.com](mailto:support@increase.com) for more information.
    PAYMENT_ORDER_REMITTANCE_ADVICE = :payment_order_remittance_advice

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # @see Increase::Models::ACHTransferCreateParams::Addenda#freeform
  class Freeform < Increase::Internal::Type::BaseModel
    # @!attribute entries
    #   Each entry represents an addendum sent with the transfer. Sending more than one
    #   addendum is only supported for transfers with `standard_entry_class_code` of
    #   `corporate_trade_exchange` (CTX).
    #
    #   @return [Array<Increase::Models::ACHTransferCreateParams::Addenda::Freeform::Entry>]
    required :entries,
             -> { Increase::Internal::Type::ArrayOf[Increase::ACHTransferCreateParams::Addenda::Freeform::Entry] }

    # @!method initialize(entries:)
    #   Unstructured `payment_related_information` passed through with the transfer.
    #   Required if and only if `category` is `freeform`.
    #
    #   @param entries [Array<Increase::Models::ACHTransferCreateParams::Addenda::Freeform::Entry>]
    #     Each entry represents an addendum sent with the transfer. Sending more than one
    #     addendum is only supported for transfers with `standard_entry_class_code` of
    #     `corporate_trade_exchange` (CTX).

    class Entry < Increase::Internal::Type::BaseModel
      # @!attribute payment_related_information
      #   The payment related information passed in the addendum.
      #
      #   @return [String]
      required :payment_related_information, String

      # @!method initialize(payment_related_information:)
      #   @param payment_related_information [String] The payment related information passed in the addendum.
    end
  end

  # @see Increase::Models::ACHTransferCreateParams::Addenda#payment_order_remittance_advice
  class PaymentOrderRemittanceAdvice < Increase::Internal::Type::BaseModel
    # @!attribute invoices
    #   ASC X12 RMR records for this specific transfer.
    #
    #   @return [Array<Increase::Models::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice::Invoice>]
    required :invoices,
             -> { Increase::Internal::Type::ArrayOf[Increase::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice::Invoice] }

    # @!method initialize(invoices:)
    #   Structured ASC X12 820 remittance advice records. Please reach out to
    #   [support@increase.com](mailto:support@increase.com) for more information.
    #   Required if and only if `category` is `payment_order_remittance_advice`.
    #
    #   @param invoices [Array<Increase::Models::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice::Invoice>]
    #     ASC X12 RMR records for this specific transfer.

    class Invoice < Increase::Internal::Type::BaseModel
      # @!attribute invoice_number
      #   The invoice number for this reference, determined in advance with the receiver.
      #
      #   @return [String]
      required :invoice_number, String

      # @!attribute paid_amount
      #   The amount that was paid for this invoice in the minor unit of its currency. For
      #   dollars, for example, this is cents.
      #
      #   @return [Integer]
      required :paid_amount, Integer

      # @!method initialize(invoice_number:, paid_amount:)
      #   @param invoice_number [String]
      #     The invoice number for this reference, determined in advance with the receiver.
      #
      #   @param paid_amount [Integer]
      #     The amount that was paid for this invoice in the minor unit of its currency. For
      #     dollars, for example, this is cents.
    end
  end
end

Instance Attribute Details

#categorySymbol, Increase::Models::ACHTransferCreateParams::Addenda::Category

The type of addenda to pass with the transfer.

Parameters:

  • value (Increase::Models::ACHTransferCreateParams::Addenda::category)

Returns:



254
# File 'lib/increase/models/ach_transfer_create_params.rb', line 254

required :category, enum: -> { Increase::ACHTransferCreateParams::Addenda::Category }

#freeformIncrease::Models::ACHTransferCreateParams::Addenda::Freeform?

Unstructured payment_related_information passed through with the transfer. Required if and only if category is freeform.



261
# File 'lib/increase/models/ach_transfer_create_params.rb', line 261

optional :freeform, -> { Increase::ACHTransferCreateParams::Addenda::Freeform }

#payment_order_remittance_adviceIncrease::Models::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice?

Structured ASC X12 820 remittance advice records. Please reach out to support@increase.com for more information. Required if and only if category is payment_order_remittance_advice.



269
270
# File 'lib/increase/models/ach_transfer_create_params.rb', line 269

optional :payment_order_remittance_advice,
-> { Increase::ACHTransferCreateParams::Addenda::PaymentOrderRemittanceAdvice }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/increase/models/ach_transfer_create_params.rb', line 302

Instance Method Details

#to_hash{

Returns:

  • ({)


187
# File 'sig/increase/models/ach_transfer_create_params.rbs', line 187

def to_hash: -> {