Die Coingate -PHP -Bibliothek bietet einen bequemen Zugriff auf die Coingate -API aus Anwendungen in der PHP -Sprache.
Php 7.3.0 und später.
Sie können die Bibliothek über Komponist installieren. Führen Sie den folgenden Befehl aus:
composer require coingate/coingate-php Wenn Sie keinen Komponisten verwenden möchten, können Sie die neueste Version herunterladen. Um die Bibliothek zu verwenden, geben Sie dann die init.php -Datei ein.
require_once ( ' /path/to/coingate-php/init.php ' );Die Bibliothek erfordert die folgenden Erweiterungen, um ordnungsgemäß zu arbeiten:
curl , obwohl Sie Ihren eigenen Nicht-Kurl-Client verwenden können, wenn Sie es vorziehenjsonWenn Sie Komponist verwenden, sollten diese Abhängigkeiten automatisch behandelt werden. Wenn Sie manuell installieren, möchten Sie sicherstellen, dass diese Erweiterungen verfügbar sind.
Sie können sich unter https://coingate.com für die Produktion und https://sandbox.coingate.com für ein Coingate -Konto anmelden.
Bitte beachten Sie, dass Sie für Sandbox separate API -Anmeldeinformationen auf https://sandbox.coingate.com generieren müssen. API -Anmeldeinformationen, die auf https://coingate.com generiert wurden, funktioniert nicht für den Sandbox -Modus.
Die Verwendung der Coingate -PHP -Bibliothek sieht aus wie:
$ client = new CoinGate Client ( ' YOUR_API_TOKEN ' ); Um den Sandbox -Modus zu verwenden, müssen Sie den zweiten Parameter auf true festlegen.
$ client = new CoinGate Client ( ' YOUR_API_TOKEN ' , true );Wenn Sie vorhaben, nur öffentliche API -Endpunkte zu verwenden, ist keine Authentifizierung erforderlich.
$ client = new CoinGate Client ();
// if needed you can set configuration parameters later
$ client -> setApiKey ( ' YOUR_API_TOKEN ' );
$ client -> setEnvironment ( ' sandbox ' );Die vollständige Dokumentation der Coingate -API finden Sie hier
Ein Beispiel für eine App, die diese Bibliothek verwendet, finden Sie hier
Erstellen Sie Bestellung bei Coingate und Direct Shopper in Rechnung (Payment_url).
$ params = [
' order_id ' => ' YOUR-CUSTOM-ORDER-ID-115 ' ,
' price_amount ' => 1050.99 ,
' price_currency ' => ' USD ' ,
' receive_currency ' => ' EUR ' ,
' callback_url ' => ' https://example.com/payments?token=6tCENGUYI62ojkuzDPX7Jg ' ,
' cancel_url ' => ' https://example.com/cart ' ,
' success_url ' => ' https://example.com/account/orders ' ,
' title ' => ' Order #112 ' ,
' description ' => ' Apple Iphone 13 '
];
try {
$ order = $ client -> order -> create ( $ params );
} catch ( CoinGate Exception ApiErrorException $ e ) {
// something went wrong...
// var_dump($e->getErrorDetails());
}
echo $ order -> id ;Aufstellen erstellter Bestellung mit vorab ausgewählter Zahlungswährung (BTC, LTC, ETH usw.). Zeigen Sie Payment_address und pay_amount für Shopper an oder leiten Sie sie zu Payment_url weiter. Kann verwendet werden, um Rechnungen aus Weißmarkierung zu erhalten.
$ checkout = $ client -> order -> checkout ( 7294 , [
' pay_currency ' => ' BTC '
]);Nach dem Erstellen einer Bestellung erhalten Sie eine Bestell -ID. Diese ID wird verwendet, um Bestellanfragen zu erhalten.
$ order = $ client -> order -> get ( 7294 );Informationen über alle platzierten Bestellungen abrufen.
$ orders = $ client -> order -> list ([
' created_at ' => [
' from ' => ' 2022-01-25 '
]
]);Aktueller Wechselkurs für zwei Währungen, Fiat oder Crypto. Dieser Endpunkt ist öffentlich, Authentifizierung ist nicht erforderlich.
$ client -> getExchangeRate ( ' BTC ' , ' EUR ' );Aktuelle Coingate -Wechselkurse für Händler und Händler. Dieser Endpunkt ist öffentlich, Authentifizierung ist nicht erforderlich.
$ client -> listExchangeRates ();Ein Endpunkt der Gesundheitsprüfung für Coingate -API. Dieser Endpunkt ist öffentlich, Authentifizierung ist nicht erforderlich.
$ client -> ping ();Holen Sie sich IP -Adressen von Coingate -Servern
$ client -> getIPAddresses (); $ client -> getCurrencies ();
// Crypto + Native + Merchant Pay
$ client -> getCheckoutCurrencies ();
// get Merchant Pay currencies only
$ client -> getMerchantPayCurrencies ();
// get Merchant Receive currencies only
$ client -> getMerchantPayoutCurrencies (); $ client -> getPlatforms ();Um Anforderungszeitüberschreitungen (verbinden oder insgesamt, in Sekunden) zu ändern, müssen Sie dem API -Client einen Curlclient als seinen Standard verwenden. Sie werden die Zeitüberschreitungen in diesem Curlclient festlegen.
// set up your tweaked Curl client
$ curl = new CoinGate HttpClient CurlClient ();
$ curl -> setTimeout ( 10 );
$ curl -> setConnectTimeout ( 5 );
// tell CoinGate Library to use the tweaked Curl client
CoinGate Client:: setHttpClient ( $ curl );
// use the CoinGate API client as you normally would $ result = CoinGate Client:: testConnection ( ' YOUR_API_TOKEN ' ); Um die API -Verbindung im Sandbox -Modus zu testen, müssen Sie den zweiten Parameter auf true festlegen.
$ result = CoinGate Client:: testConnection ( ' YOUR_API_TOKEN ' , true );Schreiben Sie ein Plugin, das Coingate integriert und unsere Bibliothek einbettet? Bitte verwenden Sie die SetAppInfo -Funktion, um Ihr Plugin zu identifizieren. Zum Beispiel:
CoinGate Client:: setAppInfo ( " MyAwesomePlugin " , " 1.0.0 " );Die Methode sollte einmal aufgerufen werden, bevor eine Anfrage an die API gesendet wird. Der zweite Parameter ist optional.