Hướng dẫn

Cách tạo app ngân sách: danh mục, giao dịch, nhập dữ liệu và báo cáo

Một app ngân sách cho bạn biết bạn đã dự định chi bao nhiêu cho mỗi danh mục, bạn thực sự đã chi bao nhiêu, và còn lại bao nhiêu. Để tạo một app như vậy, bạn cần tài khoản, danh mục, ngân sách hằng tháng cho mỗi danh mục, giao dịch, và một vài báo cáo rõ ràng. Hai quyết định định hình mọi thứ là phương pháp lập ngân sách của bạn và cách các giao dịch đi vào app — nhập tay, nhập từ tệp CSV của ngân hàng, hoặc kéo qua kết nối ngân hàng. Hãy bắt đầu bằng nhập CSV; nó mang lại phần lớn giá trị với một phần nhỏ công sức và rủi ro.

Hướng dẫn này nói về phần mềm. Nó không phải là lời khuyên tài chính.

Chọn phương pháp lập ngân sách trước

Phương pháp của bạn quyết định các màn hình và phép tính, vì vậy hãy chọn nó trước khi viết prompt.

Phương phápCách hoạt độngApp hiển thị gì
Giới hạn theo danh mụcĐặt giới hạn hằng tháng cho mỗi danh mụcĐã chi so với giới hạn theo từng danh mục, có thanh tiến độ
Ngân sách bằng khôngGán công việc cho mọi đồng thu nhập cho đến khi không còn khoản nào chưa phân bổSố dư “chưa phân bổ”; tiền được chuyển giữa các danh mục
Chia kiểu 50/30/20Chia thu nhập thành phần trăm cho nhu cầu, mong muốn và tiết kiệmBa nhóm và tiến độ của từng nhóm
Phong bìSố tiền cố định cho mỗi danh mục; số tiền chưa chi được chuyển sang tháng sauSố dư phong bì được chuyển tiếp từ tháng này sang tháng khác

Giới hạn theo danh mục là cách dễ xây dựng và dễ hiểu nhất. Ngân sách bằng không và phong bì cần logic chuyển tiếp: điều gì xảy ra với số tiền còn lại trong một danh mục cuối tháng, và điều gì xảy ra khi một danh mục vượt mức.

App ngân sách cần những gì

Các trang

  • Tháng này — từng danh mục với số đã ngân sách, đã chi và còn lại; tổng thu nhập và tổng đã chi.
  • Giao dịch — danh sách với ngày, người nhận, số tiền, danh mục và tài khoản; bộ lọc và tìm kiếm; phân loại lại nhanh.
  • Nhập — tải lên một CSV, ánh xạ các cột, xem trước, xác nhận.
  • Thiết lập ngân sách — danh mục, nhóm (Nhà ở, Ăn uống, Di chuyển) và số tiền mỗi tháng.
  • Tài khoản — tài khoản vãng lai, tiết kiệm, thẻ tín dụng, tiền mặt, kèm số dư.
  • Báo cáo — chi tiêu theo danh mục theo thời gian, thu nhập so với chi tiêu, so sánh tháng này với tháng trước. Xem cách tạo bảng điều khiển để chọn biểu đồ.

Dữ liệu

  • Tài khoản — tên, loại, tiền tệ, số dư đầu kỳ.
  • Danh mục — tên, nhóm, thứ tự sắp xếp, đã lưu trữ.
  • Ngân sách — danh mục, tháng, số tiền.
  • Giao dịch — tài khoản, ngày, người nhận, số tiền, danh mục, ghi chú, ID nhập, đã đối soát.
  • Quy tắc — “người nhận chứa TESCO → Tạp hóa”, áp dụng khi nhập.
  • Chuyển khoản — một cặp giao dịch liên kết giữa hai tài khoản của chính bạn, để việc chuyển tiền sang tiết kiệm không bị tính là chi tiêu.

Quyền

Một ngân sách cá nhân có một chủ sở hữu. Một ngân sách gia đình cần một hộ gia đình chung sở hữu dữ liệu, với mỗi người đăng nhập riêng. Dù bằng cách nào, không ai ngoài hộ gia đình đó được phép thấy bất kỳ dòng dữ liệu nào. Hãy kiểm thử bằng cách đăng nhập với một người dùng thứ hai, không liên quan.

Xử lý tiền cho đúng

