Sha256: d270d4f2b7cb21ae63bbdcdbde613897779ae1472f45e016deb551566f6195fa
Contents?: true
Size: 882 Bytes
Versions: 4
Compression:
Stored size: 882 Bytes
Contents
require 'stripe/event' module Stripe module EventDispatch def dispatch_stripe_event(request) retrieve_stripe_event(request) do |evt| target = evt.data.object ::Stripe::Callbacks.run_callbacks(evt, target) end end def retrieve_stripe_event(request) id = request['id'] body = request.body.read sig_header = request.headers['HTTP_STRIPE_SIGNATURE'] endpoint_secret = ::Rails.application.config.stripe.signing_secret # this is a webhook test if id == 'evt_00000000000000' event = Stripe::Event.construct_from(JSON.parse(body)) elsif Object.const_defined?('Stripe::Webhook') && sig_header && endpoint_secret event = ::Stripe::Webhook.construct_event(body, sig_header, endpoint_secret) else event = Stripe::Event.retrieve(id) end yield event end end end
Version data entries
4 entries across 4 versions & 1 rubygems