Creating savings plans
The savings plan endpoints allow you to flexibly configure savings plan intervals - for example, your users can choose monthly automatic investments or individual intervals that best suit their needs.
You can create a savings plan for individual instruments as well as for a portfolio.
Prerequisites
Please note the following preconditions in order to successfully implement savings plans:
To create a savings plan, you must have at least one user with an active account.
See the "Creating account groups and accounts" guide for details on how to achieve this.
The user's portfolio account must already have been configured for a portfolio savings plan.
See "Enabling portfolio investments" for details.
→ Defining the cadence of investment plans
Whether you're creating a savings plan for a portfolio or for a single instrument, you'll need to provide a cadence it should be executed at.
This table sets out example cadence definitions that will help you specify the right thing when create savings plans using the API described later in this guide.
Example configurations:
Cadence | Example configuration |
---|---|
Every day | start_date: "01.08.2023", period: "DAY", interval: "1" |
Bi-weekly | start_date: "31.07.2023", period: "WEEK", interval: "2" |
Every week | start_date: "31.07.2023", period: "WEEK", interval: "1" |
Beginning of the month/ Once a month | start_date: "01.08.2023", period: "MONTH", interval: "1" |
Middle of the month | start_date: "15.08.2023", period: "MONTH", interval: "1" |
→ Create a portfolio savings plan
To create a portfolio savings plan, proceed as follows:
POST /savings_plans
Remember that you must provide the cadence details, and that the user's account must be configured for portfolio investments.
In this example, a portfolio savings plan is created that executes recurring buy orders of € 100 once a week from July 24.
Example request portfolio savings plan
{
"user_id": "4b9732bd-7496-491-8a5f-6360479d7fed",
"account_id": "00ef0be8-d564-43af-b3c7-11b7a2188030",
"type": "PORTFOLIO",
"cash_amount": "100.00",
"currency": "EUR",
"start_date" : "2023-07-24",
"period": "WEEK",
"interval" : "1"
}
→ Create a single instruments savings plan
Instrument savings plans are executed as individual orders. As with the portfolio savings plan, you create a single instruments savings plan by calling:
POST /savings_plans
In this example, a savings plan is created that executes recurring weekly buy orders of €100 for a specific ETF starting on July 24.
Example request instruments savings plan
{
"user_id": "4b9732bd-7496-491-8a5f-6360479d7fed",
"account_id": "00ef0be8-d564-43af-b3c7-11b7a2188030",
"type": "INSTRUMENT",
"instrument_id": "IE00BOM62058",
"instrument_id_type": "ISIN",
"cash_amount": "100.00",
"currency": "EUR",
"start_date" : "2023-07-24",
"period": "WEEK",
"interval" : "1"
}
Note that we now have to provide additional detail to specify the instrument we wish to invest int. The full list of parameters is as follows:
Parameter | Description |
---|---|
user_id | Required: The ID of the user. |
account_id | Required: The ID of the account. |
type | Required The savings plan type. Possible values: * PORTFOLIO * INSTRUMENT |
instrument_id | If type is INSTRUMENT , the ID of the instrument. |
instrument_id_type | If type is INSTRUMENT , The type of the ID used in the request. Possible values: - ISIN - WKN |
cash_amount | Required: The savings plan amount. |
currency | Required: The currency, currently only EUR is allowed. |
start_date | Required: First date of the savings plan execution in the YYYY-MM-DD format. |
period | Required: The time unit. Possible values: * WEEK * MONTH * YEAR |
interval | Required: The number of periods between executions. Default: 1. |
Please note that you cannot create a savings plan for a single instrument for a portfolio account.