Cum să utilizați platformele de comerț fără cap pentru campanii de marketing?

Publicat: 2022-04-18

Ce sunt platformele de comerț fără cap?

Platforme de comerț electronic fără cap sau platforme bazate pe API - software în care front-end-ul (sau „capul”) a fost decuplat sau complet eliminat, lăsând doar backend-ul.

Conceptul arhitectural care stă la baza acestor platforme a început cu lumea CMS. Prin separarea straturilor, companiile au vrut să lupte cu obstacolele în drumul lor către livrarea mai rapidă a conținutului pe canale de marketing din ce în ce mai noi - cu smartphone-ul jucând primul lăutar.

Cu software-ul tradițional CMS, problemele de nivel scăzut cu care s-au confruntat dezvoltatorii:

  • designul este constrâns de cadrele moștenite, un set predefinit de experiențe disponibile numai;
  • mici modificări front-end pot necesita modificări în baza de date și codul back-end, crescând timpul de testare și, prin urmare, costul total al sarcinii;
  • modificările aduse codului back-end pot cauza erori neașteptate în front-end;

s-au acumulat și s-au tradus de-a lungul timpului în frână de mână pentru afaceri:

  • spațiu puțin sau deloc pentru personalizare;
  • confuzie și neînțelegere reciprocă cu privire la motivul pentru care modificările mici ale software-ului durează mult timp;
  • noi canale de marketing neexploatate sau ocolite software cu prioritate redusă care vine prea târziu.

Drept urmare, „API-first”, „based-API” sau „headless CMS” au izbucnit în floare. Dar aceasta s-a extins curând și în alte domenii digitale, inclusiv comerțul electronic și marketing.

Dacă este prima dată când întâlniți platforme fără cap, s-ar putea să vi se pară interesant ultimul meu articol: Înțelegerea platformelor bazate pe API. De asemenea, Paul, în Introduction to Headless eCommerce, arată câteva exemple reale de aplicații construite cu instrumente bazate pe API.

Platforme fără cap – de la o idee la un POC gata de producție într-o zi

Să verificăm dacă într-adevăr putem construi software flexibil atât de repede. Vom recrea o strategie de marketing folosită de mărcile de top în aceste zile. Pe scurt, va:

  • Geolocalizați clienții.
  • Atribuiți-le un cupon de reducere personalizat.
  • Oferiți un cod de cupon unic cu o notificare push.
Flux de lucru API

Nu este greu de imaginat că companii precum Uber trebuie să fi investit o duzină de dezvoltatori de luni-om sau chiar mai mult în acest software.

Ceea ce ar putea părea cea mai simplă sarcină - alocarea unui cod de reducere aleatoriu - este împovărat de avertismente. Am învățat asta la greu pentru că echipa noastră lucrează la asta de 3 ani acum. Numărul de noi carcase de colț care crește și cheltuielile generale de gestionare pot arde chiar și ceva care arată ca un sistem simplu.

Din fericire, platformele fără cap sunt aici pentru a ne ajuta.

Vom folosi trei platforme SaaS prietenoase pentru dezvoltatori pentru a crea o soluție funcțională:

  • Radar - API de localizare geografică
  • Voucherify - API de gestionare a promovării
  • Braze - API de notificare

Să vedem cum le putem combina pentru a-ți uimi clienții cu promoții cu adevărat personalizate oferite prin abordare fără cap.

Notă: următoarea soluție presupune că aveți un cont activ pe Radar, Voucherify și Braze. De asemenea, toate acestea ar trebui să fie populate cu baza de date a clienților, inclusiv un câmp care poate fi folosit pentru a identifica în mod unic o persoană.

Detectarea momentului în care un client intră în locul tău cu Radar - geolocalizare fără cap

Conceptul din spatele radarului este simplu. Platforma geolocalizează aplicațiile folosind 3 tipuri de context:

  • Geofence - Radar se mândrește cu faptul că este mai puternic decât geofence-ul nativ iOS sau Android, cu suport pentru mai multe platforme pentru geofence nelimitate, geofence poligonale și detectarea opririi. Acest lucru se datorează faptului că toate geofencing și generarea de evenimente au loc pe partea serverului.
  • Locuri - Radar poate recunoaște o listă extinsă de locuri deoarece folosește baza de date Facebook. Și cel mai tare lucru este că poți lucra cu categorii încorporate (de exemplu, aeroporturi majore) sau lanțuri (de exemplu, Starbucks).
  • Perspective - Motorul lor de locație poate învăța și cum să aproximeze un utilizator care intră/iese de acasă și de la birou.

