Bitcoin akzeptieren und Euro empfangen

This post is also available in: Englisch

Bitcoin akzeptieren und Euro empfangen

Du verkaufst etwas in Deinem Shop für €100,- und möchtest auch €100,- auf Deinem Bankkonto gutgeschrieben bekommen?

Deine Kunden sollen die Möglichkeit bei Dir mit Bitcoin bezahlen zu können, aber Du möchtest unabhängig von Wertschwankungen sein.

Verwende Bitcoin als eine weitere Bezahlmethode in Deinem Onlineshop, wie Kreditkarte oder PayPal.

Du verkaufst Deine Produkte gegen Euro, Deine Kunden bezahlen mit Bitcoin und Du bekommst Euro auf Deinem Bankkonto gutgeschrieben.

In dem folgenden Beitrag erfährst Du, wie Du Deinen Kunden die Bezahlung per Bitcoin anbieten kannst. Der Rechnungsbetrag automatisch zum aktuellen Wert in Bitcoin umgerechnet wird und der Kunde mit Bitcoin bezahlt. Danach werden automatisch die eingenommenen Bitcoin an einer Bitcoin Börse in Euro umgewechselt und auf Deinem Euro-Konto gutgeschrieben.

So kannst Du Bitcoin als Bezahlmethode anbieten und hast kein Risiko bei Kursschwankungen und keine Besonderheiten in Deiner Buchhaltung zu berücksichtigen.

Der Ablauf

Der Endkunde hat in seinem im Warenkorb Waren im Wert von €100,- liegen und möchte diese mit Bitcoin bezahlen. Die Umrechnung erfolgt auf Grundlage des Umrechnungskurses bei der Bitcoin Börse, bei der viel später die eingenommenen Bitcoin gegen Euro wechseln werden.

Sobald die Zahlung erfolgreich ist, werden zwei Vorgänge initiiert. Einmal wird der eingenommenen Bitcoin Gegenwert auf der Bitcoin Börse gegen Euro gewechselt.

Parallel werden die eingenommen Bitcoin von der internen Bitcoin Wallet an die Bitcoin Wallet bei der Bitcoin Börse weitergeleitet.

Der Abverkauf der Bitcoin auf der Bitcoin Börse muss idealerweise in der gleichen Sekunde erfolgen, wie die Bezahlung des Endkunden, um Kursschwankungen auszuschließen.

Deshalb wurden bei der Bitcoin Börse bereits ein paar Bitcoin hinterlegt, die zum Abverkauf verwendet werden. Diese Hinterlegung wird durch die Bitcoin wieder aufgefüllt, welche vom Endkunden gerade bezahlt wurden.

Unterstellen wir sechs Confirmation für die Zahlung des Endkunden an unsere interne Bitcoin Wallet und von dort an unsere Bitcoin Wallet bei der Bitcoin Börse, so kann dieser Vorgang bis zu zwei Stunden dauern. Um ein Wechselkursrisiko innerhalb dieser Zeit auszuschließen, bedienen wir uns diese Hinterlegung.

Somit ist gewährleistet, dass wir zum gleichen Kurs die Bitcoin in Euro wechseln, zu dem der Endkunde bei uns mit Bitcoin bezahlt hat.

Was Du benötigst:

Für die Umsetzung des beschriebenen Ablaufs benötigst Du:

  • einen BTCPay Store auf einem BTCPay Server,
  • eine interne BTCPay Bitcoin Wallet
  • einen BTCPay Transmuter Zugang und
  • ein Konto bei einer Bitcoin Börse wie zum Beispiel Binance, Bitfinex, Bitstamp, Coinbase oder Kraken.

Technische Umsetzung

Im ersten Schritt wählen wir auf dem BTCPay Server den Store aus, für den wir den automatisierten Umtausch von Bitcoin in Euro vornehmen wollen.

Dort müssen wir zwei Einstellungen vornehmen. Einmal werden wir die interne BTCPay Wallet nutzen und den Umrechnungskurs der Bitcoin Börse verwenden, bei der wir später unsere Bitcoin in Euro umtauschen wollen.

Interne BTCPay Bitcoin Wallet

Wir benötigen für die Umsetzung die interne BTCPay Bitcoin Wallet. Dazu wechseln wir bei den Store Einstellungen in den Bereich General Settings in den Bereich Derivation Scheme.

BTCPay Wallet einrichten

Dort haben wir die Möglichkeit eine interne BTCPay Bitcoin Wallet zu erstellen. Eine

genaue Beschreibung, findest Du in dem Beitrag: Erstellung einer interne BTCPay Bitcoin Wallet 

Bitcoin Umrechnungskurs

Dann wählen wir für die Umrechnung des Bitcoinkurses die Bitcoin Börse aus, bei der wir später die Bitcoin gegen Euro wechseln wollen. Dazu gehen wir in den Store Settings in den Bereich Rates.

