Class: Accountability::Payment
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- Accountability::Payment
- Defined in:
- app/models/accountability/payment.rb
Instance Method Summary collapse
Methods inherited from ApplicationRecord
Instance Method Details
#process_transaction! ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'app/models/accountability/payment.rb', line 13 def process_transaction! return if debit.present? return if errors.present? if billing_configuration.charge(amount) self.status = :complete build_debit(account: account, amount: amount) elsif billing_configuration.invalid? self.status = :failed billing_configuration.errors..each { |error| errors.add(:base, error.titleize) } else self.status = :failed end end |