# CreateRecurringBillingSubscriptionPlanInput

Input · GraphQL API

Top-level input fields for creating a recurring billing subscription plan.

## Fields

- `clientMutationId` (`String`): An identifier used to reconcile requests and responses. 255 characters maximum.
- `name` (`String!`) — required: The name of the plan.
- `description` (`String`): A description of the plan.
- `monetaryAmount` (`MonetaryAmountInput!`) — required: The base price and currency for the plan.
- `billingFrequency` (`Int!`) — required: Specifies the billing interval of the plan.
- `billingDayOfMonth` (`Int`): The day of the month subscriptions to this plan are billed. If not specified, subscriptions will be billed on the day they are created. For example, a subscription created on the 15th will bill on the 15th of each cycle. Valid values are 1-28 and 31 (last day of month). Values 29 and 30 are not allowed; use 31 instead.
- `numberOfBillingCycles` (`Int!`) — required: The number of times the billing cycle will be executed. Use 0 to indicate the plan never expires.
- `trial` (`RecurringBillingSubscriptionTrialInput`): Trial period configuration for the plan.
- `modificationIds` (`[ID!]`): The collection of add-on and discount IDs to associate with this plan. These reference existing add-on and discount templates. Ignored if either add-ons or discounts are provided.
- `addOns` (`[CreateRecurringBillingSubscriptionPlanAddOnInput!]`): Operations for managing add-ons on this plan. Takes precedence over modificationIds.
- `discounts` (`[CreateRecurringBillingSubscriptionPlanDiscountInput!]`): Operations for managing discounts on this plan. Takes precedence over modificationIds.

## Used by

- [createRecurringBillingSubscriptionPlan](/braintree/graphql/reference/mutations/create-recurring-billing-subscription-plan) — Mutation; input

## GraphQL definition

```graphql
input CreateRecurringBillingSubscriptionPlanInput {
  clientMutationId: String
  name: String!
  description: String
  monetaryAmount: MonetaryAmountInput!
  billingFrequency: Int!
  billingDayOfMonth: Int
  numberOfBillingCycles: Int!
  trial: RecurringBillingSubscriptionTrialInput
  modificationIds: [ID!]
  addOns: [CreateRecurringBillingSubscriptionPlanAddOnInput!]
  discounts: [CreateRecurringBillingSubscriptionPlanDiscountInput!]
}
```

---

[View the complete GraphQL schema on GitHub](https://raw.githubusercontent.com/braintree/graphql-api/refs/heads/master/schema.graphql)