Prodajna transakcija je osnovna platna operacija koja osigurava prijenos određenog iznosa s bankovnog računa korisnika kartice na račun trgovca.
Što se tiče postupka plaćanja, postupak je sljedeći:
Prijava i autentifikacija
Sve nejavne krajnje točke zahtijevaju autentifikaciju pomoću JWT tokena. Token (s vijekom trajanja od 90 dana) možete dobiti putem krajnje točke /cloud/oauth/token sa sljedećim argumentima:
- Osnovna autentifikacija za krajnje točke tokena (ime/lozinka) – bit će osigurana za svakog korisnika.
- Korisničko ime trgovca – isto kao i za GP tom
- Lozinka trgovca – ista kao i za GP tom
- ID terminala (TID) – ID ciljnog terminala
- Krajnja točka autorizacije nalazi se na:
Ova metoda autentifikacije je ista za sve terminale.
Dobivanje pristupnog tokena
Primjer zahtjeva:
POST {{apiCloudHost}}/cloud/oauth/token
Ovlaštenje: Osnovni YXRvbTphc2hmdWY0ZTVmYQ==
Tip sadržaja: application/x-www-form-urlencoded
(Autorizacija i tip sadržaja uvijek su isti za sve korisnike – molimo upotrijebite iste podatke kao u primjeru. Zatim ćete morati unijeti jedinstvene podatke klijenta u polje 'grant_type'.).
grant_type=password&username=jan.novak@example.com&password=ABCDEFGHIJKL&tid=999888
Primjer odgovora:
{
"access_token": "eyJh…", // pristupni token koji se koristi u provjerenim API zahtjevima
"token_type": "bearer",
"refresh_token": "GciO…",
"expires_in": 3600,
"scope": "read write",
"tid": "999888",
}Oporavak tokena
Nakon isteka access_tokena, dostupan je refresh_token.
Primjer zahtjeva:
POST {{apiHost}}/api/oauth/token
Ovlaštenje: Osnovni YXRvbTphc2hmdWY0ZTVmYQ==
Tip sadržaja: application/x-www-form-urlencoded
grant_type=refresh_token&refresh_token=GciO…
GPTomAuth
Izrada zadatka
Pozovite POST krajnju točku /v1/tasks/TRANSACTION i upotrijebite CreateCloudTaskTransactionApiRequest sa sljedećim popunjenim podacima za stvaranje zahtjeva:
OBAVEZNO
OBAVEZNO
OBAVEZNO
OBAVEZNO
Primjer: "Dostavnica 37364FD"
True, ako račun treba ispisati na uređaju.
Napomena: Za mobilne telefone morate provjeriti je li Bluetooth pisač spojen.
OBAVEZNO
OBAVEZNO
Moguće vrijednosti: [ LAST_TRANSACTION, OLDER_TRANSACTION ]
OBAVEZNO
Ako je postavljeno na true, prvo će se pozvati zaslon za unos savjeta u GP tom.
Da biste pozvali ovaj zaslon, morate omogućiti i savjete u aplikaciji.
Sadržaj odgovora [CloudTaskDetailApiResponse]:
Mogući kodovi odgovora su:
U nastavku možete pronaći varijable korištene u odgovoru:
Moguće vrijednosti: [TRANSACTION, BATCH, VOID]
Provjera statusa zadatka
U sljedećem koraku provjerit ćete status zadatka na krajnjoj točki GET /v1/tasks/{taskID} koristeći zahtjev koji uključuje:
Mogući povratni kodovi:
Varijable u odgovoru:
Zahtjev za status zadatka treba ponavljati dok se ne dobije jedan od konačnih kodova odgovora, a to su:
Možete prijeći na sljedeći korak samo ako je odgovor u statusu COMPLETED.
Dobijte rezultat plaćanja
Sada znamo da je transakcija autorizirana. Cilj ovog koraka je dobiti status transakcije i detalje transakcije. Za novi zahtjev, pozvat ćete GET krajnju točku /v1/transactions/{transactionId}, gdje ćete koristiti sljedeće varijable:
Mogući kodovi odgovora su:
Odgovor sadrži sljedeće varijable ovisno o kodu odgovora:
ACCEPTED - transakcija je uspješno autorizirana
DECLINED - transakcija je iz nekog razloga odbijena
CANCELLED - ako je transakciju otkazao operater ili korisnik
Vrsta operacije/transakcije.
EN: Označava status DCC-a. Ako je "ACCEPTED", transakcija je obrađena putem DCC-a i morate unijeti detalje DCC-a na računu. Ako je "NOT_ACCEPTED", detalje DCC-a možete zanemariti.
NIJE PRIHVATLJIVO
EN: Iznos transakcije u DCC valuti – u valuti kartice kupca. To morate prikazati na računu točno onako kako ste ga primili putem API odgovora, uključujući ispravan broj decimalnih mjesta.
EN: Valuta kartice kupca.
EN: Označava tečaj. Ova vrijednost je u lokalnoj valuti terminala. Morate je prikazati na računu točno onako kako ste je dobili u API odgovoru, uključujući ispravan broj decimalnih mjesta.
EN: Marža za stopu konverzije. Morate je prikazati na svom računu točno onako kako ste je dobili u odgovoru API-ja, uključujući ispravan broj decimalnih mjesta.
EN: Pokazuje je li kartica kupca izdana unutar EU ili izvan nje. Ako je vrijednost "0" ili "1", na računu se mora prikazati tekst "Dodatna marža". Ako je vrijednost "2", na računu se mora prikazati tekst "Marža iznad stope ECB-a".
1
2
Ako ćete sami generirati ili ispisati račun, preporučujemo da provjerite koja su polja obavezna i moraju se ispisati/prikazati na računu. Opis je dostupan ovdje.
