The Update Plan request enables you to change any of the following settings for an existing plan:
- Plan name
- Plan status (ACTIVE/INACTIVE)
- Initial charge amount
- Number of days in the trial period
- Charge on switch setting
- Grace period
- Maximum number of charges
Important
- The recurring charge amount, currency and frequency cannot be modified. However, they must be included in the request and contain the same values as the existing plan. Therefore you may wish to first retrieve the plan and then modify the retrieved plan values.
- Trials and initial charges cannot be added to existing plans. If a trial or initial charge already exists in the plan, its values can be modified.
For more information about working with subscriptions, see the Subscriptions tutorial.
Request Content
Send a plan object, with the following:
chargeFrequency string required
gracePeriodDays integer optional
trialPeriodDays integer optional
initialChargeAmount decimal optional
name string required
currency string required
maxNumberOfCharges integer optional
recurringChargeAmount decimal required
chargeOnPlanSwitch boolean optional
status string optional
Response Details
If successful, the response HTTP status code is 200 OK.
The response contains the plan object.
Examples
Request Examples
curl -v -X PUT https://sandbox.bluesnap.com/services/2/recurring/plans/2111111 \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
"chargeFrequency": "MONTHLY",
"trialPeriodDays": 7,
"initialChargeAmount": 30,
"name": "Gold Plan",
"currency": "USD",
"recurringChargeAmount": 19
}'
Response Examples
{
"chargeFrequency": "MONTHLY",
"gracePeriodDays": 10,
"trialPeriodDays": 7,
"initialChargeAmount": 30,
"name": "Gold Plan",
"planId": 2111111,
"currency": "USD",
"maxNumberOfCharges": 12,
"recurringChargeAmount": 19,
"chargeOnPlanSwitch": true,
"status": "ACTIVE"
}
Example Description
This example shows an Update Plan Request with new values being sent for the trialPeriodDays and initialChargeAmount fields. Note that the recurringChargeAmount, currency, and chargeFrequency fields must also be sent with the same values as the existing plan.
Back to Top
API Explorer
To test out a call, in the planId field, enter the ID of an existing plan. In the Body Content field, paste in the JSON portion of the request and then click Try it!
Important
- The recurring charge amount, currency and frequency cannot be modified. However, they must be included in the request and contain the same values as the existing plan. Therefore you may wish to first retrieve the plan and then modify the retrieved plan values.
- Trials and initial charges cannot be added to existing plans. If a trial or initial charge already exists in the plan, its values can be modified.
