O tranzacție de vânzare este o operațiune de plată de bază care transferă o anumită sumă din contul bancar al titularului cardului în contul comerciantului.
În ceea ce privește procesul de plată, procedura este următoarea:
Conectare și autentificare
Autentificarea cu jetonul JWT este necesară pentru toate punctele finale nepublice. Jetonul (cu o durată de viață de 90 de zile) este obținut prin intermediul punctului final /cloud/oauth/token, cu următoarele argumente furnizate:
- Autentificarea de bază pentru punctele finale cu token (nume/parolă) - va fi furnizată pentru fiecare utilizator.
- Numele de utilizator Trader - același ca pentru GP tom
- Parola Trader - aceeași ca pentru GP tom
- ID terminal (TID) - ID al terminalului de destinație
- Punctul final de autorizare este situat la:
Această metodă de autentificare este aceeași pentru toate terminalele.
Obținerea unui jeton de acces
Exemplu de cerere:
POST {{apiCloudHost}}/cloud/oauth/token
Autorizare: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: application/x-www-form-urlencoded
(Autorizația și tipul de cont sunt întotdeauna aceleași pentru toți clienții - vă rugăm să utilizați aceleași date ca în exemplu. Trebuie să introduceți ulterior datele unice ale clientului în grant_type).
grant_type=password&username=jan.novak@example.com&password=ABCDEFGHIJKL&tid=999888
Exemplu de răspuns:
{
"access_token": "eyJh...", // token de acces utilizat în cererile API autentificate
"token_type": "bearer",
"refresh_token": "GciO...",
"expires_in": 3600,
"scope": "read write",
"tid": "999888",
}Reînnoirea unui jeton
Atunci când access_token expiră, este disponibil un refresh_token.
Exemplu de cerere:
POST {{apiHost}}/api/oauth/token
Autorizare: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token&refresh_token=GciO...
GPTomAuth
Crearea unui sac
Apelați la punctul final POST /v1/tasks/TRANSACTION și utilizați CreateCloudTaskTransactionApiRequest cu următoarele informații completate pentru a crea cererea:
OBLIGATORIU
OBLIGATORIU
OBLIGATORIU
OBLIGATORIU
Exemplu: „Factura 37364FD“
Adevărat dacă chitanța urmează să fie imprimată pe dispozitiv.
Notă: Pentru telefoanele mobile, trebuie să vă asigurați că imprimanta Bluetooth este conectată.
OBLIGATORIU
OBLIGATORIU
Valori posibile: [ LAST_TRANSACTION, OLDER_TRANSACTION ]
OBLIGATORIU
Pokud se nastaví true, tak se nejdříve vyvolá obrazovka zadání spropitného v GP tom.
Pro vyvolání této obrazovky je potřeba mít také aktivované spropitné v aplikaci
Conținutul [CloudTaskDetailApiResponse]:
Codurile de răspuns posibile sunt:
Mai jos sunt prezentate variabilele utilizate în răspuns:
Verificați starea sacului
În etapa următoare, veți verifica starea sarcinii la punctul final GET /v1/tasks/{taskID} utilizând o cerere care include:
Coduri de retur posibile:
Variabile de răspuns:
Solicitarea privind starea sacului trebuie repetată până când obțineți unul dintre codurile finale de răspuns, care sunt:
Puteți trece la pasul următor numai dacă răspunsul este în starea COMPLETAT.
Obținerea rezultatului plății
Acum știm că tranzacția a fost autorizată. Scopul acestei etape este de a obține starea și detaliile tranzacției. Pentru noua cerere, veți apela endpoint-ul GET /v1/transactions/{transactionId} utilizând următoarele variabile:
Codurile de răspuns posibile sunt:
Răspunsul conține următoarele variabile, în funcție de codul de răspuns:
ACCEPTED - transakce byla úspěšně autorizována
DECLINED - transakce byla zamítnuta z nějakého důvodu
CANCELLED - pokud je transakce zrušena obsluhou nebo zákazníkem
Operațiune / tip de tranzacție."
EN: Indică starea DCC. Dacă apare "ACCEPTED", tranzacția a fost efectuată prin DCC și trebuie să completați chitanța cu datele DCC. Dacă apare "NOT_ACCEPTED", puteți ignora datele DCC.
NOT_ACCEPTED
EN: Valoarea tranzacției în moneda DCC – în moneda cardului clientului. Trebuie să o indicați pe chitanță exact așa cum a fost primită prin răspunsul API, inclusiv cu zecimalele corecte.
EN: Moneda cardului clientului.
EN: Indică cursul de schimb. Această valoare este exprimată în moneda locală a terminalului. Trebuie să o prezentați pe chitanță exact așa cum a fost primită prin răspunsul API, inclusiv cu zecimalele corecte.
EN: Indicatorul ratei de conversie. Trebuie să îl prezentați pe chitanță exact așa cum a fost primit prin răspunsul API, inclusiv cu zecimalele corecte.
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
Pokud budete účtenku generovat nebo tisknout na své straně, doporučujeme zkontrolovat, která pole jsou povinná a musí být vytištěna/zobrazena na účtence. Popis je k dispozici zde.
