Package com.stripe.param
Class PlanCreateParams.Builder
- java.lang.Object
-
- com.stripe.param.PlanCreateParams.Builder
-
- Enclosing class:
- PlanCreateParams
public static class PlanCreateParams.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PlanCreateParams.BuilderaddAllExpand(java.util.List<java.lang.String> elements)Add all elements to `expand` list.PlanCreateParams.BuilderaddAllTier(java.util.List<PlanCreateParams.Tier> elements)Add all elements to `tiers` list.PlanCreateParams.BuilderaddExpand(java.lang.String element)Add an element to `expand` list.PlanCreateParams.BuilderaddTier(PlanCreateParams.Tier element)Add an element to `tiers` list.PlanCreateParamsbuild()Finalize and obtain parameter instance from this builder.PlanCreateParams.BuilderputAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)Add all map key/value pairs to `extraParams` map.PlanCreateParams.BuilderputAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)Add all map key/value pairs to `metadata` map.PlanCreateParams.BuilderputExtraParam(java.lang.String key, java.lang.Object value)Add a key/value pair to `extraParams` map.PlanCreateParams.BuilderputMetadata(java.lang.String key, java.lang.String value)Add a key/value pair to `metadata` map.PlanCreateParams.BuildersetActive(java.lang.Boolean active)Whether the plan is currently available for new subscriptions.PlanCreateParams.BuildersetAggregateUsage(PlanCreateParams.AggregateUsage aggregateUsage)Specifies a usage aggregation strategy for plans ofusage_type=metered.PlanCreateParams.BuildersetAmount(java.lang.Long amount)A positive integer in %s (or 0 for a free plan) representing how much to charge on a recurring basis.PlanCreateParams.BuildersetAmountDecimal(java.math.BigDecimal amountDecimal)Same asamount, but accepts a decimal value with at most 12 decimal places.PlanCreateParams.BuildersetBillingScheme(PlanCreateParams.BillingScheme billingScheme)Describes how to compute the price per period.PlanCreateParams.BuildersetCurrency(java.lang.String currency)Three-letter ISO currency code, in lowercase.PlanCreateParams.BuildersetId(java.lang.String id)An identifier randomly generated by Stripe.PlanCreateParams.BuildersetInterval(PlanCreateParams.Interval interval)Specifies billing frequency.PlanCreateParams.BuildersetIntervalCount(java.lang.Long intervalCount)The number of intervals between subscription billings.PlanCreateParams.BuildersetMetadata(EmptyParam metadata)Set of key-value pairs that you can attach to an object.PlanCreateParams.BuildersetMetadata(java.util.Map<java.lang.String,java.lang.String> metadata)Set of key-value pairs that you can attach to an object.PlanCreateParams.BuildersetNickname(java.lang.String nickname)A brief description of the plan, hidden from customers.PlanCreateParams.BuildersetProduct(PlanCreateParams.Product product)PlanCreateParams.BuildersetProduct(java.lang.String product)PlanCreateParams.BuildersetTiersMode(PlanCreateParams.TiersMode tiersMode)Defines if the tiering price should begraduatedorvolumebased.PlanCreateParams.BuildersetTransformUsage(PlanCreateParams.TransformUsage transformUsage)Apply a transformation to the reported usage or set quantity before computing the billed price.PlanCreateParams.BuildersetTrialPeriodDays(java.lang.Long trialPeriodDays)Default number of trial days when subscribing a customer to this plan usingtrial_from_plan=true.PlanCreateParams.BuildersetUsageType(PlanCreateParams.UsageType usageType)Configures how the quantity per period should be determined.
-
-
-
Method Detail
-
build
public PlanCreateParams build()
Finalize and obtain parameter instance from this builder.
-
setActive
public PlanCreateParams.Builder setActive(java.lang.Boolean active)
Whether the plan is currently available for new subscriptions. Defaults totrue.
-
setAggregateUsage
public PlanCreateParams.Builder setAggregateUsage(PlanCreateParams.AggregateUsage aggregateUsage)
Specifies a usage aggregation strategy for plans ofusage_type=metered. Allowed values aresumfor summing up all usage during a period,last_during_periodfor using the last usage record reported within a period,last_everfor using the last usage record ever (across period bounds) ormaxwhich uses the usage record with the maximum reported usage during a period. Defaults tosum.
-
setAmount
public PlanCreateParams.Builder setAmount(java.lang.Long amount)
A positive integer in %s (or 0 for a free plan) representing how much to charge on a recurring basis.
-
setAmountDecimal
public PlanCreateParams.Builder setAmountDecimal(java.math.BigDecimal amountDecimal)
Same asamount, but accepts a decimal value with at most 12 decimal places. Only one ofamountandamount_decimalcan be set.
-
setBillingScheme
public PlanCreateParams.Builder setBillingScheme(PlanCreateParams.BillingScheme billingScheme)
Describes how to compute the price per period. Eitherper_unitortiered.per_unitindicates that the fixed amount (specified inamount) will be charged per unit inquantity(for plans withusage_type=licensed), or per unit of total usage (for plans withusage_type=metered).tieredindicates that the unit pricing will be computed using a tiering strategy as defined using thetiersandtiers_modeattributes.
-
setCurrency
public PlanCreateParams.Builder setCurrency(java.lang.String currency)
Three-letter ISO currency code, in lowercase. Must be a supported currency.
-
addExpand
public PlanCreateParams.Builder addExpand(java.lang.String element)
Add an element to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePlanCreateParams.expandfor the field documentation.
-
addAllExpand
public PlanCreateParams.Builder addAllExpand(java.util.List<java.lang.String> elements)
Add all elements to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePlanCreateParams.expandfor the field documentation.
-
putExtraParam
public PlanCreateParams.Builder putExtraParam(java.lang.String key, java.lang.Object value)
Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePlanCreateParams.extraParamsfor the field documentation.
-
putAllExtraParam
public PlanCreateParams.Builder putAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)
Add all map key/value pairs to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePlanCreateParams.extraParamsfor the field documentation.
-
setId
public PlanCreateParams.Builder setId(java.lang.String id)
An identifier randomly generated by Stripe. Used to identify this plan when subscribing a customer. You can optionally override this ID, but the ID must be unique across all plans in your Stripe account. You can, however, use the same plan ID in both live and test modes.
-
setInterval
public PlanCreateParams.Builder setInterval(PlanCreateParams.Interval interval)
Specifies billing frequency. Eitherday,week,monthoryear.
-
setIntervalCount
public PlanCreateParams.Builder setIntervalCount(java.lang.Long intervalCount)
The number of intervals between subscription billings. For example,interval=monthandinterval_count=3bills every 3 months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks).
-
putMetadata
public PlanCreateParams.Builder putMetadata(java.lang.String key, java.lang.String value)
Add a key/value pair to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePlanCreateParams.metadatafor the field documentation.
-
putAllMetadata
public PlanCreateParams.Builder putAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)
Add all map key/value pairs to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePlanCreateParams.metadatafor the field documentation.
-
setMetadata
public PlanCreateParams.Builder setMetadata(EmptyParam 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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value tometadata.
-
setMetadata
public PlanCreateParams.Builder setMetadata(java.util.Map<java.lang.String,java.lang.String> 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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value tometadata.
-
setNickname
public PlanCreateParams.Builder setNickname(java.lang.String nickname)
A brief description of the plan, hidden from customers.
-
setProduct
public PlanCreateParams.Builder setProduct(PlanCreateParams.Product product)
-
setProduct
public PlanCreateParams.Builder setProduct(java.lang.String product)
-
addTier
public PlanCreateParams.Builder addTier(PlanCreateParams.Tier element)
Add an element to `tiers` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePlanCreateParams.tiersfor the field documentation.
-
addAllTier
public PlanCreateParams.Builder addAllTier(java.util.List<PlanCreateParams.Tier> elements)
Add all elements to `tiers` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePlanCreateParams.tiersfor the field documentation.
-
setTiersMode
public PlanCreateParams.Builder setTiersMode(PlanCreateParams.TiersMode tiersMode)
Defines if the tiering price should begraduatedorvolumebased. Involume-based tiering, the maximum quantity within a period determines the per unit price, ingraduatedtiering pricing can successively change as the quantity grows.
-
setTransformUsage
public PlanCreateParams.Builder setTransformUsage(PlanCreateParams.TransformUsage transformUsage)
Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined withtiers.
-
setTrialPeriodDays
public PlanCreateParams.Builder setTrialPeriodDays(java.lang.Long trialPeriodDays)
Default number of trial days when subscribing a customer to this plan usingtrial_from_plan=true.
-
setUsageType
public PlanCreateParams.Builder setUsageType(PlanCreateParams.UsageType usageType)
Configures how the quantity per period should be determined. Can be eithermeteredorlicensed.licensedautomatically bills thequantityset when adding it to a subscription.meteredaggregates the total usage based on usage records. Defaults tolicensed.
-
-