Heatrail

Arendajatele

Integratsioonikeskus.

Kolm teed kontrolli saatmiseks: WooCommerce lisa, sõltuvusteta PHP SDK ja REST API. Tee otsustab, kui palju te ise kirjutate. Lepingut ta ei muuda. Kutse on nõuandev, ta on piiratud 800 ms peale, ja kontaktandmed räsitakse teie enda serveris, enne kui midagi välja läheb.

01

Valik

Valige kiht, mis teil juba on.

Saadaval

WooCommerce lisa

WordPressi lisa WooCommerce poodidele. Räsimise, päringu allkirjastamise, ajalimiidi, kordusjärjekorra, tellimuste nimekirja märke ja ühe klõpsuga märgistamise teeb lisa teie eest. Koodi kirjutama ei pea.

Lisa dokumentatsioon

Saadaval

PHP SDK

Sõltuvusteta, PHP 7.3 kuni 8.5, vajab ainult ext-curl ja ext-json. Fail-open ja HMAC allkirjaga konstruktsiooni järgi. Poele, kellel on oma PHP kassa.

SDK dokumentatsioon

Saadaval

REST API

HR1 HMAC autentimine JSON peal. POST /v1/check, POST /v1/labels, range payloadi lubatud nimekiri ja selged veakoodid. Iga keele jaoks.

API viide

Joonis 1

Kolm liidestusteed lahkuvad poest ühe päringuna, ühe eelarve all.Vasakul on suur kast pealkirjaga teie pood ja märkusega, et esimese astme HMAC jookseb siin. Tema sees on kolm rida: WooCommerce lisa, PHP SDK ja REST API klient. Igast reast väljub lühike joon, kolm joont ühinevad üheks, ja üks nool viib selle paremal olevasse kasti nimega Heatrail, kes vastab andmetega, skoori ja põhjustega. Ühendatud joone kohal seisab POST kaldkriips v1 kaldkriips check ja tema all räsid, mitte sisu. Kõrval seisab 800 ms, eelarve, mida hoiab pood. Lõpurida ütleb, et eelarve ületamisel jätab klient järele, tellimus läheb edasi ilma signaalita ja kontroll läheb järjekorda.Kolm teed, üks päring, üks lepingTeie poodesimese astme HMAC jookseb siinWooCommerce lisaPHP SDKREST API klientPOST /v1/checkräsid, mitte sisuHeatrailvastab andmetegaskoor ja põhjused800 mseelarvet hoiab poodEelarve ületamisel jätab klient järele, tellimus läheb edasi ilma signaalita ja kontroll läheb järjekorda.
Kõik kolm teed räsivad poe sees ja lõpevad sama päringuga, sama 800 ms eelarve all.

Iga pind, mis suudab serverist väljuva HTTPS päringu teha, liidestub REST API kaudu, ja see üks päring ongi kogu liidestus. Öelge meile, mida te kasutate, aadressil hello@heatrail.eu.

02

Leping

Nõuandev, ajaliselt piiratud, ja kadu on ohutu.

Heatraili kutsutakse üks kord tellimuse kohta, teie serverist, hetkel mil te olete tellimust makseteenusele üle andmas. Vastus on andmed. Ta ei saa midagi peatada, viivitada ega tühistada, sest teenusel ei ole selleks mehhanismi. Otsus on teie, teie koodis, pärast kutse naasmist.

800 ms eelarve

Lisa ja SDK jõustavad kõva 800 ms päringu ajalimiidi (HeatrailClient::DEFAULT_TIMEOUT_MS). Selle ületamisel jätab klient päringu katki, tagastab degradeerunud tulemuse, kirjutab kontrolli kohalikku kordusjärjekorda ja annab juhtimise kohe teie kassale tagasi. Eelarve jookseb teie protsessis, mitte meie omas, ja just see teeb ta jõustatavaks. Ülejäänud argumendi esitab Nõuandev konstruktsiooni järgi.

Degradeerunud tulemus on kindel, äratuntav kuju, mitte kunagi erind, mitte kunagi osaline skoor:

['degraded' => true, 'score' => 0, 'reasons' => []]

Käsitlege degraded kui „sellel tellimusel signaali ei ole“, mitte kui „madal risk“. Skoor on null sellepärast, et teatada ei ole midagi, mitte sellepärast, et tellimus hinnati ja tunnistati korras olevaks.

Mis peab teie koodis tõsi olema