Când Radar detectează vizitele utilizatorilor dvs. sau părăsește locul, vă permite să vă notificați aplicația printr-un webhook.

Tot ce trebuie să faceți, ca dezvoltator, este să utilizați unul dintre kiturile de dezvoltare software (iOS, Android, Web) pentru a autentifica și configura și ajusta opțiunile de urmărire - de exemplu, dacă doriți să urmăriți în fundal sau în prim-plan.

Să vedem atunci platforma fără cap Radar în acțiune!

1. Configurați-vă contul

Accesați radar.io și creați un cont, apoi utilizați cheile API de testare pentru a inițializa widget-ul Radar, așa cum se arată mai jos:

{{COD}}

<script src="https://js.radar.io/v1.0.0/radar.min.js" integrity="sha384-TFQktvQ2F2ST3MCcepqaOHqwc36jDy7r/gAj7dOvU6VXtJ4m4Dj2hByxZ59d4MjKonym">crossorigin="anonymous"

<script type="text/javascript">

Radar.initialize("CHEIA_TAVĂ");

</script>{{ENDCODE}}

2.Urmăriți utilizatorii

Pasul final este să verificați dacă urmărirea funcționează. Pentru a face acest lucru, vom folosi metoda trackOnce care este invocată dacă Radar detectează orice modificare a locației.

Să rulăm codul și să vedem ce informații oferă Radar (nu uitați să permiteți urmărirea locației în browser):

{{COD}}

Radar.trackOnce(funcție(stare, locație, utilizator, evenimente) { console.log({ stare, locație, utilizator, evenimente });});

{{ENDCODE}}

Ieșire:

{{COD}}

evenimente: [] (0)

locație: Coordonate {latitudine: 50.25462479999998, longitudine: 19.061743829999994, altitudine: nul, precizie: 165, altitudinePrecizie: nul, …}

stare: „SUCCES”

utilizator: {userAgent: „Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) Ap… (KHTML, ca Gecko) Version/12.1 Safari/605.1.15”, ip: „93.179.216.18”, locationAccuracy: 165, deviceType: „Web”, oprit: adevărat, …}

{{ENDCODE}}

OK - Radar ne-a găsit ascunzătoarea. Dar fără context, nu știe ce să facă cu aceste informații. Să lucrăm la informațiile Radar.

Vom da un nume locului din care te-ai înregistrat - în general (și în Radar) acest context de locație se numește geofence. Iată cum să faci asta:

  • Accesați Creatorul geofence.
  • Selectați un tip de sursă respectiv, voi merge pe Locație și voi scrie compania mea ca interogare.
  • În rezultat, Radar caută coordonatele geografice și sugerează o graniță de gard geografic.
Geolocalizare API radar
  • Dacă locația funcționează pentru dvs., confirmați geofence cu CREATE.

Acum, să reîmprospătăm pagina și să urmărim consola. Radarul ne trimite acum câteva evenimente :

{{COD}}

{

"createdAt":"2019-04-16T16:08:49.645Z",

"live":false,

"type":"user.entered_geofence",

"Locație":{

"coordonate":[

19.062212,

50.254927099999996

],

"type":"Punctul"

},

„LocationAccuracy”:20,

„încredere”:3,

"actualCreatedAt":"2019-04-16T16:08:49.645Z",

"utilizator":{

"_id":"5cb5f2ba36581b002a3534ca",

"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, ca Gecko) Chrome/73.0.3683.103 Safari/537.36",

„deviceId”: „a96ec0db-969c-4a77-996c-361a0530660a”

},

"geofence":{

"_id":"5cb5f7d3a60e95002b009ebd",

"descriere":"respectiv",

"type":"cerc",

„geometryRadius”:100,

„geometryCenter”:{

"type":"Punct",

"coordonate":[

19.062346299999945,

50.25495069999999

]

}

},

"_id":"5cb5fe117cd3430025b9ee0d"

}

{{ENDCODE}}

Se pare că înțelege că am intrat în gardul nostru geografic nou creat. Întrucât stăm în același loc, reîmprospătările ulterioare nu ar trebui să aducă evenimente noi. Dar când schimbăm locația, radarul o va detecta și el.

