> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Interest Accounts

> Use the Interest Accounts API to create interest tiers, set interest rates, and enroll deposit accounts to accrue interest on checking and savings accounts.

export const EndpointCard = ({method = "API", title, children, href, arrow = true}) => {
  const METHOD_STYLES = {
    GET: {
      bg: "mint-bg-green-400/20 dark:mint-bg-green-400/20",
      text: "mint-text-green-700 dark:mint-text-green-400",
      border: "mint-border-green-300 dark:mint-border-green-700"
    },
    POST: {
      bg: "mint-bg-blue-400/20 dark:mint-bg-blue-400/20",
      text: "mint-text-blue-700 dark:mint-text-blue-400"
    },
    PUT: {
      bg: "mint-bg-yellow-400/20 dark:mint-bg-yellow-400/20",
      text: "mint-text-yellow-700 dark:mint-text-yellow-400"
    },
    PATCH: {
      bg: "mint-bg-orange-400/20 dark:mint-bg-orange-400/20",
      text: "mint-text-orange-700 dark:mint-text-orange-400"
    },
    DELETE: {
      bg: "mint-bg-red-400/20 dark:mint-bg-red-400/20",
      text: "mint-text-red-700 dark:mint-text-red-400"
    },
    API: {
      bg: "mint-bg-black",
      text: "mint-text-white"
    }
  };
  const MethodBadge = ({method}) => {
    const style = METHOD_STYLES[method?.toUpperCase()] ?? METHOD_STYLES.GET;
    return <span className={`
          method-pill rounded-lg font-semibold px-1.5 py-0.5 text-xs leading-5 ${style.bg} ${style.text}`}>
        {method?.toUpperCase()}
      </span>;
  };
  const content = <div className="group flex items-center gap-4 border border-gray-200 dark:border-gray-700 rounded-xl p-5 hover:border-gray-400 dark:hover:border-gray-500 hover:shadow-md transition-all cursor-pointer">
      {}
      <div className="shrink-0">
        <MethodBadge method={method} />
      </div>
      {}
      <div className="flex-1 min-w-0">
        <p className="font-semibold text-gray-900 dark:text-white text-sm leading-snug">{title}</p>
        {children && <p className="mt-1 text-sm text-gray-500 dark:text-gray-400 line-clamp-2">{children}</p>}
      </div>
    </div>;
  if (!href) return content;
  return <a href={href} className="block no-underline border-b-0 mb-2">
      {content}
    </a>;
};

<Note>
  This feature is currently in beta and subject to change.
  The interest service feature is available with select partner banks.
  To learn more about the Beta program for this feature or the interest service, contact your Marqeta Customer Success representative.
</Note>

The Interest Accounts service manages interest rates at both the program level and the account level.
It works with multiple partner banks to enable interest generation and accrual for checking and savings accounts.

An *interest tier* defines the rate that a group of accounts earns.
Each rate has a gross `account_rate` and a compounded `effective_rate`, also known as the annual percentage yield (APY) or annual equivalent rate (AER).
To understand how the Marqeta platform derives the effective rate and applies interest to balances for your program, contact your Marqeta representative.

A new interest tier rate takes effect on its effective date, which must be later than today.
The earliest date you can set is tomorrow (T+1), so a rate you create today cannot apply before tomorrow.
The Marqeta platform calculates a tier's current rate from the most recent rate whose effective date has already passed.

You can enroll a single account, or a batch of accounts, in an interest tier.
Enrolling an account applies the tier's rate to the account's balance.
When an enrollment or rate changes, the Interest Accounts service sends a webhook notification so that your system can reflect the change.

Use the `/v3/interestaccounts` endpoints to configure interest tiers and rates, and to enroll accounts in an interest tier.

<h2 id="create_interest_tier">
  Create interest tier
</h2>

**Action:** `POST`
**Endpoint:** `/v3/interestaccounts/interesttiers`

Creates a new interest tier for a program's checking or savings accounts.

<h3 id="_request_body">
  Request body
