module SepaReasonCodes

Constants

PARSED_REASON_CODES
VERSION

Public Class Methods

all() click to toggle source

@returns collection [SepaReasonCodes::Code]

# File lib/sepa_reason_codes.rb, line 42
def self.all
  PARSED_REASON_CODES.values.map do |reason_code_data|
    reason_code(reason_code_data)
  end
end
find(code) click to toggle source

Usage:

SepaReasonCodes.find('AC01')

@returns SepaReasonCodes::Code{

code: 'AC01',
iso_name: '...',
description: '...',
probable_status: '...'

}

# File lib/sepa_reason_codes.rb, line 32
def self.find(code)
  reason_code_data = PARSED_REASON_CODES.fetch(code&.upcase, nil)

  return unless reason_code_data

  reason_code(reason_code_data)
end

Private Class Methods

reason_code(reason_code_data) click to toggle source

@api private

# File lib/sepa_reason_codes.rb, line 50
def self.reason_code(reason_code_data)
  Code.new(
    code: reason_code_data.fetch('code'),
    iso_name: reason_code_data.fetch('iso_name'),
    description: reason_code_data.fetch('description'),
    probable_status: reason_code_data.fetch('probable_status')
  )
end