mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
17 lines
517 B
Ruby
17 lines
517 B
Ruby
# frozen_string_literal: true
|
|
|
|
class RecurringPayments
|
|
def self.setup_for(customer)
|
|
return unless card = customer.user.default_card
|
|
return unless stripe_account = customer.enterprise.stripe_account&.stripe_user_id
|
|
|
|
customer_id, payment_method_id =
|
|
Stripe::CreditCardCloner.new(card, stripe_account).find_or_clone
|
|
setup_intent = Stripe::SetupIntent.create(
|
|
{ payment_method: payment_method_id, customer: customer_id },
|
|
stripe_account:
|
|
)
|
|
setup_intent.client_secret
|
|
end
|
|
end
|