Skip to content

Onboarding Merchanta

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:

ŚrodowiskoURLMetoda działania i endpointyOpis działania
PRODapi.sibsgateway.comPOST api/onboarding/version-id/ sponsored-merchantAby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi.
TESTstargate-cer.qly.site1.sibs.ptPOST api/onboarding/version-id/ sponsored-merchantAby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi.
Sandboxsandbox.sibsgateway.comPOST api/onboarding/version-id/ sponsored-merchantWykonuje żądanie w celu utworzenia rekordu submerchanta.

Aby zainicjować ten proces, należy wykonać żądanie POST z następującymi danymi.

Header parameters:
ParameterRodzajWarunekOpis
Typ zawartościStringWymaganeapplication/json.
X-Request-IDStringWymaganeIdentyfikator żądania, unikalny dla połączenia, określony przez stronę inicjującą.
x-ibm-client-idStringWymaganeToken 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 danychType LengthWarunekOpis
merchantStringWymaganeObject that defines the Merchant.
nameString
<=90
WymaganePełna nazwa firmy zgodnie z danymi w CEIDG
phoneString
<=16
WymaganeNumer telefonu firmy
emailString
<=55
WymaganeAdres e-mail firmy
NIPString
8<11
WymaganeNIP zgodnie z CEIDG
mccNumer
4-4
WymaganeKod MCC firmy
pkdString
7-7
WymaganePKD spółki (główne) według danych CEIDG
merchantTypeString

“Merchant”
“Sponsored Merchant”
Default: “Sponsored Merchant”
WymaganeRodzaj merchanta
addressStringWymaganeAdres merchanta
streetString
<=70
WymaganeUlica
postalcodeString
<=25
WymaganeKod pocztowy
localityString
<=20
WymaganeMiejscowość
countryString
3-3
Format ISO 3166, Number 3 code (ex: Poland – 616)
WymaganeKraj
websiteString
<=100
WymaganeAdres strony www
signedAgreementsBoolean
“True”
“False”
WymaganePotwierdzenie podpisanych umów
backofficeEmailString
<=55
WymaganeSIBS Backoffice email address
pepStatusString
“Active”
“Inactive”
Default: “Active”
WymaganePotentially Exposed Person status
beneficialOwnersDataString
<=40
WarunkowyDane beneficjentów rzeczywistych.
Obowiązkowe tylko, jeśli status PEP to „Aktywny”
WłaścicielStringWymaganeObject that defines the Company’s Owner account.
Możliwe jest dodanie więcej niż jednego wpisu dla tego parametru
nameString
<=40
WymaganeNazwa właściciela
phoneString
<=16
WarunkowyNumer telefonu właściciela
Należy podać telefon lub adres e-mail (przynajmniej jeden z nich).
emailString
<=55
WarunkowyE-mail właściciela
Należy podać telefon lub adres e-mail (przynajmniej jeden z nich).
addressString
<=100
OpcjonalneAdres właściciela
tinNumer
8<11
WymaganeNumer NIP właściciela
integrationSupportContactStringOpcjonalneObject that defines an integration support contact
nameString
<=20
OpcjonalneImię i nazwisko osoby kontaktowej ds. wsparcia integracji
phoneString
<=16
WarunkowyNumer telefonu Kontakt dla wsparcia integracji.
Należy podać telefon lub adres e-mail (przynajmniej jeden z nich).
emailString
<=55
WarunkowyAdres e-mail Kontakt w sprawie wsparcia integracji.
Należy podać telefon lub adres e-mail (przynajmniej jeden z nich).
shopWymaganeObject that defines the Establishment
nameString
<=40
OpcjonalneEstablishment Name.
Gdy to pole jest puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta.
addressStringOpcjonalneEstablishment Address
Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta.
streetString
<=70
OpcjonalneUlica
postalcodeString
<=25
OpcjonalneKod pocztowy
localityString
<=20
OpcjonalneMiejscowość
countryString
3-3
Format ISO 3166, Number 3 code (ex: Poland – 616)
OpcjonalneKraj
emailString
<=55
OpcjonalneEstablishment Email
Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta.
phoneNumberString
<=16
OpcjonalneEstablishment Phone
Gdy te pola są puste, uwzględniane będą wartości sparametryzowane na poziomie merchanta.
typString
“Banks”
“Wholesale“
“Supermarket“
“Retail“
“Gas Stations“
“Restaurants“
“Hotels“
“Virtual Establishment“
“Foreign“
“Service Provider“
“Service Entity“
“EMV Tolls“
WymaganeEstablishment Type
mccString
4-4
WymaganeEstablishment MCC
pkdString
7

