Skip to content
Menu

Bancontact

Zacznij akceptować płatności za pomocą Bancontact, najpopularniejszej metody płatności online w Belgii, utrzymując pozycję lidera na rynku zarówno w transakcjach internetowych, jak i osobistych.

Aby dokonać płatności za pomocą Bancontact, klienci są kierowani do witryny internetowej lub aplikacji mobilnej w celu autoryzacji. Wprowadzają dane swojej karty lub skanują kod QR, a następnie autoryzują płatność.

Następnie wracają na Twoją stronę internetową i natychmiast powiadamiają Cię o powodzeniu lub niepowodzeniu płatności.

Metoda płatnościKategoriaKrajWalutaFunkcjonalnościIntegracje
BancontactKartyBelgiaEURCzęściowy zwrot pieniędzy
Zwroty
Anulowanie
API
Formularz płatności
Wtyczka Prestashop
Wtyczka WooCommerce
Wtyczka Magento

Jak korzystać z Bancontact

Przepływ pracy przebiega w następujący sposób:

  1. Na stronie sprzedawcy klient wybiera Bancontact.
  2. Klient zostaje przekierowany na stronę płatności Bancontact, gdzie ma możliwość wprowadzenia numeru PAN lub zeskanowania kodu QR.
  3. Kończą płatność:
    a. Jeśli konsument zdecyduje się na wprowadzenie numeru PAN, zostanie przekierowany do banku wydającego w celu uwierzytelnienia 3DS.
    b. Jeśli konsument zeskanuje kod QR, potwierdza płatność w aplikacji Bancontact.
  4. Konsument zostaje przekierowany na stronę internetową sprzedawcy.
  5. Sprzedawca otrzymuje potwierdzenie płatności.
  6. Następnie sprzedawca może wysłać zamówienie/dostarczyć towar konsumentowi.

Jak to działa

Poniżej znajdziesz najważniejsze kroki wymagane do integracji metody płatności Bancontact.

Krok 1: Utwórz zamówienie
Krok 2: Uzyskaj Link do płatności
Krok 3: Uzyskaj status płatności
Krok 1: Utwórz zamówienie

Pamiętaj, aby utworzyć żądanie zamówienia z Bancontact („BNCT”) jako wybraną metodą płatności (transaction.paymentMethod) i ustawić preferencje językowe klienta w CustomerInfo.customerLanguage.

Krok 2: Uzyskaj Link do płatności

Przejdź do linku do płatności opisanego poniżej, aby przekierować klienta na bezpieczną stronę płatności w celu uwierzytelnienia i autoryzacji płatności.

Należy pamiętać, że poniższe żądanie wymaga nagłówka autoryzacji zawierającego podpis transakcji uzyskany w poprzednim kroku.

Punkty końcowe:
ŚrodowiskoURLMetoda działania i punkt końcowyOpis operacji
PRODapi.sibsgateway.comPOST {version-id}/payments/{id}/pbl/payment-linkWykonaj transakcję i przekieruj użytkownika do Hosta płatności.
TESTstargate-cer.qly.site[1|2].sibs.ptPOST {version-id}/payments/{id}/pbl/payment-linkWykonaj transakcję i przekieruj użytkownika do Hosta płatności.

Upewnij się, że uwzględniłeś następujące istotne elementy zgodnie ze specyfikacją:

