Class: ThePlaidApi::ReasonCode

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

Overview

Specifies the reason for cancelling transfer. This is required for RfP transfers, and will be ignored for other networks. ‘“AC03”` - Invalid Creditor Account Number `“AM09”` - Incorrect Amount `“CUST”` - Requested By Customer - Cancellation requested `“DUPL”` - Duplicate Payment `“FRAD”` - Fraudulent Payment - Unauthorized or fraudulently induced `“TECH”` - Technical Problem - Cancellation due to system issues `“UPAY”` - Undue Payment - Payment was made through another channel `“AC14”` - Invalid or Missing Creditor Account Type `“AM06”` - Amount Too Low `“BE05”` - Unrecognized Initiating Party `“FOCR”` - Following Refund Request `“MS02”` - No Specified Reason - Customer `“MS03”` - No Specified Reason - Agent `“RR04”` - Regulatory Reason `“RUTA”` - Return Upon Unable To Apply

Constant Summary collapse

REASON_CODE =
[
  # TODO: Write general description for AC03
  AC03 = 'AC03'.freeze,

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = AC03) ⇒ Object



72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/the_plaid_api/models/reason_code.rb', line 72

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

  str = value.to_s.strip

  case str.downcase
  when 'ac03' then AC03
  when 'am09' then AM09
  when 'cust' then CUST
  when 'dupl' then DUPL
  when 'frad' then FRAD
  when 'tech' then TECH
  when 'upay' then UPAY
  when 'ac14' then AC14
  when 'am06' then AM06
  when 'be05' then BE05
  when 'focr' then FOCR
  when 'ms02' then MS02
  when 'ms03' then MS03
  when 'rr04' then RR04
  when 'ruta' then RUTA
  else
    default_value
  end
end

.validate(value) ⇒ Object



66
67
68
69
70
# File 'lib/the_plaid_api/models/reason_code.rb', line 66

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

  REASON_CODE.include?(value)
end