</h3>

| Fields | Description |
| - | - |
| token<br /><br />string<br /><br />Optional | Unique identifier of the interest tier. If not provided, one is generated automatically.<br /><br />**Allowable Values:**<br /><br />1–36 chars |
| description<br /><br />string<br /><br />Required | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| name<br /><br />string<br /><br />Required | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| type<br /><br />string<br /><br />Required | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| default<br /><br />boolean<br /><br />Required | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |

<h3 id="_sample_request_body">
  Sample request body
</h3>

Create a checking interest tier

```json JSON expandable lines wrap theme={null}
{
  "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
  "name": "Standard Checking",
  "description": "Standard interest tier for checking accounts.",
  "type": "CHECKING",
  "default": true
}
```

Create a savings interest tier

```json JSON expandable lines wrap theme={null}
{
  "token": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "name": "Premium Savings",
  "description": "Premium savings tier with higher interest rates.",
  "type": "SAVINGS",
  "default": true
}
```

<h3 id="_response_body">
  Response body
</h3>

| Fields | Description |
| - | - |
| token<br /><br />string<br /><br />Returned | Unique identifier of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: `3f5e1b2a-8d4c-4e9b-a1f6-2c7d0e3b9a45`<br /><br />36 char max |
| description<br /><br />string<br /><br />Returned | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| name<br /><br />string<br /><br />Returned | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| type<br /><br />string<br /><br />Returned | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| current\_rate<br /><br />object<br /><br />Conditionally returned | The most recent rate with an effective date on or before today. Not included in responses from the create interest tier endpoint. Always present in retrieve and list responses.<br /><br />**Allowable Values:**<br /><br />`note`, `account_rate`, `effective_rate`, `effective_date`, `created_time`, `updated_time` |
| current\_rate.**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| current\_rate.**account\_rate**<br /><br />decimal<br /><br />Conditionally returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| current\_rate.**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| current\_rate.**effective\_date**<br /><br />string<br /><br />Conditionally returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| current\_rate.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| current\_rate.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| default<br /><br />boolean<br /><br />Returned | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |
| created\_time<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| updated\_time<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body">
  Sample response body
</h3>

Checking tier created

```json JSON expandable lines wrap theme={null}
{
  "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
  "name": "Standard Checking",
  "description": "Standard interest tier for checking accounts.",
  "type": "CHECKING",
  "default": true,
  "created_time": "2026-01-15T09:00:00Z",
  "updated_time": "2026-01-15T09:00:00Z"
}
```

Savings tier created

```json JSON expandable lines wrap theme={null}
{
  "token": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "name": "Premium Savings",
  "description": "Premium savings tier with higher interest rates.",
  "type": "SAVINGS",
  "default": true,
  "created_time": "2026-01-15T09:00:00Z",
  "updated_time": "2026-01-15T09:00:00Z"
}
```

<h3 id="_error_codes">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `400001` | Invalid input(s) detected |
| `500000` | Internal server error |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="get_interest_tier">
  Retrieve interest tier
</h2>

**Action:** `GET`
**Endpoint:** `/v3/interestaccounts/interesttiers/{token}`

Retrieves an interest tier using the specified token.

<h3 id="_url_path_parameters">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |

<h3 id="_response_body_2">
  Response body
</h3>

| Fields | Description |
| - | - |
| token<br /><br />string<br /><br />Returned | Unique identifier of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: `3f5e1b2a-8d4c-4e9b-a1f6-2c7d0e3b9a45`<br /><br />36 char max |
| description<br /><br />string<br /><br />Returned | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| name<br /><br />string<br /><br />Returned | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| type<br /><br />string<br /><br />Returned | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| current\_rate<br /><br />object<br /><br />Conditionally returned | The most recent rate with an effective date on or before today. Not included in responses from the create interest tier endpoint. Always present in retrieve and list responses.<br /><br />**Allowable Values:**<br /><br />`note`, `account_rate`, `effective_rate`, `effective_date`, `created_time`, `updated_time` |
| current\_rate.**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| current\_rate.**account\_rate**<br /><br />decimal<br /><br />Conditionally returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| current\_rate.**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| current\_rate.**effective\_date**<br /><br />string<br /><br />Conditionally returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| current\_rate.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| current\_rate.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| default<br /><br />boolean<br /><br />Returned | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |
| created\_time<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| updated\_time<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_2">
  Sample response body
