-
-
Notifications
You must be signed in to change notification settings - Fork 86
🚀 Add bank account transaction integration #132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
@KMKoushik :) |
I have also added i18n support for this feature in another PR that is based on this PR: #89. If this gets merged I can open a PR with i18n support for this aswell. https://github.com/alexanderwassbjer/split-pro/tree/feature/i18n-support |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this looks good overall with some comments. please lemme know what you think!
tysm for this PR really appreciate it. this is really awesome!
think it's best to merge in v2, test thoroughly and release it with other features! (i'll create a new branch)
.env.example
Outdated
@@ -41,6 +41,12 @@ EMAIL_SERVER_PORT= | |||
EMAIL_SERVER_USER= | |||
EMAIL_SERVER_PASSWORD= | |||
|
|||
# GoCardless options | |||
NEXT_PUBLIC_GOCARDLESS_ENABLED= | |||
NEXT_PUBLIC_GOCARDLESS_COUNTRY= |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so it will work on one specific country alone?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, it should work world wide. The bank provider picker in the settings page fetch all bank providers. It works with either one country or undefined which then returns all the bank providers.
But because the list can be long in that case, I added the env to have a option to only fetch some.
If you have another approach to this, feel free to tell me.
One way is to have a country picker first and then the providers but it feels a bit weird..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we have default currency option, we can get the country from that currency!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't find the default currency? If you mean the currency that is set by the user when they try to add a expense it feels a bit weird to use that because it can change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So for now, it only works with one country in the package I use. https://github.com/nordigen/nordigen-node/blob/9d535ca9d788115d4e199c749432733be3ea6cdd/lib/api/institutions.js#L23
That can be fixed, either in the package or that we have a country picker first.
But if we think of the user case, will it be necessary to have multiple countries at the same instance?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we want to stick with the env and use it either with no value to fetch all bank providers or filter it based on the env. I have created a PR on the Nordigen-node package and hoping for a merge so we can use it.
nordigen/nordigen-node#63
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you submit this PR to my fork? :)
@alexanderwassbjer changed the base to v2! |
Awesome! Iam happy you liked it. It would be nice if it was released in v2! |
ofcourse this is going to be star feature! |
Co-authored-by: Fredrik Olsson <[email protected]>
Fix bug with floating numbers on exact split calculator
@alexanderwassbjer
|
94bc6d7
to
421b40e
Compare
1.5 stable is out :) Regarding cron there are 2 options that I consider. One is the scheduler in The cache policy should be configurable, one month seems like a lot of transactions to me. |
Awesome with 1.5! Then we will try to merge this PR. I haven’t read much about pg-boss, but I’m considering either that or pg-cron. My gut feeling is that having the cron jobs as a database extension with pg-cron seems more stable than handling them in code with pg-boss — though I might be wrong. EDIT: The cache policy for manage is 1 day. But 1 month is the getTransactions from GoCardless interval (dateFrom, dateTo). Maybe that should be configurable? |
@krokosik I have pushed some new code where all your comments are fixed and some other stuff. Whats left to do is:
I would like your thoughts on the cron stuff. |
Regarding cron, I will read more about it next week, but so far, it is unclear to me how well On the other hand we will use |
Indeed! I’ve seen that this is still a preview feature, and at the moment Prisma only supports a limited set of extensions. Another option would be to manually install I will have a look at implementing EDIT: I'am not sure how our self-hosters is running their instance of split-pro. But Netlify, Vercel for example don't keep workers alive, like |
@krokosik I have added a proof of concept of the
![]() I have tested the implementation a bit and I think it's a good approach. |
Awesome work! Will review the changes this week. |
Oof bummer, gocardless does not support individual accounts in my country (Poland) and I don't have a business. We need to figure out a way to test it, are there some other providers I could try? |
Ohno! But do you have like Revolut, because they are supported. Otherwise my plan is to maybe implement the plaid api aswell. |
The requirement to own a business is a requirement for a gocardless account itself. I didn't event get to adding accounts. |
Hmm what? Then it says: There is a link you can follow. Which is free and no requirement of a business. That's the way it went and it works good. |
Aaaand the sandbox account does not let me into the Bank Account Data portal. |
Okay nevermind, they have a separate sandbox for bank account data! So I don't even need to make an account there <3 |
Awesome! 🤩 |
@krokosik I just had to verify that it worked to create an account without a business. |
@alexanderwassbjer yeah, my bad. I didn't realize bank account data was a separate service. With that being said, I'm a bit swamped now with other responsibilities sadly. |
Implemented an integration that uses GoCardless api to fetch bank account transactions. Then when you want to add an expense you can either fill it manually or you can pick from your transactions and it will automatically be added as an expense. There is also a function to "multi add" multiple transactions at the same time.
If a transaction already has been added to a group you cant add it once again.
GoCardless page
Other changes:
Screenshots: