stripity_stripe v2.2.0 Stripe.Subscription View Source
Work with Stripe subscription objects.
You can:
- Create a subscription
- Retrieve a subscription
- Update a subscription
- Delete a subscription
Stripe API reference: https://stripe.com/docs/api#subscription
Link to this section Summary
Functions
Create a subscription
Delete a subscription
Deletes the discount on a subscription
List all subscriptions
Retrieve a subscription
Update a subscription
Link to this section Types
Link to this type
t()
View Source
t() :: %Stripe.Subscription{ application_fee_percent: float() | nil, billing: String.t() | nil, billing_cycle_anchor: Stripe.timestamp() | nil, cancel_at_period_end: boolean(), canceled_at: Stripe.timestamp() | nil, created: Stripe.timestamp(), current_period_end: Stripe.timestamp() | nil, current_period_start: Stripe.timestamp() | nil, customer: Stripe.id() | Stripe.Customer.t(), days_until_due: integer() | nil, discount: Stripe.Discount.t() | nil, ended_at: Stripe.timestamp() | nil, id: Stripe.id(), items: Stripe.List.t(Stripe.SubscriptionItem.t()), livemode: boolean(), metadata: Stripe.Types.metadata(), object: String.t(), plan: Stripe.Plan.t() | nil, quantity: integer() | nil, start: Stripe.timestamp(), status: String.t(), tax_percent: float() | nil, trial_end: Stripe.timestamp() | nil, trial_start: Stripe.timestamp() | nil }
Link to this section Functions
Link to this function
create(params, opts \\ [])
View Source
create(params, Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()} when params: %{ :customer => Stripe.id() | Stripe.Customer.t(), optional(:application_fee_percent) => integer(), optional(:billing) => String.t(), optional(:billing_cycle_anchor) => Stripe.timestamp(), optional(:coupon) => Stripe.id() | Stripe.Coupon.t(), optional(:days_until_due) => non_neg_integer(), optional(:items) => [ %{ :plan => Stripe.id() | Stripe.Plan.t(), optional(:quantity) => non_neg_integer() } ], optional(:metadata) => Stripe.Types.metadata(), optional(:prorate) => boolean(), optional(:source) => Stripe.id() | Stripe.Source.t(), optional(:tax_percent) => float(), optional(:trial_end) => Stripe.timestamp(), optional(:trial_from_plan) => boolean(), optional(:trial_period_days) => non_neg_integer() }
Create a subscription.
Link to this function
delete(id, opts)
View Source
delete(Stripe.id() | t(), Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()}
delete(Stripe.id() | t(), params) :: {:ok, t()} | {:error, Stripe.Error.t()} when params: %{optional(:at_period_end) => boolean()}
Delete a subscription.
Takes the id
and an optional map of params
.
Link to this function
delete(id, params \\ %{}, opts \\ [])
View Source
delete(Stripe.id() | t(), params, Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()} when params: %{optional(:at_period_end) => boolean()}
Link to this function
delete_discount(id, opts \\ [])
View Source
delete_discount(Stripe.id() | t(), Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()}
Deletes the discount on a subscription.
Link to this function
list(params \\ %{}, opts \\ [])
View Source
list(params, Stripe.options()) :: {:ok, Stripe.List.t(t())} | {:error, Stripe.Error.t()} when params: %{ optional(:billing) => String.t(), optional(:created) => Stripe.date_query(), optional(:customer) => Stripe.Customer.t() | Stripe.id(), optional(:ending_before) => t() | Stripe.id(), optional(:limit) => 1..100, optional(:plan) => Stripe.Plan.t() | Stripe.id(), optional(:starting_after) => t() | Stripe.id(), optional(:status) => String.t() }
List all subscriptions.
Link to this function
retrieve(id, opts \\ [])
View Source
retrieve(Stripe.id() | t(), Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()}
Retrieve a subscription.
Link to this function
update(id, params, opts \\ [])
View Source
update(Stripe.id() | t(), params, Stripe.options()) :: {:ok, t()} | {:error, Stripe.Error.t()} when params: %{ optional(:application_fee_percent) => float(), optional(:billing) => String.t(), optional(:billing_cycle_anchor) => Stripe.timestamp(), optional(:coupon) => Stripe.id() | Stripe.Coupon.t(), optional(:days_until_due) => non_neg_integer(), optional(:items) => [ %{ :plan => Stripe.id() | Stripe.Plan.t(), optional(:quantity) => non_neg_integer() } ], optional(:metadata) => Stripe.Types.metadata(), optional(:prorate) => boolean(), optional(:proration_date) => Stripe.timestamp(), optional(:source) => Stripe.id() | Stripe.Source.t(), optional(:tax_percent) => float(), optional(:trial_end) => Stripe.timestamp(), optional(:trial_from_plan) => boolean() }
Update a subscription.
Takes the id
and a map of changes.