Module: Pay::Stripe
- Extended by:
- Env
- Defined in:
- lib/pay/stripe.rb,
lib/pay/stripe/error.rb,
lib/pay/stripe/charge.rb,
lib/pay/stripe/billable.rb,
lib/pay/stripe/subscription.rb,
lib/pay/stripe_marketplace/error.rb,
lib/pay/stripe/webhooks/charge_refunded.rb,
lib/pay/stripe/webhooks/charge_succeeded.rb,
lib/pay/stripe/webhooks/customer_deleted.rb,
lib/pay/stripe/webhooks/customer_updated.rb,
lib/pay/stripe/webhooks/subscription_created.rb,
lib/pay/stripe/webhooks/subscription_deleted.rb,
lib/pay/stripe/webhooks/subscription_updated.rb,
lib/pay/stripe/webhooks/subscription_renewing.rb,
lib/pay/stripe/webhooks/payment_method_updated.rb,
lib/pay/stripe/webhooks/payment_action_required.rb,
lib/pay/stripe/webhooks/payment_intent_succeeded.rb,
lib/pay/stripe_marketplace/webhooks/charge_refunded.rb,
lib/pay/stripe_marketplace/webhooks/charge_succeeded.rb,
lib/pay/stripe_marketplace/webhooks/customer_deleted.rb,
lib/pay/stripe_marketplace/webhooks/customer_updated.rb,
lib/pay/stripe_marketplace/webhooks/subscription_created.rb,
lib/pay/stripe_marketplace/webhooks/subscription_deleted.rb,
lib/pay/stripe_marketplace/webhooks/subscription_updated.rb,
lib/pay/stripe_marketplace/webhooks/subscription_renewing.rb,
lib/pay/stripe_marketplace/webhooks/payment_method_updated.rb,
lib/pay/stripe_marketplace/webhooks/payment_action_required.rb
Defined Under Namespace
Modules: Webhooks Classes: Billable, Charge, Error, Subscription
Class Method Summary collapse
- .configure_webhooks ⇒ Object
- .private_key ⇒ Object
- .public_key ⇒ Object
- .setup ⇒ Object
- .signing_secret ⇒ Object
Class Method Details
.configure_webhooks ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/pay/stripe.rb', line 46 def self.configure_webhooks Pay::Webhooks.configure do |events| # Listen to the charge event to make sure we get non-subscription # purchases as well. Invoice is only for subscriptions and manual creation # so it does not include individual charges. events.subscribe "stripe.charge.succeeded", Pay::Stripe::Webhooks::ChargeSucceeded.new events.subscribe "stripe.charge.refunded", Pay::Stripe::Webhooks::ChargeRefunded.new events.subscribe "stripe.payment_intent.succeeded", Pay::Stripe::Webhooks::PaymentIntentSucceeded.new # Warn user of upcoming charges for their subscription. This is handy for # notifying annual users their subscription will renew shortly. # This probably should be ignored for monthly subscriptions. events.subscribe "stripe.invoice.upcoming", Pay::Stripe::Webhooks::SubscriptionRenewing.new # Payment action is required to process an invoice events.subscribe "stripe.invoice.payment_action_required", Pay::Stripe::Webhooks::PaymentActionRequired.new # If a subscription is manually created on Stripe, we want to sync events.subscribe "stripe.customer.subscription.created", Pay::Stripe::Webhooks::SubscriptionCreated.new # If the plan, quantity, or trial ending date is updated on Stripe, we want to sync events.subscribe "stripe.customer.subscription.updated", Pay::Stripe::Webhooks::SubscriptionUpdated.new # When a customers subscription is canceled, we want to update our records events.subscribe "stripe.customer.subscription.deleted", Pay::Stripe::Webhooks::SubscriptionDeleted.new # Monitor changes for customer's default card changing events.subscribe "stripe.customer.updated", Pay::Stripe::Webhooks::CustomerUpdated.new # If a customer was deleted in Stripe, their subscriptions should be cancelled events.subscribe "stripe.customer.deleted", Pay::Stripe::Webhooks::CustomerDeleted.new # If a customer's payment source was deleted in Stripe, we should update as well events.subscribe "stripe.payment_method.attached", Pay::Stripe::Webhooks::PaymentMethodUpdated.new events.subscribe "stripe.payment_method.updated", Pay::Stripe::Webhooks::PaymentMethodUpdated.new events.subscribe "stripe.payment_method.card_automatically_updated", Pay::Stripe::Webhooks::PaymentMethodUpdated.new events.subscribe "stripe.payment_method.detached", Pay::Stripe::Webhooks::PaymentMethodUpdated.new end end |
.private_key ⇒ Object
38 39 40 |
# File 'lib/pay/stripe.rb', line 38 def self.private_key find_value_by_name(:stripe, :private_key) end |
.public_key ⇒ Object
34 35 36 |
# File 'lib/pay/stripe.rb', line 34 def self.public_key find_value_by_name(:stripe, :public_key) end |
.setup ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/pay/stripe.rb', line 24 def self.setup ::Stripe.api_key = private_key ::Stripe.api_version = "2020-08-27" # Used by Stripe to identify Pay for support ::Stripe.set_app_info("PayRails", partner_id: "pp_partner_IqhY0UExnJYLxg", version: Pay::VERSION, url: "https://github.com/pay-rails/pay") configure_webhooks end |
.signing_secret ⇒ Object
42 43 44 |
# File 'lib/pay/stripe.rb', line 42 def self.signing_secret find_value_by_name(:stripe, :signing_secret) end |