MartijnAce
Are there plans for YNAB (budgeting software; can be found here: https://www.youneedabudget.com/ ) integration? Automated syncing with YNAB would change my banking life for the better.
Are there plans for YNAB (budgeting software; can be found here: https://www.youneedabudget.com/ ) integration? Automated syncing with YNAB would change my banking life for the better.
Hey Martijn! Did you find a way to accomplish this?
Not yet, unfortunately
Hi YNAB and bunq users. I’ve been in contact with the YNAB help desk.. and we just need a lot of people contacting YNAB’s support (help@youneedabudget.com) and tell them you would love it if they’d look into integration with bunq. This has to be done on YNAB’s end, so let’s start asking them. A lot! They say that’ll help move it up the wishlist.
I've asked YNAB about a week ago and this was their response:
My original message:
Hi there! My bank in the Netherlands, bunq, has an api available to import my financial data into other apps like YNAB. YNAB would have to build support for this though. If it was only for bunq that'd be a bit much to ask, but because of new European legislation for the financial sector called PSD2 all European banks will be obligated to share the financial data of customers should they wish to do so. With the European union having somewhere around 500 million residents that could open up a whole new market for YNAB. Are there any plans to support this on the road map?
Their response:
Hello! Thanks for reaching out! We are planning to have a public API in the future. This should allow European based users to build bank connections on their own, which is incredibly exciting!
We'll be sure to announce it's release very loudly when it's ready. :)
Let me know if you have any other questions!
Well, it turns out YNAB released their API. For the past few days, I've been working on a realtime connection between my bunq accounts and my YNAB budgets. It's pretty functional right now although still work in progress. There is little to none documentation and no tests, yet. If you'd like, star the repositories and keep an eye on them for updated documentation and howto's.
The first repository contains a Symfony Bundle for easy bunq interaction: https://github.com/Jorijn/symfony-bunq-bundle
When used with the second Bundle, you're able to subscribe to MUTATION events and post them to YNAB's API. https://github.com/Jorijn/ynab-bunq-connector-bundle
So I have absolutely no idea what you said there with all the technical terms, but I'm really happy to hear you're working on this 👏👏🎉🎉
Good to see more YNAB users!
I've made a realtime upload too, also based on MUTATION callbacks: https://github.com/wesselt/bunq2ynab
Really handy to see your transactions pop up in YNAB as soon as they happen!
The public API has been up for a while, you can request access at: https://github.com/ynab/ynab-sdk-js
Looks good but I am a newbie and I get a missing module error?!
File "list_user.py", line 4, in <module>
import bunq
File "/Users/wk/Python-Bunq/bunq.py", line 5, in <module>
import requests
ModuleNotFoundError: No module named 'requests'
@WWVV: Looks like you're missing requests? Try:
pip3 install requests
Stapje verder krijg nu...
File "/Users/wk/Python-Bunq/bunq.py", line 295, in call
raise Exception(result["Error"][0]["error_description"])
Exception: Insufficient authentication.
@WWVV: Dan werkt requests 😊 Heb je een geldige API key geplaatst in het bestand "api_token.txt" ? Welk commando gebruik je om het script te starten? Wat is de volledige uitvoer?
Ik denk het ook dat de requester werkt en ja ik heb dat bestan aangemaakt, er zijn nu ook want ander bestanden aangemaakt..en hieronder het resultaat de eerste keer heeft het script wat meer gedaan..
WK2:python-bunq wk$ python3 list_user.py
Requesting session token...
Requesting installation token...
Generating new private key...
Registering IP 10.0.1.119
Traceback (most recent call last):
File "list_user.py", line 17, in <module>
users = bunq.get('v1/user')
File "/Users/wk/Python-Bunq/bunq.py", line 307, in get
return call('GET', method)
File "/Users/wk/Python-Bunq/bunq.py", line 284, in call
result = call_requests(action, method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 266, in call_requests
sign(action, method, headers, data)
File "/Users/wk/Python-Bunq/bunq.py", line 190, in sign
headers['X-Bunq-Client-Authentication'] = get_session_token()
File "/Users/wk/Python-Bunq/bunq.py", line 143, in get_session_token
reply = post(method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 311, in post
return call('POST', method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 284, in call
result = call_requests(action, method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 266, in call_requests
sign(action, method, headers, data)
File "/Users/wk/Python-Bunq/bunq.py", line 188, in sign
headers['X-Bunq-Client-Authentication'] = get_installation_token()
File "/Users/wk/Python-Bunq/bunq.py", line 112, in get_installation_token
register_device()
File "/Users/wk/Python-Bunq/bunq.py", line 131, in register_device
post(method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 311, in post
return call('POST', method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 295, in call
raise Exception(result["Error"][0]["error_description"])
Exception: User credentials are incorrect. Incorrect API key or IP address.
WK2:python-bunq wk$ python3 list_user.py
Requesting session token...
Traceback (most recent call last):
File "list_user.py", line 17, in <module>
users = bunq.get('v1/user')
File "/Users/wk/Python-Bunq/bunq.py", line 307, in get
return call('GET', method)
File "/Users/wk/Python-Bunq/bunq.py", line 284, in call
result = call_requests(action, method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 266, in call_requests
sign(action, method, headers, data)
File "/Users/wk/Python-Bunq/bunq.py", line 190, in sign
headers['X-Bunq-Client-Authentication'] = get_session_token()
File "/Users/wk/Python-Bunq/bunq.py", line 143, in get_session_token
reply = post(method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 311, in post
return call('POST', method, data)
File "/Users/wk/Python-Bunq/bunq.py", line 295, in call
raise Exception(result["Error"][0]["error_description"])
Exception: Insufficient authentication.
@WWVV: Aah ik zie het, je zit achter een NAT router, dus hij registreert het verkeerde IP 10.0.1.119. Ik heb de code aangepast om op een betere manier het IP te bepalen: https://github.com/wesselt/bunq2ynab/commit/ff4f82b05374d3fe4f4230ba36ff823b7eac7457
Als je de nieuwe versie hebt, draai "bash clean.sh" om de lokale staat te verwijderen, of gooi in ieder geval "installation_token.txt" weg. Als dat niet werkt probeer het met een nieuwe API key, er zit dacht ik een beperking op hoe vaak je een nieuwe key kan registreren. Ben benieuwd!
Werkt allemaal super nu tot zover.... Nu de "Personal Access Token" van de YNAB website https://app.youneedabudget.com/settings/developer
Die link breng me naar een pagina met My Setting, waar ik mijn trail kan bevestigingen, mijn password kan veranderen etc maar gaan optie voor een token..... Of moet ik daarvoor al een echte klant zijn? Misschien niet beschikbaar voor een trial? De URL van de pagina is https://app.youneedabudget.com/settings
@WWVV: De YNAB API staat nog niet voor iedereen open. Je kan toegang aanvragen via: https://github.com/ynab/ynab-sdk-js Kreeg geen antwoord op mijn aanvraag, maar toen ik een paar dagen later weer keek zag ik de API optie in My Settings.
WWVV ik had het ook net gelezen...
https://support.youneedabudget.com/t/x1p42s/unable-to-generate-api-access-token-no-developer-section-under-my-account
En ik heb een verzoek gedaan, dank je.
@Jorijn. So, I activated bunq premium and requested YNAB to allow me to make an API key, because you made my banking dream become almost reality. Thank you for that!
However, I have a question. How do you make the bunq - YNAB connection? I do not understand how to make it work :)
Thanks in advance
Great stuff, guys!!!! Wessel, I'm setting up your scripts now and requested for the YNAB API key. Waiting on their response for 2 days now.