Bitcoin platby – platební brána Bitcash.cz
Probíhá testování brány s vybranými eshopy. Pokud máte zájem o implementaci Bitcoin plateb do vašeho eshopu - kontaktujte nás.
Výhody:
- snadná implementace skrze XML/RPC calls
- nezávislost na platformě (PHP, .NET, Ruby, Java, AJAX) - stačí mít možnost otevřít spojení přes HTTP s platební bránou
- nemusíte provozovat vlastní bitcoind node (což je spojeno s vyššími náklady na provoz)
- integrováno s Bitcash peněženkou (příchozí i odchozí platby zdarma)
- přidělování unikátní bitcoin adresy pro každý nákup zněmožňuje konkurenci sledování vašich tržeb
Proces platby Bitcoinem v eshopu
Proces platby za zboží či služby v eshopu či na webových stránkách probíhá v těchto krocích:
- uživatel dokončí objednávku v eshopu, je známa cena celkové objednávky v btc
- aplikace obchodníka zavolá bitcash server s požadavkem vytvoření objednávky v určité výši v bitcoinech, bitcash vrátí obchodníkovi unikátní id a bitcoinovou adresu
- aplikace obchodníka zobrazí uživateli bitcoinovou adresu a částku v btc k úhradě
- zákazník uhradí částku v bitcoinech na zadanou adresu
- bitcash server detekuje příchozí platbu a zavolá aplikaci obchodníka s oznámením platby
- aplikace obchodníka zaúčtuje přijatou platbu a potvrdí objednávku jako uhrazenou.
Platební brána Bitcash.cz - Dokumentace
Verze: Development Draft 1
(dokumentace zatím není finální)
Vytvoření přístupu k API.
V nastavení platební brány můžete vytvářet jednotlivé projekty. Každý projekt má vlastní API účet. Pro přístup k API je použito ID projektu (jako uživatelské jméno) a Heslo, které si zvolíte.
Současně je možné navolit, do jaké peněženky připisovat přijaté bitcoin platby.
Vytvoření objednávky:
createorder (username, password, amount, orderid)
username – ID projektu
password – heslo, které si zvolíte v konfiguraci platební brány bitcash.cz
amount – částka v bitcoinech (FIXME: formát)
orderid – id objednávky ve vašem systému – pro callback i zjištění stavu
V případě úspěchu vrátí:
1KwxKTJ8Vx5YKLhqzT3grcxjRwQL4f1GBp
bitcoinaddress (string) – adresa v bitcoin síti (začíná znakem 1)
Veškeré vytvořené objednávky jsou na webu bitcash v sekci „očekávané platby“.
Zjištění stavu objednávky:
checkorder (username, password, orderid)
username – ID projektu
password – heslo, které si zvolíte v konfiguraci platební brány bitcash.cz
orderid – id objednávky ve vašem systému
V případě úspěchu vrátí:
Array
(
[0] => Array
(
[orderid] => 4531
[projectid] => 1
[timecreated] => 1371409465
[amount] => 50.00000000
[amount_int] => 5000000000
[balance_int] => 85498239
[status] => partly paid
[bitcoinaddress] => 1KwxKTJ8Vx5YKLhqzT3grcxjRwQL4f1GBp
[minconf] => 312
[lastreceived] => 1371242724
[payments] => Array
(
[0] => Array
(
[paymentid] => 1
[orderid] => 3
[amount] => 0.45222617
[amount_int] => 45222617
[timereceived] => 1370466178
[timeconfirmed] => 1370469298
[method] => send
[blockid] => 239954
[confirmations] => 1965
[txid] => 10ed3907ec9b2e6bcda878b4fb37c0525911d4a892ad376fe5bb33f8524d306f
[blockhash] => 00000000000000bee901ddf3cc51943b22e0915ede7818131597c4f4cc5b3d13
[notifytries] => 1
[timenotified] => 1370475263
[txidcleared] => move
[timecleared] => 1371254532
)
[1] => Array
(
[paymentid] => 8
[orderid] => 3
[amount] => 0.40275622
[amount_int] => 40275622
[timereceived] => 1371242724
[timeconfirmed] => 1371243041
[method] => send
[blockid] => 241550
[confirmations] => 369
[txid] => e42c6c35571f0f65aad8702f1dcb61eb73ad6c7228de873e7d321de04c9593cc
[blockhash] => 00000000000000c80cf7a22fd8257fc0cead60f8743d28d8635aa7351447bdbc
[notifytries] => 1
[timenotified] => 1371243645
[txidcleared] => move
[timecleared] => 1371254532
)
)
)
)
Životní cyklus objednávky:
Objednávka prochází těmito stavy:
- not paid
- partly paid
- paid
- overpaid
Obecně je doporučeno vyžadovat nejméně 6 konfirmací z bitcoin sítě. Brána samozřejmě monitoruje též nepotvrzené transakce (0 konfirmací).
Rozhodující pro stav objednávky je suma přijatých a potvrzených transakcí (s dostatečným počtem konfirmací z bitcoin sítě).
Nově založené objednávky jsou označeny “not paid”.
Jakmile suma finálně potvrzených transakcí je rovna (očekávané, fakturované) částce objednávka je označena jako “paid”.
Objednávky uhrazené jen z části jsou označeny “partly paid”. Naopak přeplacené objednávky, kde je přijatá částka vyšší než fakturovaná jsou označeny “overpaid”.
Nastavení notifikací a Callback
Četnost notifikací:
Systém poskytuje dva režimy notifikací. Základní a detailní. V základním režimu je obchodník skrze callback informován pouze o každé uhrazené objednávce (ve stavu paid nebo overpaid).
V detailním je informován o každé přijaté a potvrzené platbě (po dosažení potřebného počtu konfirmací) bez ohledu na stav objednávky.
Pro snazší implementaci doporučujeme režim základní. Pro systémy typu předplatného je vhodný režim detailní.
Pro sledování stavu objednávek mimo callback funkci je možne volat přímo Bitcash API funkcí checkorder.
Callback URL
V nastavení projektu specifikujte URL v aplikaci obchodníka, které bude voláno z bitcash serveru.
Například:
http://www.vas-eshop.cz/bitcoin.php
Na uvedené URL je skrze XML-RPC předáno pole s aktuálně přijatými platbami a jejich stavem - viz výše.
Při nemožnosti spojení se Bitcash pokuší zopakovat notifikaci o platbě ještě třikrát, poté je odeslán email obchodníkovi s varováním.
Kurzy Bitcoin a jejich konverze
Ziskat aktuální kurz BTC pro zobrazení cen zboží či služeb je možné skrze konvertor měn:
https://staker.cz/gw/server.php
convertcurrency (username, password, amount, fromcurrency ,tocurrency )
Podporovány jsou následující měny: USD, CZK, BTC
(Upozornění: kurzy přebíráme z webů třetích stran, za jejich aktuálnost neneseme odpovědnost)
Development Kit
K dispozici je vývojový kit pro PHP, s jehož pomocí můžete začít okamžitě testovat naši bránu. Kontaktujte admina buď skrze PM anebo emailem: info@bitcash.cz a devkit vám zašleme.