Având în vedere o creștere destul de rapidă a popularității criptelor electronice, cum ar fi băncile, am început să obțin mai multe întrebări despre cum să pună în aplicare Bitcoin pe site-ul meu, magazinul online. Aceste întrebări mi-au determinat să scriu acest articol.
Deci, să presupunem că aveți un magazin online care funcționează cu succes. V-ați dat seama de posibilitatea de a plăti pentru bunuri folosind sisteme cum ar fi Webmoney, banii Yandex, o carte de plastic etc. și, recent, v-ați gândit serios la posibilitatea de a lua brichete ca plată pentru bunurile sau serviciile dvs. Mai întâi de toate, să ne uităm la modul în care algoritmul cel mai simplu de aproape orice magazin online funcționează:
- Utilizatorul se înregistrează în magazinul online.
Asta e tot. Când integrați recepția BTC într-un magazin online, acest algoritm va fi practic neschimbat. Aceasta înseamnă că nu vor exista inovații complicate care complică activitatea magazinului online și sistemul de acceptare a plăților.
Pentru a arata in mod clar schema receptiilor BTC de la bun inceput, am scris in special cateva module care imita munca clientului din magazinul online (coșul), partea serverului (admin) si scripturile de procesare.
În primul rând, imaginați-vă că avem un magazin online, cu prețuri fixe în ruble, de exemplu. Este de la sine înțeles că, dacă intri în posibilitatea de a plăti taxe, atunci trebuie să realizi cumva convertirea prețului de la ruble la BTC. Pentru a rezolva această problemă, aș recomanda utilizarea cursului de schimb mtgox.com. pentru a transforma prețul rublei în bitcoins.
Deci, să spunem că această problemă este deja rezolvată și că, de exemplu, ați făcut o pictogramă "Plătiți în BTC", când faceți clic pe care prețul este automat convertit în bitcoins. Acum, să ne imaginăm o interfață simplă a coșului pe care utilizatorul care face o comandă vede:
Aici vedem că produsul a fost ales ca tabletă pe androde în valoare de 1 bucată și prețul de 10 BTC. După formarea comenzii și utilizatorul este gata să treacă la plată, apasă "Du-te la plată".
Pentru fiecare comandă, sistemul generează o nouă pungă unică, concepută să accepte plata numai pentru o anumită comandă.
Sistemul solicită utilizatorului să transfere suma cerută la punga specificată. Clientul plătește, apoi apasă butonul "Plătește". Apoi, sistemul afișează următoarea pagină:
Utilizatorul vede că comanda este acceptată pentru procesare și este vizibilă pentru operatorii magazinului online. A fost furnizat un număr de comandă pentru a urmări sosirea fondurilor în portofel. Acest lucru este necesar pentru ca utilizatorul să poată vizualiza vizual balanța portofelului și numărul de tranzacții confirmate.
După ce utilizatorul a generat comanda, o nouă comandă a apărut în baza de date a magazinului online. Operatorul îl poate vedea pe o pagină specială. Arată de obicei următoarele:
Această interfață furnizează cele mai necesare informații despre comandă, cum ar fi:
- data și ora formării comenzii;
- suma pentru plată;
- cât a fost primită în cont;
După aceea, operatorul poate compara suma primită cu suma de plată, începe pregătirea comenzii, contactați clientul.
Acum, ia în considerare activitatea acestui sistem din punctul de vedere al programării.
Pentru a implementa recepția BTC, trebuie să instalați și să configurați daemonul bitcoind pe server. Trebuie avut în vedere că, dacă site-ul se află într-o găzduire virtuală, probabil că nu veți putea efectua plata în acest fel, deoarece hostingul partajat rare permite instalarea de programe pe serverele lor. Instalarea și configurarea bitcoind-ului sunt detaliate aici.
După instalarea și configurarea daemonului, trebuie să utilizați o clasă special creată pentru a lucra cu bitcoind din PHP. Clasa poate fi descărcată gratuit aici.
Acum ați instalat și ați configurat un mediu pentru organizarea recepției BTC.
Algoritmul este implementat după cum urmează.
$ account = $ btc-> new_address ("utilizator"); // Obțineți un cont nou pentru utilizatorul $ user cu același nume.
În consecință, aceste confirmări pot fi afișate în panoul utilizatorului sau administrativ pentru claritate.
În ansamblu, toate acestea sunt funcționale. Un wrapper este afacerea fiecărui programator. Dar vreau să spun că utilizând toate deliciile bitcoind-ului API, puteți implementa un sistem mult mai grijuliu și mai sigur.