Pentru a-l testa, luați mașina, ieșiți în afara zonei geofence și conectați-vă din nou acolo Sau... puteți utiliza Senzori din Chrome Tools.

Localizare geografică în Chrome

Falsificați locația dvs. selectând orice distanță suficient și reîmprospătați pagina. Acum Radar arată că user.exited_geofence

Puteți urmări evenimentele de geolocalizare pentru toți utilizatorii înregistrați și neînregistrați cu tabloul de bord convenabil al Radar, în timp real:

Urmărire în API-ul Radar

Notificarea aplicațiilor externe prin mesaje fără cap

Deci, urmărirea Radar înțelege acum contextul locației noastre. Dar pentru a-l folosi pentru scenariul nostru, Radar trebuie să îl împărtășească cu lumea exterioară. Și o face în multe feluri. Una dintre ele este utilizarea webhook-urilor.

Un webhook este un concept API care oferă unei aplicații o modalitate de a furniza altor aplicații informații în timp real.

Potrivit Segment, o platformă care ajută la colectarea și schimbul de date despre clienți pe mai multe sisteme, popularitatea webhook-urilor crește rapid.

Webhook-uri și comerț API/headless

O implementare tipică webhook permite unui utilizator al unei aplicații să:

  • notifică un sistem extern (sau mai multe sisteme)
  • cu un apel(uri) API
  • momentul în care a avut loc un anumit eveniment.

Cu un astfel de mecanism în vigoare, un utilizator de aplicație nu trebuie să interogheze frecvent date pentru a surprinde modificările în timp real.

Trimiterea unei cereri către un API extern este doar o parte a procesului. Pentru a finaliza ciclul webhook, clientul care îl primește trebuie să îl consume cu succes.

În lumea HTTP, aceasta înseamnă de obicei să răspundeți cu starea 2**. Dacă nu, motorul webhook va încerca din nou mai târziu (o politică de reîncercare depinde de autorii politicii definiți).

În cazul nostru, Radar trimite sarcina utilă a evenimentului pe care am văzut-o când ne-am schimbat locația la un punct final furnizat. Să adăugăm unul pentru a vedea webhook-urile în acțiune.

  1. Accesați integrări.
  2. Selectați mediul de testare și livrarea unui singur eveniment .
  3. Furnizați un punct final pentru a fi notificat. Aveți câteva opțiuni aici. Poti:
  • dezactivați un server web simplu de pe mașina dvs. și utilizați ngrok pentru a canaliza traficul,
  • utilizați glitch pentru a vă implementa punctul final imediat,
  • atingeți unul dintre dispozitivele de captare online webhook, cum ar fi: webhook.site sau requestbin
  1. Lipiți adresa URL unică în formular și confirmați.
Adăugarea unui webhook în Radar
  1. Faceți clic pe Testare din coloana ACȚIUNI pentru a declanșa primul eveniment. Dacă ați configurat corect, ar trebui să vedeți sarcina utilă webhook așa cum se arată în imaginea de mai jos:
Testarea webhooks

Până acum, bine. Rezultatul este destul de promițător, nu? Cu ceva copy'n'paste și un fragment de JavaScript, am acoperit partea privind localizarea geografică a cazului nostru de utilizare. În stadiul actual, Radar nu poate identifica utilizatorii decât cu un ID de dispozitiv stocat în cookie-uri. Pentru a o face mai robustă, să identificăm utilizatorul cu un e-mail. Cu SDK-ul Radar, este o singură linie:

{{COD}}

Radar.setUserId(“[email protected]”);

{{ENDCODE}}

Puteți vedea imediat noul ID în tabloul de bord:

Deci, acum trebuie să abordăm o cerință de reducere personală - un cod de cupon unic.

Conectarea motorului promoțional fără cap Radar și Voucherify

Similar cu Radar, Voucherify cu API-ul său vă oferă o funcție flexibilă de cupoane pentru o fracțiune din costul pe care l-ați suporta dacă porniți de la zero.

După cum vom afla în curând, acesta acceptă alte campanii promoționale, cum ar fi reduceri, recomandări sau programe de loialitate, care pot fi livrate cu orice canal de marketing actual al viitorului.

Pentru a accesa funcțiile de personalizare Voucherify, trebuie mai întâi să importați datele utilizatorilor și să le mențineți sincronizate.

Voucherify stochează datele clienților în Customer Objects care pot fi grupate în segmente în funcție de atributele personale, locație și istoricul interacțiunilor Voucherify.