Các app tài chính thường hỏng theo những cách nhỏ và khó xử. Hãy đưa các quy tắc sau vào prompt:

  • Lưu số tiền dưới dạng số nguyên của đơn vị nhỏ nhất (xu, penny) cùng mã tiền tệ. Số dấu phẩy động tạo ra các tổng như 0.30000000000000004.
  • Dấu nhất quán. Chi tiêu là số âm, thu nhập là số dương, hoặc dùng một trường hướng riêng — nhưng không bao giờ dùng cả hai.
  • Chuyển khoản không phải là chi tiêu. Liên kết cả hai đầu của một chuyển khoản và loại chúng khỏi tổng theo danh mục.
  • Tiền hoàn lại làm giảm chi tiêu trong danh mục gốc, thay vì được tính là thu nhập.
  • Tháng theo múi giờ của người dùng, để một giao dịch lúc 23 giờ ngày 31 không rơi sang tháng sau.
  • Một tiền tệ cho mỗi ngân sách trong phiên bản đầu tiên. Đa tiền tệ cần tỷ giá và quyết định dùng tỷ giá nào.

Đưa giao dịch vào

CáchCông sức xây dựngGhi chú
Nhập thủ côngThấpỔn cho tiền mặt, mệt cho mọi thứ khác
Nhập CSVThấp đến trung bìnhHầu hết ngân hàng cho phép tải giao dịch; cột của mỗi ngân hàng khác nhau, nên hãy cho người dùng ánh xạ cột và lưu lại cách ánh xạ
Kết nối ngân hàngCaoDùng bên tổng hợp như Plaid hoặc API mở ngân hàng; cần tài khoản nhà phát triển, phê duyệt, chi phí liên tục và trách nhiệm bảo mật nghiêm ngặt

Khi nhập CSV, hãy ngăn trùng lặp: lưu một ID nhập hoặc dấu vân tay của ngày, số tiền và mô tả, và bỏ qua các dòng đã thấy. Áp dụng quy tắc phân loại khi nhập để phần lớn dòng đến đã được phân loại sẵn.

Nếu sau này bạn thêm kết nối ngân hàng, khóa API của nhà cung cấp phải được giữ trên máy chủ, và bạn không bao giờ được yêu cầu người dùng cung cấp mật khẩu ngân hàng. Xem cách giữ an toàn cho API key.

Ví dụ prompt đầu tiên

Xây dựng một ứng dụng web ngân sách gia đình cho hai người. Chúng tôi dùng giới hạn theo danh mục: các danh mục được nhóm (Nhà ở, Ăn uống, Di chuyển, Giải trí, Tiết kiệm), mỗi danh mục có số tiền ngân sách hằng tháng. Màn hình chính hiển thị tháng này: đã ngân sách, đã chi và còn lại theo từng danh mục kèm thanh tiến độ, cùng tổng thu nhập và tổng chi tiêu. Chúng tôi có nhiều tài khoản (tài khoản vãng lai, tiết kiệm, thẻ tín dụng). Giao dịch có ngày, người nhận, số tiền, tài khoản, danh mục và ghi chú. Lưu số tiền dưới dạng số nguyên xu kèm mã tiền tệ. Chuyển khoản giữa các tài khoản của chúng tôi là các cặp liên kết và không tính là chi tiêu; tiền hoàn lại làm giảm chi tiêu trong danh mục của nó. Thêm nhập CSV: tải lên, ánh xạ cột một lần cho mỗi ngân hàng và ghi nhớ cách ánh xạ, xem trước, bỏ qua các dòng trùng, và áp dụng quy tắc người nhận kiểu “chứa TESCO → Tạp hóa”. Báo cáo: chi tiêu theo danh mục theo tháng và thu nhập so với chi tiêu trong 12 tháng gần nhất. Mỗi người trong chúng tôi đăng nhập bằng email và mật khẩu và dùng chung một hộ gia đình; không ai khác có thể thấy dữ liệu của chúng tôi. Dùng cơ sở dữ liệu, thân thiện với điện thoại.

Các bước xây dựng

  1. Danh mục và màn hình tháng này với dữ liệu mẫu. Kiểm tra phép tính bằng tay trên một tập dữ liệu nhỏ.
  2. Danh sách giao dịch và phân loại nhanh. Làm cho việc đổi danh mục chỉ cần một lần chạm.
  3. Nhập CSV. Thử với các bản xuất thật từ ngân hàng của bạn. Nhập cùng một tệp hai lần và xác nhận không có gì bị trùng.
  4. Quy tắc. Thêm mười người nhận chiếm phần lớn chi tiêu của bạn.
  5. Chuyển khoản và tiền hoàn lại. Kiểm thử cả hai và kiểm tra tổng theo danh mục.
  6. Đăng nhập và hộ gia đình. Xem cách thêm đăng nhập vào app.
  7. Báo cáo. Khi đã có vài tháng dữ liệu.
  8. Rà soát bảo mật. Chạy qua danh sách kiểm tra bảo mật cho app tạo bằng AI trước khi tin tưởng nó với dữ liệu thật.

