Subscription Plans

Learn how to create Subscription Plans to manage Subscriptions at scale.


Subscription plans are templates with set recurring costs and frequencies that can be used to create subscriptions for individual buyers.

Example use cases for Subscription Plans:

  • You have pricing tiers (e.g., Basic, Premium, Deluxe, Enterprise). You can use the pricing tiers to group subscriptions under them.
  • You have different products or services you offer that have different recurring costs and frequencies (e.g. 30 min guitar lessons, 60 min guitar lessons,)
  • You charge different recurring rates based on the location
Early Access

This product is in early access. This product requires an additional fee. Your Finix Point of Contact will update you on pricing for this feature.


Creating a Subscription Plan on the Finix Dashboard

You can create a Subscription Plan in the Finix Dashboard without any development work. Using the Finix Dashboard, you can:

  • Create Subscription Plans
  • View all existing Subscription Plans
  • De-Activate a Subscription Plan if you no longer want to add new subscriptions under that Subscription Plan.

Step 1: Navigate to Subscription Plans

To create a Subscription Plan in the Finix Dashboard:

  1. Log into the Finix Dashboard.
  2. Click Billing > Subscription Plans.
  3. Click Create Subscription Plan
  4. Fill out the form with the requested details.

Subscriptions List Page

Step 2. Create a Subscription Plan

When you click on Create Subscription Plan, a form will appear with the following options:

Billing Settings

This section specifies how you want to bill your buyers.

  • Subscription Name
  • Billing Frequency
  • Recurring Price

Trial Phase

You can enter a trial phase if your Subscription requires a set number of days before charging the buyer. For example, a 30-day trial, 3-month trial, or other combinations are possible.

Discount Phase

You can enter a discount phase if you would like to have a discounted rate for a set of amount of intervals. These take place after the Trial Phase is completed.

Review and Create Subscription Plans

After filling out the previous section, you can create the Subscription Plan.

Creating a Subscription from a Subscription Plan

You have two options to create a Subscription from a Subscription Plan.

From the Subscription Plan Details Page

  1. Navigate to a Subscription Plan
  2. Click on the Actions dropdown on the top right
  3. Select Create Subscription
  4. Enter the buyer information and complete the form.

From the Subscriptions List Page

  1. Click Billing > Subscriptions.
  2. Click Create Subscription
  3. Unselect Create subscription without a plan
  4. Select a Subscription Plan
  5. Enter the buyer information and complete the form.

Creating a Subscription Plan via API

To create a Subscription Plan, include:

  • The ID of the Merchant that the Subscription Plan will be linked_to
  • The amount and currency of the Subscription Plan
  • Additional details of the Subscription Plan. For detailed API information, please see our Subscriptions Plans API Reference.

At this time, only APPROVED Merchants with one of the following processors can create Subscription Plans:

  • DUMMY_V1
  • FINIX_V1
Create Subscription Plan Request
curl https://finix.sandbox-payments-api.com/subscription_plans \
    -H 'Content-Type: application/json' \
    -H 'Finix-Version: 2022-02-01' \
    -u USksBJMwkNUz5GyxPevL2yFY:71b641c1-861d-435b-9a9c-532760731c5e \
    -X POST \
    -d '{
        "amount": 1099,
        "currency": "USD",
        "plan_name": "Bronze Plan",
        "description": "Test",
        "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
        "linked_type": "MERCHANT",
        "billing_interval": "MONTHLY",
        "billing_defaults": {
            "collection_method": "BILL_AUTOMATICALLY"
        },
        "trial_defaults": {
            "interval_type": "MONTH",
            "interval_count": "1"
        }
    }'
Create Subscription Plan Response
{
    "id": "subscription_plan_cd92Tzs8qNPbNbd2JMhN5",
    "created_at": "2024-07-13T00:28:58.42Z",
    "updated_at": "2024-07-13T00:28:58.42Z",
    "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
    "linked_type": "MERCHANT",
    "billing_interval": "MONTHLY",
    "nickname": null,
    "plan_name": "Bronze Plan",
    "description": "Test",
    "amount": 1099,
    "currency": "USD",
    "billing_defaults": {
        "collection_method": "BILL_AUTOMATICALLY",
        "send_invoice": false,
        "send_receipt": false
    },
    "trial_defaults": {
        "interval_type": "MONTH",
        "interval_count": 1
    },
    "state": "ACTIVE",
    "_links": {
        "self": {
            "href": "https://finix.sandbox-payments-api.com/subscription_plans/subscription_plan_cd92Tzs8qNPbNbd2JMhN5"
        }
    }
}

Creating a Subscription from a Subscription Plan via the API

To create a Subscription from a Subscription Plan, specify the subscription_plan_id in the request body of a Subscription.

