View Source ExOAPI.Stripe.SDK.Invoiceitems (exoapi_stripe v0.1.4)

Link to this section Summary

Functions

description: <p>Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they’re not attached to invoices, or if it’s attached to a draft invoice.</p>

description: <p>Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.</p>

description: <p>Retrieves the invoice item with the given ID.</p>

description: <p>Creates an item to be added to a draft invoice (up to 250 items per invoice). If no invoice is specified, the item will be on the next invoice created for the customer specified.</p>

description: <p>Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it’s attached to is closed.</p>

Link to this section Types

Link to this type

get_invoiceitems_invoiceitem_opts()

View Source
@type get_invoiceitems_invoiceitem_opts() :: {:expand, String.t()}
Link to this type

get_invoiceitems_opts()

View Source
@type get_invoiceitems_opts() ::
  {:starting_after, String.t()}
  | {:pending, String.t()}
  | {:limit, String.t()}
  | {:invoice, String.t()}
  | {:expand, String.t()}
  | {:ending_before, String.t()}
  | {:customer, String.t()}
  | {:created, String.t()}

Link to this section Functions

Link to this function

delete_invoiceitems_invoiceitem(client, body, invoiceitem)

View Source
@spec delete_invoiceitems_invoiceitem(
  client :: ExOAPI.Client.t(),
  body :: %{} | map(),
  invoiceitem :: String.t()
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | ExOAPI.Stripe.Schemas.DeletedInvoiceitem.t()
   | map()}
  | {:error, any()}

description: <p>Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they’re not attached to invoices, or if it’s attached to a draft invoice.</p>

Link to this function

get_invoiceitems(client, opts \\ [])

View Source
@spec get_invoiceitems(client :: ExOAPI.Client.t(), [get_invoiceitems_opts()]) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | %{
       url: String.t(),
       object: String.t() | :list,
       has_more: boolean(),
       data: [ExOAPI.Stripe.Schemas.Invoiceitem.t()]
     }
   | map()}
  | {:error, any()}

description: <p>Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.</p>

Link to this function

get_invoiceitems_invoiceitem(client, invoiceitem, opts \\ [])

View Source
@spec get_invoiceitems_invoiceitem(
  client :: ExOAPI.Client.t(),
  invoiceitem :: String.t(),
  [get_invoiceitems_invoiceitem_opts()]
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | ExOAPI.Stripe.Schemas.Invoiceitem.t()
   | map()}
  | {:error, any()}

description: <p>Retrieves the invoice item with the given ID.</p>

Link to this function

post_invoiceitems(client, body)

View Source
@spec post_invoiceitems(
  client :: ExOAPI.Client.t(),
  body ::
    %{
      unit_amount_decimal: String.t(),
      unit_amount: integer(),
      tax_rates: [String.t()],
      subscription: String.t(),
      quantity: integer(),
      price_data: %{
        unit_amount_decimal: String.t(),
        unit_amount: integer(),
        tax_behavior: String.t() | :exclusive | :inclusive | :unspecified,
        product: String.t(),
        currency: String.t()
      },
      price: String.t(),
      period: %{start: integer(), end: integer()},
      metadata: String.t() | map(),
      invoice: String.t(),
      expand: [String.t()],
      discounts: String.t() | [%{discount: String.t(), coupon: String.t()}],
      discountable: boolean(),
      description: String.t(),
      customer: String.t(),
      currency: String.t(),
      amount: integer()
    }
    | map()
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | ExOAPI.Stripe.Schemas.Invoiceitem.t()
   | map()}
  | {:error, any()}

description: <p>Creates an item to be added to a draft invoice (up to 250 items per invoice). If no invoice is specified, the item will be on the next invoice created for the customer specified.</p>

Link to this function

post_invoiceitems_invoiceitem(client, body, invoiceitem)

View Source
@spec post_invoiceitems_invoiceitem(
  client :: ExOAPI.Client.t(),
  body ::
    %{
      unit_amount_decimal: String.t(),
      unit_amount: integer(),
      tax_rates: String.t() | [String.t()],
      quantity: integer(),
      price_data: %{
        unit_amount_decimal: String.t(),
        unit_amount: integer(),
        tax_behavior: String.t() | :exclusive | :inclusive | :unspecified,
        product: String.t(),
        currency: String.t()
      },
      price: String.t(),
      period: %{start: integer(), end: integer()},
      metadata: String.t() | map(),
      expand: [String.t()],
      discounts: String.t() | [%{discount: String.t(), coupon: String.t()}],
      discountable: boolean(),
      description: String.t(),
      amount: integer()
    }
    | map(),
  invoiceitem :: String.t()
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | ExOAPI.Stripe.Schemas.Invoiceitem.t()
   | map()}
  | {:error, any()}

description: <p>Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it’s attached to is closed.</p>