---
title: "Update savings account product"
method: PATCH
path: "/v1/savings-accounts/{productId}"
tags: ["Product"]
---

# Update savings account product

`PATCH /v1/savings-accounts/{productId}`

## Request

- Base URL: `https://sandbox.pismolabs.io/savings-products`
- URL: `https://sandbox.pismolabs.io/savings-products/v1/savings-accounts/{productId}`
- Auth: HTTP bearer

Update a savings account product by product ID. Note that product ID is Pismo-generated.<br>
This endpoint generates the [Savings account product updated](https://developers.pismo.io/events/docs/savings-account-product-update-1) event.

## Path parameters

- `productId` string, required

## Request body

- PatchProductRequest: All fields are optional, but at least one of `status`, `min_amount`, `notices`, or `accrue_during_grace_period` must be included. If `status` is present, `reason` becomes required.
  - `status` 'CREATED' | 'ACTIVE' | 'INACTIVE': Product status
  - `reason` string: Status update reason. Required when `status` is provided.
  - `min_amount` number: The minimum balance required to earn yield. When provided, must be greater than 0. Applied from the moment of a successful update (Not retroactive. Accounts already opened are not revalidated).
  - `notices` MaturityNotice[]: Advance maturity notice configurations for deposit products only, rejected for savings‑account products. If this field is included in a savings‑account request, the API returns `HTTP 400`. When provided, the field must contain one to three entries, each with a unique `days_before_maturity` value. If the field is absent or the array is empty, no notices are configured.
    - `days_before_maturity` integer, required: Number of days before the account’s maturity date when the notice is sent. The value must be a positive integer greater than zero. Inputs such as zero, negative numbers, decimals, null, or non-numeric values result in `HTTP 400`. Each notice must use a distinct `days_before_maturity` value within the array.
    - `description` string, required: A short, human‑readable label for the notice. Each entry must include one description, and it cannot exceed 128 characters.
  - `accrue_during_grace_period` boolean: Controls whether interest accrual continues during the post‑maturity grace period. Applies only to deposit products. The value is read live and takes effect on the next daily cycle. It does not alter the grace‑period lifecycle.

## Response `204`

Success

## Other responses

- `400`: Bad request
- `404`: Bad request
- `500`: Internal error

---

[API](https://skmtc.dev/pismo/apis/banking-interest-bearing-accounts.md) - [All operations](https://skmtc.dev/pismo/apis/banking-interest-bearing-accounts/llms.txt) - [OpenAPI document](https://skmtc.dev/pismo/apis/banking-interest-bearing-accounts/revisions/c68f61feb8a8?raw)
