Skip to main content
POST
/
plans
curl --request POST \
--url https://api-m.paypal.com/v1/commerce/billing/plans \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "UBB Plan - Pro",
"code": "ubb_plan_1753826420",
"billing_cycle": "WEEKLY",
"description": "Pro plan for pro UBB customers",
"amount": {
"value": 160,
"currency_code": "USD"
},
"trial_period": 0,
"pay_in_advance": true,
"usage_based_charges": [
{
"metric_id": "92c9175c-31a6-4d74-b607-ac3915796ab9",
"charge_model": "STANDARD",
"properties": {
"amount": "1.00"
},
"min_amount": {
"value": 1
}
}
],
"minimum_commitment": {
"amount": {
"value": 100
},
"invoice_display_name": "Minimum Commitment",
"id": "cc82edfd-8198-4942-bed8-fcd7afb5191e",
"plan_code": "ubb_plan_1753826420",
"created_at": "2025-07-31T08:41:19Z",
"updated_at": "2025-07-31T08:41:19Z"
}
}'
{
"name": "UBB Plan - Pro",
"code": "ubb_plan_1753826420",
"billing_cycle": "WEEKLY",
"description": "Pro plan for pro UBB customers",
"amount": {
"value": 160,
"currency_code": "USD"
},
"trial_period": 0,
"pay_in_advance": true,
"usage_based_charges": [
{
"id": "fggdgd5c-31a6-4d74-b607-ac3915796ab9",
"metric_id": "92c9175c-31a6-4d74-b607-ac3915796ab9",
"charge_model": "STANDARD",
"properties": {
"amount": "1.00"
},
"min_amount": {
"value": 1,
"currency_code": "USD"
}
}
],
"minimum_commitment": {
"amount": {
"value": 100,
"currency_code": "USD"
},
"invoice_display_name": "Minimum Commitment",
"id": "cc82edfd-8198-4942-bed8-fcd7afb5191e",
"plan_code": "ubb_plan_1753826420",
"created_at": "2025-07-31T08:41:19Z"
},
"created_at": "2025-07-30T00:59:35Z",
"id": "95de3538-3827-496b-89a0-120745360830"
}

Authorizations

Authorization
string
header
required

Use the /v1/oauth2/token endpoint to obtain an access token and pass it as a Bearer token in the Authorization header.

Body

application/json
name
string
code
string
billing_cycle
enum<string>

The billing cycle indicating how often the subscription is charged

Available options:
WEEKLY,
MONTHLY,
QUARTERLY,
YEARLY
Example:

"MONTHLY"

description
string
amount
object
trial_period
integer
pay_in_advance
boolean
tax_codes
string[]

List of unique codes used to identify taxes to be applied.

Example:
["standard_vat"]
minimum_commitment
object

Minimum commitment for this plan.

usage_based_charges
object[]

Response

Plan created successfully

id
string

Unique identifier of the plan. This ID is used internally to track the plan and cannot be modified.

Example:

"1a901a90-1a90-1a90-1a540-1a901a901a90"

name
string
code
string
billing_cycle
enum<string>

The billing cycle indicating how often the subscription is charged

Available options:
WEEKLY,
MONTHLY,
QUARTERLY,
YEARLY
Example:

"MONTHLY"

description
string
amount
object
trial_period
integer
pay_in_advance
boolean
taxes
object[]

List of tax entities configured for the plan.

usage_based_charges
object[]
minimum_commitment
object

Minimum commitment for this plan.

created_at
string<date-time>

Date and time in ISO 8601 format.

Example:

"2023-10-01T12:00:00Z"

I