Class: SEPA::CreditTransferTransaction

Inherits:
Transaction show all
Defined in:
lib/sepa_king/transaction/credit_transfer_transaction.rb

Constant Summary

Constants inherited from Transaction

Transaction::DEFAULT_REQUESTED_DATE

Instance Attribute Summary collapse

Attributes inherited from Transaction

#amount, #batch_booking, #bic, #currency, #iban, #instruction, #name, #post_code, #reference, #remittance_information, #requested_date, #street_name, #town_name

Instance Method Summary collapse

Methods included from Converter

#convert

Constructor Details

#initialize(attributes = {}) ⇒ CreditTransferTransaction

Returns a new instance of CreditTransferTransaction.



10
11
12
13
14
15
# File 'lib/sepa_king/transaction/credit_transfer_transaction.rb', line 10

def initialize(attributes = {})
  super
  if self.currency == 'EUR'
    self.service_level ||= 'SEPA'
  end
end

Instance Attribute Details

#service_levelObject

Returns the value of attribute service_level.



4
5
6
# File 'lib/sepa_king/transaction/credit_transfer_transaction.rb', line 4

def service_level
  @service_level
end

Instance Method Details

#schema_compatible?(schema_name) ⇒ Boolean

Returns:

  • (Boolean)


17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/sepa_king/transaction/credit_transfer_transaction.rb', line 17

def schema_compatible?(schema_name)
  case schema_name
  when PAIN_001_001_03
    if self.currency == 'EUR'
      self.service_level == 'SEPA'
    else
      self.service_level == ''
    end
  when PAIN_001_002_03
    self.bic.present? && self.service_level == 'SEPA' && self.currency == 'EUR'
  when PAIN_001_003_03
    self.currency == 'EUR'
  end
end