Să presupunem că ați importat deja clientul de testare în Voucherify și acum vom vedea cum să sincronizăm locația acestuia cu Radar - fără cod.

Zapier – lipiciul rețelei

Imaginați-vă dacă toate platformele care expun webhook-uri ar fi listate într-un singur director, cu structură unificată și capacitatea de a le conecta ca blocuri - faceți cunoștință cu Zapier.

Zapier conectează peste 1000 de aplicații web și le permite să lucreze împreună în fundal.

Fiecare Zap începe cu declanșarea unui eveniment într-una dintre aplicațiile tale, care demarează fluxul de lucru. Iată câteva exemple din documentele lui Zapier:

  • Automatizați-vă prezența pe rețelele sociale trimițând noi articole RSS pe Facebook ca postări;
  • Mențineți proiectele organizate prin copierea noilor carduri Trello în Evernote;
  • Păstrați legătura cu clienții potențiali adăugând respondenți la formular din Typeform pe lista de corespondență din MailChimp;
  • Asigurați-vă că echipa dvs. nu pierde niciodată o întâlnire notificând un canal în Slack cu privire la evenimentele viitoare din Google Calendar;
  • …si multe altele!

Probabil că te vei întreba acum: „Ne poate ajuta Zapier?”. Da, se poate! Să ne jucăm cu câteva Zaps pentru a actualiza modificările de localizare geografică la Voucherify.

  1. Faceți clic pe Make a Zap și selectați Webhooks.
  2. Cu această opțiune, Zapier poate crea un punct final (similar cu webhook.site) pe care îl putem folosi pentru a consuma webhook-ul de la Radar. Pentru a face acest lucru, alegeți Catch Hook.
  3. Următoarea vizualizare vă va oferi o adresă URL a punctului final care o va înlocui pe cea veche în configurarea webhook-ului Radar.
  1. Lipiți linkul la Radar și declanșați din nou testul. Dacă Radar confirmă noul punct final cu o bară intermitent verde, treceți la pasul următor în Zapier.
  2. Pe ecranul următor, ar trebui să observați sarcina utilă a solicitării dvs. de testare
  1. Confirmați formularul și primul pas al Zap - trigger - este gata.

Acum trebuie să punem în lucru mesajele consumate. Pentru a finaliza Zap, avem nevoie de cel puțin o acțiune (puteți înlănțui mai multe platforme cu un singur Zap).

  1. Alegeți Voucherify din exploratorul de acțiuni. Notă Voucherify Zap este disponibil „prin invitație”, aici este linkul pentru a-l obține.
  1. Selectați opțiunea Actualizare client și treceți la formularul Configurare șablon .
  2. Aceasta este o parte cheie. Pe acest formular, Zapier vă permite să mapați intrarea la ieșire. Editorul este atât puternic, cât și intuitiv. Are un câmp de căutare inteligentă care vă permite să răsfoiți JSON primit atât după chei, cât și după valori. De asemenea, puteți concatena cu ușurință două sau mai multe câmpuri de intrare într-o singură ieșire.

În cazul nostru, vrem doar să identificăm clientul după codul sursă și să actualizăm un câmp personalizat „rspectiveHQ” în funcție de eveniment, astfel încât maparea să arate după cum urmează:

Voucherify: ID sursă - Radar: ID utilizator
Voucherify: Metadate -> rspectiveHQ - Radar: Tip eveniment

  1. Sari peste test și completați formularul - ZAP-ul este ON și așteaptă!

Am configurat webhook-ul Radar și am activat Voucherify Zap. Să testăm dacă toată conducta funcționează. Accesați aplicația noastră web și încercați să schimbați încă o dată locația pentru a notifica detectorul Radar.

Iată ce ar trebui să urmeze:

  • Radarul urmărește 2 evenimente, utilizatorul iese și intră în geofence.
  • Zapier prinde 2 webhook-uri în consecință.
  • Voucherizare melodii la actualizările profilului clientului.
Flux - Radar

Zapier este mai mult decât atât. Când vă uitați la opțiunile de configurare a fluxului de lucru, veți observa roți dinți care vă permit să construiți procese destul de complexe. Pașii de ajutor, cum ar fi condițiile, filtrele sau întârzierile, vor fi de ajutor în analizarea și digerarea datelor de intrare și pentru formatarea rezultatului în consecință.

