Skip to content

Commit

Permalink
add stripe webhooks
Browse files Browse the repository at this point in the history
  • Loading branch information
Ubuntu committed Mar 7, 2021
1 parent 67625c3 commit e874c27
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 1 deletion.
33 changes: 33 additions & 0 deletions app/controllers/webhooks_controller.rb
@@ -0,0 +1,33 @@
class WebhooksController < ApplicationController
skip_before_action :verify_authenticity_token

def create
payload = request.body.read
sig_header = request.env['HTTP_STRIPE_SIGNATURE']
event = nil

begin
event = Stripe::Webhook.construct_event(
payload, sig_header, Rails.application.credentials[:stripe][:webhook]
)
rescue JSON::ParserError => e
status 400
return
rescue Stripe::SignatureVerificationError => e
# Invalid signature
puts "Signature error"
p e
return
end

# Handle the event
case event.type
when 'checkout.session.completed'
session = event.data.object
@product = Product.find_by(price: session.amount_total)
@product.increment!(:sales_count)
end

render json: { message: 'success' }
end
end
2 changes: 1 addition & 1 deletion config/credentials.yml.enc
@@ -1 +1 @@
HVVntvxJjv1SQDR47M3m+N5m40ypwJI2GBOBe9QKq2hr17sfSX5f6ZXz6ajplfhNcuWJuf+YzGj2Nzg+d8aIkxvXikjNA3uLR1dltCEAj4+gA0AmUfu0HBYTj+55+UB5Gdw9I5O498eenBO1zw28uuwqHULbYP8wxffP7u+eXM00e+sKHeKSScYgtGthJ8rt59FC04cjw1P+4WxW6XClSrUVJ7LxmV/sqelt0p9h031KF9Re6fN+e8HN0OCIxzX5VQvpZWxRGeT61bhfhShZOppgGKhWQWn0oQNO5LHPPIOFBdFYCM7jZCjb1qw+yfhHMT3/wy0VJ2QmLAIqCiPR+3j83HR/4iT8wJQMdjVI7ugs2wHZwML2CW9evbpQcRhIBAliC5/V7V2ds54cFT1AKNAVXGC5U7pZ4zZnuHqaPMJadasm7r9xNJaRCC7ILApblGK2jaO6MxX9uG2JZjP9PpIWZzHgqEEDlA6S6u5G+rd8v1x2G5jPPfDBlkBa9KdlQ0qLsF/apNiopDEHL9f6hO6Ktbwouy4BUwK3UI5WJ18fpOytv29QiWjMkSP1RTrxohP4GFyHahmkk2M0F55iwNz5Co6WLlyp7wyg8aq2Xpy1Jg4xLF3MAtEtvzqZbE5g78fXCJEbX/VhgamVp4229YPgyYhSfduRgs4UiAlQn4+e3uHzm1v79f+nEbTMAZi2Ij8M2m01L2f8+DgThPUXo1/CZZRlz/UfJQ==--ER9k6lyiAFIF9bty--zJk6f+ZYmeZEemDeCD3iXA==
YM1UcQLCksu90a5FOgpGxKZRBrLd5oXWzN0/HC4I2R3PC9kZiHfKZDGn9cwXmIAs4LmfMeEY22+FPqLIhFVczItXxUF5+9gx1u4aaeE1d9fu9pi7Ucd5c8n72qbZ505HZqHV/xjINSwkIYX7owHIW5n/bIgH37ojg0JbVxjfGKAeLdw0+9tAafos2kTwx7iSUQm6NGk9z/hbDxpvoUIOuGc/fS4jKl8FVrYBq+MoMhZRge/EHgJIwJbLXJbJr+8klIoe6UCjTohCCD9Oa1Q6u1EfCfdmAVfDUXg73nmIu6ha+XaUzDnJkAr6i5QRJePNS39h5Gpg/q49yIpNdeqJ0OkhDXHaUKIPv+DPI/6avJ5R1Ya0rQaAaP0VDqb8I/7D2wm1a0mHr5MjoZwUlgMuY4bicB/bthrlqZpnuIUyuDuAdcnV0mCWaX8bzh/02VgaczB2Yem4cTthOzIpZXOUmulWM0VhPkJQMSuuvYiVkOlzyK+Fp2XjxxI1OszvKOel7ZqY68STb3yFXpETlNO7zhWnXTbkufK7+fhNMUkTOQx4dni1YWJZlIkTbmITF2B3arVLof1Bq4WqD19iYoOV5gT/8EjOEFwUZLgrCIQxGQ4s6ZPcGyWpDyp+kGajcCUNlHg8BthSyFIVaTUGYSPb0k+gHfHwg7sddLiHDs4fcxG1tQR/KylvHi8A1A+ayWKkrA6c8CvvFbElAjJadXANiRiJ6k/LU+jIla1HJj+CK73hxN5FUiPyINAqzf6caV8HyfRE8rEt+6CkfU+MIGo949N4QYDeFLn1Hhk8eRM=--XdcMKGJeK0w7cgML--v1gDBVQioljxUNqw1Y0lvQ==
1 change: 1 addition & 0 deletions config/routes.rb
Expand Up @@ -2,4 +2,5 @@
root "products#index"
resources :products
post "checkout/create", to: "checkout#create"
resources :webhooks, only: [:create]
end

0 comments on commit e874c27

Please sign in to comment.