- Jun 17, 2020
-
-
The Linxea module calls the Apicil browser that inherits from the Apivie browser. When users as a Linxea connection with the Apicil website and try to fetch their documents, it raises an error: "AttributeError: 'ApicilBrowser' object has no attribute 'get_subscription_list'"
-
-
Should be improved in the future by not filtering URL and verb and replicating transfer behavior.
-
-
-
-
It is cleaner to use MapIn for this kind of typing.
-
-
AuthenticationMethodPage was missing "logged". Since the page is also used at login, try to distinguish cases.
-
-
For now the SCA is crossbrowser, so the user can validate the sca through his browser.
-
Sometimes the search for transactions opens a popup (even after limiting the search to one year) so now we close it, reduce the length of the search by one month and retry. Also force the return to the transaction search page after selecting a card because the website sometimes does not take us there automatically.
-
Moved the file removal before the loops so that the file is always removed even if we do not exhaust the generator returned by iter_history. When the file wasn't removed you could get the same history for two different accounts.
-
After modifiying the password, there is a call to another URL that is done by the website to validate the password change. The message returned by the json can variate, so we need to check if there is an error based on the statut returned, not the error message.
-
-
-
There is a call at login to choose which space to consult (particulier, pro, association). If we don't do it, there is a redirection during the fetching of investments that fails.
-
Attempt to access to ProAccountsPage can lead instead to RedirectPage, where we can follow a link. It leads to a code 200 page even when bearing a 'erreur-404' in the URL. This happens only on certain connections as a wrongly activated security feature of the server, as discussed directly with the bank, when there is no accounts on the aimed page. We need to pass through not to block the connection
-
Also added obj_id = obj_number
-
Everything works fine locally but we are blocked in prod, leading to 500 errors when trying to access account details.
-
-
-
-
-
HAR is used by many tools though not standardized. Some fields can't be filled like timings or pages.
-
-
* Avoid account_id check on transfer * Search the account by iban in iter_transfer_recipient to get the right account_id
-
Passing data='' or json={} to browser methods like open() or build_request() used to make a GET, but this is incorrect. We can simply check the non-None of one of those params. If a Request parameter is used though, it's more implicit, because we cannot guess what was the intention, we can't easily distinguish the default value from an intentionally empty value Request().data == [] Request().json is None
-
In creditcooperatif (a caissedepargne child), the snid authentication parameter was not available in the parsed url. We can now take it from another place if it is not on the parsed url (it is always in the continue_parameters OR the url).
-
-
One of the JSON transactions is not actually a transaction, just a sum(up of the current account balance.
-
This Action Needed is easily bypassed since now we are fecthing the accounts on the API. We still keep the Page class to handle the related URL after login.
-
A number of iter_ functions use go_to_account_space() function in this module. Sometimes using it with argument '0' is enough and avoids trying to switch space when not needed, especially when the next request is retried up to 6 times upon response code 500. This commit extends that use of the function to all accounts where no switch is needed. This saves on requests number and avoids error 500 for users with only one space.
-
-
First step for login is to submit login without password and get the authentification method type before proceeding to it. For some connections, response JSON returns no auth method, and an 'AUTHENTICATION_FAILED' status right at this step. While there is a message 'Confirmez votre authentification à votre banque à distance', it is deceitful. When attempting the connection in a navigator the same reponse is given but a JS message 'erreur technique, Ce service est temporairement indisponible' is displayed as well. Hence the BrowserUnavailable error to be raised.
-
The code does not have self.redirect_url anymore.
-
and avoid duplication of subscription
-
-
-
Some wealth accounts are now available only on the linebourse space. The current way of fetching accounts results in an error message. The linebourse space is not accessible with the current authentication so for now we catch the error so the accounts can be fetched (although without investments details and history).
-