Module: Payify::StripePaymentConcern
- Extended by:
- ActiveSupport::Concern
- Included in:
- Payment
- Defined in:
- app/models/concerns/payify/stripe_payment_concern.rb
Instance Method Summary collapse
- #stripe_client ⇒ Object
- #stripe_confirm_payment ⇒ Object
- #stripe_init_intent ⇒ Object
- #tax_id ⇒ Object
Instance Method Details
#stripe_client ⇒ Object
7 8 9 |
# File 'app/models/concerns/payify/stripe_payment_concern.rb', line 7 def stripe_client @stripe_client ||= StripeApi::Client.new end |
#stripe_confirm_payment ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'app/models/concerns/payify/stripe_payment_concern.rb', line 20 def stripe_confirm_payment intent = stripe_client.find_intent(stripe_payment_inent_id) return unless intent["status"] == "succeeded" update_attribute(:paid_at, Time.now) update_attribute(:status, Payify::Payment.statuses[:paid]) end |
#stripe_init_intent ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'app/models/concerns/payify/stripe_payment_concern.rb', line 11 def stripe_init_intent return unless stripe_payment_inent_id.nil? && !paid? intent = stripe_client.create_payment_intent(amount, tax_id) update_attribute(:stripe_payment_inent_id, intent.id) update_attribute(:stripe_client_secret, intent.client_secret) end |
#tax_id ⇒ Object
29 30 31 |
# File 'app/models/concerns/payify/stripe_payment_concern.rb', line 29 def tax_id model&.tax_rates_id || Payify.default_tax_rates_id end |