# `Stripe.Services.SubscriptionItemService`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/services/subscription_item_service.ex#L2)

SubscriptionItem

Subscription items allow you to create customer subscriptions with more than
one plan, making it easy to represent complex billing relationships.

# `create`

```elixir
@spec create(Stripe.Client.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Create a subscription item

Adds a new item to an existing subscription. No existing items will be changed or replaced.

# `delete`

```elixir
@spec delete(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Delete a subscription item

Deletes an item from the subscription. Removing a subscription item from a subscription will not cancel the subscription.

# `list`

```elixir
@spec list(Stripe.Client.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

List all subscription items

Returns a list of your subscription items for a given subscription.

# `retrieve`

```elixir
@spec retrieve(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Retrieve a subscription item

Retrieves the subscription item with the given ID.

# `update`

```elixir
@spec update(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Update a subscription item

Updates the plan or quantity of an item on a current subscription.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
