Doświadcz szybkich i łatwych transakcji dzięki MB WAY — najpopularniejszej w Portugalii metodzie płatności online, której zaufały miliony osób.
Jako wiodący w kraju portfel elektroniczny MB WAY obsługuje ponad 5 milionów użytkowników, a liczba ta rośnie z każdym kwartałem.
Metoda płatności | Kategoria | Kraje | Waluty | Funkcjonalności | Integracje |
---|---|---|---|---|---|
MB WAY | Cyfrowy portfel | Portugalia | EUR | Autoryzacja Przechwytywanie Jednorazowy zakup Częściowy zwrot kosztów Zwroty kosztów | API Formularz Płatności |
Jak korzystać z MB WAY
Wykonaj poniższe kroki, aby dokonać płatności:
Wybierz MB WAY jako metodę płatności.
Wprowadź numer telefonu komórkowego powiązany z aplikacją MB WAY.
Otrzymasz prośbę o płatność na swoim urządzeniu mobilnym. Wybierz kartę płatniczą, sprawdź szczegóły i kwotę płatności, a następnie wprowadź kod PIN, aby autoryzować płatność.
Na koniec otrzymasz potwierdzenie płatności na swoim urządzeniu mobilnym. Potwierdzenie może być również widoczne na stronie internetowej sprzedawcy.
Jak to działa
Krok 1: Utwórz zamówienie
Krok 2: Płatność MB WAY
Krok 3: Uzyskaj status płatności
Krok 1: Utwórz zamówienie
Utwórz zamówienie z MB WAY („MBWY”) jako wybraną metodą płatności (transaction.paymentMethod).
Krok 2: Płatność MB WAY
Postępuj zgodnie z poniższymi instrukcjami, aby uzyskać link do płatności, przekierowujący klienta na bezpieczną stronę płatności w celu uwierzytelnienia i autoryzacji płatności.
Upewnij się, że żądanie zawiera Nagłówek Autoryzacji z podpisem transakcji (transactionSignature) uzyskanym w Kroku 1.
Punkty końcowe
Środowisko | URL | Metoda działania i punkt końcowy | Opis operacji |
---|---|---|---|
PROD | api.sibsgateway.com | POST {version-id}/payments/{id}/mbway/purchase | Wykonaj transakcję |
TEST | stargate-cer.qly.site[1|2].sibs.pt | POST {version-id}/payments/{{id}/mbway/purchase | Wykonaj transakcję |
Należy uwzględnić następujące elementy zgodnie ze specyfikacją:
Lokalizacja | Element danych | Typ | Warunek | Opis |
---|---|---|---|---|
Path | id | String | Obowiązkowy | Służy do identyfikacji transakcji |
Parametry nagłówka:
Lokalizacja | Element danych | Typ | Warunek | Opis |
---|---|---|---|---|
Request Header | Content-Type | String | Obowiązkowy | application/json |
Request Header | Authorization | String | Obowiązkowy | Authorization Digest |
Parametry żądania:
Lokalizacja | Element danych | Typ | Warunek | Opis |
---|---|---|---|---|
Request Body | customerPhone | string | Obowiązkowy | Numer telefonu klienta. |
Request Body | info | Info | Obowiązkowy | Obiekt definiujący dodatkowe informacje o transakcji. |
Request Body.info | deviceInfo | DeviceInfo | Opcjonalny | Obiekt definiujący informacje o urządzeniu klienta. |
Request Body.info.deviceInfo | browserAcceptHeader | string | Opcjonalny | Browser Accept Header |
Request Body.info.deviceInfo | browserJavaEnabled | string | Opcjonalny | Browser Java Enabled |
Request Body.info.deviceInfo | browserLanguage | string | Opcjonalny | browser Language |
Request Body.info.deviceInfo | browserColorDepth | string | Opcjonalny | browser Color Depth |
Request Body.info.deviceInfo | browserScreenHeight | string | Opcjonalny | browser Screen Height |
Request Body.info.deviceInfo | browserScreenWidth | string | Opcjonalny | browser Screen Width |
Request Body.info.deviceInfo | browserTZ | string | Opcjonalny | Browser Time Zone |
Request Body.info.deviceInfo | browserUserAgent | string | Opcjonalny | Browser User Agent |
Request Body.info.deviceInfo | systemFamily | string | Opcjonalny | System Family |
Request Body.info.deviceInfo | systemVersion | string | Opcjonalny | System Version |
Request Body.info.deviceInfo | systemArchitecture | string | Opcjonalny | System Architecture |
Request Body.info.deviceInfo | deviceManufacturer | string | Opcjonalny | Device Manufacturer |
Request Body.info.deviceInfo | deviceModel | string | Opcjonalny | Device Model |
Request Body.info.deviceInfo | deviceID | deviceID | Opcjonalny | Device Unique Identification |
Request Body.info.deviceInfo | applicationName | string | Opcjonalny | Application Name |
Request Body.info.deviceInfo | applicationVersion | string | Optional | Application Version |
Request Body.info.deviceInfo | geoLocalization | string | Opcjonalny | Geolocation |
Request Body.info.deviceInfo | ipAddress | string | Opcjonalny | IP Address |
Request Body | customerInfo | CustomerInfo | Opcjonalny | Key Value tuple array. |
Request Body.customerInfo | key | string | Obowiązkowy | Used to supply “customerName”, “customerEmail”. |
Request Body.customerInfo | value | string | Obowiązkowy | Used to supply “customerName”, “customerEmail”. |
Request Body | actionProcessed | ActionProcessed | Opcjonalny | |
Request Body.ActionProcessed | id | string | Opcjonalny | Merchant Shop URL for redirect. |
Request Body.ActionProcessed | type | String | Opcjonalny | Możliwe wartości to („TREEDS_METHOD”, „THREEDS_CHALLENGE”, „DCC”). |
Request Body.ActionProcessed | executed | boolean | Opcjonalny |
Poniżej przykład żądania:
{
"customerPhone": "+351912345678",
"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
}
],
"actionProcessed": {
"id": "ACTION123456789",
"type": "TREEDS_METHOD",
"executed": true
}
}
}
Po pomyślnym zakończeniu operacji otrzymany zostanie status płatności (paymentStatus) „oczekujący”.
Następnie użytkownik zostaje przekierowany do środowiska potwierdzenia płatności, po czym powróci do adresu URL sprzedawcy.
Krok 3: Uzyskaj status płatności
W dowolnym momencie możesz wykonać operację „Uzyskaj status” (“Get Status”), aby sprawdzić status.
Nagłówek autoryzacji HTTP jest ustawiony na Bearer token, tak jak był używany podczas początkowej realizacji transakcji.
GET {transactionID}/status
Przykład adresu 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 wyniku | statusMsg | Opis | Akcja |
---|---|---|---|
HTTP-200 | Sukces | Odpowiedź powodzenia | N/A |
HTTP-400 | Zł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-401 | Nieautoryzowany | W 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-403 | Zabroniony | Identyfikator 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-405 | Niedozwolona metoda | Zastosowana metoda HTTP nie jest zgodna z żadną dostępną definicją API. | Sprawdź w API Market poprawną metodę HTTP. |
HTTP-429 | Zbyt 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-500 | Wewnętrzny błąd serwera | Wywoł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-503 | Serwis niedostępny | Wywoł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. |