Puteți chiar să scrieți cod personalizat (în JavaScript și Python) dacă aveți nevoie de mai multă flexibilitate la unul dintre pași - v-am spus deja că puteți înlănțui o serie de perechi de declanșare-acțiune?

Oferă documentației de pornire rapidă Zapier șansa de a înțelege ce fel de economie de timp este.

Generarea unui cupon unic pentru utilizatorii geolocați prin intermediul motorului de promovare fără cap

Una dintre caracteristicile esențiale din Voucherify este personalizarea reducerilor în funcție de profilul clientului, în timp real. Acest lucru este posibil datorită segmentelor dinamice care monitorizează atributele clienților și ceea ce au pus într-un coș de cumpărături și declanșează acțiuni conform unor reguli de afaceri.

În cazul nostru, vom construi un segment care verifică câmpul nostru personalizat (rspectiveHQ) care, la rândul său, stochează informațiile dacă un client a intrat în geofence. O putem realiza printr-un singur punct final din API-ul Voucherify, dar cel mai rapid mod este pur și simplu să folosim tabloul de bord.

Accesați Clienți și deschideți Creatorul de segmente. Acum filtrați clientul folosind un câmp de metadate corespunzător, ca în imaginea de mai jos:

Confirmați filtrul, apăsați pe reîncărcare și veți vedea toți clienții care se potrivesc segmentului. Puteți „a cere” utilizatorului dvs. de testare să părăsească geofence și să reîncarce segmentul pentru a vedea dacă integrarea funcționează conform așteptărilor.

Dacă ceea ce vedeți reflectă realitatea, salvați segmentul.

Următorul pas este să folosiți informațiile despre locație pentru a adapta reducerea.

Dar înainte de a ne arunca în ea, vreau să vă opriți pentru un moment și să analizați cât de mult am realizat până acum fără a scrie un singur cod back-end . În același timp, nu ne-am închis soluția pentru schimbare , deoarece atât Radar, cât și Voucherify expun API bogat și arhitectură headless pe care o puteți conecta oricând este necesar.

Pasul final este configurarea unei distribuții care va:

  • trimite un cod de cupon unic
  • unui client detectat
  • cu canalul predefinit

Pentru început, să generăm un cod promoțional unic pentru fiecare utilizator. Să fie o reducere de 10%. Accesați creatorul campaniei, alegeți opțiunea Coduri în bloc și urmați pașii în care veți defini:

  • tipul și valoarea reducerii,
  • interval de timp,
  • modelul de coduri, inclusiv lungimea, prefixul, sufixul și setul de caractere,
  • numărul inițial de coduri,
  • si alte detalii.

A 4-a etapă a creatorului - regulile de validare - este deosebit de interesantă. Acesta este un loc în care puteți defini cine și în ce condiții poate valorifica codul. Amintiți-vă că dorim să limităm răscumpărarea doar la acei clienți care ne-au vizitat geofence. Vom folosi segmentul nostru pentru a finaliza acest pas.

Acest instrument vă oferă mult mai multe opțiuni de filtrare. Dacă se întâmplă să lucrați la campanii de achiziție sau de reținere a clienților, poate doriți să verificați referința regulilor de validare, deoarece vă poate economisi o mulțime de linii de cod.

Când Voucherify termină generarea în bloc, ar trebui să le vedeți listate:

Avem segmentul și codurile promoționale, acum haideți să-l conectăm la canalul nostru de marketing outbound!

Îl puteți implementa cu API-ul Voucherify și webhook-uri, dar există o modalitate mai rapidă - întâlniți distribuțiile.

Această funcție vă permite să detectați un nou client care a intrat (sau a părăsit) un segment, să îi atribuiți un cod de cupon unic și să îl trimiteți prin e-mail, SMS, notificare push, chat live sau reclame pe rețelele sociale. În plus, un editor vizual vă ajută să creați o copie de promovare personalizată.

Fiecare canal are propriul șablon specific al mesajului, să vedem cum arată notificările push. Dar pentru a continua, trebuie să ne înscriem pentru un cont Braze și să-l conectăm cu Voucherify cu cheia API.

Trimiterea unui cod promoțional prin notificare push cu Braze

Braze (fostă AppBoy) este unul dintre liderii instrumentelor de marketing mobil. Vom folosi doar o fracțiune din capacitățile lor, așa că recomand să le verificăm documentele pentru a afla mai multe despre oferta lor.

