Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
PDFBox Version: 3.0.5
Portfolio Performance Version: 0.79.1
System: macosx | aarch64 | 21.0.5+11-LTS | Azul Systems, Inc.
-----------------------------------------
Scalable Capital Bank GmbH • Seitzstraße 8e • 80538 München • Deutschland
cYWntF YEAwjLKaEcO
JSubE aXh 09
42976 wVxRlCMDwxD Datum 17.09.2025
Deutschland Seite 1 / 2
Dividende
Für 01.01.2025 - 31.12.2025
Berechtigtes Wertpapier Hershey Co., The
ISIN US4278661081
Berechtigte Anzahl 0,489446
Ex Tag 15.08.2025
Verrechnungskonto DE111111111111111111111 (skobnGbmjrI)
Kontobewegung
Buchung Wertstellung Typ Betrag / Stk. Berechtigte Anzahl Gesamt
Wechselkurs
17.09.2025 18.09.2025 Gutschrift 1,37 USD 0,489446 0,56 EUR
USD / EUR 1,1858
Ausländische Quellensteuer -0,09 EUR
Steuern -0,06 EUR
Gesamtbetrag 0,41 EUR
Bitte beachten Sie Ihre eventuelle Meldepflicht nach § 67 AWV. Einkünfte aus Kapitalvermögen im Sinne von § 20 EStG sind
einkommensteuerpflichtig.
Scalable Capital Bank GmbH HRB 217778 Geschäftsführer: Aufsichtsrat: Seite
Seitzstraße 8e Amtsgericht München Florian Prucker, Martin Krebs, Patrick Olson (Vorsitzender)
80538 München USt.-Id. Nr.: DE300434774 Dirk Franzmeyer 1 / 2
Dividende
Ermittlung steuerrelevante Erträge
Typ Betrag
Gewinn oder Verlust 0,57 EUR
Verrechnung anrechenbarer Quellensteuer -0,36 EUR
Zu versteuern 0,21 EUR
Gesamt
Typ Betrag
Kapitalertragsteuer 0,05 EUR
Solidaritätszuschlag 0,01 EUR
Gesamt 0,06 EUR
Scalable Capital Bank GmbH HRB 217778 Geschäftsführer: Aufsichtsrat: Seite
Seitzstraße 8e Amtsgericht München Florian Prucker, Martin Krebs, Patrick Olson (Vorsitzender)
80538 München USt.-Id. Nr.: DE300434774 Dirk Franzmeyer 2 / 2
Original file line number Diff line number Diff line change
Expand Up @@ -546,6 +546,39 @@ public void testSparplanausfuehrung05()

}

@Test
public void testSparplanausfuehrung06()
{
var extractor = new ScalableCapitalPDFExtractor(new Client());

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

var results = extractor.extract(PDFInputFile.loadTestCase(getClass(), "Sparplanausfuehrung06.txt"), errors);

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

// check security
assertThat(results, hasItem(security( //
hasIsin("GB0002875804"), hasWkn(null), hasTicker(null), //
hasName("British American Tobacco"), //
hasCurrencyCode("EUR"))));

// check dividends transaction
assertThat(results, hasItem(purchase( //
hasDate("2025-09-19T13:31:02"), hasShares(0.055472), //
hasSource("Sparplanausfuehrung06.txt"), //
hasNote("Ord.-Nr.: SCALNUFeqbHQBbc"), //
hasAmount("EUR", 2.61), hasGrossValue("EUR", 2.61), //
hasTaxes("EUR", 0.00), hasFees("EUR", 0.00))));

}

@Test
public void testSavingsplan01()
{
Expand Down Expand Up @@ -860,6 +893,78 @@ public void testDividende04WithSecurityInEUR()
}))));
}

@Test
public void testDividende05()
{
var extractor = new ScalableCapitalPDFExtractor(new Client());

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

var results = extractor.extract(PDFInputFile.loadTestCase(getClass(), "Dividende05.txt"), errors);

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

// check security
assertThat(results, hasItem(security( //
hasIsin("US4278661081"), hasWkn(null), hasTicker(null), //
hasName("Hershey Co., The"), //
hasCurrencyCode("USD"))));

// check dividends transaction
assertThat(results, hasItem(dividend( //
hasDate("2025-09-17T00:00"), hasShares(0.489446), //
hasSource("Dividende05.txt"), //
hasNote(null), //
hasAmount("EUR", 0.41), hasGrossValue("EUR", 0.56), //
hasForexGrossValue("USD", 0.66), //
hasTaxes("EUR", 0.09 + 0.06), hasFees("EUR", 0.00))));
}

@Test
public void testDividende05WithSecurityInEUR()
{
var security = new Security("Hershey Co., The", "EUR");
security.setIsin("US4278661081");

var client = new Client();
client.addSecurity(security);

var extractor = new ScalableCapitalPDFExtractor(client);

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

var results = extractor.extract(PDFInputFile.loadTestCase(getClass(), "Dividende05.txt"), errors);

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

// check dividends transaction
assertThat(results, hasItem(dividend( //
hasDate("2025-09-17T00:00"), hasShares(0.489446), //
hasSource("Dividende05.txt"), //
hasNote(null), //
hasAmount("EUR", 0.41), hasGrossValue("EUR", 0.56), //
hasTaxes("EUR", 0.09 + 0.06), hasFees("EUR", 0.00), //
check(tx -> {
var c = new CheckCurrenciesAction();
var account = new Account();
account.setCurrencyCode("EUR");
var s = c.process((AccountTransaction) tx, account);
assertThat(s, is(Status.OK_STATUS));
}))));
}

@Test
public void testRechnungsabschluss01()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
PDFBox Version: 3.0.5
Portfolio Performance Version: 0.79.1
System: win32 | x86_64 | 21.0.5+11-LTS | Azul Systems, Inc.
-----------------------------------------
Scalable Capital Bank GmbH • Seitzstraße 8e • 80538 München • Deutschland
qaZnTyI jEglHdiHyMbo
uywrCi vmObBzSjBzL 4
62477 QmtAPdL Datum 19.09.2025
Deutschland Seite 1 / 1
Wertpapierabrechnung
für Sparplanausführung
Typ LIMIT Order SCALNUFeqbHQBbc
Ausführung 19.09.2025 13:31:02 Geschäft 19750P9JDV220250
Ausführungsplatz EIX Lagerland Luxemburg
Depot 1111111102 Verwahrart Wertpapierrechnung
Typ Wertpapier Anzahl Kurs Betrag
Kauf British American Tobacco 0,055472 Stk. 47,05 EUR 2,61 EUR
GB0002875804
Belastung 2,61 EUR
Der Betrag wird mit dem Verrechnungskonto DE11111111111111161111 (Valuta: 23.09.2025) verrechnet.
Bitte überprüfen Sie die Informationen auf Richtigkeit und melden Sie etwaige Einwände unverzüglich bei uns.
Verwenden Sie dafür den Menüpunkt Support im Kundenbereich.
Scalable Capital Bank GmbH HRB 217778 Geschäftsführer: Aufsichtsrat: Seite
Seitzstraße 8e Amtsgericht München Florian Prucker, Martin Krebs, Patrick Olson (Vorsitzender)
80538 München USt.-Id. Nr.: DE300434774 Dirk Franzmeyer 1 / 1