Skip to content
Menu

Przechwytywanie

Info

Ten typ transakcji jest dostępny dla: Kart płatniczych.

Przejęcie służy do zażądania rozliczenia wcześniej autoryzowanych środków.

Żądanie Capture jest wykonywane przy użyciu poprzedniej płatności z preautoryzacją (AUTH) poprzez odniesienie do jej identyfikatora transakcji i wysłanie żądania POST przez HTTPS do punktu końcowego /payments/{transactionID}/capture.

Przechwytywanie może odbywać się na różne sposoby:

  • Pełne: przechwyć całą autoryzowaną kwotę i dokończ zakup
  • Częściowe: podziel przechwytywanie na jedno lub kilka żądań przechwytywania, aż do całkowitej autoryzowanej kwoty

W przypadku żądania przechwytywania należy wysłać:

Opis przechwytywania:
OperacjaTyp operacjiMetoda działania i punkt końcowyOpis operacji
KartaPołączenie synchronicznePOST version-id/{original-tx-id}/captureŻąda przejęcia finansowego (kwota częściowa lub całkowita) związanego z poprzednim zezwoleniem.
Żądanie przechwytywania:
LokalizacjaElement danychTypStanOpis
Ścieżkaoriginal-tx-idCiągObowiązkowyOryginalny identyfikator transakcji (identyfikator transakcji pierwotnej autoryzacji)
Nagłówek żądaniaTyp zawartościCiągObowiązkowyaplikacja/json
Nagłówek żądaniaautoryzacjaCiągObowiązkowyToken okaziciela. Na podstawie uwierzytelniania OAuth2 przeprowadzonego na etapie wstępnym.
Nagłówek żądaniax-ibm-client-idCiągObowiązkowyToken identyfikujący organizację klienta. Jest on podawany podczas procesu onboardingu i należy go stosować podczas każdego połączenia.
Treść żądaniasprzedawcaSprzedawcaObowiązkowyObiekt definiujący Sprzedawcę.
Zapytanie o Body.merchantterminalIdMax10NumericText
Zapytanie o Body.merchantkanałCiągKanał użyty w transakcji.
Zapytanie o Body.merchantmerchantTransactionIdCiągObowiązkowyUnikalny identyfikator transakcji z perspektywy sprzedawcy.
Treść żądaniatransakcjaTransakcjaObowiązkowyObiekt definiujący transakcję.
Żądanie Body.transactiontransactionTimeStampISODateTimeObowiązkowyZnacznik czasu transakcji.
Żądanie Body.transactionopisCiągObowiązkowyKrótki opis transakcji.
Żądanie Body.transactionilośćIlośćObowiązkowyParametr określający wartość i walutę transakcji.
Żądanie Body.transaction.amountwartośćNumer (podwójny)ObowiązkowyKwota w transakcji.
Żądanie Body.transaction.amountwalutaKod walutyObowiązkowyWaluta użyta w transakcji. Alpha3
Treść żądaniaoriginalTransactionOriginalTransactionObowiązkowyObiekt identyfikujący pierwotną transakcję.
Request Body.originalTransactionidentyfikatorCiągObowiązkowyOryginalna identyfikacja transakcji.
Przykład żądania przechwytywania:
{
    "merchant": {
        "terminalId": {{TerminalID}},
        "channel": "web",
        "merchantTransactionId": "BO_Order Id: "
    },
    "transaction": {
        "transactionTimestamp": "{{trxDatetime}}",
        "description": "Transaction short description",
        "amount": {
            "value": 1,
            "currency": "PLN"
        },
        "originalTransaction": {
            "id": "{{originalTransactionId}}"
        }
    }
}

Odpowiedź poniżej będzie zawierać identyfikator transakcji, którego możesz użyć do sprawdzenia statusu.

