Ghid complet de configurare Tomra
Introducere
Pentru a facilita integrarea echipamentelor Tomra utilizate în procesul de returnare a ambalajelor (SGR), Nexus permite crearea automată a tichetelor valorice în modulul Prepay/Vouchere.
Cerințe preliminare
În vederea configurării celor două platforme, sunt necesare următoarele:
1. Acces în platforma developer.tomra.cloud - datele de conectare sunt transmise de către reprezentanții Tomra.
2. Domeniu sau subdomeniu și certificat SSL disponibil (fără să fie activat; va fi activat pe baza unui CSR obținut la Server).
3. Port API HTTPS deschis pe IP-ul serverului Nexus (exceptie in Firewall + port forward in router).
I. Configurarea unui DNS
DNS-ul este o necesitate condiționată de Tomra, acesta este folosit în loc de IP-ul extern al serverului, iar, în anumite situații, poate fi mai greu de determinat modul corect de configurare.
De aceea, mai jos este o prezentare pe larg a pașilor de urmat în funcție de caz:
Cazul 1 - Societatea deține un domeniu, însă acesta este folosit în alte scopuri: site de prezentare/magazin online/blog etc.
În acest caz, se poate crea un subdomeniu din cPanel.
Așadar, primul pas este să accesăm cPanel-ul aferent site-ului. De aici, mergem către secțiunea Domains și accesăm Domains:

Apăsăm pe Create A New Domain:

Completăm denumirea subdomeniului (de ex.: domeniu principal magazinul.ro, atunci subdomeniul poate fi sgr.magazinul.ro) și apăsăm pe Create.
Revenim apoi în zona de Domains și selectăm Zone Editor:

În dreptul subdomeniului, mergem pe butonul Manage

Identificăm linia pe numele subdomeniului (ex.: sgr.magazinul.ro), de tip A și apăsăm Edit pentru modificarea valorii (IP-ului) din câmpul Record. Aici se va completa IP-ul extern al serverului Nexus.

Pentru a verifica dacă DNS-ul adăugat redirecționează către IP-ul serverului, putem accesa, de ex.: whatsmydns.net.
Cazul 2 - Societatea nu deține un domeniu.
În cazul acesta, se va apela la orice furnizor de servicii de găzduire web în vederea achiziționării unui pachet de host + domeniu.
După activarea domeniului și a pachetului de găzduire, accesăm cPanel și urmăm aproximativ aceeași pași ca la punctul a., și anume: modificarea în Zone Editor a valorii IP din dreptul liniei de tip A aferente numelui de domeniu.
Dacă nu se dorește utilizarea site-ului în alte scopuri, atunci nu este necesară configurarea unui subdomeniu.
Un ultim pas în zona de cPanel este adăugarea unei adrese email de forma admin@magazinul.ro.
II. Obținerea unui certificat SSL
Tomra solicită conexiune securizată (http s), iar pentru acest lucru trebuie să activăm un certificat de securitate pe serverul Nexus (unde este redirecționat domeniul configurat anterior).
Primul pas constă în înregistrarea unui CSR pe baza documentației de aici la server.
Apoi accesăm contul de client de pe site-ul de hosting, mergem pe pagina certificate SSL și selectăm certificatul achiziționat:

În zona de configurare CSR selectăm Certificat Nou, Microsoft IIS 7. and later, apoi introducem CSR-ul în câmpul dedicat acestuia. După completare, apăsăm pe Validați codul CSR.

În următoarea pagină alegem adresa de email din lista presetată (doar la acele adrese se poate transmite validarea SSL-ului, iar, oricare ar fi adresa pe care o selectăm, aceasta trebuie să existe deja).

Verificăm informațiile și finalizăm generarea certificatului SSL.

Pe adresa de email admin@magazinul.ro va veni un email care conține un cod de confirmare emitere certificat. Ulterior confirmării, pe adresa de email din contul client va veni certificatul.
Certificatul SSL va trebui instalat la server, pașii detaliați aici.
III. Setări în platforma Tomra
Ne conectăm în platformă cu datele obținute de la reprezentantul Tomra. Mergem pe Webhooks și adăugăm URL de forma: https://domeniu_client.ro:55301/api/v3/webhook/tomra_import_voucher. Setăm webhook-ul active, apoi la Select events to listen to bifăm tomra.consumersession.received și apăsăm pe Save.

După adăugare vom primi o cheie secretă pe care trebuie să o salvăm întrucât va fi utilizată mai târziu.
IV. Setări în Nexus
Pentru legătura API cu Tomra avem nevoie de următoarele:
a. User nou - mergem în modulul Nomenclatoare -> Administrare -> Utilizatori și adăugăm un utilizator nou cu drepturi de modificare pe Prepay/Vouchere.

b. Webhook API - mergem în modulul Nomenclatoare -> Administrare -> Aplicații online și adăugăm o nouă aplicație. Setăm o denumire, alegem aplicația: Nexus Aplicații Externe Online, iar din listă alegem utilizatorul creat și apăsăm pe OK.

Deschidem aplicația, accesăm tabela Endpoints, iar aici apăsăm pe butonul Adaug.
În fereastra deschisă completăm cu o denumire specifică, de ex.: „Tomra” sau „Notificări Tomra”, apoi în dreptul Endpoints scriem v3/webhook/tomra_import_voucher, pentru Autentificare selectăm hmac_sha256, iar la Parametru 1 scriem cheia secretă obținută la adăugarea webhook-ului în platforma Tomra. Bifăm căsuța pentru Activ și apăsăm pe butonul Salvez.

c. Opțiuni Prepay/Voucher - mergem în modulul Ieșiri -> Management vânzări -> Prepay/Vouchere, iar în partea dreaptă a modulului, în Opțiuni, setăm contul și articolul generic pentru garanția SGR și prefixul codului de bare (implicit: 98).
În final, efectuăm un restart asupra serviciului Nexus API și facem un test cu un ambalaj la dispozitivul Tomra. Această acțiune va crea un eveniment în platforma Tomra care va trimite mai departe către Nexus un voucher.
