Terenski zapiski

Sprejemanje kriptovalut na prodajnem mestu

Sprejemanje kriptovalut na prodajnem mestu pomeni, da kupec na vašem pultu plača z digitalnim sredstvom — stabilnim kovancem, kot je USDC, ali kovancem, kot je BTC — vi, trgovec, pa prejmete evre. Sredstvo, ki ga pošlje kupec, in denar, ki ga prejmete vi, sta dve različni stvari, povezani s tečajem, določenim v trenutku plačila. Nič v vaši blagajni, vaših knjigah ali vašem bančnem računu ne izve, da je bila vpletena kripto. Terminal prikaže ceno v evrih, kupec skenira kodo in nekaj sekund pozneje se prodaja zaključi v evrih — v isti vrstici, kot bi bila ob plačilu s kartico. Kripto na prodajnem mestu je način plačila, ne računovodska sprememba, in da tako ostane, je celoten inženirski problem.

Najprej velja to povedati, ker večina zmede glede kripto plačil izhaja iz združevanja dveh vprašanj, ki bi morali ostati ločeni: kako plača kupec in v kateri valuti ostane trgovec. Ločite ju in vse ostalo sledi iz tega.

Problem, ki ga mora dejansko rešiti

Trgovec želi prodajo, ne nihanj. Ne želi dneva končati z vrečo sredstev negotove vrednosti in ne želi, da bi njegov knjigovodja nenadoma govoril dve valuti. Želi ceno, fiksirano med plačilom in računom, denar v evrih in uskladitev, ki je videti kot vsak drug kartični dan. Trgovina, ki kripto sprejema naivno, ne dobi nič od tega: prevzame sredstvo, katerega cena se spreminja, medtem ko se kupec še odloča, ga odloži v denarnico in v knjigah podeduje drugo valuto, ki jo mora nekdo zdaj ročno vrednotiti in pretvarjati. Zato je cilj zasnove ozek in strog — kripto naj bo viden na točno enem mestu, v trenutku plačila, in nikjer drugje.

En dotik: QR, zaklenjen tečaj, vrstica v evrih

Sledimo poteku na pultu. Blagajnik zabije košarico za €24.00. Terminal prikaže skupni znesek v evrih in izriše QR kodo, ki kodira zahtevek — znesek, ciljni naslov ali račun in kratkotrajni ID tečaja. Kupec jo skenira s svojo denarnico, vidi, kaj natanko bo poslal, in potrdi. Terminal spremlja omrežje in ob potrditvi prenosa natisne račun v evrih. Z blagajnikove strani je ritem enak kot pri kartici: znesek, predložitev, odobritev, račun. Nihče za pultom ne vpisuje naslovov in ne bere stanja v ničemer drugem kot v evrih.

Zahtevek v QR kodi je tisto, zaradi česar ga je varno podati telefonu tujca. Znesek in cilj potujeta v kodi, s kontrolno vsoto, zato kupec ne more plačati na napačen naslov ali napačnega zneska zaradi tipkarske napake — enak pristop kot identiteta po konstrukciji pri izterjavah, uporabljen na pultu. Koda, ki se skenira, je koda, ki je pravilna; ni polja za prosto besedilo, v katerem bi se lahko zmotili.

Poravnava v evrih, da knjige nikoli ne izvedo za kripto

Med sredstvom, ki ga pošlje kupec, in evri, ki jih obdrži trgovec, je pretvorba, in mesto, kjer se zgodi, je celotna finta. Kupec pošlje USDC ali BTC; platforma pretvori in trgovcu knjiži EUR na račun. Trgovčeva glavna knjiga vidi samo evrsko dobropis in evrsko vrstico provizije — enako obliko kot pri kartični poravnavi — ker se sredstvo pretvori na platformi in ne ostane v denarnici, ki bi jo moral trgovec upravljati. Ob koncu dneva so knjige od začetka do konca v evrih. Ni košare kovancev, ki bi jih bilo treba ovrednotiti, ni druge valute v računih in nič ni treba v ponedeljek zjutraj menjati nazaj v fiat.

