Heim > Backend-Entwicklung > PHP-Tutorial > Bitcoin und PHP mit Coinbase -API - Grundnutzung

Bitcoin und PHP mit Coinbase -API - Grundnutzung

Christopher Nolan
Freigeben: 2025-02-19 12:18:12
Original
742 Leute haben es durchsucht

Bitcoin und PHP mit Coinbase -API - Grundnutzung

Haben Sie jemals darüber nachgedacht, Ihre Dienste im Austausch für Bitcoins zu verkaufen? Es ist nicht so seltsam - heute machen es viele große Spieler tatsächlich. Von Okcupid bis Khanacademy akzeptiert sogar WordPress Bitcoin. Einige Länder denken auch als Währung. Heute werden wir sehen, wie Bitcoin -Zahlungen auf Ihrer Website/Anwendung auf einfache Weise mit der Coinbase -API (und ihrem SDK) akzeptiert werden können.

Key Takeaways

    Die API von
  • Coinbase und SDK ermöglichen die Integration in eine Webanwendung, um Bitcoin -Zahlungen zu akzeptieren. Es bietet zwei wichtigste Integrationsmethoden: Verwenden eines der Händler -Tools, die Coinbase zur Verfügung stellt, oder eine vollständige Integration des Dienstes, ohne auf die Coinbase -Website zu gehen.
  • Die API von
  • Coinbase bietet eine Reihe von Funktionen, darunter die Möglichkeit, Bitcoins zu verkaufen oder zu kaufen, Bitcoins per E -Mail oder Bitcoin -Adresse zu senden oder zu fordern, Bitcoin -Zahlungen als Händler zu akzeptieren, Bitcoins in einem oder mehreren Brieftaschen zu speichern, Zugriff auf Bitcoin -RAW -Netzwerk zu haben Daten und verarbeiten Sie Mikrozahlungen und wiederkehrende Zahlungen.
  • Authentifizierung für die API von Coinbase kann durch einen einfachen API -Schlüsselzugriff mit einem API OAuth wird für diejenigen empfohlen, die den Benutzer sein Konto über die App verwenden möchten.
  • Die API von
  • Coinbase bietet eine Funktion zum Erstellen einer Zahlungstaste, die gemäß der Präferenz des Benutzers angepasst werden kann. Dies schließt die Möglichkeit ein, den Titel, den Betrag, die Währung und den Transaktionscode für die Zahlung festzulegen. Das Aussehen und die Rückgabe von URL der Schaltfläche nach einer erfolgreichen Zahlung können ebenfalls angepasst werden.

Coinbase SDK

Coinbase hat einige interessante Tools und SDKs für alle, mit einigen Preisbedingungen, die bequem und erschwinglich sind.

Hier ist, was Sie über die Preisgestaltung wissen müssen:

  • Zahlungen mit Coinbase ist kostenlos;
  • Sie müssen eine Gebühr (1%) nur dann zahlen, wenn Sie Geld auf Ihrem Bankkonto überweisen möchten, jedoch nur, wenn Ihr Umsatz 1000000 US -Dollar (ja, ein Milen Dollar);
  • Die kleinste Zahlung, die Sie im Bitcoin -Netzwerk ausführen können, beträgt 0,001 BTC. Unter Verwendung einer Coinbase -Brieftasche sinkt diese Grenze jedoch auf 1 Satoshi (0,00000001 BTC);
Eine weitere wichtige (und interessante) Sache ist, dass Sie den "Instant Exchange" -Dienst aktivieren können, der einen Bitcoin -Zahlungsbetrag sofort in eine Währung Ihrer Wahl umwandelt, ohne zusätzliche Schritte automatisch. Wirklich cool, wenn Sie die Instabilität der Währung vermeiden und Ihr Geld so schnell wie möglich überweisen möchten.

das sagte ... wie implementieren wir diese Integration?

Integrationstypen

Wie bei vielen anderen Online -Zahlungsdiensten bietet Coinbase zwei Hauptintegrationsmethoden in Ihre Web -App. Der erste ist schneller und einfacher. Der zweite ist etwas schwieriger, geht aber auch in mehr Tiefe und ist für ein größeres Projekt ausreichend.

Der erste Integrationstyp besteht darin, eines der Handelswerkzeuge zu verwenden, die Coinbase zur Verfügung stellt. Sie können Schaltflächen, Seiten und Rahmen verwenden. Wenn Sie ein CMS oder einen E-Commerce verwenden (WordPress, WooCommerce, Magento…), gibt es viele Plugins für Ihren Favoriten.