Create Subscription Request
curl https://finix.sandbox-payments-api.com/subscriptions \
    -H 'Content-Type: application/json' \
    -H 'Finix-Version: 2022-02-01' \
    -u USksBJMwkNUz5GyxPevL2yFY:71b641c1-861d-435b-9a9c-532760731c5e \
    -X POST \
    -d '{
        "amount": 1099,
        "currency": "USD",
        "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
        "linked_type": "MERCHANT",
        "subscription_plan_id": "subscription_plan_cd92Tzs8qNPbNbd2JMhN5",
        "subscription_details": {
            "collection_method": "BILL_AUTOMATICALLY"
        },
        "buyer_details": {
            "identity_id": "ID2maTpthyAYJWnZ5kDD42Cd",
            "instrument_id": "PInE8utFwr4eoXdftZBQuxGw"
        }
    }'
Create Subscription Response
{
    "id": "subscription_cd93R9WNaowZCDMGbyzc6",
    "created_at": "2024-07-13T00:41:32.38Z",
    "updated_at": "2024-07-13T00:41:32.38Z",
    "first_charge_at": "2024-07-13T00:41:32.00Z",
    "amount": 1099,
    "buyer_details": {
        "identity_id": "ID2maTpthyAYJWnZ5kDD42Cd",
        "instrument_id": "PInE8utFwr4eoXdftZBQuxGw"
    },
    "currency": "USD",
    "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
    "linked_type": "MERCHANT",
    "nickname": null,
    "billing_interval": "MONTHLY",
    "subscription_details": {
        "collection_method": "BILL_AUTOMATICALLY",
        "send_invoice": false,
        "send_receipt": false,
        "trial_details": {
            "interval_type": "MONTH",
            "interval_count": 1,
            "trial_started_at": "2024-07-13T00:41:31.00Z",
            "trial_expected_end_at": "2024-08-13T00:41:31.00Z"
        }
    },
    "subscription_phase": "TRIAL",
    "state": "ACTIVE",
    "subscription_plan_id": "subscription_plan_cd92Tzs8qNPbNbd2JMhN5",
    "_links": {
        "self": {
            "href": "https://finix.sandbox-payments-api.com/subscriptions/subscription_cd93R9WNaowZCDMGbyzc6"
        }
    }
}

Creating a Subscription from a Subscription Plan via the API with a Start Date

You can specify a start date for a Subscription that uses a Subscription Plan.

To do so, include a start_subscription_at timestamp in the request body:

Create Subscription Request
curl https://finix.sandbox-payments-api.com/subscriptions \
    -H 'Content-Type: application/json' \
    -H 'Finix-Version: 2022-02-01' \
    -u USksBJMwkNUz5GyxPevL2yFY:71b641c1-861d-435b-9a9c-532760731c5e \
    -X POST \
    -d '{
        "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
        "linked_type": "MERCHANT",
        "subscription_plan_id": "subscription_plan_ccDDx1CcN1Mtqto55TWiZ",
        "start_subscription_at": "2025-05-05T22:42:05.490Z",
        "buyer_details": {
            "identity_id": "IDe8MHoq9cevVGocJwpAN8tR",
            "instrument_id": "PIh5syYGDw2SnvFjPVLcV3oD"
        }
    }'
Create Subscription Response
{
    "id": "subscription_cjDY6TyAEJ8do2LyapNUW",
    "created_at": "2025-01-28T15:23:53.48Z",
    "updated_at": "2025-01-28T15:23:53.48Z",
    "first_charge_at": "2025-05-05T22:42:05.49Z",
    "amount": 19900,
    "buyer_details": {
        "identity_id": "IDeDVrf2ahuKc9Eg5TeZugvz",
        "instrument_id": "PIeDVrf2ahuKc9Eg5TeZugvb",
        "requested_delivery_methods": []
    },
    "currency": "USD",
    "linked_to": "MUaC9hbNvRwBoCJzqrjWk69N",
    "linked_type": "MERCHANT",
    "nickname": null,
    "billing_interval": "MONTHLY",
    "subscription_details": {
        "collection_method": "BILL_AUTOMATICALLY",
        "send_invoice": false,
        "send_receipt": false,
        "trial_details": null,
        "discount_phase_details": null
    },
    "subscription_phase": "NONE",
    "state": "NOT_STARTED",
    "subscription_plan_id": "subscription_plan_cjDXvcWFaKb672s4zknCC",
    "start_subscription_at": "2025-05-05T22:42:05.490Z",
    "total_billing_intervals": null,
    "expires_at": null,
    "tags": {},
    "_links": {
        "self": {
            "href": "https://finix.sandbox-payments-api.com/subscriptions/subscription_cjDY6TyAEJ8do2LyapNUW"
        }
    }
}