Hier kannst Du zum Beispiel die Börsen Binance, Bitfinex, Kraken oder Coinbase auswählen.

In dem Feld „Add a spread on exchange rate of … %“ kannst Du einen Aufschlag auf den Wechselkurs setzen. Somit könntest Du Dich zusätzlich zu etwaigen Kursschwankungen absichern oder indirekt die entstehenden Transaktionsgebühren einpreisen.

Empfehlenswert ist es allerdings, keinen Zuschlag zu erheben.

Umrechnungskurs der Bitcoin Börse festlegen

BTCPay Transmuter

Nachdem wir die Einstellungen innerhalb des BTCPay Store auf dem BTCPay Server vorgenommen haben, melden wir uns bei BTCPay Transmuter an.

Im Bereich Presets finden wir bereits eine Vorlage für Fiat-Conversion.

Presets BTC Transmuter

Nachdem wir Fiat Conversion ausgewählt haben, erscheint die folgende Seite.

Create Fiat Exchange

Wenn wir bereits einen Shop bei Transmuter angelegt und mit unserem BTCPay Server verbunden haben, dann werden uns diese Shop bereits vorgeschlagen. In unserem Fall haben wir für den Supporter Shop bereits die Email Benachrichtigung via BTCPay Transmuter angelegt. Eine Beschreibung dazu findest Du unter: Email Benachrichtigung bei einer Bitcoin Zahlung erhalten

Wenn Du noch keinen Shop bei BTCPay Transmuter hinterlegt hast oder einen weiteren Shop hinterlegen willst, so findest Du hier eine Anleitung wie Du einen Store von BTCPay Transmuter mit dem BTCpay Server verbindest.

Wir legen in unserem Fall fest, dass bei der Bitcoin Börse die Bitcoin verkauft werden soll, sobald der Status der Bestellung als Confirmed angesehen wird.

Wann eine Bestellung als Confirmed angesehen wird, kannst Du unter BTCPay Store > General Settings einstellen.

Wenn Du die Einstellung „is unconfirmed“ auswählst, dann gilt die Zahlung bereits als abgeschlossen, sobald der Endkunde die Zahlung erfolgreich ausgeführt hat und die Transaktion im Mempool aufgeführt wird.

Dies ist auch der ideale Zeitpunkt, um die Bitcoin an der Bitcoin Börse in Euro umzuwechseln, da in Kürze damit zu rechnen ist, dass die Bitcoin durch die Blockchain bestätigt werden und dann auf unserer internen BTCPay Wallet gutgeschrieben werden.

Confirmed Transaktion

In dem Bereich Setup your trading conditions legen wir fest, bei welcher Bitcoin Börse wir unsere Bitcoin umwechseln wollen.

Nachdem wir auf Please create one first geklickt haben, erscheint die folgende Seite mit der Auswahl aller verfügbaren Bitcoin Börsen.

Darunter auch die wichtigsten Bitcoin Börsen wie zum Beispiel Binance, Bitfinex, Bitstamp, Coinbase oder Kraken.

Übersicht aller Bitcoin Börsen bei BTCPay transmuter

Nachdem wir eine Auswahl getroffen haben, müssen wir einen API Key eintragen. Diesen API Key erhalten wir bei der jeweiligen Börse.

Dazu müssen wir uns bei der Bitcoin Börse einloggen und den Bereich finden, bei dem uns der API von der Börse zur Verfügung gestellt wird.

In der Regel findet sich dieser API Key bei den persönlichen Einstellungen.

Bei Binance findest Du es im Bereich API-Verwaltung.

API verwaltung bei Binance

Dort kannst Du dann einen API erstellen.

API Erstellen bei Binance

Über den API Key erfolgt ein voller Zugriff auf das Konto bei der Bitcoin Börse. Entsprechend muss der API Zugriff abgesichert sein. Deshalb muss über eine Email PIN und einer Zwei-Faktor-Authorisierung der API Zugriff bestätigt werden.

Binance Authorisierung für API Key

Danach erhält man den API der sich in einen Public Key und einen Private Key aufteilt beziehungsweise API Key und Secret Key bezeichnet wird.

API List bei Binance

Wenn man sein Konto bei Coinbase hat, so findet man den Bereich zu den API Keys unter Settings.

API bei Coinbase beantragen

Dort kann man einen neuen API Key erstellen.

API bei Coinbase beantragen

Entsprechend kann festgelegt werden, für welche Bereiche der Zugriff für diesen API Key gestattet wird.

API Berechtigung bei Coinbase

Der API Key von Coinbase sieht zum Beispiel so aus:

API Key bei Binance

Egal welche Bitcoin Börse man verwendet, der Aufbau ist nahezu identisch. Unter den persönlichen Einstellungen kann man einen API Key generieren. Die Rechte des API Key sollten so gewählt werden, dass ein Verkauf von Bitcoin erlaubt wird. Neben den Rechten zum Lesen müssen auch Rechte zum Ausführen eingeräumt werden.

