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": "giropay",
 "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:

Result CodestatusMsgDescriptionAction
HTTP-200SuccessSuccess responseN/A
HTTP-400Bad RequestThe JSON payload is not matching the API definition or some mandatory HTTP headers are missing.Please check in API Market for the correct syntax.
HTTP-401UnauthorizedOn the Authorization, Bearer token is invalid/expired or not associated with the Terminal used.Please check in SIBS Backoffice under the Credentials if the token is valid and create a new one if needed.
HTTP-403ForbiddenThe ClientID set on the X-IBM-Client-Id HTTP header is not valid or does not possess a valid subscription to the API.Please check in SIBS Backoffice under the SPG APP 2.0 if the ClientID is correct. If the problem persists contact SIBS Gateway support for a ClientID reset.
HTTP-405Method Not AllowedThe HTTP Method used is not matching any of the API definitions available.Please check in API Market for the correct HTTP Method.
HTTP-429Too Many RequestsThe API calls rate limit has been exceeded.Please check in API Market for information on the rate limits that apply to the API.
HTTP-500Internal Server ErrorThe API call has failed… and its most likely on our side.You should retry the operation, and if the problem persists contact SIBS Gateway support for assistance.
HTTP-503Service UnavailableThe API call is not currently available. Usually we are always on, but short availability issues may occur during scheduled maintenance.You should wait and try again later.