LokalizacjaElement danychTypStanOpis
ŚcieżkaidCiągObowiązkowySłuży do identyfikacji transakcji
Parametry nagłówka:
LokalizacjaElement danychTypStanOpis
Nagłówek żądaniaTyp zawartościCiągObowiązkowyaplikacja/json
Nagłówek żądaniaUpoważnienieCiągObowiązkowyPodsumowanie autoryzacji
Parametry żądania:
LokalizacjaElement danychTypStanOpis
Treść żądaniauserAcceptanceIndicatorWartość logicznaObowiązkowyWskazuje, czy użytkownik zaakceptował Regulamin, aby kontynuować płatność.
Treść żądaniagatewayIdCiągObowiązkowyKanał płatności Identyfikator kanału, którego Klient będzie używał do dokonywania płatności.
Wartość: 'bcmc’ – Bancontact;
Treść żądaniainformacjaInformacjaObowiązkowyObiekt definiujący dodatkowe informacje o transakcji.
Poproś o Body.infodeviceInfoInformacje o urządzeniuOpcjonalnyObiekt definiujący informacje o urządzeniu klienta.
Poproś o Body.info.deviceInfobrowserAcceptHeaderciągOpcjonalnyNagłówek akceptacji przeglądarki
Poproś o Body.info.deviceInfobrowserJavaEnabledciągOpcjonalnyPrzeglądarka Java włączona
Poproś o Body.info.deviceInfobrowserLanguageciągOpcjonalnyJęzyk przeglądarki
Poproś o Body.info.deviceInfobrowserColorDepthciągOpcjonalnyGłębia kolorów przeglądarki
Poproś o Body.info.deviceInfobrowserScreenHeightciągOpcjonalnyWysokość ekranu przeglądarki
Poproś o Body.info.deviceInfobrowserScreenWidthciągOpcjonalnySzerokość ekranu przeglądarki
Poproś o Body.info.deviceInfobrowserTZciągOpcjonalnyStrefa czasowa przeglądarki
Poproś o Body.info.deviceInfobrowserUserAgentciągOpcjonalnyAgent użytkownika przeglądarki
Poproś o Body.info.deviceInfosystemFamilyciągOpcjonalnyRodzina systemowa
Poproś o Body.info.deviceInfosystemVersionciągOpcjonalnyWersja systemu
Poproś o Body.info.deviceInfosystemArchitectureciągOpcjonalnyarchitektura systemu
Poproś o Body.info.deviceInfodeviceManufacturerciągOpcjonalnyProducent urządzenia
Poproś o Body.info.deviceInfodeviceModelciągOpcjonalnyModel urządzenia
Poproś o Body.info.deviceInfodeviceIDciągOpcjonalnyUnikalna identyfikacja urządzenia
Poproś o Body.info.deviceInfoapplicationNameciągOpcjonalnyNazwa aplikacji
Poproś o Body.info.deviceInfoapplicationVersionciągOpcjonalnyWersja aplikacji
Poproś o Body.info.deviceInfogeoLocalizationciągOpcjonalnyGeolokalizacja
Poproś o Body.info.deviceInfoipAddressciągOpcjonalnyAdres IP
Treść żądaniacustomerInfoInformacja dla klientowOpcjonalnyTablica krotności wartości klucza.
Poproś o Body.customerInfokluczciągObowiązkowyUżywane do podawania „nazwy klienta”, „e-maila klienta”.
Poproś o Body.customerInfowartośćciągObowiązkowyUżywane do podawania „nazwy klienta”, „e-maila klienta”.
Treść żądaniasprzedawcaSprzedawcaOpcjonalnyDane sprzedawcy
Zapytanie o Body.merchantmerchantURLciągObowiązkowyAdres URL sklepu sprzedawcy do przekierowania.
Zapytanie o Body.merchantappToAppURLciągOpcjonalnyNiestandardowy adres URL aplikacji do przekierowania klienta z powrotem do aplikacji, co spowodowało płatność.
Ma zastosowanie, gdy identyfikator bramy to „bcmc”.
Zastępuje adres URL sprzedawcy dla przepływów mobilnych.
Poproś o Body.infoaccountInfoInformacje o koncieOpcjonalnyDane związane z kontem.
Ma zastosowanie, gdy identyfikator bramy to „bcmc”
Poproś o Body.info.accountInfoholderNameMax100TextOpcjonalnyNazwa właściciela konta. Format UTF-8 .
Poproś o Body.info.accountInfocustomerCountryKod krajuOpcjonalnyKod kraju klienta. Alpha2

Oto przykładowy sposób uzyskania linku do płatności:

{
    "userAcceptanceIndicator": true,
    "gatewayId": "bcmc",
    "info": {
        "deviceInfo": {
            "browserAcceptHeader": "application/json, text/plain, */*",
            "browserJavaEnabled": "false",
            "browserLanguage": "en",
            "browserColorDepth": "24",
            "browserScreenHeight": "1080",
            "browserScreenWidth": "1920",
            "browserTZ": "-60",
            "browserUserAgent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
            "geoLocalization": "Lat: 38.7350528 | Long: -9.2143616",
            "systemFamily": "Windows",
            "systemVersion": "Windows",
            "deviceID": "498bfd4c3a3645b38667a7037b616c18",
            "applicationName": "Chrome",
            "applicationVersion": "106"
        },
        "customerInfo": [
            {
                "key": "customerName",
                "value": "Test Name"
            },
            {
                "key": "customerEmail",
                "value": email@provider.com
            }
        ],
        "accountInfo": {
            "holderName": "Test Name",
            "customerCountry": "BE"
        }
    },
    "merchant": {
        "appToAppURL": https://egadget2.azurewebsites.net/#/returns?id={{transactionId}},
        "merchantURL": https://egadget2.azurewebsites.net/#/returns?id={{transactionId}}
    }
}

Po pomyślnym zakończeniu operacji otrzymany zostanie status płatności „oczekujący”.

Użytkownik zostaje następnie przekierowany do środowiska potwierdzenia płatności, po czym bezproblemowo powróci do adresu URL sprzedawcy.

Krok 3: Uzyskaj status płatności

W dowolnym momencie możesz wykonać operację „Pobierz status”, aby sprawdzić status.

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

GET {transactionID}/status
Adres URL żądania:
https://stargate-cer.qly.site1.sibs.pt/api/v1/payments/{transactionID}/status
Nagłówki żądań:
Authorization: ‘Bearer <AuthToken>’
X-IBM-Client-Id: ‘<ClientId>’
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ź powodzeniaNie dotyczy
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 prawidłowej 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 zapytańPrzekroczono 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.