Kutse ei ole kriitilisel teel
Mitte miski tellimuse vormistamises ei tohi sõltuda vastuse saabumisest. Kui te ei saa Heatraili kutset kassast kustutada ja tellimust ikkagi teele saata, on liidestus vale.
Iga tõrge on kinni püütud
check() SDK-s ei viska kunagi. Ajalimiit, ühenduse viga, non-2xx ja vigane JSON tagastavad kõik degradeerunud kuju. Kui te kutsute REST API-t otse, kuulub see leping teile: mähkige, piirake, neelake.
Märgistamine on erand
label() on ainus operatsioon, mis tõrkel viskab. Silt on selge inimese otsus, seega SDK ei teata kunagi silti rakendatuks, mida API ei kinnitanud. Näidake operaatorile tõrget ja laske tal uuesti proovida.
Skoorid on suunamiseks, mitte otsuseks
Skoor 70 või rohkem on see, mida Heatrail käsitleb kaupmehe hoiatuse väärilisena. Mida te sellega teete, hoiate ülevaatamiseks, küsite teist tegurit, saadate ikkagi teele, on äriline otsus, mis jääb täielikult teie poolele.
03

Andmed

Räsige omal poolel. Saatke kategooriad, mitte sisu.

E-posti aadress ja telefoninumber räsitakse teie poe sees, enne kui päring ehitatakse. Esimene aste on HMAC-SHA256(key = network salt, message = normalised value), tulemuseks 64 väiketähega hex märki. See hex on see, mis liigub. Toored kontaktandmed meieni ei jõua.

Teine aste jookseb meie serveris, enne kui midagi salvestatakse: argon2id, 12 MiB mälu iga katse kohta, võtmega, mis sellest serverist ei lahku. Alles jääb ainult teise astme väärtus, ehk meie andmebaasi read ei ole isegi need, mille teie arvutasite.

Lisa ja SDK teevad seda teie eest. Otsesel REST liidestusel on see teie kood, ja see on liidestuse tähtsaim rida, mis peab õige olema.

Mida te saadate

  • email_h / phone_h, esimese astme räsi, või jäetud ära
  • ip, kliendi IP, mida teie server nägi (nõutav)
  • order_ref ja/või session_ref, vähemalt üks
  • persist_id, valikuline naasva brauseri pseudonüüm
  • context, summa korv, kogus, toote riskiklass, konto vanuse klass, viiteallika klass
  • device_vector, valikulised jämedakoelised seadme tunnused

Mis keelatakse

  • Toored e-posti aadressid ja telefoninumbrid
  • Nimed, tarneaadressid või arveaadressid
  • Kaardinumbrid või mis tahes maksetunnused
  • Tellimuse read, tootenimed, vaba tekst mis tahes kujul
  • Toored user-agent stringid
  • Iga võti, mida lubatud nimekirjas ei ole: tundmatud väljad on 422, nii tipus, context sees kui device_vector sees

Tühja räsi reegel

Ärge kunagi räsige tühja, ainult tühikutest koosnevat või kohatäite väärtust, ja ärge asendage varuväärtusega. Jagatud näidise räsi saaks üheks hiiglaslikuks sõlmeks, mis seoks iga külaliskassa võrgus iga teisega. Kui kasutatavat väärtust ei ole, jäetakse väli payloadist täielikult välja. SDK annab seda teada, tagastades null meetoditest hashEmail() ja hashPhone(), ja API lükkab tuntud kohatäidete räsi iseseisvalt tagasi veaga placeholder_hash.

04

Volitused

Kolm väärtust, kolm eri tööd.

Key ID
Teie API võtme avalik identifikaator, kujul hk_ ja selle järel 16 kuueteistkümnendmärki. Ta ilmub Authorization päises ja meie logides. Ta ei ole saladus.
API key secret
Kasutatakse üheks asjaks: HR1 päringuallkirja arvutamiseks. Ta ei räsi kunagi ühtegi identifikaatorit, ja teda ennast ei saadeta kunagi, ainult temast tuletatud allkirja. Pöörake ta portaalis ümber, kui ta kunagi paljastub.
Network salt
Kasutatakse üheks asjaks: esimese astme identifikaatorite räsimiseks. Ta on võrguülene, ja just see laseb ühe poe räsi klappida sama isiku räsiga teises poes. Kohelge teda sama hoolega kui API saladust.
Scopes
Võti kannab check, label, või mõlemat. Päring, mis on allkirjastatud võtmega, millel puudub nõutav ulatus, keelatakse sama üldise 401-ga nagu vale allkiri, teadlikult, et vastus ei saaks kinnitada, et allkiri oli muidu kehtiv.

Kõik kolm väärtust on serveripoolsed. Ükski neist ei tohi kunagi jõuda brauserisse, ehitusartefakti ega kliendipoolsesse kimpu. Nad väljastatakse poe kaupa partnerportaalist, kus võetakse vastu ka Teenusetingimused ja Andmetöötlusleping, siis kui taotlus on üle vaadatud ja tellimus on aktiivne. Kui te soovite enne inimeselt küsida, kirjutage hello@heatrail.eu.

Alustage lühimast teest.

Heatrail

This site is not public yet

Heatrail is in a private pre-launch period. Enter the access password to continue.

Enquiries: hello@heatrail.eu