Current section
Files
Jump to
Current section
Files
stubs/bling.ex.stub
defmodule <%= @module_name %>.Bling do
@behaviour Bling
@impl Bling
def can_manage_billing?(_conn, _customer) do
false
end
@impl Bling
def to_stripe_params(customer) do
# pass any valid Stripe.Customer.create/2 params here
# e.g. %{name: user.name, email: user.email}
case customer do
# %<%= @module_name %>.Accounts.User{} -> %{email: customer.email}
_ -> %{}
end
end
@impl Bling
def tax_rate_ids(_customer), do: []
@impl Bling
def handle_stripe_webhook_event(%Stripe.Event{} = event) do
case event.type do
"invoice.payment_action_required" ->
# todo: send email
nil
"invoice.payment.failed" ->
# todo: send email
nil
_ ->
nil
end
:ok
end
end