class Pay::Payment
Attributes
intent[R]
Public Class Methods
from_id(id)
click to toggle source
# File lib/pay/payment.rb, line 7 def self.from_id(id) intent = id.start_with?("seti_") ? ::Stripe::SetupIntent.retrieve(id) : ::Stripe::PaymentIntent.retrieve(id) new(intent) end
new(intent)
click to toggle source
# File lib/pay/payment.rb, line 12 def initialize(intent) @intent = intent end
Public Instance Methods
amount_with_currency()
click to toggle source
# File lib/pay/payment.rb, line 44 def amount_with_currency Pay::Currency.format(amount, currency: currency) end
canceled?()
click to toggle source
# File lib/pay/payment.rb, line 24 def canceled? status == "canceled" end
cancelled?()
click to toggle source
# File lib/pay/payment.rb, line 28 def cancelled? canceled? end
payment_intent?()
click to toggle source
# File lib/pay/payment.rb, line 36 def payment_intent? intent.is_a?(::Stripe::PaymentIntent) end
requires_action?()
click to toggle source
# File lib/pay/payment.rb, line 20 def requires_action? status == "requires_action" end
requires_payment_method?()
click to toggle source
# File lib/pay/payment.rb, line 16 def requires_payment_method? status == "requires_payment_method" end
setup_intent?()
click to toggle source
# File lib/pay/payment.rb, line 40 def setup_intent? intent.is_a?(::Stripe::SetupIntent) end
succeeded?()
click to toggle source
# File lib/pay/payment.rb, line 32 def succeeded? status == "succeeded" end
validate()
click to toggle source
# File lib/pay/payment.rb, line 48 def validate if requires_payment_method? raise Pay::InvalidPaymentMethod.new(self) elsif requires_action? raise Pay::ActionRequired.new(self) end end