Skip to content

Przelewy24

Bankowość internetowa jest bardzo popularna w Polsce, a Przelewy24 czynią ją jeszcze wygodniejszą.

Przelewy24, znane jako P24, współpracują z ponad 165 bankami, upraszczając proces płatności. Kupujący wybierają bank wydający i dokonują płatności na platformie banku, bez konieczności ręcznego podawania danych przelewu, co przyspiesza proces.

Sprzedawcy mogą szybko rozpocząć działalność bez konieczności posiadania oddzielnego konta P24.

Opcja płatnościKategoriaKrajeWalutyFunkcjonalnościIntegracje
Przelewy24Bankowość internetowaPolskaEUR, PLNCzęściowy zwrot kosztów
Zwroty kosztów
Anulowanie
API
Formularz Płatności
Wtyczka Prestashop
Wtyczka WooCommerce
Wtyczka Magento

Jak korzystać z Przelewy24

Proces ten przebiega w następujący sposób:

  1. Klient inicjuje proces płatności, wybierając P24 jako preferowaną metodę płatności na stronie płatności sprzedawcy.
  2. Następnie klient zostanie przekierowany na stronę płatności P24, gdzie będzie mógł wybrać swój bank.
  3. Stamtąd klient jest przekierowywany do portalu bankowości internetowej swojego banku.
  4. Aby zatwierdzić transakcję, klient bezpiecznie loguje się na swoje konto bankowości internetowej.
  5. Po potwierdzeniu, klient jest szybko przekierowywany na stronę sprzedawcy w celu potwierdzenia płatności.

Jak to działa

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

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 Przelewy24 (“PY24”) 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 uzyskania 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 transactionSignature uzyskany w poprzednim kroku.

Punkty końcowe:

EnvironmentURLOperation Method & EndpointOperation Description
PRODapi.sibsgateway.comPOST {version-id}/payments/{id}/pbl/payment-linkPerform the transaction and redirect user to Payment Host.
TESTstargate-cer.qly.site[1|2].sibs.ptPOST {version-id}/payments/{id}/pbl/payment-linkPerform the transaction and redirect user to Payment Host.

Upewnij się, że posiadasz te niezbędne elementy:

LocationData ElementTypeConditionDescription
PathidStringMandatoryUsed to identify the transaction

Header parameters:

LocationData ElementTypeConditionDescription
Request HeaderContent-TypeStringMandatoryapplication/json
Request HeaderAuthorizationStringMandatoryAuthorization Digest

Request parameters:

LocationData ElementTypeConditionDescription
Request BodyuserAcceptanceIndicatorBooleanMandatoryWskazuje, czy użytkownik zaakceptował Regulamin w celu kontynuowania płatności.
Request BodygatewayIdStringMandatoryIdentyfikator kanału płatności dla kanału, którego klient zamierza użyć do dokonania płatności.
Value: 'p24′ – Przelewy24;
Request BodyinfoInfoMandatoryObiekt definiujący dodatkowe informacje o transakcji.
Request Body.infodeviceInfoDeviceInfoOptionalObiekt definiujący informacje o urządzeniu klienta.
Request Body.info.deviceInfobrowserAcceptHeaderstringOptionalBrowser Accept Header
Request Body.info.deviceInfobrowserJavaEnabledstringOptionalBrowser Java Enabled
Request Body.info.deviceInfobrowserLanguagestringOptionalbrowser Language
Request Body.info.deviceInfobrowserColorDepthstringOptionalbrowser Color Depth
Request Body.info.deviceInfobrowserScreenHeightstringOptionalbrowser Screen Height
Request Body.info.deviceInfobrowserScreenWidthstringOptionalbrowser Screen Width
Request Body.info.deviceInfobrowserTZstringOptionalBrowser Time Zone
Request Body.info.deviceInfobrowserUserAgentstringOptionalBrowser User Agent
Request Body.info.deviceInfosystemFamilystringOptionalSystem Family
Request Body.info.deviceInfosystemVersionstringOptionalSystem Version
Request Body.info.deviceInfosystemArchitecturestringOptionalSystem Architecture
Request Body.info.deviceInfodeviceManufacturerstringOptionalDevice Manufacturer
Request Body.info.deviceInfodeviceModelstringOptionalDevice Model
Request Body.info.deviceInfodeviceIDstringOptionalDevice Unique Identification
Request Body.info.deviceInfoapplicationNamestringOptionalApplication Name
Request Body.info.deviceInfoapplicationVersionstringOptionalApplication Version
Request Body.info.deviceInfogeoLocalizationstringOptionalGeolocation
Request Body.info.deviceInfoipAddressstringOptionalIP Address
Request BodycustomerInfoCustomerInfoOptionalKey Value tuple array.
Request Body.customerInfokeystringMandatoryUsed to supply „customerName”, „customerEmail”.
Request Body.customerInfovaluestringMandatoryUsed to supply „customerName”, „customerEmail”.
Request BodymerchantMerchantOptionalMerchant Data
Request Body.merchantmerchantURLstringMandatoryMerchant Shop URL for redirect.
Request Body.info.accountInfoholderNameMax100TextOptionalAccount Holder Name. UTF-8 Format.
Request Body.info.accountInfocustomerCountryCountry CodeOptionalCustomer Country Code. Alpha2

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

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

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

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

Krok 3: Uzyskaj status płatności

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

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

GET {transactionID}/status

Request URL:

https://stargate-cer.qly.site1.sibs.pt/api/v1/payments/{transactionID}/status

Request Headers:

Authorization: ‘Bearer <AuthToken>’
X-IBM-Client-Id: ‘<ClientId>’
Content-Type: application/json

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

Oto kilka przykładów możliwych kodó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.