actualbudget / actual

A local-first personal finance app
https://actualbudget.org
MIT License
12.51k stars 954 forks source link

[Feature] manual CSV import, ignore top lines (and bottom lines) #2950

Closed benquan closed 3 days ago

benquan commented 3 days ago

Verified feature request does not already exist?

đź’»

Pitch: what problem are you trying to solve?

I obtain the bank statements by CSV, which I upload manually. But the bank's CSV structure has a multilne header which gives account totals and other details, and the actual CSV data starts on line n+1. Could you add the option to simply ignore the first n lines of the csv?

Describe your ideal solution to this problem

At the moment, Actual Budget uses a "has a header" boolean. This should be incorporated into a broader solution, using a new input field of "rows to ignore" in the "Import Transaction CSV" form. If your header is 1 line long, you ignore 1 line. If there is no header, it would be 0 lines, and if its multiline, ignore n lines.

Optionally you could also ignore n lines from the bottom of the document in case they add a fixed footer.

I used to work with "Money Manager Ex" and this was their implementation of CSV import:

Screenshot 2024-06-29 at 8 27 05 AM

Teaching and learning

The feature would be displayed on the CSV import form. Optionally as shown in the example, you can shade the ignored lines to visually show how it all works.

github-actions[bot] commented 3 days ago

:sparkles: Thanks for sharing your idea! :sparkles:

This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution).

The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+

Don’t forget to upvote the top comment with 👍!

youngcw commented 3 days ago

Can you try out PR #2717 and see if that would work for you?

benquan commented 3 days ago

Thanks @youngcw I read the PR but it it tackling a different issue. I will add a sample CSV where the header is 8 lines deep, then data starts....

CreditCardsMovementsDetail-9.csv