Proces wdrażania oparty na API (FULL CODE) eliminuje potrzebę ręcznego wdrażania poprzez automatyczne generowanie submerchantów, placówek, cenników, terminali i odpowiadających im danych uwierzytelniających.
Sprawdź poniżej dostępne endpointy środowiska:
Środowisko | URL | Metoda działania i endpointy | Opis działania |
---|---|---|---|
PROD | api.sibsgateway.com | POST api/onboarding/version-id/ sponsored-merchant | Aby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi. |
TEST | stargate-cer.qly.site1.sibs.pt | POST api/onboarding/version-id/ sponsored-merchant | Aby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi. |
Sandbox | sandbox.sibsgateway.com | POST api/onboarding/version-id/ sponsored-merchant | Wykonuje żądanie w celu utworzenia rekordu submerchanta. |
Aby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi.
Header parameters:
Parameter | Rodzaj | Warunek | Opis |
---|---|---|---|
Typ zawartości | String | Wymagane | application/json. |
X-Request-ID | String | Wymagane | Identyfikator żądania, unikalny dla połączenia, określony przez stronę inicjującą. |
x-ibm-client-id | String | Wymagane | Token identyfikujący organizację klienta. Jest on dostarczany podczas procesu wdrażania i musi być używany w każdym połączeniu. |
Nagłówek żądania:
Element danych | Type Length | Warunek | Opis |
---|---|---|---|
merchant | String | Wymagane | Object that defines the Merchant. |
name | String <=90 | Wymagane | Pełna nazwa firmy zgodnie z danymi w CEIDG |
phone | String <=16 | Wymagane | Numer telefonu firmy |
String <=55 | Wymagane | Adres e-mail firmy | |
NIP | String 8<11 | Wymagane | NIP zgodnie z CEIDG |
mcc | Numer 4-4 | Wymagane | Kod MCC firmy |
pkd | String 7-7 | Wymagane | PKD spółki (główne) według danych CEIDG |
merchantType | String “Merchant” “Sponsored Merchant” Default: “Sponsored Merchant” | Wymagane | Rodzaj merchanta |
address | String | Wymagane | Adres merchanta |
street | String <=70 | Wymagane | Ulica |
postalcode | String <=25 | Wymagane | Kod pocztowy |
locality | String <=20 | Wymagane | Miejscowość |
country | String 3-3 Format ISO 3166, Number 3 code (ex: Poland – 616) | Wymagane | Kraj |
website | String <=100 | Wymagane | Adres strony www |
signedAgreements | Boolean “True” “False” | Wymagane | Potwierdzenie podpisanych umów |
backofficeEmail | String <=55 | Wymagane | SIBS Backoffice email address |
pepStatus | String “Active” “Inactive” Default: “Active” | Wymagane | Potentially Exposed Person status |
beneficialOwnersData | String <=40 | Warunkowy | Dane beneficjentów rzeczywistych. Obowiązkowe tylko, jeśli status PEP to „Aktywny” |
Właściciel | String | Wymagane | Object that defines the Company’s Owner account. Możliwe jest dodanie więcej niż jednego wpisu dla tego parametru |
name | String <=40 | Wymagane | Nazwa właściciela |
phone | String <=16 | Warunkowy | Numer telefonu właściciela Należy podać telefon lub adres e-mail (przynajmniej jeden z nich). |
String <=55 | Warunkowy | E-mail właściciela Należy podać telefon lub adres e-mail (przynajmniej jeden z nich). | |
address | String <=100 | Opcjonalne | Adres właściciela |
tin | Numer 8<11 | Wymagane | Numer NIP właściciela |
integrationSupportContact | String | Opcjonalne | Object that defines an integration support contact |
name | String <=20 | Opcjonalne | Imię i nazwisko osoby kontaktowej ds. wsparcia integracji |
phone | String <=16 | Warunkowy | Numer telefonu Kontakt dla wsparcia integracji. Należy podać telefon lub adres e-mail (przynajmniej jeden z nich). |
String <=55 | Warunkowy | Adres e-mail Kontakt w sprawie wsparcia integracji. Należy podać telefon lub adres e-mail (przynajmniej jeden z nich). | |
shop | Wymagane | Object that defines the Establishment | |
name | String <=40 | Opcjonalne | Establishment Name. Gdy to pole jest puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta. |
address | String | Opcjonalne | Establishment Address Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta. |
street | String <=70 | Opcjonalne | Ulica |
postalcode | String <=25 | Opcjonalne | Kod pocztowy |
locality | String <=20 | Opcjonalne | Miejscowość |
country | String 3-3 Format ISO 3166, Number 3 code (ex: Poland – 616) | Opcjonalne | Kraj |
String <=55 | Opcjonalne | Establishment Email Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta. | |
phoneNumber | String <=16 | Opcjonalne | Establishment Phone Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta. |
typ | String “Banks” “Wholesale“ “Supermarket“ “Retail“ “Gas Stations“ “Restaurants“ “Hotels“ “Virtual Establishment“ “Foreign“ “Service Provider“ “Service Entity“ “EMV Tolls“ | Wymagane | Establishment Type |
mcc | String 4-4 | Wymagane | Establishment MCC |
pkd | String 7 Format tego parametru będzie następujący: 00.00.A (zobacz listę: https://www.biznes.gov.pl/en/table-pkd-code) | Wymagane | Establishment CAE |
InvoiceIndicator | String “Payment Facilitator” “Sponsored Merchant” Default: “Payment Facilitator” | Wymagane | Establishment Invoice Indicator |
products | String | Wymagane | Object that defines the Establishment Products |
productID | String „XPAY-APPL-0-0”, „XPAY-GGLE-0-0”, „INTP-BLIK-0-0”, „INTP-BLIK-1-0”, „BLMD-PYBL-0-0”, „KEVN-PYBL-0-0”, „MCC-1-C”, „MCC-1-D”, „MCC-1-P”, „MCC-2-C”, „MCC-2-P”, „MCC-4-C”, „MCC-4-D”, „MCC-4-P”, „MSI-1-D”, „MSI-1-P”, „MSI-2-D”, „MSI-2-P”, „VIS-01-C”, „VIS-01-D”, „VIS-01-P”, „VIS-02-C”, „VIS-02-D”, „VIS-02-P”, „VPY-03-D”, „VPY-03-P”, „VSL-01-C”, „VSL-01-D”, „VSL-01-P” | Wymagane | Metody płatności wybrane przez klienta. Product ID’s to activate: “INTP-BLIK-0-0” InterPay-BLIK-Domestic “INTP-BLIK-1-0” – InterPay-BLIK-OneClick “BLMD-PYBL-0-0” BlueMedia-PayByLink-Domestic “KEVN-PYBL-0-0” – PayByLink-Kevin “MCC-1-C” – Mastercard-Mastercard-Consumer-Credit “MCC-1-D” – Mastercard-Mastercard-Consumer-Debit “MCC-1-P” – Mastercard-Mastercard-Consumer-Prepaid “MCC-2-C” – Mastercard-Mastercard-Commercial-Credit “MCC-2-P” – Mastercard-Mastercard-Commercial-Prepaid “MCC-4-C” – Mastercard-Mastercard-Other-Credit “MCC-4-D” – Mastercard-Mastercard-Other-Debit “MCC-4-P” – Mastercard-Mastercard-Other-Prepaid “MSI-1-D” – Mastercard-Maestro-Consumer-Debit “MSI-1-P” – Mastercard-Maestro-Consumer-Prepaid “MSI-2-D” – Mastercard-Maestro-Commercial-Debit “MSI-2-P” – Mastercard-Maestro-Commercial-Prepaid “VIS-02-C” – VISA-VISA-Commercial-Credit “VIS-02-D” – VISA-VISA-Commercial-Debit “VIS-02-P” – VISA-VISA-Commercial-Prepaid “VIS-01-C” – VISA-VISA-Consumer-Credit “VIS-01-D” – VISA-VISA-Consumer-Debit “VIS-01-P” – VISA-VISA-Consumer-Prepaid “VPY-03-D” – VISA-VPAY-VPAY-Debit “VPY-03-P” – VISA-VPAY-VPAY-Prepaid “VSL-01-C” – VISA-VISA Electron-Consumer-Credit “VSL-01-D” – VISA-VISA Electron-Consumer-Debit “VSL-01-P” – VISA-VISA Electron-Consumer-Prepaid |
productInvoiceIndicator | String “Payment Facilitator” “Sponsored Merchant” Default: “Payment Facilitator” | Opcjonalne | Product Invoice Indicator |
paymentMethodType | String “Direct Debit” “Bank Transfer” Default: “Direct Debit” | Warunkowy | Typ metody płatności do fakturowania submerchanta. To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
invoiceEmail | String <=55 | Warunkowy | Invoice email address. To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
payout | String | Warunkowy | Object that defines the Payout Information. To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
bankAccount | String 26-26 | Warunkowy | Sponsored Merchants bank account To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
iban | String <=34 | Warunkowy | Sponsored Merchants iban To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
bic | String 8<11 | Warunkowy | Sponsored Merchants bic To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant” |
numDaysPayout | Numer | Opcjonalne | Sponsored Merchants Payout Number of Days Zarezerwowane do wykorzystania w przyszłości. |
maxPercentLowRiskExemptions | Numer <=100 | Opcjonalne | Maksymalny procent wyłączeń niskiego ryzyka dopuszczalny w systemie lub procesie. |
scaExemption | String Default „0” | Opcjonalne | Pole do oceny zwolnień SCA musi być wypełnione cyfrą 1, aby zezwolić i 0, aby nie zezwolić. |
typeOfIntegration | String “S2S” “SDK” “Plugin” Default “S2S” | Wymagane | Typ integracji submerchanta |
webhookNotification | String | Warunkowy | Object that defines the webhook configuration details Mandatory if typeOfIntegration is “Plugin”. |
typ | String “URL” “Email” | Warunkowy | Typ powiadomień webhook. Mandatory if typeOfIntegration is “Plugin”. If “Plugin”, the value must be “URL” |
Wartość | String | Warunkowy | Adres e-mail dostawy (dla typu e-mail) lub adres URL HTTP(S) Mandatory if typeOfIntegration is “Plugin” |
supportEmail | String <=55 | Warunkowy | Adres e-mail, na który wszystkie nieudane połączenia SPG Webhook będą zgłaszane do końca dnia. Mandatory if typeOfIntegration is “Plugin” |
securityKey | String <=32 | Opcjonalne | Pseudolosowy klucz symetryczny, który zostanie użyty do zaszyfrowania zawartości webhooka. |
Ponizej znajduje się przykład żadania POST
{
"merchant": {
"name": "JOHN DOE",
"phone": "505102923",
"email": "fds@op.pl",
"nip": "6831968575",
"mcc": "5969",
"pkd": "86.90.E",
"merchantType": "Sponsored Merchant",
"address": {
"street": "UL IMAGINARY",
"postalCode": "85-132",
"locality": "BYDGOSZCZ",
"country": "616"
},
"website": "www.yolo.pl",
"signedAgreements": true,
"backofficeEmail": "fds@op.pl",
"pepStatus": "Inactive",
"owners": [
{
"name": "JANE DOE",
"phone": "505102923",
"email": "fds@op.pl",
"address": "UL UGORY 85-132 BYDGOSZCZ POLSKA",
"tin": "6831968575"
}
],
"shop": {
"name": "YOLO",
"address": {
"street": "UL IMAGINARY",
"postalCode": "85-132",
"locality": "BYDGOSZCZ",
"country": "616"
},
"email": "fds@op.pl",
"phoneNumber": "505102923",
"type": "Retail",
"mcc": "5969",
"pkd": "86.90.E",
"invoiceIndicator": "Payment Facilitator",
"products": [
{
"productId": "INTP-BLIK-0-0",
"productInvoiceIndicator": "Payment Facilitator"
},
{
"productId": "KEVN-PYBL-0-0",
"productInvoiceIndicator": "Payment Facilitator"
}
],
"paymentMethodType": "Bank Transfer",
"invoiceEmail": "fds@op.pl",
"payout": {
"bankAccount": "50116022020000000127761999",
"iban": "PL50116022020000000127761999",
"bic": "BIGBPLPW",
"numDaysPayout": 1.0
},
"typeOfIntegration": "S2S",
"webhookNotification": {
"type": "URL",
"value": ""
},
"supportEmail": "",
"securityKey": ""
}
}
}
Po wykonaniu tej czynności interfejs API (FULL CODE) odpowie jednym z dwóch poniższych kodów stanu:
Kod statusu | Wiadomość | TransactionStatus |
---|---|---|
000 | Sukces | “ACT” (Accepted Technical Validation) |
999 | Unexpected Error | “RJT” (Rejected) |
Oto przykład udanej odpowiedzi onboardingowej:
{
"transactionStatus": "ACT",
"returnStatus": {
"statusCode": "000" "statusMsg": "Success",
"statusDescription": "string"
}
}
Otrzymasz również onboarding Webhook, który zawiera następujące szczegóły onboardingu sprzedawcy i dane uwierzytelniające.
Oto zredagowany przykład udanego powiadomienia Webhook:
{
"NotifyRequest": {
"TrackingId": "00caa675-f811-45ed-aee3-b84c22ac3efc",
"TIN": "000****123",
"MerchantId": "PL-000****123-1",
"ShopId": "SH-PL-000000321",
"TerminalId": "POS000159",
"ErrCode": "CRM000",
"ErrDesc": "Success",
"Agreements": {
"AgreementType": "PLKV"
},
"Credentials": {
"ApiClientId": "2a69a780-****-****-****-1c6308af85f0",
"ApiClientSecret": "K1rK*******************************0uU6",
"TerminalToken": "0277a2c645e93c43f59ce867ee55498293*******5272db028ad9c9fa250edd04d9cac5d42910950e2acb82034093d14830e649c3d6df2cc0f92268f79"
}
}
}
Obsługa błędów
Jeśli w procesie onboardingu wystąpi odrzucenie, otrzymana zostanie synchroniczna odpowiedź zawierająca status transakcji z wartością RJCT (odrzucony) i kodem statusu 999.
Ta odpowiedź będzie zawierać kod błędu i pola komunikatów, które mogą pomóc w zidentyfikowaniu i rozwiązaniu problemu.
Przykład odrzuconej odpowiedzi onboardingowej:
{
"transactionStatus": "RJCT",
"returnStatus": {
"statusCode": "999",
"statusMsg": "Internal Server Error",
"statusDescription": "When invoiceIndicator is Sponsored Merchant invoiceEmail and payout object are mandatory."
}
}
Kody statusu Webhooks
Poniżej znajduje się zakres kodów statusu i wiadomości, które można odbierać za pośrednictwem webhooków.
Kod statusu | Wiadomość |
---|---|
CRM000 | Success. |
CRM001 | Sponsored Merchant already exists. |
CRM002 | PKD is invalid. |
CRM003 | MCC code is invalid. |
CRM004 | NIP is invalid. |
CRM005 | IBAN is invalid. |
CRM006 | Product list doesn’t comply with Payment Facilitator agreement. |
CRM007 | Required field [field_name] missing. |
CRM008 | Payment Facilitator is invalid. |
CRM009 | Product [product] is duplicated. |
CRM010 | Invoice indicator is invalid. |
CRM011 | This Product of Establishment has already been added as an Establishment Product. |
CRM012 | Product code [product_code] is invalid. |
CRM013 | Sponsored Merchant´s Country doesn’t match any Payment Facilitator´s Establishment Country. |
CRM014 | Sponsored Merchant Country does not match the Payment Facilitator Country. |
CRM015 | The product [product1] has a dependecy on [product2] and this is not part of the products list. |
CRM016 | The product [product1] is incompatible with [product2] and both are currenctly on the products list. |
CRM017 | The product [product1] is mandatory with [product2] and this is not part of the products list. |
CRM018 | Invalid Type Of Integration. |
CRM019 | Webhook data is required for given Type Of Integration. |
CRM020 | Invalid Webhook Notification for given Type Of Integration. |
CRM021 | Invalid Webhook Notification. |
CRM022 | Webhook Notification Value is not defined for given Webhook Notification. |
CRM023 | Webhook Notification Value must be a valid email address. |
CRM024 | Webhook Notification Value must be a valid http(s) url address. |
CRM025 | Order still in progress for TIN [TIN_value]. |
CRM026 | It’s not Possible to update Merchant. Please retry Later. |
CRM027 | It’s not Possible to update Establishment. Please retry Later. |
CRM028 | Establishment is invalid for referenced Sponsored Merchant. |
CRM029 | Establishment ExternalID already exists. |
CRM030 | Order still in progress for Establishment [establishment_id]. |
CRM031 | TerminalID already exists. |
CRM032 | Payment Facilitator is invalid. |
CRM033 | Sponsored Merchant is invalid. |
CRM034 | Establishment is invalid. |
CRM035 | Terminal is invalid. |
CRM036 | Last Terminal cannot be cancelled. |
CRM037 | Product is not valid for Establishment. |
CRM038 | [PaymentFacilitatorId] is not a Payment Facilitator. |
CRM039 | Order still in progress for Merchant [merchant_id]. |
CRM040 | No Country found for specified [CountryCode]. |
CRM999 | Unexpected Error. |