Modalitatea de apelare a metodei SaveCustomer

<< Click pentru afișare cuprins >>

Navigare:  SmartCash Everywhere REST Server > Studii De Caz >
Integrare SmartCash RMS cu aplicatii externe generatoare de clienti Fidelizabili
 >

Modalitatea de apelare a metodei SaveCustomer

La apelarea metodei REST se va tine cont de toate conventiile descrise in cadrul capitolului 2 din manualul API-ului JSON SmartCash RMS.

 

Sintaxa de apel este de exemplu in cazul unui server ce functioneaza la un port standard 443 HTTPS:

https://<SmartCashEverywhereRESTServer>/everywhere/rest/TSmartCashMethods/SaveCustomer/<aIDAPP>/< aJSONObject >

unde sectiunea “/everywhere/rest/TSmartCashMethods/” este fixa de fiecare data. In cazul in care este un port nestandard acesta se va adauga cu :8080 de exemplu la numele serverului.

 

Fiind o metoda de scriere, metoda SaveCustomer trebuie apelata folosind POST (vezi instructiuni manual API).

 

Parametri Apel

Parametru

Descriere

Tip Date

aIDAPP

ID unic alocat aplicatiei care se conecteaza la serverul REST SmartCash

Integer

aJSONObject

Parametru formatat JSON, cu o sintaxa fixa (vezi exemplu), prin care sunt furnizate toate campurile necesare pentru un client.

TJSONObject

 

Parametrul intreg al metodei aIDAPP, este totdeauna campul <ID Aplicatie> din setarile aplicatiei de la pct. 1.

 

Parametrul aJSONObject ce trebuie transmis prin metoda si care contine datele clientului respectiv trebuie sa includa minim urmatoarele campuri explicate in continuare (consultati manualul pentru celelalte campuri ce pot varia in functie de implementarea dvs. proprie):

 

Camp

Descriere

Camp Obligatoriu

Tip Date

IDSMARTCASH

In cazul unui client adugat de la o aplicatie terta de fidelizare acest camp este totdeauna gol sau nu este furnizat deloc in JSON.

NU

Integer

IDEXTAPP

Codul clientului in sistemul extern. Trebuie totdeauna furnizat si reprezinta cheia interna primara a clientului in sistemul tert. In cazul unei retransmiteri este utilizat pentru modificarea unui client deja mapat dupa acelasi cod.

DA

String

EMAIL

Adresa de e-mail a clientului.

DA

String

IDCUSTOMER_TYPE

Codul de categorie salvat din setari, echivalentul campului <Cod Categorie Clienti>. Trebuie obligatoriu sa aiba o valoare

DA

Integer

LISTED

Totdeauna trebuie sa aiba valoarea 1 pentru un client nou adaugat. Daca aplicatia terta implementeaza vreun mecanism de dezactivare a clientilor in functie de reguli proprii, ce trebuiesc replicate si in Smartcash atunci clientul se va transmite cu acest camp pe valoarea 0.

DA

Integer

FIRSTNAME

Prenumele persoanei de contact fidelizate.

DA

String

LASTNAME

Numele de familie al persoanei de contact fidelizate.

DA

String

TOWN

Optional: Localitatea. Daca este disponibil.

NU

String

STREET

Optional: Strada. Daca este disponibil.

NU

String

STREET_NUMBER

Optional: Numarul Postal. Daca este disponibil.

NU

String

AP_BUILDING

Optional: Nr. Bloc. Daca este disponibil.

NU

String

ENTRANCE

Optional: Scara. Daca este disponibil.

NU

String

FLOOR

Optional: Etajul. Daca este disponibil.

NU

String

AP

Optional: Nr. Apartament. Daca este disponibil.

NU

String

COUNTY

Optional: Judetul. Daca este disponibil.

NU

String

POSTALCODE

Optional: Cod Postal. Daca este disponibil.

NU

String

DISTRICT

Optional: Sectorul (doar pentru Bucuresti)

NU

String

DATEOFBIRTH

Optional: Data Nasterii pentru persoana de contact. Daca este disponibil.

NU

Data

FACEBOOK_ID

Optional: ID Facebook. Daca e disponibil.

NU

String

IDSUPPLIERCARD

Codul SmartCash al Furnizorului de Fidelizare. Echivalentul campului <ID Furnizor Fidelizare> din optiuni.

NU

Integer

CARD

Codul de card de fidelizare al clientului generat in sistemul tert.

NU

String

IDFIDELITY_PROGRAM

ID-ul programului de fidelizare. Corespunde campului <Cod Program Fidelizare SmartCash>  din optiunile de la pct. 1.

NU

Integer

 

Exemplu de formatare pentru parametrul aJSONObject al metodei SaveCustomer pornind de la valorile de exemplu din aceasta documentatie:

 

{"IDEXTAPP":"AVTE1098",

"FIRSTNAME":"IOANA",

"LASTNAME":"VASILESCU",

"TOWN":"Bucuresti",

"PHONE":"0754887889",

"EMAIL":"email@noemail.ro",

"STREET":"str. Lacramioareleor",

"STREET_NUMBER":"102 Bis",

"COUNTY":"Bucuresti",

"IDCUSTOMER_TYPE":15,

"IDFIDELITY_PROGRAM":36,

"IDSUPPLIERCARD":1255,

"CARD":"5500000001007",

"LISTED":1}

 

Campuri JSON intoarse in caz de aplicare cu succes a metodei

Camp

Descriere

Tip Date

IDSMARTCASH

Codul unic al clientului in sistemul SmartCash.

Integer

IDEXTAPP

Codul clientului in sistemul extern (si transmis prin interfata la apelul metodei).

String

 

Exemplu JSON returnat in caz de succes:

{"result":{"IDEXTAPP":"AVTE1098","IDSMARTCASH":5,"RETURN":true}}

 

 

Exemplu JSON returnat in caz de eroare:

{"error":"invalid IDEXTAPP"}

 

 

Observatie importanta!

 

Exemplul din acest capitol este unul minimal si trebuie completat cu toate campurile disponibile a fi transmise prin interfata, conform manualului API. In functie de arhitectura aplicatiei terte pot fi transmise si date legate de companii, persoane juridice, sau date de facturare.