指南

如何构建预算应用:分类、交易、导入与报表

预算应用会告诉你每个分类计划花了多少、实际花了多少,以及还剩多少。要构建它,你需要账户、分类、每个分类的月度预算、交易,以及几份清晰的报表。决定一切的两个选择是你的预算方法,以及交易如何进入应用:手动输入、从银行的 CSV 文件导入,还是通过银行连接自动获取。先从 CSV 导入开始;它只需很少的工作量和风险,就能带来大部分价值。

本指南讲的是软件层面,不构成理财建议。

先选择预算方法

你选的方法决定了界面和计算方式,因此在写提示词之前先确定它。

方法运作方式应用显示的内容
分类限额为每个分类设定月度限额每个分类已花费与限额的对比,带进度条
零基预算给每一笔收入都分配用途,直到没有未分配的余额“待分配”余额;资金可在分类之间转移
50/30/20 式划分将收入按必需品、想要的东西和储蓄的百分比划分三个桶以及各自的执行情况
信封法每个分类有固定金额;未花完的钱会结转逐月结转的信封余额

分类限额最容易构建,也最容易理解。零基预算和信封法则需要结转逻辑:月末某分类剩余的钱怎么办?某分类超支时又怎么办?

一个预算应用需要什么

页面

  • 本月——每个分类的预算、已花费和剩余金额;总收入和总支出。
  • 交易——包含日期、收款方、金额、分类和账户的列表;支持筛选和搜索;可快速重新分类。
  • 导入——上传 CSV,映射列,预览,确认。
  • 预算设置——分类、分组(住房、饮食、交通)以及每月金额。
  • 账户——活期账户、储蓄账户、信用卡、现金,并显示余额。
  • 报表——按分类随时间变化的支出、收入与支出对比、月度同比。图表选择可参考如何构建仪表盘。

数据

  • 账户——名称、类型、货币、期初余额。
  • 分类——名称、分组、排序、是否归档。
  • 预算——分类、月份、金额。
  • 交易——账户、日期、收款方、金额、分类、备注、导入 ID、是否已核对。
  • 规则——“收款方包含 TESCO → 食品杂货”,在导入时自动应用。
  • 转账——两个相互关联的交易,连接你自己的两个账户,这样把钱转到储蓄账户就不会被计为支出。

权限

个人预算只有一个所有者。家庭预算则需要一个共享的家庭作为数据的所有者,每位伴侣分别登录。无论哪种情况,家庭之外的任何人都绝不能看到任何一行数据。测试时,用第二个互不相关的用户登录来验证。

正确处理金额

财务类应用常常会在一些细小却令人尴尬的地方出错。把这些规则写进你的提示词:

  • 以最小货币单位的整数存储金额(分、便士),并附上货币代码。浮点数会产生类似 0.30000000000000004 的总额。
  • 符号保持一致。 支出为负,收入为正;或者使用单独的方向字段,但两者不能同时使用。
  • 转账不计为支出。 关联转账的双方,并将其排除在分类合计之外。
  • 退款应减少原分类的支出,而不是计为收入。
  • 月份按用户的时区计算,这样晚上 11 点发生在月末最后一天的交易,就不会被计入下个月。
  • 第一版每个预算只使用一种货币。 多币种需要汇率,并且要决定使用哪个汇率。

如何录入交易

方式构建工作量说明
手动录入低适合现金,但对其他所有内容来说很繁琐
CSV 导入低到中大多数银行都允许下载交易记录;但每家银行的列各不相同,因此应让用户映射列并保存映射
银行连接高使用 Plaid 等聚合服务或开放银行 API;需要开发者账户、审批、持续的费用以及严格的安全责任

使用 CSV 导入时,要防止重复:存储导入 ID 或日期、金额和描述的指纹,跳过已经见过的行。在导入时应用分类规则,让大多数行到达时就已分好类。

以后如果要添加银行连接,服务商的 API 密钥必须留在服务器上,而且绝不要向用户索要银行密码。参见如何保护 API 密钥安全。

示例首条提示

