Payment plans

Flutterwave helps you collect payments recurrently from your customers using a payment plan. Payment plans allow you to create a subscription for your customers.

When you have created a payment plan you can subscribe a customer to it by simply passing the plan ID in your request to charge the customers' card.

You can take a look at our Payment plans endpoint to learn more about payment plans.

Payment plans parameters

Here are the parameters required to create a payment plan

Parameter

Required

Description

amount

True

This is the amount for the plan.

name

True

This is the name that would appear on the subscription reminder email

interval

True

This is the charge interval e.g interval: "daily"

duration

False

This is the frequency, it is numeric, e.g. if set to 5 and intervals is set to monthly you would be charged 5 months, and then the subscription stops

How to create a payment plan

{
  "amount": 5000,
  "name": "Church collections plan",
  "interval": "monthly",
  "duration": 48
}

🚧

Handling amount when creating a payment plan

Case 1: if amount is not set, the amount that would be used for the plan is the amount charged from the customer when you start the subscription.

Case 2: if amount is set when creating the plan, and an amount is passed when doing the subscription i.e. payment via the pay-button or via API calling charge endpoint. Then we charge the customer amount you passed at subscription as initial charge, and for subsequent charges use the amount set when creating the plan.

Case 3: if amount is not set when creating the plan, and an amount is passed when doing the subscription i.e. payment via the pay-button or via API call to the charge endpoint. Then we use the amount you passed as the amount for the plan.

Sample successful response

{
        "status": "success",
        "message": "Payment plan created",
        "data": {
            "id": 3807,
            "name": "Church collections plan",
            "amount": 5000,
            "interval": "monthly",
            "duration": 48,
            "status": "active",
            "currency": "NGN",
            "plan_token": "rpp_12d2ef3d5ac1c13b9d30",
            "created_at": "2020-01-16T18:08:19.000Z"
        }
    }

Next Steps
Did this page help you?