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

# 현재 재무

> 지금 가진 현금·자산·부채·수입·지출. 모든 플랜의 시작 조건입니다.

현재 재무는 가구에 하나이고 모든 플랜이 여기서 시작합니다(시작 고정 플랜은 만든 날의 재무를 따로 둡니다).
금액은 원(정수), 비율은 연율 소수(`0.05` = 5%), 달은 `"YYYY-MM"` 입니다.

```json theme={null}
{
  "birthMonth": "1991-05",
  "cash": 50000000,
  "assets": [{ "id": "etf", "name": "ETF", "type": "INVESTMENT", "value": 200000000, "annualRate": null }],
  "liabilities": [{ "id": "loan1", "name": "전세대출", "principal": 100000000, "annualRate": 0.04, "remainingMonths": 24, "repayment": "BULLET" }],
  "cashFlows": [
    { "id": "salary", "name": "월급", "type": "INCOME", "incomeKind": "SALARY", "monthlyAmount": 7000000, "start": "2026-10", "end": null },
    { "id": "living", "name": "생활비", "type": "EXPENSE", "monthlyAmount": 3500000, "start": "2026-10", "end": null }
  ],
  "dependents": [{ "id": "spouse", "name": "배우자", "kind": "SPOUSE", "birthMonth": "1992-03" }]
}
```

* `birthMonth`: 본인 생년월. 비어 있으면 계산할 수 없어 전망이 400 입니다.
* `cash`: 운용 계좌. 모든 수입·지출·상환이 여기로 들어오고 나갑니다.
* `id` 는 직접 정합니다. 플랜 항목(`change`·`holding`·`transfer`)이 이 id 를 가리킵니다.

## 자산 `assets`

| `type` | 뜻 | `annualRate` 가 null 이면 |
| - | - | - |
| `INVESTMENT` | 주식·펀드·예금 등 투자 | 가정의 투자 수익률 |
| `PENSION_ACCOUNT` | 연금저축·IRP | 가정의 투자 수익률 |
| `RETIREMENT_PENSION` | 퇴직연금 DC | 가정의 투자 수익률 |
| `REAL_ESTATE` | 부동산 | 가정의 부동산 상승률 |
| `VEHICLE` | 자동차 | 연 −15% |
| `DEPOSIT` | 전세·월세 보증금 | 0 |

## 부채 `liabilities`

`repayment` 는 `ANNUITY`(원리금균등)·`EQUAL_PRINCIPAL`(원금균등)·`BULLET`(만기일시)·`DEPOSIT`(받은 보증금: 이자·상환 없이 집을 팔 때 돌려줌)입니다.

## 수입·지출 `cashFlows`

* `type` 은 `INCOME`·`EXPENSE` 입니다. `start`\~`end` 달(포함) 동안 매달이고, `end` 가 null 이면 끝까지입니다.
* 수입 `incomeKind`: `SALARY`(세전 급여, 엔진이 세금·보험료를 뗌)·`NET`(세후)·`BUSINESS`(사업소득)·`PUBLIC_PENSION`(국민연금).
* 지출 `expenseKind`(선택): `RENT`(월세)·`DONATION`(기부금). 연말정산 세액공제에 씁니다.
* `annualGrowth` 가 null 이면 수입은 가정의 소득 상승률, 지출은 물가 상승률로 매년 1월에 오릅니다.

## 명의 `owner`

자산·부채·수입에 `SELF`(기본)·`SPOUSE`·`JOINT` 를 줍니다. 투자·연금계좌와 수입은 `JOINT` 를 쓸 수 없고, `SPOUSE` 는 `dependents` 에 배우자(`kind: "SPOUSE"`)가 있어야 합니다.

## 부양가족 `dependents`

소득 없는 가족입니다. `kind` 는 `SPOUSE`(생년월 선택)·`CHILD`·`PARENT`(생년월 필수). 인적공제·자녀세액공제와 정책대출 심사에 씁니다.

## 저장과 순자산 기록

* `PUT /v1/finances` 는 전체를 바꿉니다. `GET` 응답의 `ETag` 를 `If-Match` 에 넣으면 그사이 바뀌었을 때 덮어쓰지 않고 412 입니다.
* 저장할 때마다 그날의 합계가 **순자산 기록**(`GET /v1/finances/history`)에 남습니다(같은 날은 마지막 값).
* 지난 기록은 `PUT /v1/finances/history/{YYYY-MM-DD}` 로 넣거나 고칩니다. 미래 날짜·음수는 400 입니다.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.