Stripe.ShippingRate (stripity_stripe v3.3.2)

View Source

Shipping rates describe the price of shipping presented to your customers and applied to a purchase. For more information, see Charge for shipping.

Summary

Types

The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.

Describes a fixed amount to charge for shipping. Must be present if type is fixed_amount.

The upper bound of the estimated range. If empty, represents no upper bound i.e., infinite.

The lower bound of the estimated range. If empty, represents no lower bound.

t()

The shipping_rate type.

Functions

Creates a new shipping rate object.

Returns a list of your shipping rates.

Returns the shipping rate object with the given ID.

Updates an existing shipping rate object.

Types

created()

@type created() :: %{
  optional(:gt) => integer(),
  optional(:gte) => integer(),
  optional(:lt) => integer(),
  optional(:lte) => integer()
}

delivery_estimate()

@type delivery_estimate() :: %{
  optional(:maximum) => maximum(),
  optional(:minimum) => minimum()
}

The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.

fixed_amount()

@type fixed_amount() :: %{
  optional(:amount) => integer(),
  optional(:currency) => binary(),
  optional(:currency_options) => map()
}

Describes a fixed amount to charge for shipping. Must be present if type is fixed_amount.

maximum()

@type maximum() :: %{
  optional(:unit) => :business_day | :day | :hour | :month | :week,
  optional(:value) => integer()
}

The upper bound of the estimated range. If empty, represents no upper bound i.e., infinite.

minimum()

@type minimum() :: %{
  optional(:unit) => :business_day | :day | :hour | :month | :week,
  optional(:value) => integer()
}

The lower bound of the estimated range. If empty, represents no lower bound.

t()

@type t() :: %Stripe.ShippingRate{
  active: boolean(),
  created: integer(),
  delivery_estimate: term() | nil,
  display_name: binary() | nil,
  fixed_amount: term(),
  id: binary(),
  livemode: boolean(),
  metadata: term(),
  object: binary(),
  tax_behavior: binary() | nil,
  tax_code: (binary() | Stripe.TaxCode.t()) | nil,
  type: binary()
}

The shipping_rate type.

  • active Whether the shipping rate can be used for new purchases. Defaults to true.
  • created Time at which the object was created. Measured in seconds since the Unix epoch.
  • delivery_estimate The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.
  • display_name The name of the shipping rate, meant to be displayable to the customer. This will appear on CheckoutSessions.
  • fixed_amount
  • id Unique identifier for the object.
  • livemode Has the value true if the object exists in live mode or the value false if the object exists in test mode.
  • metadata Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
  • object String representing the object's type. Objects of the same type share the same value.
  • tax_behavior Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified.
  • tax_code A tax code ID. The Shipping tax code is txcd_92010001.
  • type The type of calculation to use on the shipping rate.

Functions

create(params \\ %{}, opts \\ [])

@spec create(
  params :: %{
    optional(:delivery_estimate) => delivery_estimate(),
    optional(:display_name) => binary(),
    optional(:expand) => [binary()],
    optional(:fixed_amount) => fixed_amount(),
    optional(:metadata) => %{optional(binary()) => binary()},
    optional(:tax_behavior) => :exclusive | :inclusive | :unspecified,
    optional(:tax_code) => binary(),
    optional(:type) => :fixed_amount
  },
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Creates a new shipping rate object.

Details

  • Method: post
  • Path: /v1/shipping_rates

list(params \\ %{}, opts \\ [])

@spec list(
  params :: %{
    optional(:active) => boolean(),
    optional(:created) => created() | integer(),
    optional(:currency) => binary(),
    optional(:ending_before) => binary(),
    optional(:expand) => [binary()],
    optional(:limit) => integer(),
    optional(:starting_after) => binary()
  },
  opts :: Keyword.t()
) ::
  {:ok, Stripe.List.t(t())} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Returns a list of your shipping rates.

Details

  • Method: get
  • Path: /v1/shipping_rates

retrieve(shipping_rate_token, params \\ %{}, opts \\ [])

@spec retrieve(
  shipping_rate_token :: binary(),
  params :: %{optional(:expand) => [binary()]},
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Returns the shipping rate object with the given ID.

Details

  • Method: get
  • Path: /v1/shipping_rates/{shipping_rate_token}

update(shipping_rate_token, params \\ %{}, opts \\ [])

@spec update(
  shipping_rate_token :: binary(),
  params :: %{
    optional(:active) => boolean(),
    optional(:expand) => [binary()],
    optional(:fixed_amount) => fixed_amount(),
    optional(:metadata) => %{optional(binary()) => binary()} | binary(),
    optional(:tax_behavior) => :exclusive | :inclusive | :unspecified
  },
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Updates an existing shipping rate object.

Details

  • Method: post
  • Path: /v1/shipping_rates/{shipping_rate_token}