Change subscription quantity
Last updated: Sept 23rd, 6:59pm
Quantity-based, also known as user or seat-based, subscriptions allow consumers to subscribe to a plan and specify the number of units at the time of subscription. This gives subscribers the flexibility to change from one quantity to another depending on their need. For example, a remote tech support agency might have these different plans:
- Basic Plan - $4 per tech support agent, monthly plan.
- Premium Plan - $6 per tech support agent, monthly plan.
A subscribing company might start with the basic plan and 4 agents and then decide to increase to 10 agents to accommodate growth in the company.
Change quantity
To change the quantity of seats or units for a subscription, copy the following code and modify it.
Sample request
API endpoint used: Revise plan or quantity of subscription
1curl -v -X POST https://api-m.sandbox.paypal.com/v1/subscriptions/I-BW452GLLEP1G/revise2-H "PayPal-Auth-Assertion: AUTH-ASSERTION" /3-H "Content-Type: application/json" \4-H "Authorization: Bearer ACCESS-TOKEN" \5-d '{6 "plan_id": "P-5ML4271244454362WXNWU5NQ",7 "quantity": "10"8}'
Modify the code
After you copy the code in the sample request, modify the following:
ACCESS-TOKEN
- Your access token.- Subscription ID - In the URI for the API call, replace the sample ID with the ID for the subscription you want to update. In this example the subscription ID is
I-BW452GLLEP1G
. - Plan ID - Replace the sample ID with the plan ID you want to use in the subscription. In this example the plan ID is
P-5ML4271244454362WXNWU5NQ
. - Quantity - Replace the sample quantity with the number of units you want.
While this sample code increases the number of units, you can also decrease the number of units in a similar manner.
Subscriptions using PayPal require the user to login and re-consent to the change using the approve HATEOAS URL returned in the response. If re-consent is not done or if it fails, the subscription continues to be billed on the existing quantity. Subscriptions using direct card payment do not need re-consent.
Billing changes
The new price is effective starting on the next billing cycle. Proration and one-time fees aren't automatically supported. If you want to prorate the difference at the time the plan changes or charge one-time fees, you need to do these manually.
In the following example, a subscriber's billing cycle is at the beginning of the month, and they change the quantity of their plan mid-cycle.
- Subscriber starts the Basic $4 per unit quantity plan with 5 tech support agents, which amounts to $20 on 1 January.
- Subscriber increases to 10 tech support agents on 15 March.
- Subscriber is charged the new price of $40 ($4 per unit * 10) from 1 April billing cycle onwards.
See also
- Pricing plans
- Subscriptions REST API - Use the Subscriptions REST API manage subscriptions, including: updating, suspending, canceling a subscription.