Class: FdxV660Api::DepositAccountTermsAndConditionsEntity1

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb

Overview

Any data elements which have been updated since original Terms and Conditions

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(effective_date: SKIP, arbitration_provision: SKIP, card_replacement_fee: 0, paper_statements_fee: 0, domestic_atm_fee: 0, foreign_atm_foreign_currency_advance_fee: 0, foreign_atm_us_dollar_advance_fee: 0, foreign_purchase_foreign_currency_fee: 0, transaction_limits: SKIP, promotions: SKIP, fi_attributes: SKIP, monthly_account_fee: 0, account_closure_fee: 0, account_inactivity_fee: 0, incoming_transfer_fee: 0, incoming_wire_fee: 0, nonsufficient_funds_fee: 0, maximum_monthly_withdrawals: SKIP, excess_withdrawals_fee: 0, overdraft_fee: 0, overdraft_fee_waiver_balance: SKIP, overdraft_fee_waiver_debit: SKIP, daily_overdraft_fees_cap: SKIP, overdraft_protection_fee: 0, overdraft_opt_in_provision: SKIP, overdraft_allowed: SKIP, money_order_fee: 0, cashiers_check_fee: 0, domestic_outgoing_wire_fee: 0, international_outgoing_wire_fee: 0, returned_payment_fee: 0, fixed_finance_charge_fee: 0, check_redeposit_fee: 0, stop_payment_fee: 0, monthly_fee_waiver_direct_deposit: SKIP, monthly_fee_waiver_balance: SKIP, monthly_fee_waiver_balance_type: SKIP, interest_rate_tiers: SKIP, additional_properties: nil) ⇒ DepositAccountTermsAndConditionsEntity1

Returns a new instance of DepositAccountTermsAndConditionsEntity1.



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
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 300

