Uwaga
Aby uzyskać szczegółowe informacje o transakcji, należy wysłać zapytanie wyłącznie za pomocą żądania Inquiry:
TransactionInquire(String transactionId, IInquireResultListener listener) throws RemoteException
Po otrzymaniu identyfikatora transakcji Twoja aplikacja powinna wygenerować i wysłać żądanie transakcji. Aplikacja płatnicza uruchomi cały proces płatności i zwróci wynik. W starszych wersjach (poniżej wersji 1.2) do uzyskania wyniku transakcji wykorzystywano komunikację synchroniczną (funkcja nasłuchiwania jest przestarzała). W nowej wersji komunikacja ma charakter asynchroniczny, a do uzyskania aktualnego stanu transakcji służy metoda getTransactionState.
void transactionRequestV2(String transactionRequestJsonString, ITransactionResultListener listener) throws RemoteException
Żądanie [TransactionRequestV2Entity]
W zależności od rodzaju transakcji poniższe pola są obowiązkowe/nieobowiązkowe/opcjonalne:
[(M) obowiązkowe, (O) opcjonalne)]
KARTA
ACCOUNT_PAYMENT
BLIK_PŁATNOŚĆ
PAYMENT_GATEWAY
Uwaga
Wszystkie kwoty należy podawać z dokładnością do dwóch miejsc po przecinku, więc na przykład 50 Kč należy wpisać jako 5000.
Opis pól
kwota
Kwota określa wartość transakcji. Kwota ta jest obliczana w walucie krajowej używanej przez terminal. Format obejmuje dwa miejsca po przecinku, więc na przykład 50 Kč należy wpisać jako 5000.
TipAmount
W restauracjach można poprosić klienta o dodanie napiwku, jeśli w systemie jest on już uwzględniony. Kwota ta zostanie następnie dodana do pierwotnej kwoty wprowadzonej przez sprzedawcę.
transactionID
Unikalny identyfikator generowany przez aplikację płatniczą podczas rejestracji transakcji.
clientID
transactionType
Typ transakcji określa rodzaj transakcji, którą chcesz zainicjować. Dostępne wartości to:
- WYPRZEDAŻ(1)
- VOID(2)
- REFUND(3) – od wersji 1.75.4, AIDL 1.28
- CLOSE_BATCH(4)
originTransactionID
Służy do anulowania transakcji i powinien zawierać identyfikator transakcji, którą chcesz anulować.
originReferenceNum
To pole jest opcjonalne i można w nim wpisać numer referencyjny – dowolny ciąg znaków AN o długości maksymalnie 20 znaków. Ciąg ten jest widoczny we wszystkich zestawieniach transakcji i pomaga działom księgowości w przyporządkowaniu płatności do zamówień. Znaki diakrytyczne nie są obsługiwane.
tryb anulowania
2 – Starsze transakcje
printByPaymentApp
Określa, czy paragon zostanie przekazany klientowi przez Twoją aplikację, czy przez GP tom. Wartością domyślną jest „true“ (co oznacza, że GP tom zaproponuje sposób przekazania paragonu klientowi). Jeśli podasz wartość „false”, zaraz po zakończeniu transakcji użytkownik zostanie przekierowany z powrotem do Twojej aplikacji, a przekazanie paragonu będzie zależało od Ciebie.
clientInfo
Jeśli wyślesz paragon bezpośrednio z aplikacji GP tom, można za pomocą API wstępnie wypełnić adres e-mail lub numer telefonu klienta.
preferableReceiptType
W przypadku wysyłania paragonu z aplikacji GP tom można z góry określić sposób wysyłania paragonu za pośrednictwem API. Możliwe wartości to:
- TELEFON
- QR
- DRUK
TipCollect
Pole opcjonalne, które wyświetla ekran wprowadzania napiwku w aplikacji GP tom. Po wprowadzeniu napiwku w aplikacji wyświetli się ekran umożliwiający przyłożenie karty. Aby wyświetlić ten ekran, należy również aktywować funkcję napiwków w aplikacji
Sposób płatności
Od wersji 1.64.5 dodaliśmy możliwość wywoływania dodatkowych metod płatności za pośrednictwem interfejsu API app2app przy użyciu pola PaymentMethod. Obecnie dostępne opcje to:
CASH – płatności gotówkowe
CARD – płatności kartą
ACCOUNT_PAYMENT – płatność z konta (nowa metoda płatności na rynku czeskim)
Jeśli pole nie zostanie wypełnione, domyślną wartością jest CARD.