Die zweite, von der wir heute ein Beispiel sehen werden, ist eine vollständige Integration des Dienstes, ohne auf die Coinbase -Website zu gehen, um einen Standard -Button -Code zu generieren. Tatsächlich werden wir das spezifische PHP -SDK dazu verwenden.

Was können wir mit diesem SDK machen? Die dedizierte Seite auf Coinbase ist klar:

  • Bitcoins verkaufen oder kaufen (oder mit Ihrer Währung auszutauschen);
  • Bitcoins per E -Mail oder Bitcoin -Adresse senden oder anfordern;
  • Bitcoin -Zahlungen als Händler akzeptieren;
  • Speichern Sie Ihre Bitcoins in einem oder mehreren Brieftaschen;
  • Zugriff auf Bitcoin -Rohnetzwerkdaten (Blöcke, Transaktionen usw.
  • Handlungen und wiederkehrende Zahlungen verarbeiten;
Ein bisschen von allem.

In diesem Moment stehen drei SDKs zur Verfügung: für Ruby, Java und PHP. Es gibt auch viele inoffizielle Bibliotheken für andere Sprachen (Python, .net, Knoten…). Wie ich Ihnen bereits sagte, ist der SDK, den wir verwenden werden, der PHP SDK, den Sie auf Github finden.

Hinweis: Bevor Sie zum nächsten Schritt gehen, werde ich davon ausgehen, dass Sie in der Lage sind, ein Konto auf Coinbase zu erstellen, oder Sie haben bereits eines.

Das PHP SDK

Installation

Beginnen wir mit der Paketinstallation für unser Projekt. Wenn Sie sich die Github -Seite des SDK ansehen, finden Sie nichts darüber mit Komponist. Eine einfache Suche liefert jedoch leicht die Packagist -Seite des Coinbase/Coinbase -Pakets.

Sie können es mit

installieren

{
	    "require": {
	        "coinbase/coinbase": "dev-master"
	    }
	}
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
in Ihrer Composer.json -Datei und einem

composer update
Nach dem Login kopieren
Nach dem Login kopieren
Authentifizierung

Bevor Sie mit dem Code beginnen, sprechen wir über Authentifizierung. Coinbase hat zwei Möglichkeiten, Sie als Entwickler zu authentifizieren, um auf die API -Methoden zuzugreifen. Sie können einen einfachen API -Schlüsselzugriff mit einem API -Geheimnis auswählen, um mehr Sicherheit zu erhalten. Oder wenn Sie möchten, können Sie OAuth verwenden. 2. Der Unterschied geht nicht nur um Komplexität, sondern auch um die Situation, mit der Sie sich befassen müssen.

Die Coinbase -Dokumentation ist ziemlich klar: Wenn Sie Ihr Konto verwenden und Änderungen daran vornehmen möchten, können Sie das API -Schlüsselsystem verwenden. Wenn Sie den Benutzer sein Konto über Ihre App verwenden möchten (z. B. einen Kunden, den Sie erstellen), ist das Beste, OAuth zu verwenden.

API -Schlüssel geheimen

Erstellen eines API -Schlüssels ist wirklich einfach, sobald Sie ein Konto auf Coinbase haben. Alles, was Sie tun müssen, ist hierher zu gehen und auf "neue API -Schlüssel" zu klicken.

Zum ersten Mal müssen Sie Ihr Konto wahrscheinlich mit Authy bestätigen.

Der Bildschirm, den Sie sehen, ist eins wie folgt:

Bitcoin und PHP mit Coinbase -API - Grundnutzung

Sie müssen das Konto angeben, das Sie verwenden möchten und welche Berechtigungen Sie diesem speziellen Schlüssel zuweisen möchten, um Zugriff zu erhalten. Außerdem können Sie einen oder mehrere IPs als Whitelist auswählen. Wenn Sie nichts angeben, gibt es keinen Whitelist.

Danach bestätigen Sie die Prozedur, indem Sie auf "Erstellen" klicken und auf "Aktivieren" klicken, wenn Sie die API -Taste aktivieren möchten.

oAuth 2.0

Wenn Sie OAuth 2.0 verwenden möchten, müssen Sie eine ähnliche Prozedur befolgen. Diesmal erstellen Sie jedoch keinen API -Schlüssel, sondern eine OAuth -Anwendung. Gehen Sie dazu zu https://coinbase.com/oauth/applications. Klicken Sie von dort aus auf "Erstellen einer Anwendung". Sie sehen einen Bildschirm wie diesen:

Bitcoin und PHP mit Coinbase -API - Grundnutzung

Fügen Sie Ihren Anwendungsnamen ein, wählen Sie ein Symbol, wenn Sie möchten, und geben Sie eine Liste von URLs für zukünftige Umleitungsvorgänge an.

Hinweis: Jede URL, die Sie einfügen, muss SSL verwenden (https: // ...). Alles andere wird ignoriert.

Gib dein OK und du bist fertig! Sie sehen eine Bestätigungsnachricht mit Ihrem neuen ClientID- und Client -Geheimnis. Die Dinge sind jedoch noch nicht vorbei: Sie können andere Notizen zur Authentifizierung von der dedizierten Seite lesen.

Berechtigungen

Wenn Sie mit der API arbeiten, müssen Sie sich mit Berechtigungen befassen, um eine bessere Sicherheit zu erhalten. Hier sehen Sie eine vollständige Liste:

  • Alles: Vollständiger Zugriff auf Ihr Konto;
  • Händler: Erstellen Sie Zahlungsschaltflächen, Formulare, Zugriff auf grundlegende Informationen über den Händler, bearbeiten Sie Ihre Informationen und erstellen Sie neue Adressen.
  • Saldo: Zugriff auf Ihren tatsächlichen Restbetrag;
  • Schaltflächen: Zahlungsschaltflächen erstellen;
  • kaufen: bitcoins kaufen;
  • Kontakte: Erhalten Sie eine Liste Ihrer Kontakte;
  • Bestellungen: Holen Sie sich eine Liste Ihrer erhaltenen Bestellungen;
  • verkaufen: verkaufen bitcoins;
  • Transaktionen: Erhalten Sie eine Geschichte Ihrer Transaktionen;
  • senden: Senden Sie eine bestimmte Menge an Bitcoins aus Ihrem Konto;
  • Anfrage: Bitcoins von Ihrem Konto anfordern;
  • Transfers: Holen Sie sich die Geschichte von Käufen und Verkaufen;
  • recurring_payments: Erhalten Sie eine Liste wiederkehrender Zahlungen;
  • oAuth_Apps: Siehe, erstellen und bearbeiten OAuth -Anwendungen;
  • Berichte: Neue Berichte erhalten und erstellen;

grundlegende SDK -Verwendung

Jetzt, da wir unser SDK in unserem Projekt, unserem Zugriff eingerichtet haben und wissen, was wir brauchen, ist es Zeit zu beginnen.

Schauen wir uns zunächst die Implementierung des Authentifizierungsverfahrens an.

Zugriff über den API -Schlüssel und geheim

Nichts Komplexes, nur eine einzige Anweisung.

{
	    "require": {
	        "coinbase/coinbase": "dev-master"
	    }
	}
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Verwenden Sie einfach den API -Schlüssel und das API -Geheimnis als Parameter für die Methode mit APIPIKEY (). Das resultierende $ coinbase -Objekt ist das, das wir für zukünftige Beispiele verwenden werden.

Zugriff über OAuth

Nach der Erstellung von OAuth -Anwendungen ist das nächste, was zu tun ist, ein $ coinbaseoAuth -Objekt zu erstellen, wodurch die Client -ID und das Client -Geheimnis angegeben werden, das wir zuvor erhalten haben. Genau wie dieses Beispiel:

composer update
Nach dem Login kopieren
Nach dem Login kopieren

Nachdem der Benutzer den Autorisierungsprozess abgeschlossen hat, wird er während des Setups in die zuvor angegebene URL weitergeleitet. Ein Codeparameter wird auch hinzugefügt, um ein gültiges Token zu erhalten.

<span>$coinbase = Coinbase<span>::</span>withApiKey($coinbaseAPIKey, $coinbaseAPISecret);</span>
Nach dem Login kopieren

Dann wird der letzte Schritt die Erstellung des $ coinbase -Objekts unter Verwendung des Tokens sein, das wir jetzt haben.

<span>$coinbaseOauth = new Coinbase_OAuth($_CLIENT_ID, $_CLIENT_SECRET, $_REDIRECT_URL);
</span>	<span>header("Location: " . $coinbaseOauth->createAuthorizeUrl("all"));</span>
Nach dem Login kopieren

Sie können dieses Objekt auf die gleiche Weise verwenden, wie Sie die von der API -Schlüsselauthentifizierung erhalten können. Die API ist dasselbe.

Zugriff auf Ihre Daten

Zugriff auf Ihre Daten ist ziemlich einfach. Alles, was Sie tun müssen, ist, die $ coinbase -Variable zuvor zu verwenden.

Lassen Sie uns sehen, wie Sie Ihr Gleichgewicht überprüfen:

<span>$tokens = $coinbaseOauth->getTokens($_GET['code']);</span>
Nach dem Login kopieren

Hier sehen Sie, wie Sie auf Benutzerdaten zugreifen:

<span>$coinbase = Coinbase<span>::</span>withOauth($coinbaseOauth, $tokens);</span>
Nach dem Login kopieren

Verwenden des $ coinbase -Objekts können Sie auch Zugriff auf einige Händlereigenschaften erhalten.

<span>echo $coinbase->getBalance() . " BTC";</span>
Nach dem Login kopieren

Hinweis: Die Logo -Eigenschaft gibt die Logo -URL zurück.

Wenn Sie möchten, können Sie auch eine Liste Ihrer Kontakte mit GetContacts () erhalten.

<span>$user = $coinbase->getUser()
</span>	
	<span>echo $user->name;
</span>	<span>echo $user->email;
</span>	<span>echo $user->time_zone;
</span>	<span>echo $user->native_currency;</span>
Nach dem Login kopieren

Währungsdaten

Mit diesem PHP SDK können Sie auch Zugriff auf einige Daten zu Währungen erhalten.

<span>$user->merchant->company_name;
</span>	<span>$user->merchant->logo;</span>
Nach dem Login kopieren

Die Methode von GetCurrencies () gibt eine Liste aller Währungen zurück, die tatsächlich auf dem System aktiv sind, mit ihren ISO -Codes.

Hier erfahren Sie, wie Sie einige Informationen über die Wechselkurse erhalten:

<span>$response = $coinbase->getContacts("user");
</span>
	<span>foreach($response->contacts as $contact)
</span>	<span>{
</span>		<span>echo $contact;
</span>		<span>// 'guyaddress@provider.com'
</span>	<span>}</span>
Nach dem Login kopieren

Die GetExchangerate () kann sowohl mit als auch ohne Parameter verwendet werden (mit zwei verschiedenen Ergebnissen, wie Sie sehen können).

Sie können auch einige Informationen über die Kauf- und Verkaufspreise mit GetBuyPrice () erhalten und GetellPrice ():

<span>$currencies = $coinbase->getCurrencies();
</span>	<span>echo $currencies[0]->name;</span>
Nach dem Login kopieren

Hinweis: Der zurückgegebene Preis enthält die 1% Coinbase -Gebühr und die 0,15 USD Bank One.

Erstellen Sie eine Zahlungsschaltfläche

Die Methode zur Erstellung von Zahlungstaste ist wirklich nützlich, wenn Sie die Implementierungsschwierigkeit und das Endergebnis berücksichtigen. Sie müssen lediglich die Methode createButton () mit einem bestimmten Satz von Parametern aufrufen.

Hier ist die Signatur:

<span>$rates = $coinbase->getExchangeRate();
</span>	
	<span>echo $rates->btc_to_usd;
</span>	<span>// is the same as...
</span>	<span>echo $coinbase->getExchangeRate('btc', 'usd');</span>
Nach dem Login kopieren

... und hier ist ein Beispiel.

<span>echo $coinbase->getBuyPrice('1');
</span>	<span>// '125.31'
</span>	<span>echo $coinbase->getSellPrice('1');
</span>	<span>// '122.41'</span>
Nach dem Login kopieren

ziemlich einfach, huh?

Der erste Parameter $ name ist der „Titel“ für die Zahlung, die Sie erstellen möchten. Der nächste, $ Preis, ist der Betrag der gewünschten Zahlung. Die dritte ist die Währung, die Sie verwenden möchten, und $ Custom ist ein spezifischer Transaktionscode, der nach dem Zahlungsverfahren an Sie zurückgesendet wird.

Schließlich können Sie mit dem $ option -Array Ihre Schaltfläche in jeder Hinsicht anpassen: Sie können das Erscheinungsbild der Schaltfläche oder die Rückgabe -URL nach einer erfolgreichen Zahlung oder eine fehlgeschlagene Anpassung anpassen. Wenn Sie mehr darüber erfahren möchten, empfehle ich Ihnen, sich die dedizierte Seite der offiziellen Dokumentation anzusehen.

Sobald Sie die Schaltfläche haben, ist es einfach, den Einbettungscode zu erhalten.

{
	    "require": {
	        "coinbase/coinbase": "dev-master"
	    }
	}
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Dann haben Sie nichts zu tun, als die $ response-> embredhtml.

einpacken

Dies schließt Teil 1 ab, in dem wir die grundlegende Verwendung und Installation der Coinbase -API -SDK behandelt haben. In Teil 2 decken wir das Senden und Empfangen von Geld und erstellen unsere Stichprobenanmeldung auf. Bleib dran!

häufig gestellte Fragen (FAQs) zu Bitcoin PHP und Coinbases API Basic Nutzung

Wie kann ich die API von Coinbase für Bitcoin PHP einrichten? Zunächst müssen Sie einen API -Schlüssel aus Ihrem Coinbase -Konto erstellen. Gehen Sie zu Einstellungen, dann zu API -Zugriff und klicken Sie auf "neue API -Schlüssel". Sie müssen Ihr Passwort und Ihren Zwei-Faktor-Authentifizierungscode bereitstellen. Sobald der API -Schlüssel erstellt wurde, können Sie ihn in Ihrem PHP -Code verwenden, um mit der Coinbase -API zu interagieren. Denken Sie daran, Ihren API -Schlüssel sicher zu halten, da er Zugriff auf Ihr Coinbase -Konto ermöglicht. Dazu gehört das Erstellen einer neuen Bitcoin -Adresse, das Senden von Bitcoin an eine Adresse, das Anfordern von Bitcoin aus einer Adresse und das Erhalten von Informationen zu einer Bitcoin -Adresse. Sie können auch Informationen über den aktuellen Bitcoin-Wechselkurs und die historischen Preisdaten erhalten. Fangen Sie Blöcke in Ihrem PHP -Code. Die API gibt eine Fehlermeldung zurück, wenn etwas schief geht, den Sie angemessen fangen und umgehen können. Wenn die API beispielsweise beim Versuch, Bitcoin zu senden, einen Fehler zurückgibt, können Sie diesen Fehler aufnehmen und dem Benutzer eine Nachricht anzeigen.

Kann ich die API von Coinbase verwenden, um Bitcoin -Zahlungen auf meiner Website zu akzeptieren?

Ja, Sie können die API von Coinbase verwenden, um Bitcoin -Zahlungen auf Ihrer Website zu akzeptieren. Sie können für jede Transaktion eine neue Bitcoin -Adresse erstellen und diese Adresse für eingehende Zahlungen überprüfen. Auf diese Weise können Sie Bitcoin -Zahlungen akzeptieren, ohne die zugrunde liegende Blockchain -Technologie selbst zu verarbeiten. Code. Auf diese Weise können Sie API -Anrufe tätigen, ohne Ihr echtes Coinbase -Konto zu beeinflussen. Sie können ein Sandbox -Konto von der Coinbase -Website erstellen und dann den API -Schlüssel aus diesem Konto in Ihrem Testcode verwenden.

Wie sicher ist die API von Coinbase? Alle API -Aufrufe werden über HTTPS getätigt, und sensible Daten werden verschlüsselt. Die Sicherheit Ihrer Anwendung hängt jedoch auch davon ab, wie Sie mit Ihrem API -Schlüssel und anderen sensiblen Daten umgehen. Halten Sie Ihren API -Schlüssel immer sicher und teilen Sie sie niemals mit jemandem.

Kann ich die API von Coinbase mit anderen Programmiersprachen verwenden? Mit jeder Programmiersprache, die HTTP -Anfragen stellen kann. Es gibt auch offizielle und inoffizielle Bibliotheken für mehrere Sprachen, darunter Python, Ruby und Java. Die genauen Grenzen hängen von der Art des API -Schlüssels ab, die Sie haben, und ob Ihre Bewerbung öffentlich oder privat ist. Weitere Informationen zu den Ratengrenzen in der Coinbase -API -Dokumentation finden Sie

Wie kann ich meine Verwendung der API von Coinbase überwachen? Dies beinhaltet die Anzahl der von Ihnen getätigten API -Anrufe, die Datenmenge, die Sie gesendet und empfangen haben, sowie alle aufgetretenen Fehler. Sie können diese Informationen auf der API -Zugriffsseite in Ihrem Coinbase -Konto anzeigen. Dazu gehören Ethereum, Litecoin und Bitcoin Cash. Sie können die API verwenden, um Informationen über diese Kryptowährungen zu erhalten, sie zu senden und zu empfangen und sie an der Coinbase -Exchange zu tauschen.

Das obige ist der detaillierte Inhalt vonBitcoin und PHP mit Coinbase -API - Grundnutzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage