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.