Informacje
W przypadku wywołania anulowania za pośrednictwem Cloud API należy utworzyć zadanie dla urządzenia (TID), na którym pierwotnie dokonano płatności. Wywołanie cofnięcia płatności dokonanej na terminalu "A" na terminalu "B" nie jest obecnie obsługiwane.
Transakcja anulowania to podstawowa operacja płatnicza, która umożliwia anulowanie wcześniej przetworzonej transakcji do 93 dni od pierwotnej transakcji. Anulowania transakcji można dokonać bez karty klienta - środki zostaną automatycznie zwrócone na kartę użytą do pierwotnej transakcji sprzedaży.
Logowanie i uwierzytelnianie
Uwierzytelnianie tokenem JWT jest wymagane dla wszystkich niepublicznych punktów końcowych. Token (o okresie ważności 90 dni) jest uzyskiwany za pośrednictwem punktu końcowego /cloud/oauth/token z następującymi argumentami:
- Podstawowe uwierzytelnianie dla punktów końcowych tokena (nazwa/hasło) - zostanie zapewnione dla każdego użytkownika.
- Nazwa użytkownika tradera - taka sama jak w przypadku GP Tom
- Hasło tradera - takie samo jak w przypadku GP Tom
- Identyfikator terminala (TID) - identyfikator terminala docelowego
- Punkt końcowy autoryzacji znajduje się pod adresem:
Uzyskiwanie tokenu dostępu
Przykładowe żądanie:
POST {{apiCloudHost}}/cloud/oauth/token
Authorization: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: application/x-www-form-urlencoded
grant_type=password&username=jan.novak@example.com&password=ABCDEFGHIJKL&tid=999888
Przykładowa odpowiedź:
{ "access_token": "eyJh…", // access token used in authenticated API requests "token_type": "bearer", "refresh_token": "GciO…", "expires_in": 3600, "scope": "read write", "tid": "999888", }
Odnawianie tokena
Po wygaśnięciu access_token dostępny jest refresh_token.
Przykładowe żądanie:
POST {{apiHost}}/api/oauth/token
Authorization: Basic YXRvbTphc2hmdWY0ZTVmYQ==
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token&refresh_token=GciO…
GPTomAuth
Tworzenie torby
Wywołaj punkt końcowy POST /v1/tasks/TRANSACTION i użyj CreateCloudTaskTransactionApiRequest z wypełnionymi następującymi informacjami, aby utworzyć żądanie:
OBOWIĄZKOWE
OBOWIĄZKI
OBOWIĄZKI
OBOWIĄZKOWE
OBOWIĄZKOWE
OBOWIĄZKOWE
OBOWIĄZKOWE
Przykład: "Faktura 37364FD płatność"
True, jeśli paragon ma zostać wydrukowany na urządzeniu.
Uwaga: W przypadku telefonów komórkowych należy upewnić się, że drukarka Bluetooth jest podłączona.
LAST_TRANSACTION - używane tylko dla wcześniej autoryzowanej transakcji. Pomiędzy tym zadaniem a poprzednim zadaniem sprzedaży nie może być żadnego innego żądania.
OLDER_TRANSACTION - używane dla wszystkich starszych transakcji z wyjątkiem ostatniej transakcji.
Treść odpowiedzi [CloudTaskDetailApiResponse]:
Możliwe kody odpowiedzi to:
Poniżej znajdują się zmienne użyte w odpowiedzi:
Sprawdź stan torby
V dalším kroku budete kontrolovat stav tasku na koncovém bodu GET /v1/tasks/{taskID} pomocí požadavku, který zahrnuje:
Możliwe kody zwrotne:
Zmienne odpowiedzi:
Zapytanie o stan torby należy powtarzać aż do uzyskania jednego z końcowych kodów odpowiedzi, którymi są:
Możesz przejść do następnego kroku tylko wtedy, gdy odpowiedź jest w stanie COMPLETED.
Uzyskanie wyniku płatności
Nyní víme, že transakce byla autorizována. Cílem tohoto kroku je získat stav transakce a detaily transakce. Pro nový požadavek zavoláte koncový bod GET /v1/transactions/{transactionId}, kde použijete následující proměnné:
Możliwe kody odpowiedzi to:
Odpowiedź zawiera następujące zmienne w zależności od kodu odpowiedzi:
ACCEPTED - transakcja została pomyślnie autoryzowana
DECLINED - transakcja została odrzucona z jakiegoś powodu
CANCELLED - jeśli transakcja została anulowana przez operatora lub klienta
Typ operacji / transakcji".
Jeśli będziesz generować lub drukować paragon po swojej stronie, zalecamy sprawdzenie, które pola są obowiązkowe i muszą być drukowane/wyświetlane na paragonie. Opis jest dostępny tutaj.