Skip to content

iDEAL

Akceptuj płatności za pomocą iDEAL, najpopularniejszej metody bankowości internetowej w Holandii, z szerokim wsparciem ze strony głównych holenderskich banków.

Kiedy klienci korzystają z iDEAL, wybierają bank wydający i dokonują płatności na platformie banku. Jest to wysoce bezpieczne, z natychmiastowym powiadomieniem o płatności.

Opcja płatnościKategoriaKrajWalutaCechyIntegracje
iDEALBankowość internetowaHolandiaEURCzęściowy zwrot kosztów
Zwrot kosztów
Anulowanie
API
Formularz płatności
Wtyczka Prestashop
Wyczka WooCommerce
Wtyczka Magento

Jak korzystać z iDEAL

Ścieżka przebiega w następujący sposób:

  1. Na stronie internetowej sprzedawcy klient wybiera iDEAL jako metodę płatności
  2. Zostają przekierowani na stronę, na której znajduje się lista, z której mogą wybrać preferowany bank.
  3. Klient wybiera bank z listy i zostaje przekierowany do swojego banku internetowego.
  4. Klient potwierdza płatność i zostaje przekierowany z powrotem na stronę sprzedawcy.
  5. Sprzedawca otrzymuje potwierdzenie płatności;
  6. Sprzedawca może wysłać zamówienie/dostarczyć towary klientowi.

Jak to działa

Oto przegląd najważniejszych kroków wymaganych do integracji metody płatności iDEAL.

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 zainicjować żądanie zamówienia z iDEAL („IDEL”) jako wybraną metodą płatności (transaction.paymentMethod) i skonfigurować preferencje językowe klienta w customerInfo.customerLanguage.

Krok 2: Uzyskaj link do płatności

Postępuj zgodnie z poniższymi instrukcjami, aby uzyskać link do płatności, 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 (Endpoints):
ŚrodowiskoURLMetoda działania i punkt końcowy (Endpoint)Opis działania
PRODapi.sibsgateway.comPOST {version-id}/payments/{id}/pbl/payment-linkPrzeprowadzenie transakcji i przekierowanie użytkownika do hosta płatności.
TESTstargate-cer.qly.site[1|2].sibs.ptPOST {version-id}/payments/{id}/pbl/payment-linkPrzeprowadzenie transakcji i przekierowanie użytkownika do hosta płatności.

Upewnij się, że zawierasz te niezbędne elementy, jak określono:

LokalizacjaElement danychTypStanOpis
ŚcieżkaidStringObowiązkoweSłuży do identyfikacji transakcji
Parametry nagłówka:
LokalizacjaElement danychTypStanOpis
Request HeaderContent-TypeStringObowiązkoweapplication/json
Request HeaderAutoryzacjaStringObowiązkowePodsumowanie autoryzacji
Nagłówek żądania:
LokalizacjaElement danychTypStanOpis
Treść żądaniauserAcceptanceIndicatorWartość logicznaObowiązkoweWskazuje, czy użytkownik zaakceptował Regulamin w celu kontynuowania płatności.
Treść żądaniagatewayIdStringObowiązkoweIdentyfikator kanału płatności dla kanału, którego klient zamierza użyć do dokonania płatności.
Warość: 'ideal’ – iDEAL;
Treść żądaniainfoInfoObowiązkoweObiekt definiujący dodatkowe informacje o transakcji.
Rządanie Body.infodeviceInfoDeviceInfoOpcjonalneObiekt definiujący informacje o urządzeniu klienta.
Request Body.info.deviceInfobrowserAcceptHeaderciągOpcjonalneBrowser Accept Header
Request Body.info.deviceInfobrowserJavaEnabledciągOpcjonalneBrowser Java Enabled
Request Body.info.deviceInfobrowserLanguageciągOpcjonalnebrowser Language
Request Body.info.deviceInfobrowserColorDepthciągOpcjonalnebrowser Color Depth
Request Body.info.deviceInfobrowserScreenHeightciągOpcjonalnebrowser Screen Height
Request Body.info.deviceInfobrowserScreenWidthciągOpcjonalnebrowser Screen Width
Request Body.info.deviceInfobrowserTZciągOpcjonalneBrowser Time Zone
Request Body.info.deviceInfobrowserUserAgentciągOpcjonalneBrowser User Agent
Request Body.info.deviceInfosystemFamilyciągOpcjonalneSystem Family
Request Body.info.deviceInfosystemVersionciągOpcjonalneSystem Version
Request Body.info.deviceInfosystemArchitectureciągOpcjonalneSystem Architecture
Request Body.info.deviceInfodeviceManufacturerciągOpcjonalneDevice Manufacturer
Request Body.info.deviceInfodeviceModelciągOpcjonalneDevice Model
Request Body.info.deviceInfodeviceIDciągOpcjonalneDevice Unique Identification
Request Body.info.deviceInfoapplicationNameciągOpcjonalneApplication Name
Request Body.info.deviceInfoapplicationVersionciągOpcjonalneApplication Version
Request Body.info.deviceInfogeoLocalizationciągOpcjonalneGeolocation
Request Body.info.deviceInfoipAddressciągOpcjonalneAdres IP
Treść żądaniacustomerInfoCustomerInfoOpcjonalneKey Value tuple array.
Request Body.customerInfokluczciągObowiązkoweUżywane do podania „customerName”, „customerEmail”.
Request Body.customerInfowartośćciągObowiązkoweUżywane do podania „customerName”, „customerEmail”.
Treść żądaniakupiecHandlowiecOpcjonalneMerchant Data
Żądanie Body.merchantmerchantURLciągObowiązkoweAdres URL sklepu sprzedawcy do przekierowania.
Rządanie Body.infoaccountInfoAccountInfoOpcjonalneDane związane z kontem
Ma zastosowanie, gdy gatewayId jest „idealny
Request Body.info.accountInfoholderNameMax100TextOpcjonalneNazwa posiadacza konta. Format UTF-8 .
Request Body.info.accountInfocustomerCountryKod kraju KlientaOpcjonalneKod kraju Klienta. Alpha2

Jak uzyskać link do płatności:

{
    "userAcceptanceIndicator": true,
    "gatewayId": "ideal",
    "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": {
        "merchantURL": https://egadget2.azurewebsites.net/#/returns?id={{transactionId}}
    }
}

Po pomyślnym zakończeniu operacji otrzymywany jest „pending” paymentStatus.

Użytkownik jest następnie przekierowywany do środowiska potwierdzenia płatności, a następnie płynnie powraca do adresu URL sprzedawcy.

Krok 3: Uzyskaj status płatności

Możesz wykonać operację „Uzyskaj Status”, aby sprawdzić status w dowolnym momencie.

Nagłówek HTTP Authorization jest ustawiony na token Bearer, który został użyty w początkowym Checkoucie.

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.