Dann erhält man zwei API Keys, welche dann in die entsprechenden Felder bei BTCPay Transmuter hinterlegt werden.

API Daten von Binance bei BTCPay Transmuter hinterlegen

Nachdem man auf Save geklickt hat, wird von BTCPay Transmuter die Einstellungen geprüft. Bei Coinbase kann es zu einer Fehlermeldung kommen, da aus Sicherheitsgründen der API Zugriff auf das Konto erst nach 48 Stunden möglich ist.

Ebenso sollte auf dem entsprechenden Konto etwas Guthaben liegen.

API Daten von Binance bei BTCPay Transmuter hinterlegen

Nachdem der API Key hinterlegt und gespeichert worden ist, erscheint die folgende Seite.

Trading Conditions bei BTCpay Transmuter festlegen

Hier wird festgelegt, welches Währungspaar gehandelt werden sollen. Wir wollen Bitcoin (BTC) in Euro (EUR) wechseln und tragen deshalb das Währungspaar BTCEUR ein.

Dann gibt es die Möglichkeit das Feld Buy Market Order zu aktivieren.

Eine Market Order ist ein Kauf bzw. Verkauf zum aktuellen Marktpreis. In unserem Fall wollen wir Bitcoin zum aktuellen Marktpreis verkaufen und nicht kaufen. Deshalb klicken wir das Feld nicht an.

Wir haben bei Binance den Gegenwert von €200,- in Bitcoin hinterlegt. Dieser Betrag ist unserer Hinterlegung von der der Verkauf gegen Euro durchgeführt wird.

In den Einstellungen für der Trigger so gesetzt, dass bei einer Zahlung mit dem Status Complete die Action beginnt.

Trigger ist complete

Eine Bitcoin Transaktion erhält nach sechs Bestätigungen (ca. eine Stunde) den Status Complete. Sobald der Zahler die Zahlung ausführt und die Transaktion im Mempool liegt bzw. weniger als sechs Confermation hat, ist der Status der Transaktion Vorher ist die Transaktion Confirmed.

Übersicht der rechnungen bei BTCpay confirmed und complete

Damit ein Abverkauf zu dem Zeitpunkt erfolgt, wenn der Zahler die Transaktion ausführt, ändern wir die Einstellungen im Trigger.

Als Action gibt es zwei Aktionen, die als Action Group zusammengefasst sind.

Action Group bei BTCpay Transmuter

Die erste Aktion ist die Erfassung der Rechnungsnummer und die Festlegung, wann die zweite Aktion ausgeführt wird.

Man kann festlegen, dass bei jeder Zahlung (Any) die Aktion ausgeführt wird. Wir ändern an dieser Stelle, dass der Verkauf nur dann vorgenommen werden soll, wenn es sich um eine On-Chain Bitcoin Transaktion handelt. Bei Zahlungen per Lightning (Off-Chain) soll kein Verkauf an der Börse erfolgen.

Abfrage nach Rechnung bei BTCPay Transmuter

Bei der zweiten Aktion wird festgelegt, was bei der Börse erfolgen soll.

Bei der Binance Börse soll Bitcoin gegen Euro (BTCEUR) zum jeweiligen Marktpreis verkauft werden. Der Betrag der verkauft werden soll, ist die Summe des aus der vorangegangenen Aktion.

Verkaufsorder bei Binance per BTCPay Transmuter

Nachdem wir alles gespeichert haben, führen wir eine Testbestellung über €10,- in unserem Supporter-Shop aus und sehen, was passiert.

Bei unserem Test wurden die Bitcoin aus unserer Hinterlegung erfolgreich bei Binance verkauft. Der Wechselkurs war nahezu identisch. Zusätzlich erhebt Binance eine Gebühr für das Wechseln von Bitcoin in Euro. Diese Gebühr hat 0,01% des Betrages ausgemacht. Die Gutschrift auf unserem Eurokonto entsprach somit nahezu dem Betrag, den der Endkunde in Euro in unserem Shop bezahlt hat.

Bisher haben wir erfolgreich den Verkauf der Bitcoin aus unserer Hinterlegung umgesetzt. Somit konnten wir jegliche Kursrisiken nahezu ausschliessen. jetzt wollen wir erreichen, dass die Hinterlegung auch automatisiert mit den Bitcoin wieder aufgefüllt werden, die der Endkunde bezahlt hat.

Dazu benötigen wir eine automatisierte Weiterleitung der Bitcoin von unserer internen BTCPay Wallet zu der Bitcoin Wallet bei der von uns genutzten Bitcoin Börse.

In dem Beitrag „Automatisierte Weiterleitung an eine andere Bitcoin Adresse“ wird erklärt, wie die Bitcoin aus der internen BTCPay Wallet an die Bitcoin Börse weitergeleitet werden.

This post is also available in: Englisch

2 Comments

Leave a reply