Update a plan 

Billing
Plans
Update a plan

Updates the specified plan by setting the values of the parameters passed. Any parameters not provided are left unchanged. By design, you cannot change a plan’s ID, amount, currency, or billing cycle.

Parameters

  • activeboolean

    Whether the plan is currently available for new subscriptions.

  • metadataobject

    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 to metadata.

  • nicknamestring

    A brief description of the plan, hidden from customers.

More parameters

  • productstring

    The product the plan belongs to. This cannot be changed once it has been used in a subscription or subscription schedule.

  • trial_period_daysinteger

    Default number of trial days when subscribing a customer to this plan using trial_from_plan=true.

Returns

The updated plan object is returned upon success. Otherwise, this call raises an error.

POST /v1/plans/:id
curl https://api.stripe.com/v1/plans/plan_NjpIbv3g3ZibnD \
-u "sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2:" \
-d "metadata[order_id]"=6735
Response
{
"id": "plan_NjpIbv3g3ZibnD",
"object": "plan",
"active": true,
"amount": 1200,
"amount_decimal": "1200",
"billing_scheme": "per_unit",
"created": 1681851647,
"currency": "usd",
"interval": "month",
"interval_count": 1,
"livemode": false,
"metadata": {
"order_id": "6735"
},
"nickname": null,
"product": "prod_NjpI7DbZx6AlWQ",
"tiers_mode": null,
"transform_usage": null,
"trial_period_days": null,
"usage_type": "licensed"
}