def initialize(effective_date: SKIP, arbitration_provision: SKIP,
               card_replacement_fee: 0, paper_statements_fee: 0,
               domestic_atm_fee: 0,
               foreign_atm_foreign_currency_advance_fee: 0,
               foreign_atm_us_dollar_advance_fee: 0,
               foreign_purchase_foreign_currency_fee: 0,
               transaction_limits: SKIP, promotions: SKIP,
               fi_attributes: SKIP, monthly_account_fee: 0,
               account_closure_fee: 0, account_inactivity_fee: 0,
               incoming_transfer_fee: 0, incoming_wire_fee: 0,
               nonsufficient_funds_fee: 0,
               maximum_monthly_withdrawals: SKIP, excess_withdrawals_fee: 0,
               overdraft_fee: 0, overdraft_fee_waiver_balance: SKIP,
               overdraft_fee_waiver_debit: SKIP,
               daily_overdraft_fees_cap: SKIP, overdraft_protection_fee: 0,
               overdraft_opt_in_provision: SKIP, overdraft_allowed: SKIP,
               money_order_fee: 0, cashiers_check_fee: 0,
               domestic_outgoing_wire_fee: 0,
               international_outgoing_wire_fee: 0, returned_payment_fee: 0,
               fixed_finance_charge_fee: 0, check_redeposit_fee: 0,
               stop_payment_fee: 0, monthly_fee_waiver_direct_deposit: SKIP,
               monthly_fee_waiver_balance: SKIP,
               monthly_fee_waiver_balance_type: SKIP,
               interest_rate_tiers: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @effective_date = effective_date unless effective_date == SKIP
  @arbitration_provision = arbitration_provision unless arbitration_provision == SKIP
  @card_replacement_fee = card_replacement_fee unless card_replacement_fee == SKIP
  @paper_statements_fee = paper_statements_fee unless paper_statements_fee == SKIP
  @domestic_atm_fee = domestic_atm_fee unless domestic_atm_fee == SKIP
  unless foreign_atm_foreign_currency_advance_fee == SKIP
    @foreign_atm_foreign_currency_advance_fee =
      foreign_atm_foreign_currency_advance_fee
  end
  unless foreign_atm_us_dollar_advance_fee == SKIP
    @foreign_atm_us_dollar_advance_fee =
      foreign_atm_us_dollar_advance_fee
  end
  unless foreign_purchase_foreign_currency_fee == SKIP
    @foreign_purchase_foreign_currency_fee =
      foreign_purchase_foreign_currency_fee
  end
  @transaction_limits = transaction_limits unless transaction_limits == SKIP
  @promotions = promotions unless promotions == SKIP
  @fi_attributes = fi_attributes unless fi_attributes == SKIP
  @monthly_account_fee =  unless  == SKIP
  @account_closure_fee =  unless  == SKIP
  @account_inactivity_fee =  unless  == SKIP
  @incoming_transfer_fee = incoming_transfer_fee unless incoming_transfer_fee == SKIP
  @incoming_wire_fee = incoming_wire_fee unless incoming_wire_fee == SKIP
  @nonsufficient_funds_fee = nonsufficient_funds_fee unless nonsufficient_funds_fee == SKIP
  unless maximum_monthly_withdrawals == SKIP
    @maximum_monthly_withdrawals =
      maximum_monthly_withdrawals
  end
  @excess_withdrawals_fee = excess_withdrawals_fee unless excess_withdrawals_fee == SKIP
  @overdraft_fee = overdraft_fee unless overdraft_fee == SKIP
  unless overdraft_fee_waiver_balance == SKIP
    @overdraft_fee_waiver_balance =
      overdraft_fee_waiver_balance
  end
  unless overdraft_fee_waiver_debit == SKIP
    @overdraft_fee_waiver_debit =
      overdraft_fee_waiver_debit
  end
  @daily_overdraft_fees_cap = daily_overdraft_fees_cap unless daily_overdraft_fees_cap == SKIP
  @overdraft_protection_fee = overdraft_protection_fee unless overdraft_protection_fee == SKIP
  unless overdraft_opt_in_provision == SKIP
    @overdraft_opt_in_provision =
      overdraft_opt_in_provision
  end
  @overdraft_allowed = overdraft_allowed unless overdraft_allowed == SKIP
  @money_order_fee = money_order_fee unless money_order_fee == SKIP
  @cashiers_check_fee = cashiers_check_fee unless cashiers_check_fee == SKIP
  unless domestic_outgoing_wire_fee == SKIP
    @domestic_outgoing_wire_fee =
      domestic_outgoing_wire_fee
  end
  unless international_outgoing_wire_fee == SKIP
    @international_outgoing_wire_fee =
      international_outgoing_wire_fee
  end
  @returned_payment_fee = returned_payment_fee unless returned_payment_fee == SKIP
  @fixed_finance_charge_fee = fixed_finance_charge_fee unless fixed_finance_charge_fee == SKIP
  @check_redeposit_fee = check_redeposit_fee unless check_redeposit_fee == SKIP
  @stop_payment_fee = stop_payment_fee unless stop_payment_fee == SKIP
  unless monthly_fee_waiver_direct_deposit == SKIP
    @monthly_fee_waiver_direct_deposit =
      monthly_fee_waiver_direct_deposit
  end
  unless monthly_fee_waiver_balance == SKIP
    @monthly_fee_waiver_balance =
      monthly_fee_waiver_balance
  end
  unless monthly_fee_waiver_balance_type == SKIP
    @monthly_fee_waiver_balance_type =
      monthly_fee_waiver_balance_type
  end
  @interest_rate_tiers = interest_rate_tiers unless interest_rate_tiers == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#account_closure_feeFloat

Fee for account closure. The value is zero if not charged on this account

Returns:

  • (Float)


72
73
74
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 72

def 
  @account_closure_fee
end

#account_inactivity_feeFloat

Fee for account inactivity. The value is zero if not charged on this account

Returns:

  • (Float)


77
78
79
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 77

def 
  @account_inactivity_fee
end

#arbitration_provisionTrueClass | FalseClass

A terms and conditions clause that requires the parties to resolve their disputes through an arbitration process. If true, the terms and conditions have an Arbitration Provision

Returns:

  • (TrueClass | FalseClass)


21
22
23
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 21

def arbitration_provision
  @arbitration_provision
end

#card_replacement_feeFloat

Fee for replacement of debit or credit card (Rush order?). The value is zero if not charged on this account

Returns:

  • (Float)


26
27
28
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 26

def card_replacement_fee
  @card_replacement_fee
end

#cashiers_check_feeFloat

Fee for a cashier's check. The value is zero if not charged on this account

Returns:

  • (Float)


149
150
151
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 149

def cashiers_check_fee
  @cashiers_check_fee
end

#check_redeposit_feeFloat

Fee for return or re-deposit of a check. The value is zero if not charged on this account

Returns:

  • (Float)


174
175
176
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 174

def check_redeposit_fee
  @check_redeposit_fee
end

#daily_overdraft_fees_capInteger

Daily cap on number of overdraft or NSF fees which can be charged to account

Returns:

  • (Integer)


125
126
127
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 125

def daily_overdraft_fees_cap
  @daily_overdraft_fees_cap
end

#domestic_atm_feeFloat

Fee for ATM withdrawal or advance in account-holder's own country and currency. The value is zero if not charged on this account

Returns:

  • (Float)


35
36
37
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 35

def domestic_atm_fee
  @domestic_atm_fee
end

#domestic_outgoing_wire_feeFloat

Fee for an outgoing wire transfer (domestic). The value is zero if not charged on this account

Returns:

  • (Float)


154
155
156
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 154

def domestic_outgoing_wire_fee
  @domestic_outgoing_wire_fee
end

#effective_dateDate

Date that the document or content became effective

Returns:

  • (Date)


15
16
17
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 15

def effective_date
  @effective_date
end

#excess_withdrawals_feeFloat

Fee when monthly withdrawals exceed the maximum. The value is zero if not charged on this account

Returns:

  • (Float)


103
104
105
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 103

def excess_withdrawals_fee
  @excess_withdrawals_fee
end

#fi_attributesArray[FiAttributeEntity]

Array of Financial institution-specific attributes

Returns:



63
64
65
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 63

def fi_attributes
  @fi_attributes
end

#fixed_finance_charge_feeFloat

Fee for a fixed finance charge. The value is zero if not charged on this account

Returns:

  • (Float)


169
170
171
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 169

def fixed_finance_charge_fee
  @fixed_finance_charge_fee
end

#foreign_atm_foreign_currency_advance_feeFloat

Fee for foreign transaction ATM withdrawal or advance in foreign currency. The value is zero if not charged on this account

Returns:

  • (Float)


40
41
42
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 40

def foreign_atm_foreign_currency_advance_fee
  @foreign_atm_foreign_currency_advance_fee
end

#foreign_atm_us_dollar_advance_feeFloat

Fee for foreign transaction ATM withdrawal or advance in US Dollars. The value is zero if not charged on this account

Returns:

  • (Float)


45
46
47
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 45

def foreign_atm_us_dollar_advance_fee
  @foreign_atm_us_dollar_advance_fee
end

#foreign_purchase_foreign_currency_feeFloat

Fee for foreign transaction purchase in foreign currency. The value is zero if not charged on this account

Returns:

  • (Float)


50
51
52
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 50

def foreign_purchase_foreign_currency_fee
  @foreign_purchase_foreign_currency_fee
end

#incoming_transfer_feeFloat

Fee for an incoming electronic funds transfer. The value is zero if not charged on this account

Returns:

  • (Float)


82
83
84
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 82

def incoming_transfer_fee
  @incoming_transfer_fee
end

#incoming_wire_feeFloat

Fee for an incoming wire transfer. The value is zero if not charged on this account

Returns:

  • (Float)


87
88
89
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 87

def incoming_wire_fee
  @incoming_wire_fee
end

#interest_rate_tiersArray[InterestRateTier]

The single APY for the account statement period or the possible APYs earned for different minimum balance amounts (in the current cycle). Sorted from lowest minimumBalance to highest

Returns:



199
200
201
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 199

def interest_rate_tiers
  @interest_rate_tiers
end

#international_outgoing_wire_feeFloat

Fee for an outgoing wire transfer (international). The value is zero if not charged on this account

Returns:

  • (Float)


159
160
161
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 159

def international_outgoing_wire_fee
  @international_outgoing_wire_fee
end

#maximum_monthly_withdrawalsInteger

Monthly cap on number of withdrawals which can made from account before incurring a fee

Returns:

  • (Integer)


98
99
100
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 98

def maximum_monthly_withdrawals
  @maximum_monthly_withdrawals
end

#money_order_feeFloat

Fee for a money order. The value is zero if not charged on this account

Returns:

  • (Float)


144
145
146
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 144

def money_order_fee
  @money_order_fee
end

#monthly_account_feeFloat

Fee for monthly account maintenance. The value is zero if not charged on this account

Returns:

  • (Float)


68
69
70
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 68

def 
  @monthly_account_fee
end

#monthly_fee_waiver_balanceFloat

Account balance above which monthly maintenance fee is waived

Returns:

  • (Float)


187
188
189
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 187

def monthly_fee_waiver_balance
  @monthly_fee_waiver_balance
end

#monthly_fee_waiver_balance_typeString

Basis for assessing whether balance amount triggers maintenance fee waiver (average daily balance, average end-of-day balance, minimum end-of day balance)

Returns:

  • (String)


193
194
195
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 193

def monthly_fee_waiver_balance_type
  @monthly_fee_waiver_balance_type
end

#monthly_fee_waiver_direct_depositFloat

Amount of payroll direct deposit into account for which monthly maintenance fee is waived

Returns:

  • (Float)


183
184
185
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 183

def monthly_fee_waiver_direct_deposit
  @monthly_fee_waiver_direct_deposit
end

#nonsufficient_funds_feeFloat

Fee for Non-Sufficient Funds (NSF), if a check or ACH transaction presented on account is returned unpaid. The value is zero if not charged on this account

Returns:

  • (Float)


93
94
95
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 93

def nonsufficient_funds_fee
  @nonsufficient_funds_fee
end

#overdraft_allowedTrueClass | FalseClass

Whether account permits consumer to have overdrafts at all

Returns:

  • (TrueClass | FalseClass)


140
141
142
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 140

def overdraft_allowed
  @overdraft_allowed
end

#overdraft_feeFloat

Fee for an overdraft if item is paid. The value is zero if not charged on this account

Returns:

  • (Float)


108
109
110
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 108

def overdraft_fee
  @overdraft_fee
end

#overdraft_fee_waiver_balanceFloat

De minimis waiver no. 1 for overdraft fee. Absolute dollar amount of the negative balance above which (i.e. for smaller negative balances) the overdraft fee is waived

Returns:

  • (Float)


114
115
116
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 114

def overdraft_fee_waiver_balance
  @overdraft_fee_waiver_balance
end

#overdraft_fee_waiver_debitFloat

De minimis waiver no. 2 for overdraft fee. Dollar amount of a debit transaction below which (i.e. for smaller transactions) the overdraft fee is waived

Returns:

  • (Float)


120
121
122
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 120

def overdraft_fee_waiver_debit
  @overdraft_fee_waiver_debit
end

#overdraft_opt_in_provisionTrueClass | FalseClass

Whether account permits consumer to opt-in to overdraft coverage on debit card or ATM card transactions

Returns:

  • (TrueClass | FalseClass)


136
137
138
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 136

def overdraft_opt_in_provision
  @overdraft_opt_in_provision
end

#overdraft_protection_feeFloat

Fee for overdraft protection, an automatic sweep from a separate account to cover a transaction that would otherwise result in an overdraft. The value is zero if not charged on this account

Returns:

  • (Float)


131
132
133
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 131

def overdraft_protection_fee
  @overdraft_protection_fee
end

#paper_statements_feeFloat

Fee for paper statements. The value is zero if not charged on this account

Returns:

  • (Float)


30
31
32
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 30

def paper_statements_fee
  @paper_statements_fee
end

#promotionsArray[PromotionEntity]

The promotions originally defined in Terms and Conditions or currently active on the account

Returns:



59
60
61
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 59

def promotions
  @promotions
end

#returned_payment_feeFloat

Fee for a returned payment. The value is zero if not charged on this account

Returns:

  • (Float)


164
165
166
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 164

def returned_payment_fee
  @returned_payment_fee
end

#stop_payment_feeFloat

Fee for a stop payment. The value is zero if not charged on this account

Returns:

  • (Float)


178
179
180
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 178

def stop_payment_fee
  @stop_payment_fee
end

#transaction_limitsArray[TransactionLimit]

The various maximum amounts on different types of account transactions

Returns:



54
55
56
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 54

def transaction_limits
  @transaction_limits
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 405

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  effective_date = hash.key?('effectiveDate') ? hash['effectiveDate'] : SKIP
  arbitration_provision =
    hash.key?('arbitrationProvision') ? hash['arbitrationProvision'] : SKIP
  card_replacement_fee = hash['cardReplacementFee'] ||= 0
  paper_statements_fee = hash['paperStatementsFee'] ||= 0
  domestic_atm_fee = hash['domesticAtmFee'] ||= 0
  foreign_atm_foreign_currency_advance_fee =
    hash['foreignAtmForeignCurrencyAdvanceFee'] ||= 0
  foreign_atm_us_dollar_advance_fee =
    hash['foreignAtmUsDollarAdvanceFee'] ||= 0
  foreign_purchase_foreign_currency_fee =
    hash['foreignPurchaseForeignCurrencyFee'] ||= 0
  # Parameter is an array, so we need to iterate through it
  transaction_limits = nil
  unless hash['transactionLimits'].nil?
    transaction_limits = []
    hash['transactionLimits'].each do |structure|
      transaction_limits << (TransactionLimit.from_hash(structure) if structure)
    end
  end

  transaction_limits = SKIP unless hash.key?('transactionLimits')
  # Parameter is an array, so we need to iterate through it
  promotions = nil
  unless hash['promotions'].nil?
    promotions = []
    hash['promotions'].each do |structure|
      promotions << (PromotionEntity.from_hash(structure) if structure)
    end
  end

  promotions = SKIP unless hash.key?('promotions')
  # Parameter is an array, so we need to iterate through it
  fi_attributes = nil
  unless hash['fiAttributes'].nil?
    fi_attributes = []
    hash['fiAttributes'].each do |structure|
      fi_attributes << (FiAttributeEntity.from_hash(structure) if structure)
    end
  end

  fi_attributes = SKIP unless hash.key?('fiAttributes')
   = hash['monthlyAccountFee'] ||= 0
   = hash['accountClosureFee'] ||= 0
   = hash['accountInactivityFee'] ||= 0
  incoming_transfer_fee = hash['incomingTransferFee'] ||= 0
  incoming_wire_fee = hash['incomingWireFee'] ||= 0
  nonsufficient_funds_fee = hash['nonsufficientFundsFee'] ||= 0
  maximum_monthly_withdrawals =
    hash.key?('maximumMonthlyWithdrawals') ? hash['maximumMonthlyWithdrawals'] : SKIP
  excess_withdrawals_fee = hash['excessWithdrawalsFee'] ||= 0
  overdraft_fee = hash['overdraftFee'] ||= 0
  overdraft_fee_waiver_balance =
    hash.key?('overdraftFeeWaiverBalance') ? hash['overdraftFeeWaiverBalance'] : SKIP
  overdraft_fee_waiver_debit =
    hash.key?('overdraftFeeWaiverDebit') ? hash['overdraftFeeWaiverDebit'] : SKIP
  daily_overdraft_fees_cap =
    hash.key?('dailyOverdraftFeesCap') ? hash['dailyOverdraftFeesCap'] : SKIP
  overdraft_protection_fee = hash['overdraftProtectionFee'] ||= 0
  overdraft_opt_in_provision =
    hash.key?('overdraftOptInProvision') ? hash['overdraftOptInProvision'] : SKIP
  overdraft_allowed =
    hash.key?('overdraftAllowed') ? hash['overdraftAllowed'] : SKIP
  money_order_fee = hash['moneyOrderFee'] ||= 0
  cashiers_check_fee = hash['cashiersCheckFee'] ||= 0
  domestic_outgoing_wire_fee = hash['domesticOutgoingWireFee'] ||= 0
  international_outgoing_wire_fee =
    hash['internationalOutgoingWireFee'] ||= 0
  returned_payment_fee = hash['returnedPaymentFee'] ||= 0
  fixed_finance_charge_fee = hash['fixedFinanceChargeFee'] ||= 0
  check_redeposit_fee = hash['checkRedepositFee'] ||= 0
  stop_payment_fee = hash['stopPaymentFee'] ||= 0
  monthly_fee_waiver_direct_deposit =
    hash.key?('monthlyFeeWaiverDirectDeposit') ? hash['monthlyFeeWaiverDirectDeposit'] : SKIP
  monthly_fee_waiver_balance =
    hash.key?('monthlyFeeWaiverBalance') ? hash['monthlyFeeWaiverBalance'] : SKIP
  monthly_fee_waiver_balance_type =
    hash.key?('monthlyFeeWaiverBalanceType') ? hash['monthlyFeeWaiverBalanceType'] : SKIP
  # Parameter is an array, so we need to iterate through it
  interest_rate_tiers = nil
  unless hash['interestRateTiers'].nil?
    interest_rate_tiers = []
    hash['interestRateTiers'].each do |structure|
      interest_rate_tiers << (InterestRateTier.from_hash(structure) if structure)
    end
  end

  interest_rate_tiers = SKIP unless hash.key?('interestRateTiers')

  # 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.
  DepositAccountTermsAndConditionsEntity1.new(effective_date: effective_date,
                                              arbitration_provision: arbitration_provision,
                                              card_replacement_fee: card_replacement_fee,
                                              paper_statements_fee: paper_statements_fee,
                                              domestic_atm_fee: domestic_atm_fee,
                                              foreign_atm_foreign_currency_advance_fee: foreign_atm_foreign_currency_advance_fee,
                                              foreign_atm_us_dollar_advance_fee: foreign_atm_us_dollar_advance_fee,
                                              foreign_purchase_foreign_currency_fee: foreign_purchase_foreign_currency_fee,
                                              transaction_limits: transaction_limits,
                                              promotions: promotions,
                                              fi_attributes: fi_attributes,
                                              monthly_account_fee: ,
                                              account_closure_fee: ,
                                              account_inactivity_fee: ,
                                              incoming_transfer_fee: incoming_transfer_fee,
                                              incoming_wire_fee: incoming_wire_fee,
                                              nonsufficient_funds_fee: nonsufficient_funds_fee,
                                              maximum_monthly_withdrawals: maximum_monthly_withdrawals,
                                              excess_withdrawals_fee: excess_withdrawals_fee,
                                              overdraft_fee: overdraft_fee,
                                              overdraft_fee_waiver_balance: overdraft_fee_waiver_balance,
                                              overdraft_fee_waiver_debit: overdraft_fee_waiver_debit,
                                              daily_overdraft_fees_cap: daily_overdraft_fees_cap,
                                              overdraft_protection_fee: overdraft_protection_fee,
                                              overdraft_opt_in_provision: overdraft_opt_in_provision,
                                              overdraft_allowed: overdraft_allowed,
                                              money_order_fee: money_order_fee,
                                              cashiers_check_fee: cashiers_check_fee,
                                              domestic_outgoing_wire_fee: domestic_outgoing_wire_fee,
                                              international_outgoing_wire_fee: international_outgoing_wire_fee,
                                              returned_payment_fee: returned_payment_fee,
                                              fixed_finance_charge_fee: fixed_finance_charge_fee,
                                              check_redeposit_fee: check_redeposit_fee,
                                              stop_payment_fee: stop_payment_fee,
                                              monthly_fee_waiver_direct_deposit: monthly_fee_waiver_direct_deposit,
                                              monthly_fee_waiver_balance: monthly_fee_waiver_balance,
                                              monthly_fee_waiver_balance_type: monthly_fee_waiver_balance_type,
                                              interest_rate_tiers: interest_rate_tiers,
                                              additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 202

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['effective_date'] = 'effectiveDate'
  @_hash['arbitration_provision'] = 'arbitrationProvision'
  @_hash['card_replacement_fee'] = 'cardReplacementFee'
  @_hash['paper_statements_fee'] = 'paperStatementsFee'
  @_hash['domestic_atm_fee'] = 'domesticAtmFee'
  @_hash['foreign_atm_foreign_currency_advance_fee'] =
    'foreignAtmForeignCurrencyAdvanceFee'
  @_hash['foreign_atm_us_dollar_advance_fee'] =
    'foreignAtmUsDollarAdvanceFee'
  @_hash['foreign_purchase_foreign_currency_fee'] =
    'foreignPurchaseForeignCurrencyFee'
  @_hash['transaction_limits'] = 'transactionLimits'
  @_hash['promotions'] = 'promotions'
  @_hash['fi_attributes'] = 'fiAttributes'
  @_hash['monthly_account_fee'] = 'monthlyAccountFee'
  @_hash['account_closure_fee'] = 'accountClosureFee'
  @_hash['account_inactivity_fee'] = 'accountInactivityFee'
  @_hash['incoming_transfer_fee'] = 'incomingTransferFee'
  @_hash['incoming_wire_fee'] = 'incomingWireFee'
  @_hash['nonsufficient_funds_fee'] = 'nonsufficientFundsFee'
  @_hash['maximum_monthly_withdrawals'] = 'maximumMonthlyWithdrawals'
  @_hash['excess_withdrawals_fee'] = 'excessWithdrawalsFee'
  @_hash['overdraft_fee'] = 'overdraftFee'
  @_hash['overdraft_fee_waiver_balance'] = 'overdraftFeeWaiverBalance'
  @_hash['overdraft_fee_waiver_debit'] = 'overdraftFeeWaiverDebit'
  @_hash['daily_overdraft_fees_cap'] = 'dailyOverdraftFeesCap'
  @_hash['overdraft_protection_fee'] = 'overdraftProtectionFee'
  @_hash['overdraft_opt_in_provision'] = 'overdraftOptInProvision'
  @_hash['overdraft_allowed'] = 'overdraftAllowed'
  @_hash['money_order_fee'] = 'moneyOrderFee'
  @_hash['cashiers_check_fee'] = 'cashiersCheckFee'
  @_hash['domestic_outgoing_wire_fee'] = 'domesticOutgoingWireFee'
  @_hash['international_outgoing_wire_fee'] =
    'internationalOutgoingWireFee'
  @_hash['returned_payment_fee'] = 'returnedPaymentFee'
  @_hash['fixed_finance_charge_fee'] = 'fixedFinanceChargeFee'
  @_hash['check_redeposit_fee'] = 'checkRedepositFee'
  @_hash['stop_payment_fee'] = 'stopPaymentFee'
  @_hash['monthly_fee_waiver_direct_deposit'] =
    'monthlyFeeWaiverDirectDeposit'
  @_hash['monthly_fee_waiver_balance'] = 'monthlyFeeWaiverBalance'
  @_hash['monthly_fee_waiver_balance_type'] =
    'monthlyFeeWaiverBalanceType'
  @_hash['interest_rate_tiers'] = 'interestRateTiers'
  @_hash
end

.nullablesObject

An array for nullable fields



296
297
298
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 296

def self.nullables
  []
end

.optionalsObject

An array for optional fields



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
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 252

def self.optionals
  %w[
    effective_date
    arbitration_provision
    card_replacement_fee
    paper_statements_fee
    domestic_atm_fee
    foreign_atm_foreign_currency_advance_fee
    foreign_atm_us_dollar_advance_fee
    foreign_purchase_foreign_currency_fee
    transaction_limits
    promotions
    fi_attributes
    monthly_account_fee
    account_closure_fee
    account_inactivity_fee
    incoming_transfer_fee
    incoming_wire_fee
    nonsufficient_funds_fee
    maximum_monthly_withdrawals
    excess_withdrawals_fee
    overdraft_fee
    overdraft_fee_waiver_balance
    overdraft_fee_waiver_debit
    daily_overdraft_fees_cap
    overdraft_protection_fee
    overdraft_opt_in_provision
    overdraft_allowed
    money_order_fee
    cashiers_check_fee
    domestic_outgoing_wire_fee
    international_outgoing_wire_fee
    returned_payment_fee
    fixed_finance_charge_fee
    check_redeposit_fee
    stop_payment_fee
    monthly_fee_waiver_direct_deposit
    monthly_fee_waiver_balance
    monthly_fee_waiver_balance_type
    interest_rate_tiers
  ]
end

.validate(value) ⇒ Object

Validates an instance of the object from a given value.

Parameters:



549
550
551
552
553
554
555
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 549

def self.validate(value)
  return true if value.instance_of? self

  return false unless value.instance_of? Hash

  true
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 590

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} effective_date: #{@effective_date.inspect}, arbitration_provision:"\
  " #{@arbitration_provision.inspect}, card_replacement_fee: #{@card_replacement_fee.inspect},"\
  " paper_statements_fee: #{@paper_statements_fee.inspect}, domestic_atm_fee:"\
  " #{@domestic_atm_fee.inspect}, foreign_atm_foreign_currency_advance_fee:"\
  " #{@foreign_atm_foreign_currency_advance_fee.inspect}, foreign_atm_us_dollar_advance_fee:"\
  " #{@foreign_atm_us_dollar_advance_fee.inspect}, foreign_purchase_foreign_currency_fee:"\
  " #{@foreign_purchase_foreign_currency_fee.inspect}, transaction_limits:"\
  " #{@transaction_limits.inspect}, promotions: #{@promotions.inspect}, fi_attributes:"\
  " #{@fi_attributes.inspect}, monthly_account_fee: #{@monthly_account_fee.inspect},"\
  " account_closure_fee: #{@account_closure_fee.inspect}, account_inactivity_fee:"\
  " #{@account_inactivity_fee.inspect}, incoming_transfer_fee:"\
  " #{@incoming_transfer_fee.inspect}, incoming_wire_fee: #{@incoming_wire_fee.inspect},"\
  " nonsufficient_funds_fee: #{@nonsufficient_funds_fee.inspect}, maximum_monthly_withdrawals:"\
  " #{@maximum_monthly_withdrawals.inspect}, excess_withdrawals_fee:"\
  " #{@excess_withdrawals_fee.inspect}, overdraft_fee: #{@overdraft_fee.inspect},"\
  " overdraft_fee_waiver_balance: #{@overdraft_fee_waiver_balance.inspect},"\
  " overdraft_fee_waiver_debit: #{@overdraft_fee_waiver_debit.inspect},"\
  " daily_overdraft_fees_cap: #{@daily_overdraft_fees_cap.inspect}, overdraft_protection_fee:"\
  " #{@overdraft_protection_fee.inspect}, overdraft_opt_in_provision:"\
  " #{@overdraft_opt_in_provision.inspect}, overdraft_allowed: #{@overdraft_allowed.inspect},"\
  " money_order_fee: #{@money_order_fee.inspect}, cashiers_check_fee:"\
  " #{@cashiers_check_fee.inspect}, domestic_outgoing_wire_fee:"\
  " #{@domestic_outgoing_wire_fee.inspect}, international_outgoing_wire_fee:"\
  " #{@international_outgoing_wire_fee.inspect}, returned_payment_fee:"\
  " #{@returned_payment_fee.inspect}, fixed_finance_charge_fee:"\
  " #{@fixed_finance_charge_fee.inspect}, check_redeposit_fee:"\
  " #{@check_redeposit_fee.inspect}, stop_payment_fee: #{@stop_payment_fee.inspect},"\
  " monthly_fee_waiver_direct_deposit: #{@monthly_fee_waiver_direct_deposit.inspect},"\
  " monthly_fee_waiver_balance: #{@monthly_fee_waiver_balance.inspect},"\
  " monthly_fee_waiver_balance_type: #{@monthly_fee_waiver_balance_type.inspect},"\
  " interest_rate_tiers: #{@interest_rate_tiers.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
# File 'lib/fdx_v660_api/models/deposit_account_terms_and_conditions_entity1.rb', line 558

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} effective_date: #{@effective_date}, arbitration_provision:"\
  " #{@arbitration_provision}, card_replacement_fee: #{@card_replacement_fee},"\
  " paper_statements_fee: #{@paper_statements_fee}, domestic_atm_fee: #{@domestic_atm_fee},"\
  " foreign_atm_foreign_currency_advance_fee: #{@foreign_atm_foreign_currency_advance_fee},"\
  " foreign_atm_us_dollar_advance_fee: #{@foreign_atm_us_dollar_advance_fee},"\
  " foreign_purchase_foreign_currency_fee: #{@foreign_purchase_foreign_currency_fee},"\
  " transaction_limits: #{@transaction_limits}, promotions: #{@promotions}, fi_attributes:"\
  " #{@fi_attributes}, monthly_account_fee: #{@monthly_account_fee}, account_closure_fee:"\
  " #{@account_closure_fee}, account_inactivity_fee: #{@account_inactivity_fee},"\
  " incoming_transfer_fee: #{@incoming_transfer_fee}, incoming_wire_fee:"\
  " #{@incoming_wire_fee}, nonsufficient_funds_fee: #{@nonsufficient_funds_fee},"\
  " maximum_monthly_withdrawals: #{@maximum_monthly_withdrawals}, excess_withdrawals_fee:"\
  " #{@excess_withdrawals_fee}, overdraft_fee: #{@overdraft_fee},"\
  " overdraft_fee_waiver_balance: #{@overdraft_fee_waiver_balance},"\
  " overdraft_fee_waiver_debit: #{@overdraft_fee_waiver_debit}, daily_overdraft_fees_cap:"\
  " #{@daily_overdraft_fees_cap}, overdraft_protection_fee: #{@overdraft_protection_fee},"\
  " overdraft_opt_in_provision: #{@overdraft_opt_in_provision}, overdraft_allowed:"\
  " #{@overdraft_allowed}, money_order_fee: #{@money_order_fee}, cashiers_check_fee:"\
  " #{@cashiers_check_fee}, domestic_outgoing_wire_fee: #{@domestic_outgoing_wire_fee},"\
  " international_outgoing_wire_fee: #{@international_outgoing_wire_fee},"\
  " returned_payment_fee: #{@returned_payment_fee}, fixed_finance_charge_fee:"\
  " #{@fixed_finance_charge_fee}, check_redeposit_fee: #{@check_redeposit_fee},"\
  " stop_payment_fee: #{@stop_payment_fee}, monthly_fee_waiver_direct_deposit:"\
  " #{@monthly_fee_waiver_direct_deposit}, monthly_fee_waiver_balance:"\
  " #{@monthly_fee_waiver_balance}, monthly_fee_waiver_balance_type:"\
  " #{@monthly_fee_waiver_balance_type}, interest_rate_tiers: #{@interest_rate_tiers},"\
  " additional_properties: #{@additional_properties}>"
end