xPub Key beim BTCPay Server hinterlegen

This post is also available in: Englisch

xPub Public Bitcoin Adresse

xPub Adresse

team

BTCPay Shop einrichten und administrieren

xPub Key bei dem BTCPay Server hinterlegen

Mit Hilfe des BTCPayServers werden die Zahlungseingänge verwaltet. Es wird eine Bitcoin Wallet benötigt, um Bitcoin empfangen und senden zu können.

Um Bitcoin mit dem BTCPay Server zu empfangen zu können, hast Du die folgenden Optionen:

  • Du benutzt eine bereits existierende externen Wallet, in dem Du den xpubkey importierst.
  • Du erstellst eine neue Wallet auf dem BTCPay Server, die BTCPay Wallet.

Wenn Du Deine Bitcoin mit der integrierten BTCPay Wallet verwalten willst, so empfehlen wir die Anleitung „BTCPay Wallet„. Diese Anleitung erklärt, wie Du aus einer bereits existierenden Wallet einen xpub Key erstellst und auf dem BTCPay Server hinterlegst. Das beschreiben wir am Beispiel einer Electrum Wallet.

Bei einer externen Bitcoin Wallet, befindet sich das Bitcoin Guthaben zu keinem Zeitpunkt im BTCPayServer, sondern immer auf der externen Wallet des Händlers.

Du benötigst dafür einen Bitcoin Wallet, mit der Du einen xPub Public Keys (xpub Key / xpubKey) generieren kannst.

Der xPub Key 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 BTCPay Server 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 „xPub Key mit der Electrum Wallet erstellen

xPub Key bei der Electrum Wallet exportieren

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

xPub Key p2wpkh-p2sh

xPub Key p2wpkh-p2sh

xPub Key bei BTCPay importieren

In der Shop Administration 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:

xPub Key beim BTCPay Server hinterlegen 1

In das Feld Derivation Scheme tragen wir den xPub Key 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 Address Typ: p2wpkh-p2sh

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

xPub Key beim BTCPay Server hinterlegen 2Um 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,

xPub Key beim BTCPay Server hinterlegen 3

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

xPub Key beim BTCPay Server hinterlegen 4Aus 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:

xPub Key mit der Electrum Wallet erstellen

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.

This post is also available in: Englisch