</h3>

Retrieve a checking interest tier

```json JSON expandable lines wrap theme={null}
{
  "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
  "name": "Standard Checking",
  "description": "Standard interest tier for checking accounts.",
  "type": "CHECKING",
  "default": true,
  "created_time": "2026-01-15T09:00:00Z",
  "updated_time": "2026-06-01T12:00:00Z",
  "current_rate": {
    "account_rate": 3.75,
    "effective_rate": 3.82,
    "effective_date": "2026-07-01",
    "created_time": "2026-06-01T12:00:00Z",
    "updated_time": "2026-06-01T12:00:00Z"
  }
}
```

Retrieve a savings interest tier

```json JSON expandable lines wrap theme={null}
{
  "token": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "name": "Premium Savings",
  "description": "Premium savings tier with higher interest rates.",
  "type": "SAVINGS",
  "default": true,
  "created_time": "2026-01-15T09:00:00Z",
  "updated_time": "2026-06-01T12:00:00Z",
  "current_rate": {
    "account_rate": 4.5,
    "effective_rate": 4.6,
    "effective_date": "2026-07-01",
    "created_time": "2026-06-01T12:00:00Z",
    "updated_time": "2026-06-01T12:00:00Z"
  }
}
```

<h3 id="_error_codes_2">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `404000` | Resource not found |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="get_interest_tiers">
  List interest tiers
</h2>

**Action:** `GET`
**Endpoint:** `/v3/interestaccounts/interesttiers`

Returns a paginated list of interest tiers.

<h3 id="_url_query_parameters">
  URL query parameters
</h3>

| Fields | Description |
| - | - |
| count<br /><br />integer<br /><br />Optional | Number of interest tiers to retrieve.<br /><br />**Allowable Values:**<br /><br />0 min<br /><br />**Default value:**<br />5 |
| start\_index<br /><br />integer<br /><br />Optional | Index of the first result in the returned array.<br /><br />Use for pagination.<br /><br />**Allowable Values:**<br /><br />0 min<br /><br />**Default value:**<br />0 |
| sort\_by<br /><br />string<br /><br />Optional | Field on which to sort.<br /><br />Prefix with `-` for descending order.<br /><br />**Allowable Values:**<br /><br />`created_time`, `-created_time`, `last_modified_time`, or `-last_modified_time`<br /><br />**Default value:**<br />`-created_time` |

<h3 id="_response_body_3">
  Response body
</h3>

