[{"data":1,"prerenderedAt":675},["ShallowReactive",2],{"navigation_docs_en":3,"-en-guide-transactions":191,"-en-guide-transactions-surround":670},[4,61,127,171],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":60},"Guide","i-lucide-book-open","\u002Fen\u002Fguide","en\u002F1.guide",[10,15,20,25,30,35,40,45,50,55],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fen\u002Fguide\u002Fintroduction","en\u002F1.guide\u002F01.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Install the App","\u002Fen\u002Fguide\u002Finstallation","en\u002F1.guide\u002F02.installation","i-lucide-smartphone",{"title":21,"path":22,"stem":23,"icon":24},"Authentication","\u002Fen\u002Fguide\u002Fauth","en\u002F1.guide\u002F03.auth","i-lucide-lock",{"title":26,"path":27,"stem":28,"icon":29},"Wallets","\u002Fen\u002Fguide\u002Fwallets","en\u002F1.guide\u002F04.wallets","i-lucide-wallet",{"title":31,"path":32,"stem":33,"icon":34},"Categories","\u002Fen\u002Fguide\u002Fcategories","en\u002F1.guide\u002F05.categories","i-lucide-tags",{"title":36,"path":37,"stem":38,"icon":39},"Transactions","\u002Fen\u002Fguide\u002Ftransactions","en\u002F1.guide\u002F06.transactions","i-lucide-receipt",{"title":41,"path":42,"stem":43,"icon":44},"Transfers","\u002Fen\u002Fguide\u002Ftransfers","en\u002F1.guide\u002F07.transfers","i-lucide-arrow-left-right",{"title":46,"path":47,"stem":48,"icon":49},"Statistics","\u002Fen\u002Fguide\u002Fstatistics","en\u002F1.guide\u002F08.statistics","i-lucide-bar-chart-3",{"title":51,"path":52,"stem":53,"icon":54},"Theme","\u002Fen\u002Fguide\u002Ftheme","en\u002F1.guide\u002F09.theme","i-lucide-palette",{"title":56,"path":57,"stem":58,"icon":59},"Settings","\u002Fen\u002Fguide\u002Fsettings","en\u002F1.guide\u002F10.settings","i-lucide-settings",false,{"title":62,"icon":63,"path":64,"stem":65,"children":66,"page":60},"Development","i-lucide-code","\u002Fen\u002Fdevelopment","en\u002F2.development",[67,72,77,82,87,92,97,102,122],{"title":68,"path":69,"stem":70,"icon":71},"Installation","\u002Fen\u002Fdevelopment\u002Finstallation","en\u002F2.development\u002F01.installation","i-lucide-download",{"title":73,"path":74,"stem":75,"icon":76},"Codebase Graph","\u002Fen\u002Fdevelopment\u002Funderstand-anything","en\u002F2.development\u002F02.understand-anything","i-lucide-network",{"title":78,"path":79,"stem":80,"icon":81},"Offline & PWA","\u002Fen\u002Fdevelopment\u002Foffline","en\u002F2.development\u002F03.offline","i-lucide-wifi-off",{"title":83,"path":84,"stem":85,"icon":86},"Data Migration History","\u002Fen\u002Fdevelopment\u002Fmigration","en\u002F2.development\u002F04.migration","i-lucide-database",{"title":88,"path":89,"stem":90,"icon":91},"Deployment","\u002Fen\u002Fdevelopment\u002Fdeployment","en\u002F2.development\u002F05.deployment","i-lucide-rocket",{"title":93,"path":94,"stem":95,"icon":96},"Testing","\u002Fen\u002Fdevelopment\u002Ftesting","en\u002F2.development\u002F06.testing","i-lucide-flask-conical",{"title":98,"path":99,"stem":100,"icon":101},"Date Utilities","\u002Fen\u002Fdevelopment\u002Fdate-utilities","en\u002F2.development\u002F07.date-utilities","i-lucide-calendar",{"title":103,"path":104,"stem":105,"children":106,"page":60},"Ai Workflow","\u002Fen\u002Fdevelopment\u002Fai-workflow","en\u002F2.development\u002F08.ai-workflow",[107,112,117],{"title":108,"path":109,"stem":110,"icon":111},"Overview","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Foverview","en\u002F2.development\u002F08.ai-workflow\u002F01.overview","i-lucide-bot",{"title":113,"path":114,"stem":115,"icon":116},"Agents","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Fagents","en\u002F2.development\u002F08.ai-workflow\u002F02.agents","i-lucide-users",{"title":118,"path":119,"stem":120,"icon":121},"Skills","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Fskills","en\u002F2.development\u002F08.ai-workflow\u002F03.skills","i-lucide-lightbulb",{"title":123,"path":124,"stem":125,"icon":126},"Troubleshooting","\u002Fen\u002Fdevelopment\u002Ftroubleshooting","en\u002F2.development\u002F09.troubleshooting","i-lucide-life-buoy",{"title":128,"icon":129,"path":130,"stem":131,"children":132,"page":60},"Reference","i-lucide-file-code","\u002Fen\u002Freference","en\u002F3.reference",[133,138,142,147,152,156,161,166],{"title":134,"path":135,"stem":136,"icon":137},"Architecture","\u002Fen\u002Freference\u002Farchitecture","en\u002F3.reference\u002F01.architecture","i-lucide-boxes",{"title":139,"path":140,"stem":141,"icon":44},"Transaction Types","\u002Fen\u002Freference\u002Ftransaction-types","en\u002F3.reference\u002F02.transaction-types",{"title":143,"path":144,"stem":145,"icon":146},"Sync","\u002Fen\u002Freference\u002Fsync","en\u002F3.reference\u002F03.sync","i-lucide-refresh-cw",{"title":148,"path":149,"stem":150,"icon":151},"Offline-first","\u002Fen\u002Freference\u002Foffline-first","en\u002F3.reference\u002F04.offline-first","i-lucide-list-ordered",{"title":153,"path":154,"stem":155,"icon":121},"Technical Decisions","\u002Fen\u002Freference\u002Ftech-decisions","en\u002F3.reference\u002F05.tech-decisions",{"title":157,"path":158,"stem":159,"icon":160},"Validation Strategy","\u002Fen\u002Freference\u002Fvalidation-strategy","en\u002F3.reference\u002F06.validation-strategy","i-lucide-shield-check",{"title":162,"path":163,"stem":164,"icon":165},"What Changed Since Firebase","\u002Fen\u002Freference\u002Ffirebase-migration","en\u002F3.reference\u002F07.firebase-migration","i-lucide-hamburger",{"title":167,"path":168,"stem":169,"icon":170},"Performance","\u002Fen\u002Freference\u002Fperformance","en\u002F3.reference\u002F08.performance","i-lucide-gauge",{"title":172,"icon":173,"path":174,"stem":175,"children":176,"page":60},"Premium","i-lucide-star","\u002Fen\u002Fpremium","en\u002F4.premium",[177,181,186],{"title":108,"path":178,"stem":179,"icon":180},"\u002Fen\u002Fpremium\u002Foverview","en\u002F4.premium\u002F01.overview","i-lucide-layers",{"title":182,"path":183,"stem":184,"icon":185},"Telegram Bot","\u002Fen\u002Fpremium\u002Ftelegram-bot","en\u002F4.premium\u002F02.telegram-bot","i-lucide-send",{"title":187,"path":188,"stem":189,"icon":190},"AI Chat","\u002Fen\u002Fpremium\u002Fai-chat","en\u002F4.premium\u002F03.ai-chat","i-lucide-sparkles",{"id":192,"title":36,"body":193,"description":662,"extension":663,"links":664,"meta":665,"navigation":666,"path":37,"seo":667,"stem":38,"__hash__":669},"docs_en\u002Fen\u002F1.guide\u002F06.transactions.md",{"type":194,"value":195,"toc":632},"minimark",[196,200,204,208,211,287,290,294,305,311,333,338,341,361,371,376,388,392,419,426,430,436,440,443,447,450,454,457,461,482,486,489,503,507,510,524,529,533,539,545,551,555,562,566,569,573,580,584,587,591,594,598,601,605,608,612,615,619],[197,198,108],"h2",{"id":199},"overview",[201,202,203],"p",{},"Transactions are the core of Finapp. Every financial operation - a purchase, salary, or transfer between accounts - is recorded as a transaction.",[205,206],"app-media",{"name":207},"history",[197,209,139],{"id":210},"transaction-types",[212,213,214,230],"table",{},[215,216,217],"thead",{},[218,219,220,224,227],"tr",{},[221,222,223],"th",{},"Type",[221,225,226],{},"What it does",[221,228,229],{},"When to use",[231,232,233,248,261,274],"tbody",{},[218,234,235,242,245],{},[236,237,238],"td",{},[239,240,241],"strong",{},"Expense",[236,243,244],{},"Decreases wallet balance",[236,246,247],{},"Daily spending, bills, subscriptions",[218,249,250,255,258],{},[236,251,252],{},[239,253,254],{},"Income",[236,256,257],{},"Increases wallet balance",[236,259,260],{},"Salary, freelance, gifts",[218,262,263,268,271],{},[236,264,265],{},[239,266,267],{},"Transfer",[236,269,270],{},"Moves money between wallets",[236,272,273],{},"ATM withdrawal, currency exchange, moving savings",[218,275,276,281,284],{},[236,277,278],{},[239,279,280],{},"Adjustment",[236,282,283],{},"Corrects wallet balance",[236,285,286],{},"Found discrepancy, lost cash, initial balance",[205,288],{"name":289},"transaction-form",[197,291,293],{"id":292},"creating-a-transaction","Creating a Transaction",[201,295,296,299,300,304],{},[239,297,298],{},"Desktop:"," click the floating button on the right side to open the form in a sidebar. The sidebar has two slides: the main form and a transaction history slide with filter tabs (all transactions \u002F by wallet \u002F by wallet + category). Keyboard shortcut: ",[301,302,303],"code",{},"Cmd+G",".",[201,306,307,310],{},[239,308,309],{},"Mobile:"," tap the center button in the bottom bar. The form opens as a bottom sheet with three slides:",[312,313,314,321,327],"ol",{},[315,316,317,320],"li",{},[239,318,319],{},"History"," - recent transactions filtered by current date\u002Fwallet\u002Fcategory. Tap to edit.",[315,322,323,326],{},[239,324,325],{},"Form"," (default) - main input: amount with calculator, type toggle, category and wallet selectors, date picker, description.",[315,328,329,332],{},[239,330,331],{},"Quick selector"," - wallets grid (up to 5) and categories. Tap to select and return to the form.",[334,335,337],"h4",{"id":336},"how-quick-category-selection-works","How quick category selection works",[201,339,340],{},"Categories on the quick selector slide are displayed in priority order:",[312,342,343,349,355],{},[315,344,345,348],{},[239,346,347],{},"Favorites"," - categories with the \"Favorite\" setting enabled. Shown first in a separate section. Configured manually in each category's settings.",[315,350,351,354],{},[239,352,353],{},"Recent"," - categories from your latest transactions (up to 16). Sorted by most recent usage date. Don't overlap with favorites - if a category is already in favorites, it won't appear in recent.",[315,356,357,360],{},[239,358,359],{},"All categories"," - if there are no favorites and no recent categories, all available categories are displayed.",[201,362,363,364,367,368,370],{},"You can control visibility in each category's settings: ",[239,365,366],{},"Favorite"," (show in quick selector) and ",[239,369,353],{}," (show in the recent list).",[372,373,375],"h3",{"id":374},"type-toggle","Type Toggle",[201,377,378,379,381,382,384,385,387],{},"Switch between ",[239,380,241],{},", ",[239,383,254],{},", and ",[239,386,267],{}," at the top of the form. The Transfer tab only appears when 2+ wallets exist.",[372,389,391],{"id":390},"calculator","Calculator",[201,393,394,395,381,398,381,401,381,404,407,408,411,412,415,416,418],{},"The amount field has a built-in calculator with buttons for ",[301,396,397],{},"+",[301,399,400],{},"−",[301,402,403],{},"×",[301,405,406],{},"÷"," and decimal point. Enter an expression like ",[301,409,410],{},"150+50"," - the submit button changes to ",[301,413,414],{},"="," to confirm the calculation. After pressing ",[301,417,414],{},", it shows the result and the submit button becomes a checkmark.",[201,420,421,422,425],{},"Long-press the ",[239,423,424],{},"C"," (clear) button to reset all amount fields.",[372,427,429],{"id":428},"category-selector","Category Selector",[201,431,432,433,435],{},"Opens a Command Palette (searchable list). ",[239,434,280],{}," appears as the first option. Other categories are grouped by parent. Type to search by name.",[372,437,439],{"id":438},"wallet-selector","Wallet Selector",[201,441,442],{},"Shows the current wallet with icon, name, currency, and balance. Tap to open the wallet list.",[372,444,446],{"id":445},"date-picker","Date Picker",[201,448,449],{},"Shows the selected date with day, month, and weekday. Navigation buttons: previous day, today, next day. Tap the date to open a calendar. Future dates are not allowed.",[372,451,453],{"id":452},"description","Description",[201,455,456],{},"Tap the message icon button in the calculator area to add an optional text note. A dot indicator appears on the icon when a description is set.",[372,458,460],{"id":459},"submit-button","Submit Button",[462,463,464,470,476],"ul",{},[315,465,466,469],{},[239,467,468],{},"Checkmark"," - ready to save (amount > 0)",[315,471,472,475],{},[239,473,474],{},"Equals"," - calculator expression entered, press to calculate first",[315,477,478,481],{},[239,479,480],{},"Disabled"," - amount is 0",[372,483,485],{"id":484},"validation","Validation",[201,487,488],{},"The form checks before saving:",[462,490,491,494,497,500],{},[315,492,493],{},"Amount must be greater than 0",[315,495,496],{},"Wallet must be selected",[315,498,499],{},"Category must be selected (except for transfers)",[315,501,502],{},"For transfers: expense and income wallets must be different",[197,504,506],{"id":505},"adjustments","Adjustments",[201,508,509],{},"Balance corrections that don't count as income or expense. Use when your actual wallet balance differs from what Finapp shows.",[462,511,512,518],{},[315,513,514,517],{},[239,515,516],{},"Income + Adjustment"," - increase balance",[315,519,520,523],{},[239,521,522],{},"Expense + Adjustment"," - decrease balance",[525,526,528],"callout",{"icon":527},"i-lucide-info","Adjustment transactions are excluded from statistics calculations but included in wallet balance.",[372,530,532],{"id":531},"when-to-use-adjustments","When to use adjustments",[201,534,535,538],{},[239,536,537],{},"Initial balance."," You created a \"Cash\" wallet, but you already have $500 on hand. Create an income adjustment for $500 - the wallet balance becomes correct without showing a false income in statistics.",[201,540,541,544],{},[239,542,543],{},"Discrepancy with reality."," Finapp shows $320 in cash, but you actually have $300. Create an expense adjustment for $20 - the balance evens out without distorting expense statistics.",[201,546,547,550],{},[239,548,549],{},"Cashback or bonuses."," You received $15 cashback on your card. It's not income in the usual sense, but the balance changed. An income adjustment reflects the balance change without inflating income statistics.",[197,552,554],{"id":553},"duplicating","Duplicating",[201,556,557,558,561],{},"Click any transaction to open it, then use the ",[239,559,560],{},"duplicate"," action. The form opens pre-filled with all data from the original transaction (amount, category, wallet, date, description) - ready to save as a new record. Useful for recurring expenses.",[197,563,565],{"id":564},"editing-and-deleting","Editing and Deleting",[201,567,568],{},"Click any transaction in the history or statistics to open it in the form. Edit and save, or delete with the trash icon. A confirmation dialog prevents accidental deletion.",[197,570,572],{"id":571},"history-page","History Page",[201,574,575,576,579],{},"The History page (",[301,577,578],{},"\u002Fhistory",") shows all transactions with filtering and grouping options.",[372,581,583],{"id":582},"daily-totals","Daily Totals",[201,585,586],{},"Each day's header displays the total income and expense for that day.",[372,588,590],{"id":589},"filters","Filters",[201,592,593],{},"Filter by wallet and\u002For category. Filters are persisted in localStorage - the History page restores your last-used filters on next visit.",[372,595,597],{"id":596},"description-filter","Description Filter",[201,599,600],{},"When transactions with descriptions exist, a toggle appears to show only transactions that have a description.",[372,602,604],{"id":603},"type-filter","Type Filter",[201,606,607],{},"Filter by transaction type: All, Expense, Income, Transfer, or Adjustment. Each tab shows the count of matching transactions. Only available when multiple types exist.",[372,609,611],{"id":610},"pagination","Pagination",[201,613,614],{},"Transactions load in batches of 30. A \"Load more\" button at the bottom shows the remaining count.",[197,616,618],{"id":617},"next-steps","Next Steps",[462,620,621,627],{},[315,622,623,626],{},[624,625,41],"a",{"href":42}," - move money between wallets",[315,628,629,631],{},[624,630,46],{"href":47}," - analyze your income and expense trends",{"title":633,"searchDepth":634,"depth":634,"links":635},"",2,[636,637,638,649,652,653,654,661],{"id":199,"depth":634,"text":108},{"id":210,"depth":634,"text":139},{"id":292,"depth":634,"text":293,"children":639},[640,642,643,644,645,646,647,648],{"id":374,"depth":641,"text":375},3,{"id":390,"depth":641,"text":391},{"id":428,"depth":641,"text":429},{"id":438,"depth":641,"text":439},{"id":445,"depth":641,"text":446},{"id":452,"depth":641,"text":453},{"id":459,"depth":641,"text":460},{"id":484,"depth":641,"text":485},{"id":505,"depth":634,"text":506,"children":650},[651],{"id":531,"depth":641,"text":532},{"id":553,"depth":634,"text":554},{"id":564,"depth":634,"text":565},{"id":571,"depth":634,"text":572,"children":655},[656,657,658,659,660],{"id":582,"depth":641,"text":583},{"id":589,"depth":641,"text":590},{"id":596,"depth":641,"text":597},{"id":603,"depth":641,"text":604},{"id":610,"depth":641,"text":611},{"id":617,"depth":634,"text":618},"Managing transactions in Finapp.","md",null,{},{"icon":39},{"title":36,"description":668},"Record expenses, income, transfers, and balance adjustments in Finapp using the built-in calculator, category selector, and transaction history.","u6vKisGgfeiWtkhkrsoMe4j8ZRZ4Km51tRaNBvoazPI",[671,673],{"title":31,"path":32,"stem":33,"description":672,"icon":34,"children":-1},"Organizing transactions with categories.",{"title":41,"path":42,"stem":43,"description":674,"icon":44,"children":-1},"Transferring money between wallets.",1782114342789]