Configurarea scenariului nostru necesită 3 pași:

  • Crearea unei campanii de notificare push;
  • Trimiterea codurilor de cupon de la Voucherify la Braze;
  • Configurarea unei notificări push web în aplicația noastră.

Campanie de notificare push

Similar cu Voucherify, Braze poate declanșa unele acțiuni bazate pe modificări în timp real ale atributelor clienților. În acest caz particular, distribuția pe care am creat-o în Voucherify va seta un câmp personalizat completat cu un cod unic din campania de coduri în bloc.

Vom defini campania Braze într-un mod în care detectează această modificare și declanșează o notificare push către o instanță de aplicație la care este conectat un client.

  1. Deschideți Gestionați grupul de aplicații pentru a defini contextul unei aplicații.
  2. Selectați o aplicație web pentru a obține o cheie publică API.
  1. Acum puteți merge la Campanii și puteți crea o nouă campanie de notificare push.
  2. Compuneți un mesaj care să includă codul de cupon {{custom_attribute.${cupon}}}, selectați fila Test și folosiți Trimiteți testul către mine. Dacă permiteți notificarea web, ar trebui să observați un mesaj care alunecă în dreapta sus.
  1. Codul de cupon din mesajul de testare va fi gol, deoarece nu am adăugat acest atribut personalizat niciunui dintre utilizatori. Să salvăm schița campaniei și să creăm manual un utilizator de testare cu codul.

    Creați un fișier CSV simplu după următoarele linii:

{{COD}}

external_id, cupon

[email protected], xyz

{{ENDCODE}}

Și accesați User Import pentru a-l încărca.

  1. Acum că avem datele de testare și opțiunea „Override recipients’ attributes...” bifată, putem vedea variabila înlocuită.
  2. În fila Livrare, schimbați tipul de livrare la unul bazat pe acțiuni și selectați Modificați declanșatorul valorii atributelor personalizate, ca în imaginea de mai jos:
  1. Înscrieți „Toți utilizatorii” în campanie în pasul următor și lăsați alte setări neschimbate. Când sunteți gata, faceți clic pe Lansare campanie în dreapta jos.

Furnizarea lui Braze cu coduri promoționale

Acesta este momentul în care ar trebui să conectăm Voucherify la Braze. Din fericire, Voucherify acceptă Braze cu o integrare nativă. Singurul lucru care rămâne pentru a conecta aceste două platforme de marketing este să accesați Integrations, selectați Braze și furnizați punctul final și cheia API.

Acum puteți redeschide proiectul distribuției noastre și puteți finaliza ultimul pas. Furnizați numele câmpurilor personalizate sub care Voucherify atribuie un cod unic și valoarea acestuia:

Și pune-l live. De acum înainte, de fiecare dată când Radar detectează un eveniment geofence și, prin urmare, actualizează segmentul de clienți, Voucherify va atribui acestui client un cod de cupon și îl va publica în profilul utilizatorului în Braze.

Campania Braze va detecta noua modificare a câmpului și va încerca să trimită o notificare web.

Se primește notificare push

Suntem aproape acolo! Ultimul pas pentru finalizarea lanțului nostru de promovare este să lăsați notificările push să curgă în aplicația noastră.

Ca de obicei, în cazul platformelor fără cap, nu este nevoie să o implementați manual. Braze, ca o adevărată platformă de dezvoltator, oferă un SDK open-source pentru web.

Pentru a-l pune în funcțiune, trebuie să lipiți un scurt fragment și să îl completați cu cheia publică API.

{{COD}}

<script type="text/javascript">

const test_user = {

prenume : „Mike”,

last_name : "Sedzielewski",

e-mail: „[email protected]

}

