# Plans Plans are collections of Prices which define the unit cost, currency, and (optional) billing cycle for both recurring and one-time purchases of Products. While Products help you track inventory or provisioning, plans and prices help you track payment terms. Different physical goods or levels of service should be represented by products, and pricing and billing cycle options should be represented by prices grouped together in a plan. This approach lets you change prices without having to change your provisioning scheme. For example, you might have a single ''Gold'' product that has prices for $100/month, $1000/year, and $50 once with the alternative billing cycle and pricing options each represented by a different plan and the recurring and one-time prices represented by different prices. ## Retrieve a plan - [GET /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/getplan.md): Retrieves the plan with the given ID. ## Update a plan - [PATCH /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/updateplan.md): Updates the specified plan by setting the values of the parameters passed. Any parameters not provided will be left unchanged. ## Delete a plan - [DELETE /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/deleteplan.md): Permanently deletes a plan. It cannot be undone. ## List plans - [GET /plans](https://developer.zuora.com/other-api/quickstart-api/plans/getplans.md): Returns a dictionary with a data property that contains an array of plans, starting after the cursor, if used. Each entry in the array is a separate plan object. If no more plans are available, the resulting array will be empty. This request should never return an error. ## Create a plan - [POST /plans](https://developer.zuora.com/other-api/quickstart-api/plans/createplan.md): Creates a new plan for an existing product.