Class: ThePlaidApi::PaymentInitiationOptionalRestrictionBacs

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

Overview

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.

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(account: SKIP, sort_code: SKIP, additional_properties: nil) ⇒ PaymentInitiationOptionalRestrictionBacs

Returns a new instance of PaymentInitiationOptionalRestrictionBacs.



43
44
45
46
47
48
49
50
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 43

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

  @account =  unless  == SKIP
  @sort_code = sort_code unless sort_code == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#accountString

The account number of the account. Maximum of 10 characters.

Returns:

  • (String)


16
17
18
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 16

def 
  @account
end

#sort_codeString

The 6-character sort code of the account.

Returns:

  • (String)


20
21
22
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 20

def sort_code
  @sort_code
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 53

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
   = hash.key?('account') ? hash['account'] : SKIP
  sort_code = hash.key?('sort_code') ? hash['sort_code'] : 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.
  PaymentInitiationOptionalRestrictionBacs.new(account: ,
                                               sort_code: sort_code,
                                               additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



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

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

.nullablesObject

An array for nullable fields



39
40
41
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 39

def self.nullables
  []
end

.optionalsObject

An array for optional fields



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

def self.optionals
  %w[
    account
    sort_code
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



81
82
83
84
85
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 81

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

#to_sObject

Provides a human-readable string representation of the object.



74
75
76
77
78
# File 'lib/the_plaid_api/models/payment_initiation_optional_restriction_bacs.rb', line 74

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