Naloga kupca je plačati s tem, kar ima. Naloga trgovca je voditi knjige v eni valuti. Prodajno mesto, ki kripto poravna v evrih, je zgolj stroj, ki skrbi, da se ti dve dejstvi nikoli ne srečata.
– Protocore · Inženiring plačil

Tečaj je zaklenjen, ne zasledovan

Bojazen je nihanje, odgovor pa je zaklenjen tečaj z odštevanjem. Ko terminal prikaže ceno v evrih, določi tudi tečaj, veljaven v navedenem oknu — nekaj sekund. Kupec plača znotraj tega okna, po tem tečaju, evri, ki jih prejme trgovec, pa so evri z zaslona, ne tisto, kar je trg naredil, medtem ko se je denarnica nalagala. Če okno poteče, preden kupec potrdi, terminal tečaj obnovi: nova koda, novo odštevanje, izrecna nova cena — nikoli tihega zdrsa. Trgovec ni nikoli izpostavljen premiku med dotikom in potrditvijo; to tveganje nosi tisti, ki je tečaj določil, ne trgovec, ki je želel le prodati kavo.

Ko je kupec počasen ali je terminal brez povezave

Omrežja zastanejo in trgovine izgubijo povezavo, zato mora biti delovanje brez povezave namenoma dolgočasno. Dva primera. Ko je kupec počasen, tečaj preprosto poteče in se obnovi — plačilo se bodisi potrdi znotraj okna bodisi se ne zgodi, nobene napol končane prodaje ni treba razveljavljati. Ko terminal sam izgubi povezavo, še vedno lahko prikaže zahtevek za znani znesek, ne more pa določiti novega tečaja ali potrditi poravnave, zato prodajo zadrži kot čakajočo in jo uskladi ob ponovni povezavi, namesto da bi se pretvarjal, da je uspela. Vodilno pravilo je, da se račun natisne ob potrditvi, nikoli ob upanju: račun v evrih pomeni, da so evri knjiženi, prodaja, ki je terminal ni mogel potrditi, pa ostane odprta in vidna v operaterski konzoli, namesto da bi tiho izginila.

Kjer se terminal sreča z gatewayem

Pult je osebni obraz istega sprejemnega sklopa, ki deluje na spletu. Kripto dotik s prisotno kartico in plačilo prek povezave sta v osnovi isti dogodek — zahtevek, plačilo, poravnava v evrih, račun — predstavljen na različnih površinah. Trgovec tako uskladi kripto v trgovini in spletna naročila na enem mestu, v evrih, z istimi vrsticami provizij in istimi izvozi, namesto da vodi dve knjigi, ki ju je treba ob koncu meseca zbrati skupaj. Terminal je na /products/pos; spletna stran istih tirnic je /products/gateway; besedišče — tečaj, poravnava, prevzemnik, uskladitev — pa je opredeljeno v /glossary.

Odkrita meja

Če nihče pri vašem pultu ne želi plačevati s kripto, je kripto terminal rešitev problema, ki ga nimate — sprejemajte kartice in pojdite naprej. Svoje mesto si zasluži tam, kjer pomemben del vaših kupcev že ima digitalna sredstva in jih raje porabi, kot da bi jih najprej menjal: nekateri potovalni koridorji, nekatere spletno naravnane skupnosti, nekatere regije, kjer so stabilni kovanci preprosto način hranjenja porabnega denarja. V takih okoljih je zavrnitev dotika zavrnitev prodaje. Zgoraj opisana mehanika — QR, zaklenjen tečaj, poravnava v evrih, pravilo potrditve pred računom — omogoča, da to prodajo sprejmete, ne da bi prevzeli nihanja, drugo valuto ali knjigovodski projekt. Kripto ostane skrb kupca; evri ostanejo vaši.

Imate sistem za izdelavo?

Opišite nam problem. Vrnili se bomo z arhitekturo in načrtom.