Format tego parametru będzie następujący:
00.00.A
(zobacz listę: https://www.biznes.gov.pl/en/table-pkd-code)
WymaganeEstablishment CAE
InvoiceIndicatorString

“Payment Facilitator”
“Sponsored Merchant”
Default: “Payment Facilitator”
WymaganeEstablishment Invoice Indicator
productsStringWymaganeObject that defines the Establishment Products
productIDString
„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”
WymaganeMetody 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
productInvoiceIndicatorString
“Payment Facilitator”
“Sponsored Merchant”
Default: “Payment Facilitator”
OpcjonalneProduct Invoice Indicator
paymentMethodTypeString

“Direct Debit”
“Bank Transfer”
Default: “Direct Debit”
WarunkowyTyp metody płatności do fakturowania submerchanta. To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
invoiceEmailString
<=55
WarunkowyInvoice email address.
To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
payoutStringWarunkowyObject that defines the Payout Information.
To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
bankAccountString
26-26
WarunkowySponsored Merchants bank account
To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
ibanString
<=34
WarunkowySponsored Merchants iban
To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
bicString
8<11
WarunkowySponsored Merchants bic
To pole jest obowiązkowe, jeśli wskaźnik faktury to “Submerchant”
numDaysPayoutNumerOpcjonalneSponsored Merchants Payout Number of Days
Zarezerwowane do wykorzystania w przyszłości.
maxPercentLowRiskExemptionsNumer
<=100
OpcjonalneMaksymalny procent wyłączeń niskiego ryzyka dopuszczalny w systemie lub procesie.
scaExemptionString
Default „0”
OpcjonalnePole do oceny zwolnień SCA musi być wypełnione cyfrą 1, aby zezwolić i 0, aby nie zezwolić.
typeOfIntegrationString
“S2S”
“SDK”
“Plugin”
Default “S2S”
WymaganeTyp integracji submerchanta
webhookNotificationStringWarunkowyObject that defines the webhook configuration details
Mandatory if typeOfIntegration is “Plugin”.
typString
“URL”
“Email”
WarunkowyTyp powiadomień webhook.
Mandatory if typeOfIntegration is “Plugin”.
If “Plugin”, the value must be “URL”
WartośćStringWarunkowyAdres e-mail dostawy (dla typu e-mail) lub adres URL HTTP(S)
Mandatory if typeOfIntegration is “Plugin”
supportEmailString
<=55
WarunkowyAdres e-mail, na który wszystkie nieudane połączenia SPG Webhook będą zgłaszane do końca dnia.
Mandatory if typeOfIntegration is “Plugin”
securityKeyString
<=32
OpcjonalnePseudolosowy 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 statusuWiadomośćTransactionStatus
000Sukces“ACT” (Accepted Technical Validation)
999Unexpected 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 statusuWiadomość
CRM000Success.
CRM001Sponsored Merchant already exists.
CRM002PKD is invalid.
CRM003MCC code is invalid.
CRM004NIP is invalid.
CRM005IBAN is invalid.
CRM006Product list doesn’t comply with Payment Facilitator agreement.
CRM007Required field [field_name] missing.
CRM008Payment Facilitator is invalid.
CRM009Product [product] is duplicated.
CRM010Invoice indicator is invalid.
CRM011This Product of Establishment has already been added as an Establishment Product.
CRM012Product code [product_code] is invalid.
CRM013Sponsored Merchant´s Country doesn’t match any Payment Facilitator´s Establishment Country.
CRM014Sponsored Merchant Country does not match the Payment Facilitator Country.
CRM015The product [product1] has a dependecy on [product2] and this is not part of the products list.
CRM016The product [product1] is incompatible with [product2] and both are currenctly on the products list.
CRM017The product [product1] is mandatory with [product2] and this is not part of the products list.
CRM018Invalid Type Of Integration.
CRM019Webhook data is required for given Type Of Integration.
CRM020Invalid Webhook Notification for given Type Of Integration.
CRM021Invalid Webhook Notification.
CRM022Webhook Notification Value is not defined for given Webhook Notification.
CRM023Webhook Notification Value must be a valid email address.
CRM024Webhook Notification Value must be a valid http(s) url address.
CRM025Order still in progress for TIN [TIN_value].
CRM026It’s not Possible to update Merchant. Please retry Later.
CRM027It’s not Possible to update Establishment. Please retry Later.
CRM028Establishment is invalid for referenced Sponsored Merchant.
CRM029Establishment ExternalID already exists.
CRM030Order still in progress for Establishment [establishment_id].
CRM031TerminalID already exists.
CRM032Payment Facilitator is invalid.
CRM033Sponsored Merchant is invalid.
CRM034Establishment is invalid.
CRM035Terminal is invalid.
CRM036Last Terminal cannot be cancelled.
CRM037Product is not valid for Establishment.
CRM038[PaymentFacilitatorId] is not a Payment Facilitator.
CRM039Order still in progress for Merchant [merchant_id].
CRM040No Country found for specified [CountryCode].
CRM999Unexpected Error.