为两个人构建一个家庭预算网页应用。我们采用分类限额:分类分组(住房、饮食、交通、娱乐、储蓄),每个分类有月度预算金额。首页显示本月情况:每个分类的预算、已花费和剩余,并带进度条,还有总收入和总支出。我们有多个账户(活期、储蓄、信用卡)。交易包含日期、收款方、金额、账户、分类和备注。金额以整数分的形式存储,并附上货币代码。我们自己账户之间的转账是相互关联的成对记录,不计为支出;退款会减少其所在分类的支出。添加 CSV 导入:上传、每家银行映射一次列并记住映射、预览、跳过重复项,并应用收款方规则,例如“包含 TESCO → 食品杂货”。报表:按月的分类支出,以及过去 12 个月的收入与支出对比。我们各自用邮箱和密码登录,并共享一个家庭;其他人无法看到我们的数据。基于数据库,适配手机。

构建步骤

  1. 分类和带示例数据的本月视图。 用一小组数据手动核对计算。
  2. 交易列表和快速分类。 让修改分类只需一次点击。
  3. CSV 导入。 用你自己银行的真实导出文件试试。同一个文件导入两次,确认不会产生重复。
  4. 规则。 添加能覆盖你大部分支出的十个收款方。
  5. 转账和退款。 两者都要测试,并核对分类合计。
  6. 登录和家庭。 参见如何为应用添加登录。
  7. 报表。 等到有几个月的数据之后再做。
  8. 安全审查。 在用真实数据信任它之前,按照 AI 构建应用的安全检查清单逐项检查。

常见错误

  • 用浮点数处理金额。 应使用整数分。
  • 把转账计为支出。 你的储蓄转入会看起来像超支。
  • 重复导入。 没有重复检查时,每次重新导入都会让支出翻倍。
  • 从银行连接开始。 在确认应用有用之前,投入了大量工作和风险。
  • 存储银行密码或银行卡号。 绝对不要。
  • 没有导出功能。 人们想把数据导出到电子表格中;添加 CSV 导出。
  • 分类过多。 二十个分类就足够了;三百个分类就成了电子表格。

何时现成的预算应用更好

成熟的预算应用提供覆盖众多金融机构的安全银行连接、移动端应用,以及多年积累的各种边缘情况处理。如果自动同步银行数据对你最重要,那么选择其中一款才是务实的做法。

当它们的模型不适合你的方法、你不希望自己的财务数据由另一家公司持有、每月偶尔导入几次 CSV 就已足够,或者你要为某个特定群体构建预算工具(例如俱乐部的司库、小型慈善机构、培训项目)时,就自己构建。如果你的预算目前存放在电子表格里,如何把电子表格变成应用一文讲解了迁移方法。如果是要追踪企业或团队的开支,而不是家庭预算,请参见如何构建费用追踪器。

使用 Mythex 构建

Mythex 可以根据上面的提示词构建这个预算应用:你在聊天中描述它,在实时预览中检查,然后发布。当应用需要时,它会添加一个专用的 Postgres 数据库。登录由你自行提供,任何银行数据服务商也是如此:你需要把其密钥保存为项目密钥,由代理在服务器端接入。Mythex 没有内置的银行连接功能。如需起点,预算仪表盘模板围绕 CSV 导入和差异报表构建。

常见问题

我可以自己构建预算应用吗?

可以。预算应用主要由分类、每月预算金额和交易构成,上面再加报表。AI 应用构建器可以根据描述把它构建出来;主要的决定是你采用的预算方法,以及交易如何进入应用。

预算应用如何连接银行账户?

通常通过 Plaid 之类的银行数据聚合服务,或在有开放银行 API 的地区通过开放银行接口。这些需要开发者账户、在某些情况下需要审批,并要求谨慎的安全措施。导入从银行下载的 CSV 文件要简单得多,是很好的第一版。

预算应用应该如何存储金额?

以最小货币单位的整数形式存储金额,例如分,并同时保存货币代码,而不要使用浮点数。这样在累加大量交易时就不会产生舍入误差。

把我的财务数据放在自己构建的应用里安全吗?

只要满足以下条件就可以:应用需要登录,每个人的数据彼此隔离,密钥存放在服务器上,并通过 HTTPS 运行。完全不要存储银行密码或完整的银行卡号。在添加他人的数据之前,用安全检查清单审查一遍应用。

Mythex · Pricing · 用 AI 构建任何东西 · 网站和应用模板 · Mythex 对比 · AI 应用构建术语表 · 免费的 AI 应用构建工具 · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 繁體中文(香港) 繁體中文(台灣)