Class: ThePlaidApi::Products

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

Overview

A list of products that an institution can support. All Items must be initialized with at least one product. The Balance product is always available and does not need to be specified during initialization.

Constant Summary collapse

PRODUCTS =
[
  # TODO: Write general description for ASSETS
  ASSETS = 'assets'.freeze,

  # TODO: Write general description for AUTH
  AUTH = 'auth'.freeze,

  # TODO: Write general description for BALANCE
  BALANCE = 'balance'.freeze,

  # TODO: Write general description for BALANCE_PLUS
  BALANCE_PLUS = 'balance_plus'.freeze,

  # TODO: Write general description for BEACON
  BEACON = 'beacon'.freeze,

  # TODO: Write general description for IDENTITY
  IDENTITY = 'identity'.freeze,

  # TODO: Write general description for IDENTITY_MATCH
  IDENTITY_MATCH = 'identity_match'.freeze,

  # TODO: Write general description for INVESTMENTS
  INVESTMENTS = 'investments'.freeze,

  # TODO: Write general description for INVESTMENTS_AUTH
  INVESTMENTS_AUTH = 'investments_auth'.freeze,

  # TODO: Write general description for LIABILITIES
  LIABILITIES = 'liabilities'.freeze,

  # TODO: Write general description for PAYMENT_INITIATION
  PAYMENT_INITIATION = 'payment_initiation'.freeze,

  # TODO: Write general description for IDENTITY_VERIFICATION
  IDENTITY_VERIFICATION = 'identity_verification'.freeze,

  # TODO: Write general description for TRANSACTIONS
  TRANSACTIONS = 'transactions'.freeze,

  # TODO: Write general description for CREDIT_DETAILS
  CREDIT_DETAILS = 'credit_details'.freeze,

  # TODO: Write general description for INCOME
  INCOME = 'income'.freeze,

  # TODO: Write general description for INCOME_VERIFICATION
  INCOME_VERIFICATION = 'income_verification'.freeze,

  # TODO: Write general description for STANDING_ORDERS
  STANDING_ORDERS = 'standing_orders'.freeze,

  # TODO: Write general description for TRANSFER
  TRANSFER = 'transfer'.freeze,

  # TODO: Write general description for EMPLOYMENT
  EMPLOYMENT = 'employment'.freeze,

  # TODO: Write general description for RECURRING_TRANSACTIONS
  RECURRING_TRANSACTIONS = 'recurring_transactions'.freeze,

  # TODO: Write general description for TRANSACTIONS_REFRESH
  TRANSACTIONS_REFRESH = 'transactions_refresh'.freeze,

  # TODO: Write general description for SIGNAL
  SIGNAL = 'signal'.freeze,

  # TODO: Write general description for STATEMENTS
  STATEMENTS = 'statements'.freeze,

  # TODO: Write general description for PROCESSOR_PAYMENTS
  PROCESSOR_PAYMENTS = 'processor_payments'.freeze,

  # TODO: Write general description for PROCESSOR_IDENTITY
  PROCESSOR_IDENTITY = 'processor_identity'.freeze,

  # TODO: Write general description for PROFILE
  PROFILE = 'profile'.freeze,

  # TODO: Write general description for CRA_BASE_REPORT
  CRA_BASE_REPORT = 'cra_base_report'.freeze,

  # TODO: Write general description for CRA_INCOME_INSIGHTS
  CRA_INCOME_INSIGHTS = 'cra_income_insights'.freeze,

  # TODO: Write general description for CRA_PARTNER_INSIGHTS
  CRA_PARTNER_INSIGHTS = 'cra_partner_insights'.freeze,

  # TODO: Write general description for CRA_NETWORK_INSIGHTS
  CRA_NETWORK_INSIGHTS = 'cra_network_insights'.freeze,

  # TODO: Write general description for CRA_CASHFLOW_INSIGHTS
  CRA_CASHFLOW_INSIGHTS = 'cra_cashflow_insights'.freeze,

  # TODO: Write general description for CRA_MONITORING
  CRA_MONITORING = 'cra_monitoring'.freeze,

  # TODO: Write general description for CRA_LEND_SCORE
  CRA_LEND_SCORE = 'cra_lend_score'.freeze,

  # TODO: Write general description for CRA_PLAID_CREDIT_SCORE
  CRA_PLAID_CREDIT_SCORE = 'cra_plaid_credit_score'.freeze,

  # TODO: Write general description for LAYER
  LAYER = 'layer'.freeze,

  # TODO: Write general description for PAY_BY_BANK
  PAY_BY_BANK = 'pay_by_bank'.freeze,

  # TODO: Write general description for PROTECT_LINKED_BANK
  PROTECT_LINKED_BANK = 'protect_linked_bank'.freeze,

  # TODO: Write general description for PROTECT_TRANSACTIONS
  PROTECT_TRANSACTIONS = 'protect_transactions'.freeze
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = ASSETS) ⇒ Object



133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
# File 'lib/the_plaid_api/models/products.rb', line 133

def self.from_value(value, default_value = ASSETS)
  return default_value if value.nil?

  str = value.to_s.strip

  case str.downcase
  when 'assets' then ASSETS
  when 'auth' then AUTH
  when 'balance' then BALANCE
  when 'balance_plus' then BALANCE_PLUS
  when 'beacon' then BEACON
  when 'identity' then IDENTITY
  when 'identity_match' then IDENTITY_MATCH
  when 'investments' then INVESTMENTS
  when 'investments_auth' then INVESTMENTS_AUTH
  when 'liabilities' then LIABILITIES
  when 'payment_initiation' then PAYMENT_INITIATION
  when 'identity_verification' then IDENTITY_VERIFICATION
  when 'transactions' then TRANSACTIONS
  when 'credit_details' then CREDIT_DETAILS
  when 'income' then INCOME
  when 'income_verification' then INCOME_VERIFICATION
  when 'standing_orders' then STANDING_ORDERS
  when 'transfer' then TRANSFER
  when 'employment' then EMPLOYMENT
  when 'recurring_transactions' then RECURRING_TRANSACTIONS
  when 'transactions_refresh' then TRANSACTIONS_REFRESH
  when 'signal' then SIGNAL
  when 'statements' then STATEMENTS
  when 'processor_payments' then PROCESSOR_PAYMENTS
  when 'processor_identity' then PROCESSOR_IDENTITY
  when 'profile' then PROFILE
  when 'cra_base_report' then CRA_BASE_REPORT
  when 'cra_income_insights' then CRA_INCOME_INSIGHTS
  when 'cra_partner_insights' then CRA_PARTNER_INSIGHTS
  when 'cra_network_insights' then CRA_NETWORK_INSIGHTS
  when 'cra_cashflow_insights' then CRA_CASHFLOW_INSIGHTS
  when 'cra_monitoring' then CRA_MONITORING
  when 'cra_lend_score' then CRA_LEND_SCORE
  when 'cra_plaid_credit_score' then CRA_PLAID_CREDIT_SCORE
  when 'layer' then LAYER
  when 'pay_by_bank' then PAY_BY_BANK
  when 'protect_linked_bank' then PROTECT_LINKED_BANK
  when 'protect_transactions' then PROTECT_TRANSACTIONS
  else
    default_value
  end
end

.validate(value) ⇒ Object



127
128
129
130
131
# File 'lib/the_plaid_api/models/products.rb', line 127

def self.validate(value)
  return false if value.nil?

  PRODUCTS.include?(value)
end