{
    "merchant": {
        "terminalId": "101776",
        "merchantTransactionId": "BO_Order Id: ",
        "merchantTransactionTimestamp": "2023-06-20T11:15:57.040Z"
    },
    "transactionTimestamp": "2023-06-20T11:16:14.988Z",
    "amount": {
        "value": "1",
        "currency": "PLN"
    },
    "transactionID": "RW5vBMHj4RhQWFRc0GvS",
    "execution": {
        "startTime": "2023-06-20T11:15:57.206Z",
        "endTime": "2023-06-20T11:16:15.100Z"
    },
    "paymentStatus": "Success",
    "returnStatus": {
        "statusCode": "000",
        "statusMsg": "Success",
        "statusDescription": "Success."
    }
}

Następnie, po przetworzeniu płatności, możesz sprawdzić status swojej transakcji, wysyłając żądanie GET.

Nagłówek HTTP autoryzacji jest ustawiony na token okaziciela, tak jak był używany podczas początkowej realizacji transakcji.

Adres URL żądania:
https://stargate-cer.qly.site1.sibs.pt/api/v1/payments/{transactionID}/status
Nagłówki żądań:
Autorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6I (...)
X-IBM-Client-Id: b4480347-9fc8-4790-b359-100a99c60ea3
Content-Type: application/json

Pomyślna odpowiedź techniczna składa się ze statusu HTTP-200 i returnStatus.statusCode=”000″.

Oto kilka przykładów możliwych kodów wyników:

Kod wynikustatusMsgOpisAkcja
HTTP-200SukcesOdpowiedź z sukcesemn/a.
HTTP-400Zła prośbaŁadunek JSON nie jest zgodny z definicją API lub brakuje niektórych obowiązkowych nagłówków HTTP.Sprawdź w API Market poprawną składnię.
HTTP-401NieautoryzowanyW przypadku Autoryzacji token okaziciela jest nieprawidłowy/wygasł lub nie jest powiązany z używanym terminalem.Sprawdź w SIBS Backoffice w sekcji Poświadczenia, czy token jest ważny i w razie potrzeby utwórz nowy.
HTTP-403ZabronionyIdentyfikator klienta ustawiony w nagłówku HTTP X-IBM-Client-Id jest nieprawidłowy lub nie posiada ważnej subskrypcji interfejsu API.Sprawdź w SIBS Backoffice w SPG APP 2.0, czy ClientID jest poprawny. Jeśli problem będzie się powtarzał, skontaktuj się z pomocą techniczną SIBS Gateway w celu zresetowania ClientID.
HTTP-405Niedozwolona metodaZastosowana metoda HTTP nie jest zgodna z żadną dostępną definicją API.Sprawdź w API Market poprawną metodę HTTP.
HTTP-429Zbyt dużo próśbPrzekroczono limit szybkości wywołań API.Informacje na temat limitów stawek mających zastosowanie do API można znaleźć w API Market.
HTTP-500Wewnętrzny błąd serweraWywołanie API nie powiodło się… i najprawdopodobniej jest to po naszej stronie.Powinieneś ponowić operację, a jeśli problem będzie się powtarzał, skontaktuj się z pomocą techniczną SIBS Gateway w celu uzyskania pomocy.
HTTP-503serwis niedostępnyWywołanie API nie jest obecnie dostępne. Zwykle jesteśmy zawsze aktywni, ale podczas planowej konserwacji mogą wystąpić krótkie problemy z dostępnością.Powinieneś poczekać i spróbować ponownie później.
Przegląd prywatności

Ta strona korzysta z ciasteczek, aby zapewnić Ci najlepszą możliwą obsługę. Informacje o ciasteczkach są przechowywane w przeglądarce i wykonują funkcje takie jak rozpoznawanie Cię po powrocie na naszą stronę internetową i pomaganie naszemu zespołowi w zrozumieniu, które sekcje witryny są dla Ciebie najbardziej interesujące i przydatne.

Ściśle niezbędne ciasteczka

Niezbędne ciasteczka powinny być zawsze włączone, abyśmy mogli zapisać twoje preferencje dotyczące ustawień ciasteczek.

Jeśli wyłączysz to ciasteczko, nie będziemy mogli zapisać twoich preferencji. Oznacza to, że za każdym razem, gdy odwiedzasz tę stronę, musisz ponownie włączyć lub wyłączyć ciasteczka.