Class: ThePlaidApi::PaymentInitiationConsentPayerNumbers

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb

Overview

The counterparty’s bank account numbers. Exactly one of IBAN or BACS data is required.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(bacs: SKIP, iban: SKIP, additional_properties: nil) ⇒ PaymentInitiationConsentPayerNumbers

Returns a new instance of PaymentInitiationConsentPayerNumbers.



47
48
49
50
51
52
53
54
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 47

def initialize(bacs: SKIP, iban: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @bacs = bacs unless bacs == SKIP
  @iban = iban unless iban == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#bacsPaymentInitiationOptionalRestrictionBacs

An optional object used to restrict the accounts used for payments. If provided, the end user will be able to send payments only from the specified bank account.



17
18
19
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 17

def bacs
  @bacs
end

#ibanString

International Bank Account Number (IBAN).

Returns:

  • (String)


21
22
23
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 21

def iban
  @iban
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 57

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  bacs = PaymentInitiationOptionalRestrictionBacs.from_hash(hash['bacs']) if hash['bacs']
  iban = hash.key?('iban') ? hash['iban'] : SKIP

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  PaymentInitiationConsentPayerNumbers.new(bacs: bacs,
                                           iban: iban,
                                           additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



24
25
26
27
28
29
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 24

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['bacs'] = 'bacs'
  @_hash['iban'] = 'iban'
  @_hash
end

.nullablesObject

An array for nullable fields



40
41
42
43
44
45
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 40

def self.nullables
  %w[
    bacs
    iban
  ]
end

.optionalsObject

An array for optional fields



32
33
34
35
36
37
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 32

def self.optionals
  %w[
    bacs
    iban
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



85
86
87
88
89
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 85

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} bacs: #{@bacs.inspect}, iban: #{@iban.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



78
79
80
81
82
# File 'lib/the_plaid_api/models/payment_initiation_consent_payer_numbers.rb', line 78

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} bacs: #{@bacs}, iban: #{@iban}, additional_properties:"\
  " #{@additional_properties}>"
end