| Fields | Description |
| - | - |
| count<br /><br />integer<br /><br />Returned | Number of interest tier resources returned.<br /><br />**Allowable Values:**<br /><br />Example: 1<br /><br />Any integer |
| start\_index<br /><br />integer<br /><br />Returned | Sort order index of the first resource in the returned array.<br /><br />**Allowable Values:**<br /><br />Example: 0<br /><br />Any integer |
| is\_more<br /><br />boolean<br /><br />Returned | A value of `true` indicates that more unreturned resources exist.<br /><br />**Allowable Values:**<br /><br />Example: `false`<br /><br />`true`, `false` |
| data<br /><br />array of objects<br /><br />Returned | Array of interest tier objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more interest tier objects |
| data\[].**token**<br /><br />string<br /><br />Returned | Unique identifier of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: `3f5e1b2a-8d4c-4e9b-a1f6-2c7d0e3b9a45`<br /><br />36 char max |
| data\[].**description**<br /><br />string<br /><br />Returned | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| data\[].**name**<br /><br />string<br /><br />Returned | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| data\[].**type**<br /><br />string<br /><br />Returned | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| data\[].**current\_rate**<br /><br />object<br /><br />Conditionally returned | The most recent rate with an effective date on or before today. Not included in responses from the create interest tier endpoint. Always present in retrieve and list responses.<br /><br />**Allowable Values:**<br /><br />`note`, `account_rate`, `effective_rate`, `effective_date`, `created_time`, `updated_time` |
| data\[].current\_rate.**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| data\[].current\_rate.**account\_rate**<br /><br />decimal<br /><br />Conditionally returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| data\[].current\_rate.**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| data\[].current\_rate.**effective\_date**<br /><br />string<br /><br />Conditionally returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| data\[].current\_rate.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| data\[].current\_rate.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| data\[].**default**<br /><br />boolean<br /><br />Returned | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |
| data\[].**created\_time**<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| data\[].**updated\_time**<br /><br />datetime<br /><br />Returned | Date and time when the interest tier was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_3">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "count": 2,
  "start_index": 0,
  "is_more": false,
  "data": [
    {
      "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
      "name": "Standard Checking",
      "description": "Standard interest tier for checking accounts.",
      "type": "CHECKING",
      "default": true,
      "created_time": "2026-01-15T09:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z",
      "current_rate": {
        "account_rate": 3.75,
        "effective_rate": 3.82,
        "effective_date": "2026-07-01",
        "created_time": "2026-06-01T12:00:00Z",
        "updated_time": "2026-06-01T12:00:00Z"
      }
    },
    {
      "token": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "name": "Premium Savings",
      "description": "Premium savings tier with higher interest rates.",
      "type": "SAVINGS",
      "default": true,
      "created_time": "2026-01-15T09:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z",
      "current_rate": {
        "account_rate": 4.5,
        "effective_rate": 4.6,
        "effective_date": "2026-07-01",
        "created_time": "2026-06-01T12:00:00Z",
        "updated_time": "2026-06-01T12:00:00Z"
      }
    }
  ]
}
```

<h3 id="_error_codes_3">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `400001` | Invalid input(s) detected |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="create_interest_tier_rate">
  Create interest tier rate
</h2>

**Action:** `PUT`
**Endpoint:** `/v3/interestaccounts/interesttiers/{interest_tier_token}/rates`

Creates an interest rate for a tier.
The effective date must be a future date.
The rate cannot exceed the program's interest rate for the account type on the effective date.

<h3 id="_url_path_parameters_2">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| interest\_tier\_token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |

<h3 id="_request_body_2">
  Request body
</h3>

| Fields | Description |
| - | - |
| effective\_date<br /><br />string<br /><br />Required | Date on which the rate takes effect. Must be a future date.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| note<br /><br />string<br /><br />Optional | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| account\_rate<br /><br />decimal<br /><br />Required | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding. Cannot exceed the program's interest rate for the account type on the effective date.<br /><br />**Allowable Values:**<br /><br />0–100 |

<h3 id="_sample_request_body_2">
  Sample request body
</h3>

Create rate for a checking tier

```json JSON expandable lines wrap theme={null}
{
  "effective_date": "2026-07-01",
  "account_rate": 3.75,
  "note": "Q3 2026 rate adjustment."
}
```

Create rate for a savings tier

```json JSON expandable lines wrap theme={null}
{
  "effective_date": "2026-07-01",
  "account_rate": 4.5,
  "note": "Q3 2026 rate adjustment."
}
```

<h3 id="_response_body_4">
  Response body
</h3>

| Fields | Description |
| - | - |
| note<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| account\_rate<br /><br />decimal<br /><br />Returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| effective\_rate<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| effective\_date<br /><br />string<br /><br />Returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| created\_time<br /><br />datetime<br /><br />Returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| updated\_time<br /><br />datetime<br /><br />Returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_4">
  Sample response body
</h3>

Rate created for checking tier

```json JSON expandable lines wrap theme={null}
{
  "account_rate": 3.75,
  "effective_rate": 3.82,
  "effective_date": "2026-07-01",
  "note": "Q3 2026 rate adjustment.",
  "created_time": "2026-06-01T12:00:00Z",
  "updated_time": "2026-06-01T12:00:00Z"
}
```

Rate created for savings tier

```json JSON expandable lines wrap theme={null}
{
  "account_rate": 4.5,
  "effective_rate": 4.6,
  "effective_date": "2026-07-01",
  "note": "Q3 2026 rate adjustment.",
  "created_time": "2026-06-01T12:00:00Z",
  "updated_time": "2026-06-01T12:00:00Z"
}
```

<h3 id="_error_codes_4">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `400001` | Invalid input(s) detected |
| `400917` | Effective date must be later than today. |
| `500000` | Internal server error |

If the `account_rate` exceeds the program's rate, this endpoint returns error code `400001` with the message `The account rate cannot exceed the program's rate.`

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="get_interest_tier_rate">
  Retrieve interest tier rate
