Class: ThePlaidApi::CashflowReportPaymentMeta

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

Overview

Transaction information specific to inter-bank transfers. If the transaction was not an inter-bank transfer, all fields will be ‘null`.

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(reference_number:, ppd_id:, payee:, by_order_of:, payer:, payment_method:, payment_processor:, reason:, additional_properties: nil) ⇒ CashflowReportPaymentMeta

Returns a new instance of CashflowReportPaymentMeta.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 79

def initialize(reference_number:, ppd_id:, payee:, by_order_of:, payer:,
               payment_method:, payment_processor:, reason:,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @reference_number = reference_number
  @ppd_id = ppd_id
  @payee = payee
  @by_order_of = by_order_of
  @payer = payer
  @payment_method = payment_method
  @payment_processor = payment_processor
  @reason = reason
  @additional_properties = additional_properties
end

Instance Attribute Details

#by_order_ofString

The party initiating a wire transfer. Will be ‘null` if the transaction is not a wire transfer.

Returns:

  • (String)


28
29
30
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 28

def by_order_of
  @by_order_of
end

#payeeString

For transfers, the party that is receiving the transaction.

Returns:

  • (String)


23
24
25
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 23

def payee
  @payee
end

#payerString

For transfers, the party that is paying the transaction.

Returns:

  • (String)


32
33
34
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 32

def payer
  @payer
end

#payment_methodString

The type of transfer, e.g. ‘ACH’

Returns:

  • (String)


36
37
38
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 36

def payment_method
  @payment_method
end

#payment_processorString

The name of the payment processor

Returns:

  • (String)


40
41
42
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 40

def payment_processor
  @payment_processor
end

#ppd_idString

The ACH PPD ID for the payer.

Returns:

  • (String)


19
20
21
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 19

def ppd_id
  @ppd_id
end

#reasonString

The payer-supplied description of the transfer.

Returns:

  • (String)


44
45
46
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 44

def reason
  @reason
end

#reference_numberString

The transaction reference number supplied by the financial institution.

Returns:

  • (String)


15
16
17
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 15

def reference_number
  @reference_number
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 97

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  reference_number =
    hash.key?('reference_number') ? hash['reference_number'] : nil
  ppd_id = hash.key?('ppd_id') ? hash['ppd_id'] : nil
  payee = hash.key?('payee') ? hash['payee'] : nil
  by_order_of = hash.key?('by_order_of') ? hash['by_order_of'] : nil
  payer = hash.key?('payer') ? hash['payer'] : nil
  payment_method =
    hash.key?('payment_method') ? hash['payment_method'] : nil
  payment_processor =
    hash.key?('payment_processor') ? hash['payment_processor'] : nil
  reason = hash.key?('reason') ? hash['reason'] : nil

  # 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.
  CashflowReportPaymentMeta.new(reference_number: reference_number,
                                ppd_id: ppd_id,
                                payee: payee,
                                by_order_of: by_order_of,
                                payer: payer,
                                payment_method: payment_method,
                                payment_processor: payment_processor,
                                reason: reason,
                                additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 47

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['reference_number'] = 'reference_number'
  @_hash['ppd_id'] = 'ppd_id'
  @_hash['payee'] = 'payee'
  @_hash['by_order_of'] = 'by_order_of'
  @_hash['payer'] = 'payer'
  @_hash['payment_method'] = 'payment_method'
  @_hash['payment_processor'] = 'payment_processor'
  @_hash['reason'] = 'reason'
  @_hash
end

.nullablesObject

An array for nullable fields



66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 66

def self.nullables
  %w[
    reference_number
    ppd_id
    payee
    by_order_of
    payer
    payment_method
    payment_processor
    reason
  ]
end

.optionalsObject

An array for optional fields



61
62
63
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 61

def self.optionals
  []
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



142
143
144
145
146
147
148
149
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 142

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} reference_number: #{@reference_number.inspect}, ppd_id: #{@ppd_id.inspect},"\
  " payee: #{@payee.inspect}, by_order_of: #{@by_order_of.inspect}, payer: #{@payer.inspect},"\
  " payment_method: #{@payment_method.inspect}, payment_processor:"\
  " #{@payment_processor.inspect}, reason: #{@reason.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



133
134
135
136
137
138
139
# File 'lib/the_plaid_api/models/cashflow_report_payment_meta.rb', line 133

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} reference_number: #{@reference_number}, ppd_id: #{@ppd_id}, payee:"\
  " #{@payee}, by_order_of: #{@by_order_of}, payer: #{@payer}, payment_method:"\
  " #{@payment_method}, payment_processor: #{@payment_processor}, reason: #{@reason},"\
  " additional_properties: #{@additional_properties}>"
end