+funcție(a,p,P,b,y){appboy={};appboyQueue=[];for(var

s="initialize destroy getDeviceId toggleAppboyLogging setLogger

openSession changeUser requestImmediateDataFlush requestFeedRefresh

subscribeToFeedUpdates requestContentCardsRefresh

subscribeToContentCardsActualizări logCardImpressions logCardClick

logCardDismissal jurnalFeedDisplayed jurnalContentCardsDisplayed

logInAppMessageImpression logInAppMessageClick

logInAppMessageButtonClick logInAppMessageHtmlClick

subscribeToNewInAppMessages removeSubscription

removeAllSubscriptions jurnalCustomEvent logPurchase isPushSupported

isPushBlocked isPushGranted isPushPermissionGranted

registerAppboyPushMessages unregisterAppboyPushMessages

submitFeedback trackLocation stopWebTracking resumeWebTracking

wipeData ab.DeviceProperties ab.User ab.User.Genders

ab.User.NotificationSubscriptionTypes ab.User.prototype.getUserId

ab.User.prototype.setFirstName ab.User.prototype.setLastName

ab.User.prototype.setEmail ab.User.prototype.setGender

ab.User.prototype.setDateOfBirth ab.User.prototype.setCountry

ab.User.prototype.setHomeCity ab.User.prototype.setLanguage

ab.User.prototype.setEmailNotificationSubscriptionType

ab.User.prototype.setPushNotificationSubscriptionType

ab.User.prototype.setPhoneNumber ab.User.prototype.setAvatarImageUrl

ab.User.prototype.setLastKnownLocation

ab.User.prototype.setUserAttribute

ab.User.prototype.setCustomUserAttribute

ab.User.prototype.addToCustomAttributeArray

ab.User.prototype.removeFromCustomAttributeArray

ab.User.prototype.incrementCustomUserAttribute

ab.User.prototype.addAlias

ab.User.prototype.setCustomLocationAttribute

ab.InAppMessage ab.InAppMessage.SlideFrom ab.InAppMessage.ClickAction

ab.InAppMessage.DismissType ab.InAppMessage.OpenTarget

ab.InAppMessage.ImageStyle ab.InAppMessage.TextAlignment

ab.InAppMessage.Orientation ab.InAppMessage.CropType

ab.InAppMessage.prototype.subscribeToClickedEvent

ab.InAppMessage.prototype.subscribeToDismissedEvent

ab.InAppMessage.prototype.removeSubscription

ab.InAppMessage.prototype.removeAllSubscriptions

ab.InAppMessage.Button

ab.InAppMessage.Button.prototype.subscribeToClickedEvent

ab.InAppMessage.Button.prototype.removeSubscription

ab.InAppMessage.Button.prototype.removeAllSubscriptions

ab.SlideUpMessage ab.ModalMessage ab.FullScreenMessage

ab.HtmlMessage ab.ControlMessage ab.Feed

ab.Feed.prototype.getUnreadCardCount ab.ContentCards

ab.ContentCards.prototype.getUnviewedCardCount ab.Card

ab.ClassicCard ab.CaptionedImage ab.Banner ab.ControlCard

ab.WindowUtils afișează display.automaticallyShowNewInAppMessages

display.showInAppMessage display.showFeed display.destroyFeed

display.toggleFeed display.showContentCards display.hideContentCards

display.toggleContentCards sharedLib".split("

"),i=0;i<s.lungime;i++){for(var

m=s[i],k=appboy,l=m.split("."),j=0;j<l.lungime-1;j++)k=k[l[j]];k[l[ j]

]=(funcție nouă ("funcție de returnare

"+m.replace(/\./g,"_")+"(){appboyQueue.push(argumente); întoarcere

adevărat}"))()}appboy.getUser=funcție(){întoarce nou

appboy.ab.User};appboy.getCachedFeed=funcție(){întoarce nou

appboy.ab.Feed};appboy.getCachedContentCards=funcție(){revenire nou

appboy.ab.ContentCards};(y=p.createElement(P)).type='text/javascript

';y.src='https://js.appboycdn.com/web-sdk/2.3/appboy.min.js';y.async

=1;(b=p.getElementsByTagName(P)[0]).parentNode.insertBefore(y,b)}(wi

ndow,document,'script');

appboy.initialize('YOUR_KEY', {baseUrl:

„https://sdk.iad-03.braze.com/api/v3”});

appboy.toggleAppboyLogging();

appboy.registerAppboyPushMessages()

appboy.changeUser("[email protected]");

appboy.display.automaticallyShowNewInAppMessages();

appboy.openSession();

</script>

{{ENDCODE}}

Și înregistrați un service-worker.js:

{{COD}}

self.importScripts('https://js.appboycdn.com/web-sdk/2.3/service-worker.js');

{{ENDCODE}}

Când este în vigoare, rulați un alt test cu utilizatorul „text@example” în intrarea „Adăugați utilizatori individuali”. Aplicația dvs. ar trebui să primească o notificare cu codul promoțional „xyz”.

Acum, să testăm dacă campania declanșează un mesaj push atunci când modificați câmpul cuponului .

În primul rând, asigurați-vă că campania dvs. este activă și că aplicația web este lansată. În al doilea rând, descărcați colecția Braze Postman, deschideți catalogul de date utilizator și selectați Urmărirea utilizatorului - Exemplu de atribute. (Dacă nu îl cunoașteți pe Postman, puteți ajunge din urmă aici)

Schimbați URL-ul punctului final cu cel căruia sunteți alocat, în cazul meu este: https://rest.iad-03.braze.com/

Și sarcina utilă a cererii la:

{{COD}}{

"api_key":"CHEIA_VOASTRĂ",

"atribute":[

{

"external_id":"[email protected]",

"cupon":"123"

}

]

} {{ENDCODE}}

Trimiteți solicitarea și așteptați un alt mesaj cu codul de cupon actualizat.

Testarea tuturor blocurilor fără cap

Pentru a vă asigura că fluxul de lucru face ceea ce v-am cerut, deschideți aplicația și utilizați senzorul pentru a „localiza” un alt loc și apoi înapoi la geofence. În câteva secunde, ar trebui să vedeți notificarea personalizată pe ecran!

Acum utilizatorul își poate lua codul și îl poate pune în cutia de cupoane validată de Voucherify pe backend.

Să rezumăm aici câștigurile platformelor fără cap:

  • Într-o oră și ceva, am livrat o soluție de lucru pentru un scenariu de afaceri destul de complex.
  • Baza de cod este foarte scurtă și simplă - ceea ce se traduce printr-o mai puțină sarcină de întreținere.
  • Deși nu avem control 100% asupra soluției, aceasta este încă deschisă pentru personalizare datorită accesului API.
  • Lipsa proprietății depline este echilibrată cu sprijinul din partea echipelor vânzătorilor și o mai bună calitate a instrumentelor.
  • Cu webhook-uri și instrumente precum Zapier, conectați și împletește diverse departamente și sisteme în cel mai scurt timp.

Un lucru la care trebuie să acordați atenție atunci când utilizați mai mulți furnizori SaaS este soluția de rezervă. Uneori, o platformă este defectă și trebuie să instruiți sistemul cum să reacționeze - de exemplu, cum să stocați și să puneți în coadă acțiunile. Cu toate acestea, platformele prietenoase pentru dezvoltatori expun interfețe pe care le puteți utiliza pentru a le monitoriza disponibilitatea API-ului și a reacționa la timp.

Pe de altă parte, fallback-urile super robuste nu sunt necesare pentru aplicațiile în etapa POC până la urmă.

Cum mă poate ajuta abordarea fără cap?

Pe scurt, învățând cum poți folosi platformele fără cap pentru a construi ceva de valoare rapid și cu costuri reduse, vei deveni mai valoros pe piața muncii.

Nu limbajele de programare sau cadrele reprezintă avantajul competitiv în prezent. Este adesea destul de diferit - este modul în care companiile pot folosi instrumentele disponibile pentru a-și rezolva problemele cu cea mai mică cantitate posibilă de cod. Cu alte cuvinte, acestea sunt lucrurile care contează mai mult decât stăpânirea unei anumite stive tehnologice sau stive:

  • Să știi cum să reducă timpul de lansare pe piață;
  • Prezentare generală a tehnicilor de reducere a costurilor de întreținere;
  • Capacitatea de a reduce dependențele de tehnologii individuale;
  • Prezentare generală a tehnologiilor actuale care sprijină cele trei de mai sus.

Unde să cauți mai multe platforme de comerț fără cap?

Un bun punct de plecare poate fi această listă:

Promoții

  • Voucherify
  • Giftbit
  • Vauchar

Catalog și inventar

  • Recombee
  • Channelape
  • Cristaliza

Cart

  • Snipcar
  • Foxy

Plată

  • Dunga
  • Datorită
  • Pătrat

Mesaje

  • Strat
  • Împingător
  • Pubnum

Rezervări și evenimente

  • Timekit
  • Ingresso

livrare

  • Shippo
  • Shipcloud
  • Lob

General

  • Elastic
  • Snipcar
  • Moltin
  • OrderCloud
  • Instrumente de comerț

Dar dacă doriți să mergeți dincolo de comerțul electronic fără cap, vă sugerez să vizitați https://www.programmableweb.com și să explorați. O altă modalitate de a vă începe cercetarea este să răsfoiți integrările Zapier.

Încă o alta este să accesați rețeaua Postman API.

Resurse:

Cod sursă demonstrativ pe glitch