houdini/app/models/payment.rb
Eric Schultz 2e8821efdf Initial Transaction and OfflineTransaction support
Co-authored-by: Clarissa Lima Borges <clarissa@commitchange.com>
2021-04-13 10:47:37 -05:00

29 lines
940 B
Ruby

# frozen_string_literal: true
# License: AGPL-3.0-or-later WITH WTO-AP-3.0-or-later
# Full license explanation at https://github.com/houdiniproject/houdini/blob/master/LICENSE
# A payment represents the event where a nonprofit receives money from a supporter
# If connected to a charge, this represents money potentially debited to the nonprofit's account
# If connected to an offsite_payment, this is money the nonprofit is recording for convenience.
class Payment < ApplicationRecord
belongs_to :supporter
belongs_to :nonprofit
has_one :charge
has_one :offsite_payment
has_one :refund
has_one :dispute
belongs_to :donation
has_many :tickets
has_one :campaign, through: :donation
has_many :events, through: :tickets
has_many :payment_payouts
has_many :charges
has_one :subtransaction_payment
has_one :subtransaction, through: :subtransaction_payment
has_one :trx, through: :subtransaction_payment
end