</h2>

**Action:** `GET`
**Endpoint:** `/v3/interestaccounts/interesttiers/{interest_tier_token}/rates/{rate_effective_date}`

Retrieves the interest rate for a specific tier on the given effective date.

<h3 id="_url_path_parameters_3">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| interest\_tier\_token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |
| rate\_effective\_date<br /><br />string<br /><br />Required | Date on which the interest rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |

<h3 id="_response_body_5">
  Response body
</h3>

| Fields | Description |
| - | - |
| note<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| account\_rate<br /><br />decimal<br /><br />Returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| effective\_rate<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| effective\_date<br /><br />string<br /><br />Returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| created\_time<br /><br />datetime<br /><br />Returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| updated\_time<br /><br />datetime<br /><br />Returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_5">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "account_rate": 3.75,
  "effective_rate": 3.82,
  "effective_date": "2026-07-01",
  "note": "Q3 2026 rate adjustment.",
  "created_time": "2026-06-01T12:00:00Z",
  "updated_time": "2026-06-01T12:00:00Z"
}
```

<h3 id="_error_codes_5">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `400001` | Invalid input(s) detected |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="get_interest_tier_rates">
  List interest tier rates
</h2>

**Action:** `GET`
**Endpoint:** `/v3/interestaccounts/interesttiers/{interest_tier_token}/rates`

Returns a paginated list of interest rates for a specific tier.

<h3 id="_url_path_parameters_4">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| interest\_tier\_token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |

<h3 id="_url_query_parameters_2">
  URL query parameters
</h3>

| Fields | Description |
| - | - |
| count<br /><br />integer<br /><br />Optional | Number of interest tier rates to retrieve.<br /><br />**Allowable Values:**<br /><br />0 min<br /><br />**Default value:**<br />5 |
| start\_index<br /><br />integer<br /><br />Optional | Index of the first result in the returned array.<br /><br />Use for pagination.<br /><br />**Allowable Values:**<br /><br />0 min<br /><br />**Default value:**<br />0 |
| sort\_by<br /><br />string<br /><br />Optional | Field on which to sort.<br /><br />Prefix with `-` for descending order.<br /><br />**Allowable Values:**<br /><br />`created_time`, `-created_time`, `last_modified_time`, or `-last_modified_time`<br /><br />**Default value:**<br />`-created_time` |

<h3 id="_response_body_6">
  Response body
</h3>

| Fields | Description |
| - | - |
| count<br /><br />integer<br /><br />Returned | Number of interest tier rate resources returned.<br /><br />**Allowable Values:**<br /><br />Example: 1<br /><br />Any integer |
| start\_index<br /><br />integer<br /><br />Returned | Sort order index of the first resource in the returned array.<br /><br />**Allowable Values:**<br /><br />Example: 0<br /><br />Any integer |
| is\_more<br /><br />boolean<br /><br />Returned | A value of `true` indicates that more unreturned resources exist.<br /><br />**Allowable Values:**<br /><br />Example: `false`<br /><br />`true`, `false` |
| data<br /><br />array of objects<br /><br />Returned | Array of interest tier rate objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more interest tier rate objects |
| data\[].**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| data\[].**account\_rate**<br /><br />decimal<br /><br />Returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| data\[].**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| data\[].**effective\_date**<br /><br />string<br /><br />Returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| data\[].**created\_time**<br /><br />datetime<br /><br />Returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| data\[].**updated\_time**<br /><br />datetime<br /><br />Returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_6">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "count": 2,
  "start_index": 0,
  "is_more": false,
  "data": [
    {
      "account_rate": 3.75,
      "effective_rate": 3.82,
      "effective_date": "2026-07-01",
      "note": "Q3 2026 rate adjustment.",
      "created_time": "2026-06-01T12:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z"
    },
    {
      "account_rate": 3.5,
      "effective_rate": 3.57,
      "effective_date": "2026-04-01",
      "note": "Q2 2026 rate.",
      "created_time": "2026-03-01T09:00:00Z",
      "updated_time": "2026-03-01T09:00:00Z"
    }
  ]
}
```

