Sha256: b27522ff0675a6511a1823e48b2bdae08dd4621c4692a30cb5aa9ca6c14d69cf
Contents?: true
Size: 1023 Bytes
Versions: 19
Compression:
Stored size: 1023 Bytes
Contents
# A subscription successfully moves to the next billing cycle. This will also occur when either a new transaction is created mid-cycle due to proration on an upgrade or a billing cycle is skipped due to the presence of a negative balance that covers the cost of the subscription. module Pay module Braintree module Webhooks class SubscriptionChargedSuccessfully def call(event) subscription = event.subscription return if subscription.nil? pay_subscription = Pay::Subscription.find_by_processor_and_id(:braintree, subscription.id) return unless pay_subscription.present? pay_customer = pay_subscription.customer pay_charge = Pay::Braintree::Billable.new(pay_customer).save_transaction(subscription.transactions.first) if pay_charge && Pay.send_email?(:receipt, pay_charge) Pay.mailer.with(pay_customer: pay_customer, pay_charge: pay_charge).receipt.deliver_later end end end end end end
Version data entries
19 entries across 19 versions & 1 rubygems