Update Plan

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.

Try it in the API Explorer

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"
}

Back to Top


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.
Language
Authorization
:
Click Try It! to start a request and see the response here!