Polecenie zapłaty SEPA upraszcza transakcje denominowane w euro w całej UE.
SEPA Direct Debit jest instrumentem płatniczym umożliwiającym realizację transakcji polecenia zapłaty w euro w strefie Jednolitego Obszaru Płatności w Euro (SEPA).
Umożliwia wierzycielom procesowanie opłat za pośrednictwem swojej instytucji finansowej w oparciu o autoryzację polecenia zapłaty wydaną wierzycielowi przez dłużnika. Zarówno Dłużnik, jak i Wierzyciel muszą posiadać rachunki w strefie SEPA.
Opcja płatności | Kategoria | Kraje | Waluty | Funkcjonalności | Integracje |
---|---|---|---|---|---|
SEPA DD | Polecenie zapłaty | Austria, Belgia, Bułgaria, Chorwacja, Cypr, Czechy, Dania, Estonia, Finlandia, Francja, Grecja, Hiszpania, Holandia, Irlandia, Islandia, Liechtenstein, Litwa, Luksemburg, Łotwa, Malta, Niemcy, Norwegia, Polska, Portugalia, Rumunia, Słowacja, Słowenia, Szwajcaria, Szwecja, Węgry, Włochy. | EUR | Częściowy zwrot kosztów Zwroty kosztów | API Formularz Płatności Wtyczka Prestashop Wtyczka WooCommerce Wtyczka Magento |
Jak korzystać z SEPA DD
SEPA Direct Debit zapewnia efektywną metodę transakcji na terenie Unii Europejskiej.
Oto przewodnik, jak zrozumieć i wykorzystać ten usprawniony proces płatności:
Krok 1: Wybierz polecenie zapłaty SEPA podczas realizacji transakcji, aby rozpocząć proces płatności.
Krok 2: Wprowadź swoje dane osobowe, w tym imię i nazwisko oraz adres, a także numer IBAN (międzynarodowy numer rachunku bankowego) i podaj autoryzację zlecenia.
Krok 3: Otrzymaj szybkie powiadomienie potwierdzające pomyślne zakończenie transakcji płatniczej.
Jak to działa
Poniżej znajdziesz szczegółowy opis kroków niezbędnych do wdrożenia metody płatności SEPA Direct Debit:
Krok 1: Utwórz zamówienie
Krok 2: Utwórz upoważnienie do polecenia zapłaty SEPA
Krok 3: Przedstaw inkaso polecenia zapłaty SEPA
Krok 4: Uzyskaj szczegóły tokena SEPA DD
Krok 1: Utwórz zamówienie
Rozpocznij składanie zamówienia, wyznaczając polecenie zapłaty SEPA („SPDD”) jako preferowaną metodę płatności (transaction.paymentMethod). Upewnij się, że kwota transakcji (transaction.amount) jest ustawiona na 0. Ponadto pamiętaj o dodaniu obiektu zgodnie z poniższymi instrukcjami:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Body | mandate | mandate | Opcjonalnie | Informacje o szczegółach mandatu |
Request Body.mandate | mandateId | Ciąg | Obowiązkowe | Identyfikacja zasobu zezwolenia na polecenie zapłaty. Odnosi się do numeru autoryzacji polecenia zapłaty. Max35Text |
Request Body.mandate | mandateDescription | Ciąg | Obowiązkowe | Opis kontekstu zasobu upoważniającego do polecenia zapłaty. Max256Text |
Request Body.mandate | frequency | Ciąg | Opcjonalnie | Regularność, z jaką instrukcje mają być tworzone i przetwarzane. „OOFF” – „One-Off” (Instrukcja polecenia zapłaty, w której za zgodą dłużnika inicjuje się jedną pojedynczą transakcję polecenia zapłaty) „RCUR” – „Recurring” (Instrukcja polecenia zapłaty, w przypadku której wykorzystuje się autoryzację dłużnika do regularnych transakcji polecenia zapłaty inicjowanych przez wierzyciela) Exact4Text |
Request Body.mandate | serviceType | ServiceTypeCode | Obowiązkowe | Identyfikacja usługi Polecenia Zapłaty SEPA powiązanej z konkretnym Zleceniem Polecenia Zapłaty. Można to spełnić przy pomocy następujących wartości: „CORE” w przypadku usługi SEPA DD CORE; „BTOB” w przypadku usługi SEPA DD B2B. Exact4Text |
Krok 2: Utwórz upoważnienie do polecenia zapłaty SEPA
Po zakończeniu procesu tworzenia zamówienia i wybraniu przez klienta metody „SPDD” jako preferowanej opcji płatności, kolejnym krokiem jest wygenerowanie zasobu upoważniającego do polecenia zapłaty SEPA.
Zlecenie to dokument podpisany przez dłużnika, upoważniający wierzyciela do inkasa płatności i umożliwiający bankowi dłużnika realizację tych inkasów.
Ten wybór uruchamia dwie różne opcje tworzenia mandatu:
- Opcja 1: Utwórz zlecenie SEPA DD
- Opcja 2: Utwórz zlecenie SEPA DD z uwierzytelnieniem (przeznaczone dla klientów iDeal)
Opcja 1: Utwórz zlecenie SEPA DD
Proces ten obejmuje utworzenie upoważnienia do polecenia zapłaty SEPA, w którym wymagane są zarówno dane wierzyciela, jak i dłużnika. Klient musi wypełnić wszystkie dane rachunku dłużnika, dostarczyć dokument potwierdzający IBAN i swój podpis. Następnie zlecenie zostaje sfinalizowane i zarejestrowane.
W rezultacie klient ma teraz upoważnienie do polecenia zapłaty SEPA, które jest gotowe do wykorzystania w przyszłości w płatnościach z wykorzystaniem bieżącej operacji windykacyjnej SEPA Direct Debit, zainicjowanej przez Sprzedawcę.
Po omówieniu tego procesu zostaną przedstawione szczegółowe kroki wdrażania utworzenia upoważnienia do polecenia zapłaty SEPA:
Punkty końcowe:
Środowisko | URL | Metoda działania i endpointy | Opis działania |
---|---|---|---|
PROD | api.sibsgateway.com | POST {version-id}/{id}/mandates/sepadd | Tworzy zasób upoważnienia SEPA DD określony w żądaniu. |
TEST | stargate-cer.qly.site[1|2].sibs.pt | POST {version-id}/{id}/mandates/sepadd | Tworzy zasób upoważnienia SEPA DD określony w żądaniu. |
Upewnij się, że uwzględniłeś te kluczowe elementy zgodnie z opisem:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Ścieżka | id | Ciąg | Obowiązkowe | Służy do identyfikacji transakcji |
Parametry nagłówka:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Header | Content-Type | Ciąg | Obowiązkowe | application/json |
Request Header | Autoryzacja | Ciąg | Obowiązkowe | Podsumowanie autoryzacji |
Request parameters:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Body | userAcceptanceIndicator | logiczna | Obowiązkowe | Wskazuje, czy użytkownik zaakceptował Regulamin w celu kontynuowania płatności. |
Request Body.info | deviceInfo | DeviceInfo | Obowiązkowe | Obiekt definiujący informacje o urządzeniu klienta. |
Request Body.info.deviceInfo | browserAcceptHeader | string | Opcjonalnie | Browser Accept Header |
Request Body.info.deviceInfo | browserJavaEnabled | string | Opcjonalnie | Browser Java Enabled |
Request Body.info.deviceInfo | browserLanguage | string | Opcjonalnie | browser Language |
Request Body.info.deviceInfo | browserColorDepth | string | Opcjonalnie | browser Color Depth |
Request Body.info.deviceInfo | browserScreenHeight | string | Opcjonalnie | browser Screen Height |
Request Body.info.deviceInfo | browserScreenWidth | string | Opcjonalnie | browser Screen Width |
Request Body.info.deviceInfo | browserTZ | string | Opcjonalnie | Browser Time Zone |
Request Body.info.deviceInfo | browserUserAgent | string | Opcjonalnie | Browser User Agent |
Request Body.info.deviceInfo | systemFamily | string | Opcjonalnie | System Family |
Request Body.info.deviceInfo | systemVersion | string | Opcjonalnie | System Version |
Request Body.info.deviceInfo | systemArchitecture | string | Opcjonalnie | System Architecture |
Request Body.info.deviceInfo | deviceManufacturer | string | Opcjonalnie | Device Manufacturer |
Request Body.info.deviceInfo | deviceModel | string | Opcjonalnie | Device Model |
Request Body.info.deviceInfo | deviceID | string | Opcjonalnie | Device Unique Identification |
Request Body.info.deviceInfo | applicationName | string | Opcjonalnie | Application Name |
Request Body.info.deviceInfo | applicationVersion | string | Opcjonalnie | Application Version |
Request Body.info.deviceInfo | geoLocalization | string | Opcjonalnie | Geolocation |
Request Body.info.deviceInfo | ipAddress | string | Opcjonalnie | IP Address |
Request Body | mandate | mandate | Obowiązkowe | Mandate information |
Request Body.mandate | mandateId | Ciąg | Obowiązkowe | Identyfikacja zasobu upoważnienia do polecenia zapłaty. Odnosi się do numeru Autoryzacji Obciążenia. Max35Text |
Request Body.mandate | mandateDescription | Ciąg | Obowiązkowe | Opis kontekstu zasobu upoważnienia do polecenia zapłaty. Max256Text |
Request Body.mandate | frequency | FrequencyTypeCode | Obowiązkowe | Regularność, z jaką instrukcje mają być tworzone i przetwarzane. „OOFF” – „One-Off” (Dyspozycja polecenia zapłaty, w przypadku której upoważnienie dłużnika jest wykorzystywane do zainicjowania pojedynczej transakcji polecenia zapłaty.) „RCUR” – „Recurring” (Dyspozycja polecenia zapłaty, w przypadku której autoryzacja dłużnika jest wykorzystywana do regularnych transakcji polecenia zapłaty inicjowanych przez wierzyciela) Exact4Text |
Request Body | creditor | creditor | Obowiązkowe | Informacje o wierzycielu |
Request Body.creditor | creditorId | Ciąg | Obowiązkowe | Identyfikacja wierzycieli, np. identyfikator wierzyciela SEPA. Max35Text |
Request Body | debtor | debtor | Obowiązkowe | Informacje o dłużniku |
Request Body.debtor | customerFullName | Ciąg | Obowiązkowe | Imię i nazwisko klienta. Max140Text |
Request Body.debtor | customerEmail | Ciąg | Obowiązkowe | E-mail klienta. Max255Text |
Request Body.debtor | customerAddress | Ciąg | Obowiązkowe | Adres klienta. Max140Text |
Request Body.debtor | customerAddressPostalCode | Ciąg | Obowiązkowe | Kod pocztowy adresu klienta. Max16Text |
Request Body.debtor | customerAddressCity | Ciąg | Obowiązkowe | Adres klienta miasto. Max35Text |
Request Body.debtor | customerAddressCountry | Ciąg | Obowiązkowe | Kraj adresu klienta. ISO Alpha2 |
Request Body.debtor | debtorAccount | Numer konta | Obowiązkowe | Informacje o koncie dłużnika |
Request Body.debtor.debtorAccount | iban | IBAN | Obowiązkowe | Międzynarodowy numer rachunku bankowego (dłużnika). Max34Text (IBAN ISO13616) |
Request Body.debtor.debtorAccount | debtorAgent | BICFI | Opcjonalnie | Identyfikacja Wierzyciela (BIC SWIFT). Max11Text ISO9362 format |
Request Body.debtor.debtorAccount | confirmationFile | Plik binarny | Obowiązkowe | Dokument potwierdzający posiadanie konta (dowód posiadania konta – plik certyfikatu). 1MB Binary File |
Request Body.debtor.debtorAccount | fileContentType | Ciąg | Obowiązkowe | Typ zawartości pliku Możliwa wartość: application.jpeg application.png application.pdf |
Request Body.debtor | customerSignature | Ciąg | Obowiązkowe | Dane podpisu klienta |
Request Body.debtor.customerSignature | local | Ciąg | Obowiązkowe | Podpis klienta lokalny. Max35Text |
Request Body.debtor.customerSignature | data | ISODate | Obowiązkowe | Data podpisu klienta ISODate |
Request Body.debtor.customerSignature | image | Plik binarny | Obowiązkowe | Obraz podpisu klienta. 1MB Binary File |
Request Body.debtor.customerSignature | fileContentType | Ciąg | Obowiązkowe | Typ zawartości obrazu Możliwa wartość: application.jpeg application.tiff application.png application.gif |
Oto przykład tworzenia zlecenia:
{
"mandate": {
"mandateId": "mandateID",
"mandateDescription": "mandateDescription",
"frequency": "OOFF",
"serviceType": "CORE"
},
"creditor": {
"creditorId": "NL89ZZZOP4GBH51AL8LS3DY1QG"
},
"debtor": {
"customerFullName": "Testing Customer Name",
"customerEmail": "email@provider.com",
"customerAddress": "Full Address testing",
"customerAddressPostalCode": "1011AA",
"customerAddressCity": "TestCity",
"customerAddressCountry": "NL",
"debtorAccount": {
"iban": "NL27TUUk48tlEvz9tk6o9Q6Mxaiyz",
"confirmationFile": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdCIFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFjcHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAAABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAADTAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD
+IlnWeJf4QbwKgtIlfEDb1GjbkJawN1uXWHnqZHsti+BfRKB51NDZaccTKMSx74mWseY2fmGVEV81BaSwOtRXnq8TXFeSFBMcwVPB+Zd06OpovGo4MVrApcXKVfMdwFDms0Ratq2qI20PUvA71iJd9TIMeoETUYKPHUcZcjiJSnWXMcxOeIy84aM5lW9epghC1YxcWrsm1Lc5lKfvNE6l/3caDsTMT5l7cp1LN6xFNxWTzUc24qvxHI80x8be2WKWxs+ZmlGDPuZaPeYGMYzcXVX6qYvXce6OcEtXrjEbz/9k=",
"fileContentType": "application.jpeg"
}
}
}
Opcja 2: Utwórz zlecenie SEPA DD z uwierzytelnieniem (przeznaczone dla klientów iDeal)
Proces ten obejmuje żądanie utworzenia zlecenia SEPA DD z uwierzytelnieniem, wspierającego weryfikację konta Klienta i uwierzytelnienie poprzez przetwarzanie płatności iDEAL (po którym następuje Zwrot płatności iDEAL). Ułatwia to uzupełnienie danych zlecenia, w szczególności danych rachunku dłużnika.
W rezultacie Klient otrzyma upoważnienie SEPA DD, które będzie gotowe do wykorzystania w przyszłości w płatnościach z wykorzystaniem Bieżącej Operacji odbioru SEPA DD, zainicjowanej przez Sprzedawcę.
Aby zainicjować tę operację, należy wykonać łącze API Get SEPA DD Payment Link.
Jak uzyskać łącze do płatności z poleceniem zapłaty SEPA
Konieczne jest pobranie łącza płatniczego SEPA Direct Debit, ponieważ jest ono integralną częścią realizacji transakcji.
Dalsze szczegóły dotyczące tego procesu opisano poniżej:
Punkty końcowe:
Środowisko | URL | Metoda działania i endpointy | Opis działania |
---|---|---|---|
PROD | api.sibsgateway.com | POST {version-id}/payments/{id}/sepa/payment-link | Przeprowadzenie transakcji i przekierowanie użytkownika do hosta płatności. |
TEST | stargate-cer.qly.site[1|2].sibs.pt | POST {version-id}/payments/{id}/sepa/payment-link | Przeprowadzenie transakcji i przekierowanie użytkownika do hosta płatności. |
Upewnij się, że uwzględniono te istotne elementy, jak określono:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Ścieżka | id | Ciąg | Obowiązkowe | Służy do identyfikacji transakcji |
Parametry nagłówka:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Header | Content-Type | Ciąg | Obowiązkowe | application/json |
Request Header | Autoryzacja | Ciąg | Obowiązkowe | Podsumowanie autoryzacji |
Request parameters:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Body | userAcceptanceIndicator | logiczna | Obowiązkowe | Wskazuje, czy użytkownik zaakceptował Regulamin w celu kontynuowania płatności. |
Request Body | gatewayId | Ciąg | Obowiązkowe | Identyfikator kanału płatności dla kanału, którego klient zamierza użyć do dokonania płatności. Możliwe wartosci to: ’ideal’ – iDEAL; |
Request Body | info | Info | Obowiązkowe | Obiekt definiujący dodatkowe informacje o transakcji. |
Request Body.info | deviceInfo | DeviceInfo | Opcjonalnie | Obiekt definiujący informacje o urządzeniu klienta. |
Request Body.info.deviceInfo | browserAcceptHeader | string | Opcjonalnie | Browser Accept Header |
Request Body.info.deviceInfo | browserJavaEnabled | string | Opcjonalnie | Browser Java Enabled |
Request Body.info.deviceInfo | browserLanguage | string | Opcjonalnie | browser Language |
Request Body.info.deviceInfo | browserColorDepth | string | Opcjonalnie | browser Color Depth |
Request Body.info.deviceInfo | browserScreenHeight | string | Opcjonalnie | browser Screen Height |
Request Body.info.deviceInfo | browserScreenWidth | string | Opcjonalnie | browser Screen Width |
Request Body.info.deviceInfo | browserTZ | string | Opcjonalnie | Browser Time Zone |
Request Body.info.deviceInfo | browserUserAgent | string | Opcjonalnie | Browser User Agent |
Request Body.info.deviceInfo | systemFamily | string | Opcjonalnie | System Family |
Request Body.info.deviceInfo | systemVersion | string | Opcjonalnie | System Version |
Request Body.info.deviceInfo | systemArchitecture | string | Opcjonalnie | System Architecture |
Request Body.info.deviceInfo | deviceManufacturer | string | Opcjonalnie | Device Manufacturer |
Request Body.info.deviceInfo | deviceModel | string | Opcjonalnie | Device Model |
Request Body.info.deviceInfo | deviceID | string | Opcjonalnie | Device Unique Identification |
Request Body.info.deviceInfo | applicationName | string | Opcjonalnie | Application Name |
Request Body.info.deviceInfo | applicationVersion | string | Opcjonalnie | Application Version |
Request Body.info.deviceInfo | geoLocalization | string | Opcjonalnie | Geolocation |
Request Body.info.deviceInfo | ipAddress | string | Opcjonalnie | IP Address |
Request Body | merchant | Merchant | Opcjonalnie | Merchant Data |
Request Body.merchant | merchantURL | string | Obowiązkowe | Merchant Shop URL for redirect. |
Request Body.merchant | appToAppURL | string | Opcjonalnie | Niestandardowy adres URL aplikacji do przekierowania klienta z powrotem do aplikacji, co spowodowało płatność. |
Request Body.info | accountInfo | AccountInfo | Opcjonalnie | Dane związane z kontem. Ma zastosowanie, gdy gatewayId to „ideal”. |
Request Body.info.accountInfo | holderName | Ciąg | Opcjonalnie | Account Holder Name. UTF-8 Format. Max100Text |
Request Body.info.accountInfo | customerCountry | Ciąg | Opcjonalnie | Customer Country Code. Alpha2 |
Request Body | transactionalScope | Ciąg | Obowiązkowe | Identyfikacja konkretnego zakresu transakcyjnego żądania Payment Link. Możliwe wartości: ’SPDD’ (SEPA Direct Debits) Exact4Text |
Request Body | mandate | mandate | Warunkowy | Występuje tylko wtedy, gdy transactionalScope to „SPDD” (polecenia zapłaty SEPA). Informacje o upoważnieniu |
Request Body.mandate | mandateId | Ciąg | Obowiązkowe | Identyfikacja zasobu upoważnienia do polecenia zapłaty. Odnosi się do numeru Autoryzacji Obciążenia. Max35Text |
Request Body.mandate | mandateDescription | Ciąg | Obowiązkowe | Opis kontekstu zasobu upoważnienia do polecenia zapłaty. Max256Text |
Request Body.mandate | frequency | FrequencyTypeCode | Obowiązkowe | Regularność, z jaką instrukcje mają być tworzone i przetwarzane. „OOFF” – „One-Off” (Dyspozycja polecenia zapłaty, w przypadku której upoważnienie dłużnika jest wykorzystywane do zainicjowania pojedynczej transakcji polecenia zapłaty.) „RCUR” – „Recurring” (Dyspozycja polecenia zapłaty, w przypadku której autoryzacja dłużnika jest wykorzystywana do regularnych transakcji polecenia zapłaty inicjowanych przez wierzyciela) Exact4Text |
Request Body | creditor | creditor | Obowiązkowe | Informacje o wierzycielu |
Request Body.creditor | creditorId | Ciąg | Obowiązkowe | Identyfikacja wierzycieli, np. identyfikator wierzyciela SEPA. Max35Text |
Request Body | debtor | debtor | Obowiązkowe | Informacje o dłużniku |
Request Body.debtor | customerFullName | Ciąg | Obowiązkowe | Imię i nazwisko klienta. Max140Text |
Request Body.debtor | customerEmail | Ciąg | Obowiązkowe | E-mail klienta. Max255Text |
Request Body.debtor | customerAddress | Ciąg | Obowiązkowe | Adres klienta. Max140Text |
Request Body.debtor | customerAddressPostalCode | Ciąg | Obowiązkowe | Kod pocztowy adresu klienta. Max16Text |
Request Body.debtor | customerAddressCity | Ciąg | Obowiązkowe | Adres klienta miasto. Max35Text |
Request Body.debtor | customerAddressCountry | Ciąg | Obowiązkowe | Kraj adresu klienta. ISO Alpha2 |
Request Body | terminalCode | Integer | Obowiązkowe | Kod terminala MaxInclusive value=”999999999″ |
Oto przykład, jak utworzyć upoważnienie za pomocą iDeal:
{
"terminalCode": {{TerminalIDPPRO}},
"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": "User",
"customerCountry": "NL"
}
},
"mandate": {
"mandateId": "mandateID",
"mandateDescription": "mandateDescription",
"frequency": "OOFF",
"serviceType": "CORE"
},
"creditor": {
"creditorId": "NL89ZZZOP4GBH51AL8LS3DY1QG"
},
"debtor": {
"customerFullName": "Testing Customer Name",
"customerEmail": "email@provider.com",
"customerAddress": "Full Address testing",
"customerAddressPostalCode": "1011AA",
"customerAddressCity": "TestCity",
"customerAddressCountry": "NL"
},
"merchant": {
"merchantURL": "https://egadget2.azurewebsites.net/#/returns?id={{transactionId}}"
},
"transactionalScope": "SPDD"
}
Następnie można wykonać operację „Get Status”, aby sprawdzić status.
W rezultacie otrzymasz TokenValue, który będzie używany w kolejnych krokach.
Nagłówek HTTP Authorization jest ustawiony na Bearer token, 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
Następnie konieczne jest natychmiastowe przekierowanie użytkownika do hosta płatności.
Krok 3: Przedstawienie polecenia zapłaty SEPA
Operacja SEPA DD Collection obejmuje pobieranie informacji przechowywanych podczas tworzenia upoważnienia między wierzycielem a dłużnikiem.
Interfejs, do którego ma dostęp Akceptant, aby umożliwić wykonanie operacji pobrania polecenia zapłaty Present SEPA za pośrednictwem bramki płatniczej SIBS, z wykorzystaniem interfejsu API Frontend.
Gdy inicjowana jest usługa Present SEPA DD Collection, pobierane są informacje zarejestrowane podczas tworzenia upoważnienia obejmującego Wierzyciela i Dłużnika. Wynikowa odpowiedź wskazuje status transakcji.
Punkty końcowe:
Środowisko | URL | Metoda działania i endpointy | Opis działania |
---|---|---|---|
PROD | api.sibsgateway.com | POST {version-id}/mandates/{token-id}/sepadd/collect | Żąda danych zarejestrowanych przez utworzenie upoważnienia przy użyciu metody SEPA DD Collection. |
TEST | stargate-cer.qly.site[1|2].sibs.pt | POST {version-id}/mandates/{token-id}/sepadd/collect | Żąda danych zarejestrowanych przez utworzenie upoważnienia przy użyciu metody SEPA DD Collection. |
Pamiętaj, aby uwzględnić te istotne elementy zgodnie z instrukcjami:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Ścieżka | token-id | Ciąg | Warunkowy | Identyfikator upoważnienia |
Parametry nagłówka:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Header | Content-Type | Ciąg | Obowiązkowe | application/json |
Request Header | authorization | Ciąg | Obowiązkowe | Bearer Token. W oparciu o uwierzytelnianie OAuth2 wykonywane w kroku wstępnym. |
Request Header | x-ibm-client-id | Ciąg | Obowiązkowe | Token identyfikujący organizację klienta. Jest on dostarczany podczas procesu wdrażania i musi być używany w każdym połączeniu. |
Request parameters:
Location | Element danych | Typ | Stan | Opis |
---|---|---|---|---|
Request Body | info | Info | Obowiązkowe | Obiekt definiujący dodatkowe informacje o transakcji. |
Request Body.info | customData | customData | Obowiązkowe | Key Value tuple array. |
Request Body.info.customData | key | string | Opcjonalnie | |
Request Body.info.customData | value | string | Opcjonalnie | |
Request Body | merchant | merchant | Obowiązkowe | Obiekt definiujący merchanta. |
Request Body.merchant | terminalId | string | Obowiązkowe | Identyfikacja Terminala merchanta. Maksymalna długość to 10. |
Request Body.merchant | merchantTransactionId | string | Obowiązkowe | Unikalny identyfikator używany przez sprzedawcę. Maksymalna długość to 35. |
Request Body.merchant | transactionDescription | string | Opcjonalnie | Krótki opis transakcji handlowych. Maksymalna długość to 256. |
Request Body | mandate | mandate | Obowiązkowe | Szczegółowe dane dotyczące istniejącego upoważnienia między wierzycielem a dłużnikiem. |
Request Body.mandate | tokenId | string | Obowiązkowe | Wartość tokena związana z identyfikatorem upoważnienia. Maksymalna długość to 35. |
Request Body.mandate | amount | amount | Obowiązkowe | Parametr z wartością i walutą transakcji. |
Request Body.mandate.amount | value | liczba (podwójna) | Obowiązkowe | Kwota do pobrania. |
Request Body.mandate.amount | currency | currencyCode | Obowiązkowe | Waluta użyta w transakcji. ISO 4217 Alpha-3 Code. |
Request Body.mandate | dueDate | string | Obowiązkowe | Termin odbioru. Data. |
Oto przykład, jak wykonać pobranie upoważnienia:
{
"merchant": {
"terminalId": "{{TerminalIDPPRO}}",
"channel": "web",
"merchantTransactionId": "7235666",
"transactionDescription": "transaction short description",
"shopURL": "https://mytest.e-shop.pl/"
},
"mandate": {
"tokenId": "{{tokenId}}",
"amount": {
"value": 1,
"currency": "EUR"
},
"dueDate": "{{dueDate}}"
},
"customer": {
"customerInfo": [
{
"key": "customerName",
"value": "Test Name"
},
{
"key": "customerEmail",
"value": "email@provider.com"
}
]
}
}
Wskazanie pomyślnej odpowiedzi technicznej obejmuje status HTTP-200 i „returnStatus.statusCode” o wartości „000” w odpowiedzi SEPA DD Collection Response.
Krok 4: Uzyskaj szczegóły tokena SEPA DD
Dodatkowo należy wykonać operację „Get Token Details”, jak opisano poniżej, aby sprawdzić informacje o mandacie w dowolnym momencie:
GET version-id/token/details
Nagłówki żądań:
Authorization: ‘Bearer <AuthToken>’
X-IBM-Client-Id: ‘<ClientId>’
Content-Type: application/json
Wskazanie pomyślnej odpowiedzi SEPA DD Collection obejmuje status HTTP-200. Zawiera również token „status”, który może mieć różne wartości, jak pokazano w poniższej tabeli.
Token „status” | Krótki opis tokena „status” |
---|---|
INTT | Zainicjowany |
PDNG | W toku |
ACTV | Aktywny |
INCT | Nieaktywny |
SSPN | Zawieszony |
EXPR | Wygasły |
CNCL | Anulowany |
RJCT | Odrzucony |
RFSD | Odmowa |