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

# Spending Plan Overview

> Use these endpoints to create a custom Spending Plan UI to help end users track their spending throughout the month.

Use the Spending Plan endpoints to create your own version of our [Spending Plan Widget](/products/experience/pfm/legacy-widget-overviews/spending-plan), which helps end users track their spending throughout the month.

To understand key terms and how to best use these endpoints, see [Build Your Own Spending Plan UI](/products/experience/pfm/integration-guides/build-your-own-spending-plan-ui).

## Spending Plan Fields

These fields relate to the `spending_plan` object.

| Field                      | Data Type | Definition                                                                                  |
| :------------------------- | :-------- | :------------------------------------------------------------------------------------------ |
| `created_at`               | Long      | The date and time at which the `spending_plan` was created.                                 |
| `current_iteration_number` | Long      | The current active associated `spending_plan_iteration` number for a given `spending_plan`. |
| `guid`                     | String    | The unique identifier for the `spending_plan`. Defined by MX.                               |
| `updated_at`               | Long      | The date and time at which the `spending_plan` was most recently updated.                   |
| `user_guid`                | String    | The unique identifier for the `user` to which the `spending_plan` belongs. Defined by MX.   |
| `user_id`                  | String    | The unique partner-defined identifier for the `user` associated with the `spending_plan`.   |

## Spending Plan Account Fields

These fields relate to the `spending_plan_account` object.

| Field                | Data Type | Definition                                                                                                |
| :------------------- | :-------- | :-------------------------------------------------------------------------------------------------------- |
| `account_guid`       | String    | The unique identifier for the `account` associated with the `spending_plan_account`. Defined by MX.       |
| `created_at`         | Long      | The date and time at which the `spending_plan_account` was created.                                       |
| `guid`               | String    | The unique identifier for the `spending_plan_account`. Defined by MX.                                     |
| `spending_plan_guid` | String    | The unique identifier for the `spending_plan` associated with the `spending_plan_account`. Defined by MX. |
| `updated_at`         | Long      | The date and time at which the `spending_plan_account` was most recently updated.                         |
| `user_guid`          | String    | The unique identifier for the `user` to which the `spending_plan_account` belongs. Defined by MX.         |

## Spending Plan Iteration Fields

These fields relate to the `iteration` object.

| Field                | Data Type | Definition                                                                                                |
| :------------------- | :-------- | :-------------------------------------------------------------------------------------------------------- |
| `created_at`         | Long      | The date and time at which the `spending_plan_iteration` was created.                                     |
| `end_on`             | Long      | The date on which the spending plan `iteration` ends.                                                     |
| `guid`               | String    | The unique identifier for the `spending_plan_account`. Defined by MX.                                     |
| `iteration_number`   | Long      | The current iteration number for the spending plan `iteration`.                                           |
| `spending_plan_guid` | String    | The unique identifier for the `spending_plan` associated with the `spending_plan_account`. Defined by MX. |
| `start_on`           | Long      | The date on which the spending plan `iteration` starts.                                                   |
| `updated_at`         | Long      | The date and time at which the `spending_plan_account` was most recently updated.                         |
| `user_guid`          | String    | The unique identifier for the `user` to which the `spending_plan_account` belongs. Defined by MX.         |
| `user_id`            | String    | The unique partner-defined identifier for the `user` associated with the spending plan `iteration`.       |

## Spending Plan Iteration Item Fields

These fields relate to the `iteration_item` object.

| Field                          | Data Type      | Definition                                                                                                                                             |
| :----------------------------- | :------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `actual_amount`                | Double         | The sum of the transactions associated with the spending plan `iteration_item`.                                                                        |
| `category_guid`                | String         | The unique identifier for the `category_guid` associated with the spending plan `iteration_item`. Defined by MX.                                       |
| `created_at`                   | Long           | The date and time at which the spending plan `iteration_item` was created.                                                                             |
| `guid`                         | String         | The unique identifier for the spending plan `iteration_item`. Defined by MX.                                                                           |
| `item_type`                    | String         | The type of transaction grouping for the spending plan `iteration_item`. 0 = RECURRING\_EXPENSE, 1 = PLANNED\_EXPENSE, 2 = OTHER\_EXPENSE, 3 = INCOME. |
| `planned_amount`               | Double         | The total amount planned for a spending plan `iteration_item`.                                                                                         |
| `scheduled_payment_guid`       | String         | The unique identifier for the `scheduled_payment_guid` associated with the spending plan `iteration_item`. Defined by MX.                              |
| `spending_plan_iteration_guid` | String         | The unique identifier for the spending plan `iteration_item`. Defined by MX.                                                                           |
| `top_level_category_guid`      | String         | The unique identifier for the `top_level_category_guid` associated with the spending plan `iteration_item`. Defined by MX.                             |
| `transaction_guids`            | Array\[String] | An array of transaction GUIDs that are relevant to the spending plan `iteration_item`. Defined by MX.                                                  |
| `updated_at`                   | Long           | The date and time at which the spending plan `iteration_item` was most recently updated.                                                               |
| `user_guid`                    | String         | The unique identifier for the `user` to which the spending plan `iteration_item` belongs. Defined by MX.                                               |
| `user_id`                      | String         | The unique partner-defined identifier for the `user` associated with the spending plan `iteration_item`.                                               |
