Class: Plaid::OldPaymentStatus

Inherits:
Object
  • Object
show all
Defined in:
lib/plaid/models/old_payment_status.rb

Overview

The previous status of the payment. ‘PAYMENT_STATUS_INPUT_NEEDED`: This is the initial state of all payments. It indicates that the payment is waiting on user input to continue processing. A payment may re-enter this state later on if further input is needed. `PAYMENT_STATUS_PROCESSING`: The payment is currently being processed. The payment will automatically exit this state when processing is complete. `PAYMENT_STATUS_INITIATED`: The payment has been successfully initiated and is considered complete. `PAYMENT_STATUS_COMPLETED`: Indicates that the standing order has been successfully established. This state is only used for standing orders. `PAYMENT_STATUS_INSUFFICIENT_FUNDS`: The payment has failed due to insufficient funds. `PAYMENT_STATUS_FAILED`: The payment has failed to be initiated. This error is retryable once the root cause is resolved. `PAYMENT_STATUS_BLOCKED`: The payment has been blocked. This is a retryable error. `PAYMENT_STATUS_UNKNOWN`: The payment status is unknown.

Constant Summary collapse

OLD_PAYMENT_STATUS =
[
  # TODO: Write general description for PAYMENT_STATUS_INPUT_NEEDED
  PAYMENT_STATUS_INPUT_NEEDED = 'PAYMENT_STATUS_INPUT_NEEDED'.freeze,

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

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

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

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

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

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

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

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = PAYMENT_STATUS_INPUT_NEEDED) ⇒ Object



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

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

  str = value.to_s.strip

  case str.downcase
  when 'payment_status_input_needed' then PAYMENT_STATUS_INPUT_NEEDED
  when 'payment_status_processing' then PAYMENT_STATUS_PROCESSING
  when 'payment_status_initiated' then PAYMENT_STATUS_INITIATED
  when 'payment_status_completed' then PAYMENT_STATUS_COMPLETED
  when 'payment_status_insufficient_funds' then PAYMENT_STATUS_INSUFFICIENT_FUNDS
  when 'payment_status_failed' then PAYMENT_STATUS_FAILED
  when 'payment_status_blocked' then PAYMENT_STATUS_BLOCKED
  when 'payment_status_unknown' then PAYMENT_STATUS_UNKNOWN
  else
    default_value
  end
end

.validate(value) ⇒ Object



48
49
50
51
52
# File 'lib/plaid/models/old_payment_status.rb', line 48

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

  true
end