💰 money
가계부
프로필 가계부
카테고리별 지출
일별 지출
외부 AI 결과 일괄 입력
파이프 구분 텍스트 또는 JSON 배열을 붙여 넣고 먼저 검증하세요. 프로필은 현재 선택값을 서버가 적용합니다.
외부 AI 변환 지시문과 허용 형식
허용 카테고리:
파이프 필드 순서
entry_date | scope | category | subcategory | merchant | description | amount | payment_method | installment_months | paid_with_young_card | note
JSON 예제
은행별 결제 현황
불러오는 중…
상세 내역
현금흐름 관리
불러오는 중…
카드 결제
불러오는 중…
이자
불러오는 중…
신한 우대금리 체크 (3개월 롤링 ≥ 500,000)
불러오는 중…
수동지출 상세 (매트릭스 수동지출 가상행의 소스)
불러오는 중…
자동이체 (참조용, 전역)
불러오는 중…
비고 / 메모
불러오는 중…
계좌 / 카드 관리
불러오는 중…
대출 관리
불러오는 중…
이율 변경 이력
대출 선택 시 시점별 스프레드/우대금리 내역이 표시됩니다.
대출 목록에서 "이력" 버튼을 누르세요.
대출 계약 메모
불러오는 중…
카드 상세 내역
카드 상세 입력은 (card_name, bank_name) 그룹별로 집계되어 가계부 탭의 카드 결제 금액에 자동 반영됩니다.
월을 선택하세요.
영수증 연결
불러오는 중…
상태
불러오는 중…
백업
불러오는 중…
감사 로그
불러오는 중…
발송 이력
불러오는 중…
순자산(young이 jeremy에게 갚아야 할 돈)
불러오는 중…
월별 내역
월을 선택하세요.
대화 게시판
불러오는 중…
가임기 캘린더
불러오는 중…
불러오는 중…
⚠ 통계적 추정치이며 의료적 보장이 아닙니다. 피임/임금 목적의 단독 판단은 위험합니다.
설정
내 계정
사용자 관리
불러오는 중…
How to use money
money is a household ledger built around the payment cycle (default cutoff day = 25). Each "month" is actually a cycle spanning from this month's cutoff to the day before next month's cutoff. All entries — card payments, interest, manual spending, cash flow — live inside one cycle.
Confirmed vs Pending (red vs black)
- Black values are confirmed — locked and counted in aggregates.
- Red values are pending — saved but waiting for an admin to press the section's "섹션 전체 확인" (confirm section) button, or the per-row ✓.
- Observers (e.g. jem) can create entries; those stay red until an admin confirms them.
- Aggregates (dashboard, bank matrix) include both red and black — confirmation is about trust, not totals.
Bank payment matrix (auto-computed)
The grid at the top of the Ledger tab is read-only. Each cell aggregates three sources that share the same (bank, pay_date):
card_payments (bank × pay_day) + interest_payments (bank × pay_day) + cash_flows(is_auto=1) (bank × matched pay_dates)
A cell turns black only when every contributing row is confirmed. To change a cell, edit the underlying rows in the detail sections — never the matrix itself.
A typical cycle day (stepper)
- Add detail rows. In the relevant section below, add card payments, interest rows, or auto-transfer cash flows. Pay day / date range decides which matrix column each row lands in.
- Enter cash-flow date ranges for auto transfers. For recurring transfers, set
is_auto=1and put a date range like27일or27-05일indate_range. money matches it to one or more pay_dates and folds the amount into the matrix cell. - Read the matrix. Each (bank, pay_date) cell is the sum of card + interest + auto cash flows for that bucket. The cell goes black only when all rows in the bucket are confirmed.
- Confirm. Press ✓ on each red row (or "섹션 전체 확인") to lock it. The cell flips to black once every contributing row is confirmed.
Detail sections
- Card payments (카드 결제) — monthly per-card totals. Pay day drives which matrix column the row lands in.
- Interest (이자) — monthly interest. The
loancolumn links the entry to a loan in the Loans tab; once linked, the rate snapshot is captured automatically. - Manual spending (수동지출) — one-off expenses. Not in the matrix cells; shown as separate virtual rows below the matrix, grouped by pay_date. A virtual row goes black only when all its items are confirmed.
- Cash flow (현금흐름) — in/out by purpose (income, savings, transfer, etc.). Auto-transfer rows (
is_auto=1) with a date_range are added to the matching matrix cells. Manual rows (is_auto=0) are record-only and do not affect the matrix. - Auto transfers (자동이체) — global recurring transfer templates, reference only.
- Shinhan rate check (신한 우대금리) — see below.
- Notes (비고) — free-text month memo.
Reading a red cell backwards
When a matrix cell stays red, click it to see the contributing rows. Each row shows its own confirm state. Confirm all of them — the cell turns black automatically.
Manual spending virtual rows
Manual spending items are aggregated by pay_date and rendered as extra rows beneath the bank matrix, not inside it. Items without a pay_date are excluded from the virtual row (and therefore from the cycle total). Edit individual items in the Manual spending detail section to change their pay_date.
Shinhan preferred-rate window
Shinhan Bank offers a preferred rate when the 3-month rolling card spend stays above ₩500,000. money computes two windows:
- 차월 (prior window) = months M−3, M−2, M−1
- 차차월 (current window) = months M−2, M−1, M
M−2 and M−1 are shared between the two windows, so you only enter them once. Enter values in the 차차월 row (M−2, M−1, M all editable); 차월 reuses M−2 and M−1 and only needs its unique M−3 cell entered. Missing months count as ₩0 but remain distinct from an explicit ₩0. The result uses both the current and confirmed totals to show met, provisionally met, provisionally unmet, or unmet status.
Search
The search box at the top of the Ledger tab searches across all months (not just the selected one). Results render inline below.
Accounts tab (admin only)
Manage the reference list of bank accounts and cards used across the Ledger. Each account has a label, bank name, account number, and optional card name. In the Ledger's detail sections, the account picker (▼ button next to the bank/account/card fields) lets you autofill all three fields at once from this list. Add new accounts inline via the picker's "+ 새 계좌" button — no need to visit this tab first.
Card details tab (admin only) — per-transaction breakdown
Each card-payment row in the Ledger matrix is the sum of all card_transactions in that (month × card × bank) group. The Card details tab is where you enter individual transactions: date, card, store, amount, installment months.
Batch input — click "일괄 입력" to paste straight from a card statement. Each line is pipe-separated: YYYY-MM-DD|card|store|amount|installment_months|note(optional). Blank lines and # comments are ignored. All-or-nothing rollback on parse failure.
📷 Receipt upload — click the 📷 button on any row to attach a receipt photo. First time asks you to sign in with Google (drive.file scope only — app can only touch files it creates). The photo uploads to your Google Drive → "영수증" folder (counts against your 15 GB quota, not the service account's). A calendar event is auto-created in the "영수증" Google Calendar with the Drive link dropped into the description.
📎 Receipt link — the 📎 button opens a picker that searches the "영수증" calendar's events. Click an event to link it to the row; click 📎 again to view the breakdown (parsed from the event description). Use the unlink icon to disconnect it (the calendar event itself is preserved — it's user-owned).
Cases
- Paste a monthly statement → "일괄 입력" → paste lines like
2026-07-03|신한|카페|4500|1|→ "저장". If any line fails to parse, the entire batch rolls back so the month stays consistent. - Attach a paper receipt after the fact → find the row → 📷 → first time, sign in with Google → photo uploads to your Drive "영수증" folder and a calendar event is created automatically.
- Link an existing calendar receipt → 📎 → search the "영수증" calendar → pick the event → row links to it. Open 📎 again to see the parsed breakdown.
Jeremy tab (net worth tracking)
Tracks what young owes jeremy. Two directions:
- in (자산) — jem hands cash to young, reducing young's debt.
- out (부채) — young uses a card (the quick form at the top is the fastest way to log this).
Two status axes (review · reflected)
Each entry shows two independent axes:
- Review state — admin-entered entries are "reviewed"; jem-entered entries are "pending review".
- Reflected state — if the date hasn't arrived yet: "scheduled · excluded"; once it has: "reflected". A pending-review entry stays "pending review · excluded" even after the date arrives.
The totals (cumulative reflected assets/liabilities/net) sum only entries that are both reviewed and whose date has arrived as of the "as of" cutoff shown at the top. The review-comment field no longer auto-fills with "추정치"; it shows only comments you write yourself.
The board at the bottom is a shared memo board for young and jeremy. Use it for notes and image attachments related to Jeremy entries or follow-up discussion.
Cases
- young uses a card → out. Use the quick-entry form at the top of the Jeremy tab: pick a card, amount, optional note. Submit. The row shows red (pending review) until an admin marks it reviewed.
- jem hands cash to young → in. Open the Jeremy tab, choose direction
in, enter the amount jem gave, and save. young's debt balance drops by that amount. - Share a receipt or contract photo → scroll to the memo board, attach the image, and add a short caption. young and jeremy both see it; comments are preserved as a thread.
Fertility tab (calendar)
Period and fertility-window tracking. Click any day to log:
- Period (start/end) — drives the cycle prediction.
- Sex — record only. Pick 섹스만, 섹스+오랄, or 섹스+기타 when creating. After creation you can toggle 오랄/기타 independently. None of these flags affect the fertility probability calculation.
Day cells are color-coded by predicted fertility (high / medium / low). The banner at the top highlights the current phase. ⚠ Statistical estimate only — not medical guidance.
Cases
- Period starts → click the first day of bleeding, choose 생리 시작. The banner updates immediately and the next predicted window appears on the calendar.
- Period ends → click the last day, choose 생리 종료. Days between start and end are shaded as period days.
- Record sex → click the day, pick 섹스만, 섹스+오랄, or 섹스+기타. The fertility probability is computed from the period dates only — these flags do not change the prediction.
Loans tab (admin only)
Each loan has a full rate change history. For each rate entry you record the bank's spread and any preference components (우대금리). The final_rate auto-computes as spread − Σ preferences; override the field directly if you know the precise value. Linking a loan from the Interest section of the Ledger captures the rate-at-time-of-payment.
Loan contract memos capture each loan's terms (principal, rate, counterparty, dates). Every edit creates a snapshot, and each contract has a comments board for text notes and image attachments.
Cases
- Rate change this month → open the loan → add a new rate row with the bank's new spread + each 우대금리 component. The
final_rateauto-computes; override it directly if you know the precise value. - Capture the rate at interest payment time → in the Ledger's Interest section, pick this loan in the
loancolumn. The current rate row is snapshotted onto the interest payment automatically. - Update loan contract terms → open the contract memo → edit principal/counterparty/dates → save. A snapshot is preserved each time, so the full history is recoverable.
Status tab (admin only)
- Health — DB path/size/journal mode + table row counts.
- Backups — manual "지금 백업" + restore (overwrites current DB; confirm dialog).
- Audit log — every write is recorded; filter by action or actor.
Settings tab (admin only)
Manage user accounts (admin / observer), reset passwords, and edit each observer's allowed_tabs — the granular list of tabs that observer can open after login.
Profile household ledger
Admins can switch between My profile, Jeremy profile, and All. Jeremy users are server-isolated to their own profile. Personal and shared expenses remain on the profile that recorded them.
Only a Jeremy personal expense may be marked as paid with young's card. It creates a linked Jeremy debt row whose financial fields remain managed here.
Cases
- Bulk import → paste pipe text or JSON, validate and edit each row, then explicitly select rows for an atomic commit.
- Jeremy settlement → Jeremy-created links wait for admin confirmation; admin-created links are confirmed immediately.
Cycle cutoff vs calendar month
A month labelled 2026-07 with cutoff 25 covers 2026-07-25 → 2026-08-24. When creating a new month you can override cycle_start/cycle_end explicitly; otherwise the cutoff is used.
money 사용법
money는 결제 사이클 단위로 굴러가는 가계부입니다 (기본 cutoff일 = 25일). 즉 한 "월"은 이달 25일 → 다음 달 24일 까지입니다. 카드 결제·이자·수동지출·현금흐름 같은 모든 입력은 이 cycle 안에 삽니다.
확정(검정) vs 미확정(빨강)
- 검정 = 확정 된 값. 집계에 신뢰 가능.
- 빨강 = 미확정. 저장은 됐지만 관리자가 "섹션 전체 확인" 버튼이나 행 단위 ✓ 누르기를 기다리는 상태.
- observer(jem) 도 입력할 수 있지만, 그 값들은 관리자가 확정하기 전까지 빨강으로 남습니다.
- 대시보드·매트릭스 집계는 빨강/검정 모두 합산합니다. 확정 여부는 "신뢰도" 표시일 뿐.
은행별 결제 현황 매트릭스 (자동 산정)
월별현황 탭 상단의 매트릭스는 읽기 전용입니다. 각 셀은 같은 (은행, 결제일) 을 갖는 세 출처의 합입니다:
card_payments (은행 × 결제일) + interest_payments (은행 × 결제일) + cash_flows(is_auto=1) (은행 × 매칭된 결제일)
셀이 검정이 되려면 그 셀에 기여하는 모든 행이 확정 상태여야 합니다. 셀 값을 바꾸려면 아래 상세 섹션에서 행을 수정하세요. 매트릭스 자체는 직접 편집하지 않습니다.
한 cycle의 일상 (stepper)
- 상세 행 입력. 아래 상세 섹션에서 카드 결제·이자·자동이체 현금흐름 행을 추가합니다. 결제일(pay_day) 또는 date_range 가 행이 들어갈 열을 결정합니다.
- 자동이체 현금흐름의 date_range 입력. 반복 이체에는
is_auto=1을 켜고 date_range 에27일또는27-05일같은 값을 넣습니다. money 가 결제일 목록에 매칭해 하나 이상의 셀에 자동 합산합니다. - 매트릭스 확인. 각 (은행, 결제일) 셀은 해당 버킷의 카드 + 이자 + 자동이체 합입니다. 버킷 안의 모든 행이 확정되어야 셀이 검정이 됩니다.
- 확정. 빨강 행의 ✓ 버튼(또는 "섹션 전체 확인") 으로 확정합니다. 기여 행이 모두 확정되면 셀이 자동으로 검정으로 바뀝니다.
상세 내역 섹션
- 카드 결제 — 월별 카드별 합계. 결제일(pay_day) 이 셀의 열을 결정.
- 이자 — 월별 이자.
loan컬럼으로 대출 관리 탭의 대출과 연결하면, 지급 시점의 이율이 자동 스냅샷됩니다. - 수동지출 상세 — 일회성 지출. 매트릭스 셀에는 들어가지 않고, 매트릭스 하단에 pay_date별로 묶인 가상 행 으로 별도 표시. 한 가상 행이 검정이 되려면 그 날짜의 모든 항목이 확정되어야 합니다.
- 현금흐름 관리 — 용도별 in/out (수입, 저축, 이체 등). 자동이체 행(
is_auto=1)은 date_range 매칭을 통해 매트릭스 셀에 합산됩니다. 수동 행(is_auto=0)은 기록 전용이며 매트릭스에 영향을 주지 않습니다. - 자동이체 — 전역 반복 이체 템플릿, 참조용.
- 신한 우대금리 체크 — 아래 참조.
- 비고 / 메모 — 월별 자유 메모.
빨강 셀 역추적
매트릭스 셀이 빨강이면 셀을 클릭해 기여 행을 봅니다. 각 행의 확정 상태가 표시됩니다. 모두 확정하면 셀이 자동으로 검정으로 바뀝니다.
수동지출 가상 행
수동지출 항목은 pay_date 기준으로 집계되어 은행 매트릭스가 아닌 그 아래에 별도의 가상 행으로 표시됩니다. pay_date 가 없는 항목은 가상 행에서 제외되고 cycle 합계에서도 빠집니다. pay_date 를 바꾸려면 수동지출 상세 섹션에서 개별 항목을 편집하세요.
신한 우대금리 체크
신한은행은 3개월 롤링 카드 결제액이 ₩500,000 이상일 때 우대금리를 적용합니다. money는 두 창(window)을 계산합니다:
- 차월 = M−3, M−2, M−1
- 차차월 = M−2, M−1, M
M−2, M−1 은 두 창이 공유 하므로 한 번만 입력하면 됩니다. 차차월 행의 셀(M−2, M−1, M 모두 수정 가능)에 값을 넣으면, 차월도 같은 값을 사용하고 고유 셀인 M−3만 추가로 입력하면 됩니다. 미입력은 0원으로 반영되지만 실제 0원 입력과 구분합니다. 현재 합계와 확정 합계에 따라 요건 만족·예비 만족·예비 미충족·요건 미충족으로 판정합니다.
검색
가계부 탭 상단의 검색 상자는 전체 월 에서 검색합니다 (선택된 월만이 아님). 결과는 인라인으로 아래에 표시됩니다.
계좌 관리 탭 (admin 전용)
가계부에서 쓰는 은행 계좌·카드 목록을 관리합니다. 각 계좌는 라벨, 은행명, 계좌번호, (선택) 카드명 을 가집니다. 가계부 상세 섹션에서 계좌 picker (은행/계좌/카드 필드 옆 ▼ 버튼) 로 이 목록에서 한 번에 세 필드를 자동 채울 수 있습니다. picker 의 "+ 새 계좌" 버튼으로 인라인 추가도 가능 — 이 탭에 먼저 올 필요 없습니다.
카드 상세 탭 (admin 전용) — 건별 내역
가계부 매트릭스의 각 카드 결제 셀은 같은 (월 × 카드 × 은행) 그룹의 모든 card_transactions 합계입니다. 카드 상세 탭에서 건별 트랜잭션을 입력합니다: 일자, 카드, 가게, 금액, 할부개월.
일괄 입력 — "일괄 입력" 버튼으로 카드 명세서를 그대로 붙여넣을 수 있습니다. 한 줄에 한 건씩, 파이프(|) 로 구분: YYYY-MM-DD|카드|가게|금액|할부개월|비고(생략가능). 빈 줄과 # 주석은 무시됩니다. 파싱 실패 시 전체 rollback.
📷 영수증 사진 업로드 — 행의 📷 버튼으로 영수증 사진 첨부. 최초 1회 Google 로그인 필요 (drive.file 권한만 — 앱이 만든 파일만 접근). 사진은 본인 Google Drive 의 "영수증" 폴더에 저장 (본인 15GB quota 차감, 서비스 계정 quota 아님). 동시에 "영수증" 구글 캘린더에 이벤트가 자동 생성되고 description 에 Drive 링크가 들어갑니다.
📎 영수증 연결 — 📎 버튼으로 "영수증" 캘린더의 기존 이벤트를 검색해서 행에 연결. 다시 📎 누르면 breakdown 품목표를 볼 수 있습니다 (이벤트 description 을 plain text 로 파싱). 연결 해제 아이콘으로 분리할 수 있으며 캘린더 이벤트 자체는 보존됩니다.
사례
- 월간 명세서 통째 입력 → "일괄 입력" →
2026-07-03|신한|카페|4500|1|같은 줄을 여러 개 붙여넣기 → "저장". 한 줄이라도 파싱에 실패하면 전체 rollback 되어 월 데이터가 일관성을 잃지 않습니다. - 종이 영수증을 나중에 첨부 → 해당 행을 찾아 📷 → 첫 사용이면 Google 로그인 → 사진은 본인 Drive "영수증" 폴더에 올라가고 캘린더 이벤트가 자동 생성됩니다.
- 이미 캘린더에 있는 영수증 연결 → 📎 → "영수증" 캘린더에서 검색 → 이벤트 선택 → 행에 연결. 다시 📎 를 누르면 breakdown 파싱 결과를 볼 수 있습니다.
제레미 탭 (순자산 추적)
young 이 jeremy 에게 갚아야 할 돈을 추적합니다. 두 방향:
- in (자산) — jem 이 young 에게 현금을 주어 young 의 부채를 줄임.
- out (부채) — young 이 카드를 사용 (상단의 빠른 입력 폼이 가장 빠른 방법).
두 가지 상태 (검토 · 반영)
각 항목은 서로 독립된 두 축으로 표시됩니다.
- 검토 상태 — 관리자가 입력하면 "검토 완료", jem 이 입력하면 "검토 대기".
- 반영 상태 — 날짜가 아직 도래하지 않았으면 "예정 · 합계 제외", 도래했으면 "기준일 반영". 단, 검토 대기 항목은 날짜가 도래해도 "검토 대기 · 합계 제외".
합계(누적 반영 자산/부채/순자산)는 "검토 완료 + 기준일 도래" 항목만 더합니다. 화면 상단의 "기준 시점" 이후의 미래 항목은 합계에서 제외됩니다. 검토 의견 칸은 더 이상 자동 "추정치"가 찍히지 않고, 직접 작성한 의견만 표시됩니다.
하단 게시판은 young 과 jeremy 가 함께 쓰는 메모 게시판입니다. 제레미 항목 관련 대화, 확인할 내용, 사진 첨부를 남길 수 있습니다.
사례
- young 이 카드를 쓴 경우 → out. 제레미 탭 상단의 빠른 입력 폼에서 카드·금액·(선택) 메모 를 입력합니다. 관리자가 검토 완료 처리하기 전까지는 검토 대기(빨강)로 표시됩니다.
- jem 이 young 에게 현금을 준 경우 → in. 제레미 탭에서 방향을
in으로 선택하고 jem 이 준 금액을 입력·저장합니다. young 의 부채 잔액이 그 금액만큼 줄어듭니다. - 영수증/계약서 사진 공유 → 하단 게시판에서 사진을 첨부하고 짧은 설명을 적습니다. young 과 jeremy 모두 볼 수 있고 댓글도 스레드로 보존됩니다.
가임기 탭 (캘린더)
생리 주기·가임기 예측. 아무 날이나 클릭해 입력:
- 생리일 (시작/종료) — 주기 예측의 기준.
- 관계 — 기록 전용. 생성 시 섹스만, 섹스+오랄, 섹스+기타 중 선택. 생성 후에도 오랄/기타 토글 가능. 어느 쪽이든 가임 확률 계산에는 영향을 주지 않습니다.
날짜 칸은 예측된 가임도(고/중/저)에 따라 색칠됩니다. 상단 배너가 현재 단계를 표시. ⚠ 통계적 추정치이며 의료 판단을 대체하지 않습니다.
사례
- 생리 시작 → 출혈이 시작된 첫날을 클릭해 생리 시작 을 선택. 상단 배너가 즉시 바뀌고 다음 예측 구간이 달력에 표시됩니다.
- 생리 종료 → 마지막 날을 클릭해 생리 종료 를 선택. 시작일과 종료일 사이의 날짜가 생리일로 음영 처리됩니다.
- 관계 기록 → 해당일을 클릭해 섹스만, 섹스+오랄, 섹스+기타 중 선택. 가임 확률은 생리일만으로 계산되므로 이 입력은 예측에 영향을 주지 않습니다.
대출 관리 탭 (admin 전용)
각 대출의 이율 변경 이력을 관리합니다. 이율 항목마다 은행이 제시한 스프레드 와 우대금리 구성 을 입력하면 final_rate 가 스프레드 − Σ 우대 로 자동 계산됩니다. 정확한 값을 알고 있으면 필드에 직접 덮어써도 됩니다. 가계부 "이자" 섹션에서 대출을 연결하면 지급 시점의 이율이 스냅샷됩니다.
대출 계약 메모 에서는 각 대출의 원금, 금리, 상대방, 시작일/종료일을 기록합니다. 계약을 수정하면 스냅샷이 남고, 계약별 댓글 게시판에 텍스트 메모와 사진을 첨부할 수 있습니다.
사례
- 이율 변경 → 대출을 열고 새 이율 행을 추가. 은행이 제시한 새 스프레드와 각 우대금리 항목을 입력하면
final_rate가 자동 산출됩니다. 정확한 값을 알면 필드에 직접 덮어써도 됩니다. - 이자 지급 시점 이율 스냅샷 → 가계부 "이자" 섹션에서
loan컬럼으로 대출을 선택하면 현재 이율 행이 이자 행에 자동으로 스냅샷됩니다. - 대출 계약 조건 업데이트 → 계약 메모를 열고 원금/상대방/일자를 수정 후 저장. 매번 스냅샷이 남아 전체 이력을 복구할 수 있습니다.
상태 탭 (admin 전용)
- Health — DB 경로·크기·journal 모드 + 테이블별 행 수.
- 백업 — "지금 백업" 수동 실행 + 복원 (현재 DB를 덮어씀; 확인 다이얼로그).
- 감사 로그 — 모든 쓰기 작업이 기록됨. action/actor 필터.
설정 탭 (admin 전용)
사용자 계정(admin / observer) 관리, 비밀번호 재발급, observer 의 allowed_tabs 편집 (로그인 후 열 수 있는 탭을 개별 사용자별로 제어).
프로필 가계부 탭
관리자는 내 프로필·Jeremy 프로필·전체를 전환하고, Jeremy 사용자는 서버에서 자기 프로필로 격리됩니다. 개인지출과 공동생활비는 실제 기록한 프로필에 한 번만 저장됩니다.
Jeremy 개인지출만 “young 명의 카드 사용”으로 연결할 수 있습니다. 연결 행의 원본은 가계부이며 Jeremy 탭에서는 확인과 검토 의견만 관리합니다.
사례
- 일괄 입력 → 파이프 텍스트나 JSON을 붙여 넣고 행별 오류·중복을 검토한 뒤 선택한 행만 원자적으로 등록합니다.
- Jeremy 정산 연결 → Jeremy 개인지출에서 young 카드 사용을 체크합니다. Jeremy 입력은 관리자 확인 대기, 관리자 입력은 즉시 확정됩니다.
사이클 cutoff vs 달력 월
2026-07 라벨 + cutoff 25 인 월은 2026-07-25 → 2026-08-24 을 덮습니다. 새 월을 만들 때 cycle_start/cycle_end 를 명시하면 그 값이 우선하고, 비우면 cutoff 기준 자동 계산됩니다.