Module: Pay::PaddleBilling

Extended by:
Env
Defined in:
lib/pay/paddle_billing.rb,
lib/pay/paddle_billing/error.rb,
lib/pay/paddle_billing/charge.rb,
lib/pay/paddle_billing/billable.rb,
lib/pay/paddle_billing/subscription.rb,
lib/pay/paddle_billing/payment_method.rb,
lib/pay/paddle_billing/webhooks/subscription.rb,
lib/pay/paddle_billing/webhooks/transaction_completed.rb

Defined Under Namespace

Modules: Webhooks Classes: Billable, Charge, Error, PaymentMethod, Subscription

Class Method Summary collapse

Class Method Details

.api_keyObject



35
36
37
# File 'lib/pay/paddle_billing.rb', line 35

def self.api_key
  find_value_by_name(:paddle_billing, :api_key)
end

.client_tokenObject



31
32
33
# File 'lib/pay/paddle_billing.rb', line 31

def self.client_token
  find_value_by_name(:paddle_billing, :client_token)
end

.configure_webhooksObject



43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/pay/paddle_billing.rb', line 43

def self.configure_webhooks
  Pay::Webhooks.configure do |events|
    events.subscribe "paddle_billing.subscription.activated", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.canceled", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.created", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.imported", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.past_due", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.paused", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.resumed", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.trialing", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.subscription.updated", Pay::PaddleBilling::Webhooks::Subscription.new
    events.subscribe "paddle_billing.transaction.completed", Pay::PaddleBilling::Webhooks::TransactionCompleted.new
  end
end

.enabled?Boolean

Returns:

  • (Boolean)


16
17
18
19
20
# File 'lib/pay/paddle_billing.rb', line 16

def self.enabled?
  return false unless Pay.enabled_processors.include?(:paddle_billing) && defined?(::Paddle)

  Pay::Engine.version_matches?(required: "~> 2.1", current: ::Paddle::VERSION) || (raise "[Pay] paddle gem must be version ~> 2.1")
end

.environmentObject



27
28
29
# File 'lib/pay/paddle_billing.rb', line 27

def self.environment
  find_value_by_name(:paddle_billing, :environment) || "production"
end

.setupObject



22
23
24
25
# File 'lib/pay/paddle_billing.rb', line 22

def self.setup
  ::Paddle.config.environment = environment
  ::Paddle.config.api_key = api_key
end

.signing_secretObject



39
40
41
# File 'lib/pay/paddle_billing.rb', line 39

def self.signing_secret
  find_value_by_name(:paddle_billing, :signing_secret)
end