<h3 id="_error_codes_6">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `400001` | Invalid input(s) detected |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="add_account_to_interest_tier">
  Add account to interest tier
</h2>

**Action:** `PUT`
**Endpoint:** `/v3/interestaccounts/interesttiers/{interest_tier_token}/accounts/{account_token}`

Adds a single account to the specified interest tier.

<h3 id="_url_path_parameters_5">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| account\_token<br /><br />string<br /><br />Required | Unique identifier of the account, as returned by the `POST /v4/depositaccounts` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing account token |
| interest\_tier\_token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |

<h3 id="_response_body_7">
  Response body
</h3>

| Fields | Description |
| - | - |
| account\_token<br /><br />string<br /><br />Returned | Unique identifier of the account, as returned by the `POST /v4/depositaccounts` endpoint.<br /><br />**Allowable Values:**<br /><br />Example: `a1b2c3d4-e5f6-7890-abcd-ef1234567890`<br /><br />36 char max |
| interest\_tier<br /><br />object<br /><br />Returned | The interest tier currently assigned to the account.<br /><br />**Allowable Values:**<br /><br />`token`, `description`, `name`, `type`, `current_rate`, `default`, `created_time`, `updated_time` |
| interest\_tier.**token**<br /><br />string<br /><br />Conditionally returned | Unique identifier of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: `3f5e1b2a-8d4c-4e9b-a1f6-2c7d0e3b9a45`<br /><br />36 char max |
| interest\_tier.**description**<br /><br />string<br /><br />Conditionally returned | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| interest\_tier.**name**<br /><br />string<br /><br />Conditionally returned | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| interest\_tier.**type**<br /><br />string<br /><br />Conditionally returned | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| interest\_tier.**current\_rate**<br /><br />object<br /><br />Conditionally returned | The most recent rate with an effective date on or before today. Not included in responses from the create interest tier endpoint. Always present in retrieve and list responses.<br /><br />**Allowable Values:**<br /><br />`note`, `account_rate`, `effective_rate`, `effective_date`, `created_time`, `updated_time` |
| interest\_tier.current\_rate.**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| interest\_tier.current\_rate.**account\_rate**<br /><br />decimal<br /><br />Conditionally returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| interest\_tier.current\_rate.**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| interest\_tier.current\_rate.**effective\_date**<br /><br />string<br /><br />Conditionally returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| interest\_tier.current\_rate.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.current\_rate.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.**default**<br /><br />boolean<br /><br />Conditionally returned | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |
| interest\_tier.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the interest tier was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the interest tier was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_7">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "account_token": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "interest_tier": {
    "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "name": "Standard Checking",
    "description": "Standard interest tier for checking accounts.",
    "type": "CHECKING",
    "default": true,
    "created_time": "2026-01-15T09:00:00Z",
    "updated_time": "2026-06-01T12:00:00Z",
    "current_rate": {
      "account_rate": 3.75,
      "effective_rate": 3.82,
      "effective_date": "2026-07-01",
      "created_time": "2026-06-01T12:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z"
    }
  }
}
```

<h3 id="_error_codes_7">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `404000` | Resource not found |
| `404004` | Cardholder not found by token |
| `404917` | Program not configured for interest. |
| `500000` | Internal server error |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="add_accounts_to_interest_tier">
  Add accounts to interest tier
</h2>

**Action:** `PUT`
**Endpoint:** `/v3/interestaccounts/interesttiers/{interest_tier_token}/accounts`

Adds multiple accounts to the specified interest tier in bulk.

<h3 id="_url_path_parameters_6">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| interest\_tier\_token<br /><br />string<br /><br />Required | Unique identifier of the interest tier, as returned by the `POST /v3/interestaccounts/interesttiers` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing interest tier token |

<h3 id="_request_body_3">
  Request body
</h3>

Add accounts to interest tier request.

| Fields | Description |
| - | - |
| account\_tokens<br /><br />array of strings<br /><br />Required | List of account tokens to enroll in the interest tier, as returned by the `POST /v4/depositaccounts` endpoint.<br /><br />**Allowable Values:**<br /><br />1–200 account tokens<br /><br />Example: \[<br />`"a1b2c3d4-e5f6-7890-abcd-ef1234567890"`,<br />`"b2c3d4e5-f6a7-8901-bcde-f12345678901"`,<br />`"c3d4e5f6-a7b8-9012-cdef-123456789012"`<br />] |

<h3 id="_sample_request_body_3">
  Sample request body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "account_tokens": [
    "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "c3d4e5f6-a7b8-9012-cdef-123456789012"
  ]
}
```

