Skip to content

Commit

Permalink
Modify Arkea Direct Bank PDF-Importer to support new transaction
Browse files Browse the repository at this point in the history
  • Loading branch information
Nirus2000 committed May 3, 2024
1 parent 90df368 commit 65b36c0
Show file tree
Hide file tree
Showing 3 changed files with 67 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,37 @@ public void testWertpapierKauf02()
hasTaxes("EUR", 0.00), hasFees("EUR", 9.64))));
}

@Test
public void testWertpapierKauf03()
{
ArkeaDirectBankPDFExtractor extractor = new ArkeaDirectBankPDFExtractor(new Client());

List<Exception> errors = new ArrayList<>();

List<Item> results = extractor.extract(PDFInputFile.loadTestCase(getClass(), "Kauf03.txt"), errors);

assertThat(errors, empty());
assertThat(countSecurities(results), is(1L));
assertThat(countBuySell(results), is(1L));
assertThat(countAccountTransactions(results), is(0L));
assertThat(results.size(), is(2));
new AssertImportActions().check(results, "EUR");

// check security
assertThat(results, hasItem(security( //
hasIsin("LU2655993207"), hasWkn(null), hasTicker(null), //
hasName("AMUNDI MSCI WORLD UC.ETF EUR D"), //
hasCurrencyCode("EUR"))));

// check buy sell transaction
assertThat(results, hasItem(purchase( //
hasDate("2024-03-28T09:39:48"), hasShares(7.00), //
hasSource("Kauf03.txt"), //
hasNote("Référence 50Z3117582492059"), //
hasAmount("EUR", 212.42), hasGrossValue("EUR", 211.68), //
hasTaxes("EUR", 0.00), hasFees("EUR", 0.74))));
}

@Test
public void testDividende01()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
PDFBox Version: 1.8.17
Portfolio Performance Version: 0.68.4
-----------------------------------------
AVIS D'OPÉRATIONS
M DUPONT JEAN
Au 28 mars 2024
04 RUE xbNqiWk
27665 UCRpez
VOTRE COMPTE PEA N° 476945643793 M DUPONT JEAN
Date
Désignation Débit Crédit
opération
¢ TRACKER : AMUNDI MSCI WORLD UC.ETF EUR D (LU2655993207)
28-03-2024 Référence 50Z3117582492059
09:39:48 Sens Achat - Exécution unique
Modalité Limité
Marché Comptant
Lieu d'exécution NYSE EURONEXT PARIS
Quantité 7 Cours 30,24 €
Montant Brut 211,68 €
Courtage et Commission 0,74 €
Montant NET 212,42 € 212,42 €
Sous réserve de bonne fin.
Lorsqu'elle s'applique, l'exonération de TVA relève de l'article 261 C du CGI.
Sous réserve de son application à la présente transaction, la Taxe sur les Transactions Financières prévue par l'article 235 ter ZD du
CGI est prélevée sur votre compte espèces et fait l'objet d'un avis récapitulatif spécifique.
Duplicata Internet
Page 1/1
Fortuneo est une marque commerciale d'Arkéa Direct Bank. Arkéa Direct Bank, Société Anonyme à Directoire et Conseil de Surveillance
au capital de 89 198 952 euros. RCS Nanterre 384 288 890. Siège social : Tour Ariane - 5, place de la Pyramide 92088 Paris La Défense.
Courtier en assurance n°ORIAS 07 008 441. Adresse postale : Fortuneo - Service Clients - TSA41707 - 35917 RENNES CEDEX 9.
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ private void addBuySellTransaction()

Transaction<BuySellEntry> pdfTransaction = new Transaction<>();

Block firstRelevantLine = new Block("^.* ACTION : .* \\([A-Z]{2}[A-Z0-9]{9}[0-9]\\)$");
Block firstRelevantLine = new Block("^.* (ACTION|TRACKER) : .* \\([A-Z]{2}[A-Z0-9]{9}[0-9]\\)$");
type.addBlock(firstRelevantLine);
firstRelevantLine.set(pdfTransaction);

Expand All @@ -54,9 +54,12 @@ private void addBuySellTransaction()
// @formatter:off
// ¢ ACTION : ORANGE (FR0000133308)
// Quantité 46 Cours 10,646 €
//
// ¢ TRACKER : AMUNDI MSCI WORLD UC.ETF EUR D (LU2655993207)
// Quantité 7 Cours 30,24 €
// @formatter:on
.section("name", "isin", "currency") //
.match("^.* ACTION : (?<name>.*) \\((?<isin>[A-Z]{2}[A-Z0-9]{9}[0-9])\\)$") //
.match("^.* (ACTION|TRACKER) : (?<name>.*) \\((?<isin>[A-Z]{2}[A-Z0-9]{9}[0-9])\\)$") //
.match("^Quantit. [\\,\\d\\s]+ Cours [\\,\\d\\s]+ (?<currency>\\p{Sc})$") //
.assign((t, v) -> t.setSecurity(getOrCreateSecurity(v)))

Expand Down

0 comments on commit 65b36c0

Please sign in to comment.