Bitcoin a început cu siguranță să devină mai important, iar cu o acoperire globală și taxe minime este o metodă de plată care merită luată în considerare.
În acest articol, vom arunca o privire la ceea ce este Bitcoin, precum și cum să începeți să le acceptați în aplicațiile dvs..
În primul rând, ce este Bitcoin? Pentru cei care nu cunosc, Bitcoin este o monedă de tip peer-to-peer, dezvoltată pentru a elimina necesitatea unei autorități de încredere terță parte și, în schimb, să se bazeze pe securitatea intrinsecă prin intermediul hashes-urilor criptografice.
Prin eliminarea unei autorități centrale (un guvern, o bancă, etc ...), veți reduce taxele și cerințele mai mici. Nu este nevoie să completați formulare sau să plătiți salariile oamenilor, deci, într-un fel, banii se asigură.
Nu voi intra în specific, dar, în esență, de fiecare dată când are loc un transfer de valută, banii se semnează cu cheile celor două părți și apoi se rupă, iar aceste tranzacții sunt atașate la jurnalul global. Acest lucru permite monedelor să fie trasate public înapoi, și pentru a vedea dacă banii într-adevăr aparțin unei persoane sau nu.
Acum, să aruncăm o privire asupra unora dintre avantajele și dezavantajele asociate utilizării Bitcoin:
avantaje:
Dezavantaje:
Avantajele se bazează pe un model similar, deoarece, pentru că nu există o autoritate centrală, oricine o poate folosi în orice moment fără a avea nevoie de nici o confirmare sau acceptare, plus taxele sunt destul de scăzute.
Acum dezavantajele sunt variate. Deoarece nu este la fel de important ca alte opțiuni de plată, nu cred că este exact unde trebuie să fie, pentru a fi singura opțiune de plată. Dar, prin toate mijloacele, dacă sunteți un suporter uriaș și doriți ca acest lucru să crească, puteți fi un serviciu Bitcoin, dar aș sugera, deocamdată, utilizarea acestuia alături de un alt serviciu care acceptă cardul de credit.
Celălalt dezavantaj este stabilitatea valorii Bitcoin; la începutul acestui an, valoarea unui bitcoin a fost de aproximativ 12-14 $ fiecare, în doar câteva luni monedele au crescut până la aproape 240 $ în aprilie și sunt în prezent în valoare de aproximativ 110-115 $ fiecare. Acest lucru este în contradicție enormă cu monedele tradiționale, pentru ca banii dvs. să aibă o creștere de 2000% a valorii și apoi o scădere de 50%, toate într-o perioadă de câteva luni se pare că ar trebui să fie un steag roșu.
curtoazie de blockchain.infoEste greu de spus cu siguranță, dacă este vorba doar de un bi-produs de a avea o monedă descentralizată sau dacă se datorează perioadei precoce a programului, dar este cu siguranță un motiv de îngrijorare.
Din fericire, majoritatea procesoarelor Bitcoin, precum cea pe care o voi folosi în acest articol, vă permit să transformați imediat Bitcoins-urile sau o parte din ele în valută obișnuită, cum ar fi dolari, imediat. De exemplu, puteți configura că 80% din Bitcoin-urile care intră trebuie să fie imediat convertite și transferate în contul dvs. bancar, eliminând acest element de risc.
În cele din urmă, puteți câștiga și pierde din aceste fluctuații, deci depinde de dvs. dacă doriți să pariați și să lăsați mai mult din Bitcoins sau să eliminați toate riscurile și să le convertiți.
Acestea sunt câteva servicii populare în jurul valorii de lucru ca Coinbase, BitPay, etc, dar cel pe care îl voi folosi în acest articol este BIPS.
În acest articol vom construi o pagină de destinație simplă, în care puteți introduce în e-mail și faceți clic pe "achiziție", care vă va duce la pagina de plată. Pe pagina de plată, vi se va da o adresă Bitcoin pe care o puteți trimite și, odată ce ați plătit, veți primi articolul pe care l-ați achiziționat prin e-mail.
Aceste trei etape sunt complet separate, la fel ca în toate opțiunile de plată, dar se remarcă mai mult aici, deoarece nu puteți plăti direct din formularul de achiziție și trebuie să plătiți din propriul dvs. portofel Bitcoin.
Pentru această aplicație, voi folosi Slim pentru a oferi o mică structură, Mandrill pentru trimiterea produsului și, așa cum am menționat, BIPS ca procesor de plată pentru a pune în aplicare aspectul Bitcoin al lucrurilor.
Deci, pentru a instala Slim, creați un composer.json
fișier cu următoarele:
"nume": "aplicație bitcoin", "necesită": "slim / slim": "2.2.0"
Atunci fugi compozitorul instala
(presupunând că ați instalat un compozitor) pentru a instala dependențele.
Apoi, creați un public
dosar cu un index.php
fișier în interiorul acestuia, și a vizualizari
pliant.
Structura dvs. ar trebui să arate astfel:
public / -> index.php vendor / views / composer.json
Deschide acum index.php
fișier și să configurați aplicația Slim:
"... / vizionări"));
Solicităm autoloader-ul și apoi instanțializăm biblioteca Slim, până acum doar boilerplate. Apoi, să adăugăm ruta de domiciliu care va fi o pagină standard HTML cu formularul pentru a începe o achiziție:
$ app-> get ('/', function () foloseste ($ app) $ app-> render ('home.php'););
Și apoi trebuie să adăugăm home.php
vizualizați fișierul în sine la vizualizari
pliant:
Bitcoin App Cumpără asta
Aceasta este o ofertă grozavă pe care ar trebui să o achiziționați
Nimic prea fantezist, practic doar o formă de trimitere a e-mail-ului utilizatorului.
Ultima piesă de configurare pe care trebuie să o finalizăm este să vă înscrieți pentru BIPS și Mandrill (dacă o utilizați) și să generați chei API pentru ambele. În BIPS, mergeți la Comerciant și generați o chei API pentru facturi, iar pentru Mandrill mergeți la Certificatele SMTP și API pentru a genera o nouă cheie API.
Până în prezent avem o formă de bază care va trimite un e-mail de utilizator printr-o cerere POST, următorul pas este să luați e-mailul respectiv și să generați o factură pentru acesta.
Să adăugăm un traseu post la index.php
, care va genera un apel API pentru a crea o factură nouă și pentru a redirecționa utilizatorul către acesta:
$ app-> post ('/', functie () folositi ($ app) $ email = $ req = $ app-> request () "BIPS_API_KEY"; $ ch = curl_init ("https://bips.me/api/v1/invoice"); curl_setopt ($ ch, CURLOPT_POST, true); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, , CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt ($ ch; CURLOPT_SSL_VERIFYHOST; 2); curl_setopt ($ ch, CURLOPT_SSL_VERIFYHOST; curl_setopt ($ ch, CURLOPT_POSTFIELDS, array ("preț" => 20, "valută" => "USD", "item" => "PDF Book", "custom" => json_encode $ email)))); $ invoiceUrl = curl_exec ($ ch); $ app-> redirect ($ invoiceUrl););
Există câteva lucruri de observat aici, pentru unul, tokenul API pe care l-ați generat pentru crearea facturilor, este "numele de utilizator" în autentificarea HTTP. Campurile POST pe care le trimitem sunt după cum urmează:
Apelul API va returna doar adresa URL la factura în sine, astfel încât să putem obține doar răspunsul și să redirecționăm direct la acesta.
Acum, spre deosebire de alte opțiuni de plată, cum ar fi un card de credit sau un PayPal, nu există o terță parte care să gestioneze taxa, astfel încât să nu puteți introduce doar numărul sau datele de conectare pentru a plăti. În schimb, acesta creează un portofel personalizat pentru fiecare tranzacție și vă oferă 15 minute pentru a transfera suma specificată în acel cont. Despre asta am vorbit mai devreme, că, cu Bitcoin, observați pașii diferiți în timpul procesului de plată mai mult, atunci ați face ceva cum ar fi achiziția cu un singur clic pe Amazon.
Pe de altă parte, avantajul unui sistem de genul acesta este securitatea înnăscută care vine fără a fi nevoie să faceți nimic. Nu aveți de-a face cu numerele cărților de credit sau cu plățile de procesare, astfel încât site-ul nu trebuie să fie la fel de sigur, ci doar să creați o nouă identitate sau portofel și dacă banii sunt transferați acolo, plata se încheie cu succes.
Ultimul pas este de a face față cumpărării efective, odată ce plata a fost încheiată. Pentru a face acest lucru, trebuie să adăugați o adresă URL de apel invers și o cheie secretă în fila comerciant a panoului BIPS. O să-l direcționez către / IPN
ruta, cu o cheie secreta CHEIE SECRETA
.
Callback-ul este o cerere POST care conține toate informațiile de la cumpărare împreună cu datele personalizate pe care le-ați transmis și un hash pentru a verifica autenticitatea. Verificați cumpărarea de SHA-512 cu ajutorul cheii de tranzacție împreună cu secretul pe care îl configurați în panoul de administrare și verificați dacă se potrivește cu "hash" calculat în solicitarea apelului invers:
$ app-> post ('/ ipn', functie () foloseste ($ app) // Slim Cerere obiect $ req = $ app-> request (); // Obtinerea unor variabile din cerere $ email = $ req- > post ('personalizat') ['email']; $ transactionKey = $ req-> post ('transaction') ['hash']; $ invoiceHash = $ req-> post ($) $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ === $ hash && $ status == 1) // Paid);
Cheia de tranzacție și secretul sunt doar anexate unul la celălalt și apoi le avem împreună. Ultimul bit verifică doar dacă starea este 1
(ceea ce înseamnă că a venit plata) și verificarea autenticității notificării.
Acum avem adresa utilizatorului și avem o confirmare a plății, astfel încât ultimul pas este să trimiteți utilizatorului un fel de element. Dacă construiți un serviciu de abonament sau un fel de element fizic, puteți doar să înregistrați plata utilizatorului într-o bază de date, dar să încheiați acest articol, să luăm o scurtă privire la trimiterea unui element cu Mandrill.
dacă ($ invoiceHash === $ hash && $ status == 1) // Mandrill URL + cheie API $ url = "https://mandrillapp.com/api/1.0/messages/send.json"; $ apiKey = "MANDRILL_API_KEY"; // Obțineți șablon de e-mail $ view = $ app-> view (); $ template = $ vizualizare-> preluare ("email.php"); // Mesaj date POST $ messageData = array ("key" => $ apiKey, "message" => array ("html" => $ template, "subject" => "Thank you for Your Purchase :)" "=>" [email protected] "," from_name "=>" Numele tău "," to "=> array (array (" email "=> $ email)))); // Trimite cererea $ ch = curl_init ($ url); curl_setopt ($ ch, CURLOPT_POST, adevărat); curl_setopt ($ ch, CURLOPT_POSTFIELDS, json_encode ($ messageData)); curl_setopt ($ ch, CURLOPT_SSLVERSION, 3); curl_setopt ($ ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); curl_exec ($ ch);
În codul de mai sus, tot ceea ce facem este pregătirea tuturor datelor și construirea cererii de mesaj JSON pentru a fi trimise la Mandrill API; trebuie să trimiteți cheia API, subiectul mesajului și mesajul, adresa de e-mail / numele și adresa e-mailului.
Pentru mesaj, folosim comenzile șablon construite în Slim și apoi folosim POST cererea răsuci
și json_encode
pentru a compila datele în JSON.
Apoi, să creăm fișierul șablon email.php
(în interiorul dosarului de vizualizări). Puteți să puneți aproape orice doriți aici, deoarece este analizat ca un șablon normal Slim și tocmai returnez HTML-ul redat:
Multumesc pentru cumparaturile facute
Puteți descărca fișierul aici.
Tocmai am adăugat o rubrică cu un link către fișier. Dacă totul a mers bine, site-ul dvs. ar trebui să funcționeze pe deplin.
În acest articol am trecut prin procesul de creare a facturii, precum și a procesării plăților. Bitcoin poate părea un pic cam descurajant pentru a începe, dar, după cum puteți vedea, este mult mai simplu decât se va gândi, chiar și mai simplu decât alte opțiuni de plată în majoritatea cazurilor.
Știu că aceasta poate fi una dintre cele mai costisitoare demo-uri pentru a încerca, așa că am obținut o fotografie exclusivă de designerul de web talentat Melissa Keizer pe care îl puteți cumpăra în demo, dacă doriți.
Sper că v-ați bucurat de acest articol și vă mulțumesc că ați citit. Ca de obicei, dacă aveți întrebări, nu ezitați să vă lăsați un comentariu de mai jos, pe twitter sau pe canalul IRC Nettuts + pe freenode.