<h3 id="_error_codes_8">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `404000` | Resource not found |
| `404004` | Cardholder not found by token |
| `404917` | Program not configured for interest. |
| `500000` | Internal server error |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.

<h2 id="get_interest_tier_for_account">
  Retrieve account interest tier
</h2>

**Action:** `GET`
**Endpoint:** `/v3/interestaccounts/interesttiers/accounts/{account_token}`

Retrieves the current interest tier and rate for the specified account.

<h3 id="_url_path_parameters_7">
  URL path parameters
</h3>

| Fields | Description |
| - | - |
| account\_token<br /><br />string<br /><br />Required | Unique identifier of the account, as returned by the `POST /v4/depositaccounts` endpoint.<br /><br />**Allowable Values:**<br /><br />Existing account token |

<h3 id="_response_body_8">
  Response body
</h3>

| Fields | Description |
| - | - |
| account\_token<br /><br />string<br /><br />Returned | Unique identifier of the account, as returned by the `POST /v4/depositaccounts` endpoint.<br /><br />**Allowable Values:**<br /><br />Example: `a1b2c3d4-e5f6-7890-abcd-ef1234567890`<br /><br />36 char max |
| interest\_tier<br /><br />object<br /><br />Returned | The interest tier currently assigned to the account.<br /><br />**Allowable Values:**<br /><br />`token`, `description`, `name`, `type`, `current_rate`, `default`, `created_time`, `updated_time` |
| interest\_tier.**token**<br /><br />string<br /><br />Conditionally returned | Unique identifier of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: `3f5e1b2a-8d4c-4e9b-a1f6-2c7d0e3b9a45`<br /><br />36 char max |
| interest\_tier.**description**<br /><br />string<br /><br />Conditionally returned | Human-readable description of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium savings tier with higher interest rates.<br /><br />255 char max |
| interest\_tier.**name**<br /><br />string<br /><br />Conditionally returned | Display name of the interest tier.<br /><br />**Allowable Values:**<br /><br />Example: Premium Savings<br /><br />255 char max |
| interest\_tier.**type**<br /><br />string<br /><br />Conditionally returned | Account type associated with the interest tier.<br /><br />**Allowable Values:**<br /><br />`CHECKING`, `SAVINGS` |
| interest\_tier.**current\_rate**<br /><br />object<br /><br />Conditionally returned | The most recent rate with an effective date on or before today. Not included in responses from the create interest tier endpoint. Always present in retrieve and list responses.<br /><br />**Allowable Values:**<br /><br />`note`, `account_rate`, `effective_rate`, `effective_date`, `created_time`, `updated_time` |
| interest\_tier.current\_rate.**note**<br /><br />string<br /><br />Conditionally returned | Optional note describing the reason for the rate change.<br /><br />**Allowable Values:**<br /><br />Example: Q3 2026 rate adjustment.<br /><br />255 char max |
| interest\_tier.current\_rate.**account\_rate**<br /><br />decimal<br /><br />Conditionally returned | The gross interest rate, also known as the nominal interest rate. This is the base rate, calculated without compounding.<br /><br />**Allowable Values:**<br /><br />0–100 |
| interest\_tier.current\_rate.**effective\_rate**<br /><br />decimal<br /><br />Conditionally returned | The effective interest rate, also known as the annual percentage yield (APY) or annual equivalent rate (AER) — the daily compounding rate applied to the account's balance.<br /><br />**Allowable Values:**<br /><br />0–100 |
| interest\_tier.current\_rate.**effective\_date**<br /><br />string<br /><br />Conditionally returned | Date the rate takes effect.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-dd |
| interest\_tier.current\_rate.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.current\_rate.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the rate was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.**default**<br /><br />boolean<br /><br />Conditionally returned | A value of `true` indicates this is the default tier for its account type.<br /><br />**Allowable Values:**<br /><br />Example: `true`<br /><br />`true`, `false` |
| interest\_tier.**created\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the interest tier was created, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-01-15T09:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |
| interest\_tier.**updated\_time**<br /><br />datetime<br /><br />Conditionally returned | Date and time when the interest tier was last updated, in UTC.<br /><br />**Allowable Values:**<br /><br />Example: 2026-06-01T12:00:00Z<br /><br />Format: yyyy-MM-ddThh:mm:ssZ |

