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
Authorization: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: application/x-www-form-urlencoded
(Authorization a Contect-Type je pro všechny zákazníky vždy stejný – použijte prosím stejné údaje jako v příkladu. Do grant_type je potřeba následně vložit unikátní údaje klienta).
grant_type=password&username=jan.novak@example.com&password=ABCDEFGHIJKL&tid=999888
Primjer odgovora:
{
"access_token": "eyJh…", // access token used in authenticated API requests
"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
Authorization: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: 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
Možné hodnoty: [ 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: Indicates the DCC status. If "ACCEPTED", the transaction was made via DCC and you must fill in the receipt with DCC data. If "NOT_ACCEPTED", then you can ignore the DCC data.
NOT_ACCEPTED
EN: Transaction amount in DCC currency - in the currency of the customer's card. You must present it on your receipt exactly as received through API response including correct decimal numbers.
EN: Currency of the customer's card.
EN: Indicates the exchange rate. This value is in the local terminal currency. You must present it on your receipt exactly as received through API response including correct decimal numbers.
EN: Markup for the conversion rate. You must present it on your receipt exactly as received through API response including correct decimal numbers.
EN: Indicates whether the customer's card was issued within the EU or outside. If the value is "0" or 1", the text "Markup" needs to be displayed on the receipt. If the value is "2", the text "Markup over ECB rate" needs to be displayed on the receipt.
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.
