---
title: "Create savings plan"
method: POST
path: "/savings_plans"
tags: ["Savings Plans"]
---

# Create savings plan

`POST /savings_plans`

Create savings plan

## Headers

- `idempotency-key` string, uuid, required

## Request body

- union
  - object
    - `user_id` string, uuid, required — User unique identifier.
    - `account_id` string, uuid, required — Account unique identifier.
    - `name` string — Savings plan name
    - `type` string, required — The type of savings plan must be "PORTFOLIO".
    - `cash_amount` string, required
    - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
    - `start_date` string, required — First date of the savings plan execution in YYYY-MM-DD format.
    - `period` 'WEEK' | 'MONTH' | 'YEAR', required — Unit of time. * WEEK - * MONTH - * YEAR -
    - `interval` integer, required — Number of periods between executions
  - object
    - `user_id` string, uuid, required — User unique identifier.
    - `account_id` string, uuid, required — Account unique identifier.
    - `name` string — Savings plan name
    - `type` string, required — The type of savings plan must be "INSTRUMENT".
    - `instrument_id` union — Instrument unique identifier.
      - string — International securities identification number defined by [ISO 6166](https://en.wikipedia.org/wiki/International_Securities_Identification_Number).
      - string — German securities identification code known as [Wertpapierkennnummer](https://en.wikipedia.org/wiki/Wertpapierkennnummer).
    - `instrument_id_type` 'ISIN' | 'WKN' — The type of the ID used in the request. * ISIN - International Securities Identification Number * WKN - German securities identification code
    - `cash_amount` string, required
    - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
    - `start_date` string, required — First date of the savings plan execution in YYYY-MM-DD format.
    - `period` 'WEEK' | 'MONTH' | 'YEAR', required — Unit of time. * WEEK - * MONTH - * YEAR -
    - `interval` integer, required — Number of periods between executions
    - `fee_configuration` object[]
      - `type` 'TRANSACTION_FEE_BUY', required — Fee type * TRANSACTION_FEE_BUY -
      - `transaction_fee_model_id` string, uuid, required — Fee model unique identifier.

## Response `202`

Savings plan object

- object
  - `id` string, uuid, required
  - `created_at` string, date-time, required — Date and time when the resource was created. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `updated_at` string, date-time, required — Date and time when the resource was last updated. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `user_id` string, uuid, required — User unique identifier.
  - `account_id` string, uuid, required — Account unique identifier.
  - `name` string — Savings plan name
  - `type` 'PORTFOLIO' | 'INSTRUMENT', required — Type of the Savings plan. * PORTFOLIO - * INSTRUMENT -
  - `instrument_id` union — Instrument unique identifier.
    - string — International securities identification number defined by [ISO 6166](https://en.wikipedia.org/wiki/International_Securities_Identification_Number).
    - string — German securities identification code known as [Wertpapierkennnummer](https://en.wikipedia.org/wiki/Wertpapierkennnummer).
  - `instrument_id_type` 'ISIN' | 'WKN' — The type of the ID used in the request. * ISIN - International Securities Identification Number * WKN - German securities identification code
  - `cash_amount` string, required
  - `start_date` string, required — First date of the savings plan execution in YYYY-MM-DD format.
  - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
  - `period` 'WEEK' | 'MONTH' | 'YEAR', required — Unit of time. * WEEK - * MONTH - * YEAR -
  - `interval` integer, required — Number of periods between executions
  - `status` 'ACTIVE' | 'CANCELLED' — Status of a Savings Plan. * ACTIVE - * CANCELLED -
  - `fee_configuration` object[]
    - `type` 'TRANSACTION_FEE_BUY', required — Fee type * TRANSACTION_FEE_BUY -
    - `transaction_fee_model_id` string, uuid, required — Fee model unique identifier.
  - `cancellation_reason` 'CANCELLED_BY_CLIENT' | 'CANCELLED_BY_UPVEST' — Explains the reason why the savings plan was cancelled . * CANCELLED_BY_CLIENT: The savings plan was cancelled by the client. * CANCELLED_BY_UPVEST: The savings plan was cancelled by Upvest.
  - `cancellation_details` string — Additional details about the cancellation

## Other responses

- `400` — Bad Request. The incoming request had a malformed parameter/object.
- `401` — Unauthorized. The caller has not been authenticated.
- `403` — Forbidden. The caller has been authenticated but is not allowed to take the requested action.
- `404` — Not Found. The requested resource could not be found.
- `405` — Method Not Allowed. The requested method is not allowed on the requested resource.
- `406` — Not Acceptable. The resource does not have a current representation that would be acceptable to the user agent. "Accept" header defined unsupported value.
- `429` — Too Many Requests. The caller has exceeded their quota for the time period and has been throttled.
- `500` — Internal Server Error. The service encountered an unexpected error.
- `503` — Service Unavailable. The service handling for this request cannot be reached at this time.
- `504` — Gateway Timeout. The service gateway has reached its internal timeout.

---

[API](https://skmtc.net/upvest/apis/upvest-investment-api.md) · [All operations](https://skmtc.net/upvest/apis/upvest-investment-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/upvest/upvest-investment-api/revisions/2c6bc192bc09/schema)