<h3 id="_sample_response_body_8">
  Sample response body
</h3>

Account enrolled in checking interest tier

```json JSON expandable lines wrap theme={null}
{
  "account_token": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "interest_tier": {
    "token": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "name": "Standard Checking",
    "description": "Standard interest tier for checking accounts.",
    "type": "CHECKING",
    "default": true,
    "created_time": "2026-01-15T09:00:00Z",
    "updated_time": "2026-06-01T12:00:00Z",
    "current_rate": {
      "account_rate": 3.75,
      "effective_rate": 3.82,
      "effective_date": "2026-07-01",
      "created_time": "2026-06-01T12:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z"
    }
  }
}
```

Account enrolled in savings interest tier

```json JSON expandable lines wrap theme={null}
{
  "account_token": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "interest_tier": {
    "token": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "name": "Premium Savings",
    "description": "Premium savings tier with higher interest rates.",
    "type": "SAVINGS",
    "default": true,
    "created_time": "2026-01-15T09:00:00Z",
    "updated_time": "2026-06-01T12:00:00Z",
    "current_rate": {
      "account_rate": 4.5,
      "effective_rate": 4.6,
      "effective_date": "2026-07-01",
      "created_time": "2026-06-01T12:00:00Z",
      "updated_time": "2026-06-01T12:00:00Z"
    }
  }
}
```

<h3 id="_error_codes_9">
  Error codes
</h3>

| Error Code | Error Message |
| - | - |
| `404000` | Resource not found |
| `404004` | Cardholder not found by token |
| `500000` | Internal server error |

See [Errors](/docs/core-api/errors/) for the complete list of error codes.


## Related topics

- [Account & Money Movement Release Notes](/docs/developer-guides/account-money-movement-release-notes/2026.md)
- [About Credit Account Ledger Entries](/docs/developer-guides/about-credit-account-ledger-entries.md)
- [Event Types](/docs/core-api/event-types.md)
- [Journal Entries](/docs/core-api/credit-account-journal-entries.md)
- [Statements](/docs/core-api/credit-account-statements.md)
