xPub Public Bitcoin Adresse hinterlegen

xPub Public Bitcoin Adresse hinterlegen

Mit Hilfe des BTCPayServers werden die Zahlungseingänge verwaltet. Dazu wird zusätzlich eine Wallet benötigt. Das Bitcoin Guthaben befindet sich zu keinem Zeitpunkt im BTCPayServer, sondern immer auf der Wallet des Händlers.

Es wird eine Wallet benötigt, mit der auf Basis von xPub Public Keys generiert werden können. Der xPub wird bei BTCPayServer hinterlegt und der Private Key bleibt im Besitz des Händlers.

BTCPayServer ist somit in der Lage für jede Transaktion einen Public Key zu generieren und die Zahlungen direkt auf der Wallet des Händlers gutzuschreiben, ohne selber in den Besitz der Bitcoin zu gelangen.

Die Wallet muss auch nicht permanent online sein, sondern ist physisch vom BTCPayserver getrennt. Die Wallet kann somit eine Hardware Wallet wie von Coldcard oder Ledger sein oder auch eine Software Wallet wie von Electrum, die auf dem eigenen lokalen Rechner läuft.

In unserem Beispiel verwenden wir die Electrum Wallet, welche auf dem eigenen lokalen Rechner läuft.

Wie eine Electrum Wallet eingerichtet und der xPub Key generiert wird, erklären wir in Electrum Wallet einrichten

Innerhalb der Electrum Wallet geht man in den Bereich Wallet und danach auf Informationen. Dort findet man den yPub Key

p2wpkh-p2sh

p2wpkh-p2sh

In der Shop Adminsiration unter General Settings gehen wir in den Bereich Derivation Scheme

xbup Key derivation scheme

xbup Key derivation scheme

Klicken dort auf Modify und erhalten die folgende Ansicht:

 

In das Feld Derivation Scheme tragen wir die yPub Adresse ein, die wir bei Electrum unter Wallet und Informationen exportiert haben.

Bei dem Einfügen muss zusätzlich noch der Adress Typ angehängt werden.

Der Adress Typ ist davon abhängig, was Deine Wallet generiert bzw. was Du bei der Erstellung der Electrum Wallet festgelegt hast. In der Electrum Wallet wird es als Script Type angegeben:

Bitcoin Adresse beginnt mit Adress Typ Zusatz
bc1….. P2WPKH, Bech32 Adresse
3….. P2SH-P2WPKH -[p2sh]
1….. P2PKH -[legacy]

Abhängig vom Script Typ muss an den xpub Key der Zusatz, inklusive Bindestrich und Klammer, angehängt werden.

Wird eine Bech32 Adresse mit dem Script Type p2wpkh erstellt, dann ist ein Zusatz nicht erforderlich.

ACHTUNG:

Für Händler wird empfohlen, dass statt des SegWit (Bech32) Formats das SegWit (P2SH) Format verwendet wird.

Deshalb verwenden wir den Addres Type p2wpkh-p2sh

Entsprechend müssen wir bei dem generierter xPub Key der Zusatz -[p2sh] angehängt werden. Inklusive dem Minuszeichen und der eckigen Klammer.

Um Zu prüfen, ob die Adresse richtig angegeben wurde, setzen wir den Haken bei Enabled und klicken auf Continue.

Wir erhalten eine Auflistung von insgesamt 10 Bitcoin Adressen,

 

welche identisch mit den Adressen sein müssen, die in der Electrum Wallet unter Address angezeigt werden:

Aus diesem Adress-Pool werden die Bitcoin Adressen genommen, welche für den Empfang der Bitcoinzahlungen benötigt werden.

Da standardmäßig von Electrum nur 10 Adressen auf Vorrat erstellt werden, muss das Electrum Gap Limit erhöht werden.

Dafür geht man in der Electrum Wallet zum Menue-Punkt Console und gibt den Befehl ein:

wallet.change_gap_limit(100)

und drückt Enter

Danach den Befehl:

 wallet.storage.write()

Um zu überprüfen, wie hoch das Gap Limit ist, gebe den Befehl:

wallet.gap_limit

ein.

Wer eine detaillierte Beschreibung über die Erstellung der Electrum Wallet und der Erhöhung des Gap Limit lesen möchte, findet dies unter:  Electrum Wallet einrichten

Jegliche Bitcoin Zahlungen werden automatisch auf der eigene Bitcoin Wallet (hier Electrum Wallet) gutgeschrieben.

Du kannst das überprüfen, in dem Du die in BTCPay angezeigten Transaktionen mit den Transaktionen in Deiner Wallet abgleichst.

Du hast ebenso die alleinige Verfügungsberechtigung über die Bitcoin auf Deiner Wallet. Du kannst die Bitcoin behalten oder an eine Bitcoin Börse weiterleiten, um gegen Euro einzutauschen.