Những lỗi thường gặp

  • Tiền dấu phẩy động. Hãy dùng số nguyên xu.
  • Tính chuyển khoản là chi tiêu. Các khoản bạn góp vào tiết kiệm sẽ trông như chi quá tay.
  • Nhập trùng. Mỗi lần nhập lại làm đôi chi tiêu nếu không có kiểm tra trùng.
  • Bắt đầu với kết nối ngân hàng. Quá nhiều công việc và rủi ro trước khi bạn biết app có hữu ích không.
  • Lưu mật khẩu ngân hàng hoặc số thẻ. Tuyệt đối không.
  • Không có chức năng xuất. Mọi người muốn dữ liệu của họ trong bảng tính; hãy thêm xuất CSV.
  • Quá nhiều danh mục. Hai mươi là đủ; ba trăm thì thành bảng tính.

Khi một app ngân sách có sẵn là lựa chọn tốt hơn

Các app lập ngân sách đã được thiết lập cung cấp kết nối ngân hàng an toàn với nhiều tổ chức, ứng dụng di động và nhiều năm xử lý các trường hợp đặc biệt. Nếu đồng bộ ngân hàng tự động là điều quan trọng nhất với bạn, một trong số đó là lựa chọn thiết thực.

Hãy tự xây dựng khi phương pháp của bạn không khớp với mô hình của họ, khi bạn không muốn dữ liệu tài chính của mình nằm trong tay công ty khác, khi việc nhập CSV vài lần một tháng là đủ, hoặc khi bạn đang xây dựng công cụ ngân sách cho một nhóm cụ thể — thủ quỹ của câu lạc bộ, một tổ chức từ thiện nhỏ, một chương trình huấn luyện. Nếu ngân sách của bạn hiện đang nằm trong bảng tính, cách biến bảng tính thành app giải thích cách chuyển đổi. Để theo dõi chi tiêu kinh doanh hoặc của nhóm thay vì ngân sách gia đình, xem cách tạo công cụ theo dõi chi phí.

Xây dựng với Mythex

Mythex có thể xây dựng app ngân sách này từ prompt ở trên: bạn mô tả trong khung chat, kiểm tra trong bản xem trước trực tiếp, rồi xuất bản. Nó thêm một cơ sở dữ liệu Postgres riêng khi app cần. Đăng nhập là tự mang theo, và nhà cung cấp dữ liệu ngân hàng cũng vậy: bạn sẽ lưu khóa của họ làm bí mật dự án và tác nhân tích hợp chúng trên máy chủ. Mythex không có kết nối ngân hàng tích hợp sẵn. Để có điểm khởi đầu, mẫu bảng điều khiển ngân sách được xây quanh việc nhập CSV và báo cáo chênh lệch.

Câu hỏi thường gặp

Tôi có thể tự tạo app quản lý ngân sách không?

Có. Một app ngân sách chủ yếu gồm danh mục, số tiền ngân sách hằng tháng và các giao dịch, với báo cáo phía trên. Một công cụ tạo app AI có thể xây dựng nó từ mô tả; các quyết định chính là phương pháp lập ngân sách của bạn và cách các giao dịch đi vào app.

App ngân sách kết nối với tài khoản ngân hàng như thế nào?

Thường thông qua một bên tổng hợp dữ liệu ngân hàng như Plaid, hoặc qua các API mở ngân hàng ở nơi có sẵn. Những cách này cần tài khoản nhà phát triển, đôi khi cần được phê duyệt, và bảo mật cẩn thận. Nhập các tệp CSV tải từ ngân hàng của bạn đơn giản hơn nhiều và là một phiên bản đầu tiên tốt.

App ngân sách nên lưu số tiền như thế nào?

Lưu số tiền dưới dạng số nguyên của đơn vị nhỏ nhất, chẳng hạn xu, cùng mã tiền tệ, thay vì số dấu phẩy động. Cách này tránh sai số làm tròn khi cộng nhiều giao dịch.

Có an toàn không khi đưa dữ liệu tài chính của tôi vào một app tự tạo?

Có thể, nếu app yêu cầu đăng nhập, tách dữ liệu của mỗi người riêng biệt, lưu bí mật trên máy chủ, và chạy qua HTTPS. Tránh lưu mật khẩu ngân hàng hoặc số thẻ đầy đủ. Hãy rà soát app bằng một danh sách kiểm tra bảo mật trước khi thêm dữ liệu của người khác.

Mythex · Pricing · Xây dựng mọi thứ với AI · Mẫu website và ứng dụng · So sánh Mythex · Thuật ngữ xây dựng ứng dụng bằng AI · Công cụ miễn phí để xây dựng ứng dụng bằng 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 Українська اردو 简体中文 繁體中文(香港) 繁體中文(台灣)