1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-07-18 20:59:39 +02:00
Maybe/app/models/provider/stripe/subscription_event_processor.rb

30 lines
600 B
Ruby
Raw Normal View History

class Provider::Stripe::SubscriptionEventProcessor < Provider::Stripe::EventProcessor
Error = Class.new(StandardError)
def process
raise Error, "Family not found for Stripe customer ID: #{customer_id}" unless family
family.update(
stripe_plan_id: plan_id,
stripe_subscription_status: subscription_status
)
end
private
def family
Family.find_by(stripe_customer_id: customer_id)
end
def customer_id
event_data.customer
end
def plan_id
event_data.plan.id
end
def subscription_status
event_data.status
end
end