Update subscription details
Use a valid access token and send a PUT request to/v1/commerce/billing/subscriptions/{id}
with the modified request parameters such as external customer ID, plan code, billing time, auto-renew setting, and metadata.
Path parameter: id
is the subscription ID returned when you created the subscription.
On successful request processing, PayPal returns the updated subscription details.
Important: When updating subscription charges inplan_overrides.charges[]
, ensure you include both theid
andmetric_id
fields for each charge you want to modify. Theid
identifies the specific charge to update andmetric_id
identifies the metric associated with that charge. Both fields are required.
Note: For the exhaustive list of request and response parameter descriptions, see API reference.
Cancel a subscription
Subscription cancellation provides flexible options for ending billing relationships. You can cancel:- Active subscriptions: Subscriptions currently in effect. Can be cancelled immediately or scheduled for the end of the current billing period.
- Pending subscriptions: Subscriptions scheduled to start in the future or new plans from downgrades waiting to take effect at the end of the billing period. Can only be cancelled immediately.
Cancel immediately
Use a valid access token and send a POST request to/v1/commerce/billing/subscriptions/{id}/cancel
with cancel_option
set to IMMEDIATE
.
Path parameter: id
is the subscription ID returned when you created the subscription.
On successful request processing, PayPal returns the subscription details with status changed to CANCELED
.
Note: For the exhaustive list of request and response parameter descriptions, see API reference.
Cancel at period end
Use a valid access token and send a POST request to/v1/commerce/billing/subscriptions/{id}/cancel
with cancel_option
set to END_OF_PERIOD
.
Path parameter: id
is the subscription ID returned when you created the subscription.
On successful request processing, PayPal returns the subscription details. The status remains ACTIVE
until cancellation date. The response includes cancel_at_period_end
set to true
and cancellation_date
showing when the subscription will end.
Note: For the exhaustive list of request and response parameter descriptions, see API reference.
Manage subscription entitlements
Subscription entitlements allow you to customize feature access and capabilities for individual subscriptions, overriding the default plan entitlements. This provides flexibility to offer tailored features, limits, and permissions to specific customers based on their needs or negotiated agreements.Update subscription entitlements
Use a valid access token and send a PATCH request to/v1/commerce/billing/subscriptions/{external_id}/entitlements
with the entitlements to update.
Path parameter: external_id
is the external subscription ID provided when you created the subscription.
On successful request processing, PayPal updates privilege values for the specified entitlements. New privileges or features are added, existing values are overwritten if duplicates are found, and items not included remain unchanged. These updates override the default plan entitlements for this specific subscription.
- For the exhaustive list of request and response parameter descriptions, see API reference.
- The response includes both
plan_value
andoverride_value
parameters. Theplan_value
shows the default value from the plan, whileoverride_value
shows the customized value for this subscription.
List subscription entitlements
Use a valid access token and send a GET request to/v1/commerce/billing/subscriptions/{external_id}/entitlements
to retrieve all entitlements for a specific subscription.
Path parameter: external_id
is the external subscription ID provided when you created the subscription.
On successful request processing, PayPal returns the subscription’s entitlements, showing both plan defaults and any subscription-specific overrides.
Note: For the exhaustive list of response parameter descriptions, see API reference.
Remove privilege overrides
To remove a privilege override for a subscription and revert to the plan default, send a DELETE request to/v1/commerce/billing/subscriptions/{external_id}/entitlements/{feature_code}/privileges/{privilege_code}
.
Path parameters:
external_id
: The external subscription ID provided when you created the subscription.feature_code
: The unique code you provided when you created the feature.privilege_code
: The unique code you provided when you created the privilege.
Note: For the exhaustive list of response parameter descriptions, see API reference.
Remove subscription entitlement overrides
To remove all overrides for a specific subscription and revert to plan defaults, use a valid access token and send a DELETE request to/v1/commerce/billing/subscriptions/{external_id}/entitlements/{feature_code}
.
Path parameters:
external_id
: The external subscription ID provided when you created the subscription.feature_code
: The unique code you provided when you created the feature.
Note: For the exhaustive list of response parameter descriptions, see API reference.