{"id":22722,"date":"2024-11-25T11:44:46","date_gmt":"2024-11-25T11:44:46","guid":{"rendered":"https:\/\/www.qly.docs.pay.sibs.com\/integracje\/sdk-wersja-beta\/android\/"},"modified":"2025-03-06T11:26:54","modified_gmt":"2025-03-06T11:26:54","slug":"android","status":"publish","type":"page","link":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/sibs-gateway-dokumentacja\/integracje\/sdk-wersja-beta\/android\/","title":{"rendered":"Android"},"content":{"rendered":"<!-- wp:themify-builder\/canvas \/-->\n\n\n<p>Post\u0119puj zgodnie z tym przewodnikiem, aby zintegrowa\u0107 bramk\u0119 p\u0142atno\u015bci SIBS z aplikacj\u0105 na Androida za pomoc\u0105 naszego pakietu SDK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 1: Instalacja SDK<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Pobierz plik: <strong><a class=\"download\" href=\"https:\/\/www.qly.docs.pay.sibs.com\/wp-content\/uploads\/2024\/12\/android-sibs-stargate-sdk-0.1.1.zip\">android-sibs-stargate-sdk-0.1.1<\/a><\/strong><\/li>\n\n\n\n<li>Skopiuj plik <strong>simply-connect-sdk.aar<\/strong> do folderu <strong>app\/libs<\/strong> w swoim projekcie.<\/li>\n\n\n\n<li>W sekcji \u201ezale\u017cno\u015bci\u201d w Twoim pliku <strong>app\/build.gradle<\/strong> zaimplementuj:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>\/\/native \/ https request\nimplementation 'androidx.constraintlayout:constraintlayout:2.1.4'\nimplementation \"androidx.appcompat:appcompat:1.6.0\"\nimplementation \"androidx.lifecycle:lifecycle-runtime-ktx:2.5.1\"\nimplementation 'com.google.android.material:material:1.5.0'\nimplementation 'androidx.constraintlayout:constraintlayout:2.1.4'\nimplementation 'androidx.navigation:navigation-fragment-ktx:2.7.7'\nimplementation 'androidx.navigation:navigation-ui-ktx:2.7.7'\n\n\/\/retrofit \/ https request\nimplementation \"com.squareup.okhttp3:okhttp:4.10.0\"\nimplementation 'com.squareup.okhttp3:logging-interceptor:4.10.0'\nimplementation \"com.squareup.retrofit2:retrofit:2.9.0\"\nimplementation 'com.squareup.retrofit2:converter-gson:2.9.0'\n\n\/\/gson\napi 'com.google.code.gson:gson:2.10.1'\n\n\/\/google wallet\napi \"com.google.android.gms:play-services-wallet:19.3.0\"\napi 'com.google.android.gms:play-services-base:18.4.0'<\/code><\/pre>\n\n\n\n<style type=\"text\/css\">\n\t#message-box-block_c2ca3fa63b08a3774d70fdd5ca771eeb {\n\t\t\/* Add styles that use ACF values here *\/\n\t}\n<\/style>\n\n<div id=\"message-box-block_c2ca3fa63b08a3774d70fdd5ca771eeb\" class=\"block-message-box\">\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t<div class='row notification'>\n\t\t\t\t  <div class='col'>\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.qly.docs.pay.sibs.com\/wp-content\/themes\/themify-ultra-child\/images\/msg_bell.svg\" alt=\"Notification\">\n\t\t\t\t  <\/div>\n\t\t\t  <div class='col2'>\n\t\t\t\t\t<p><p>Klasa <mark class=\"has-inline-color\" style=\"background-color: #e9e9f5\">SibsSdkApi<\/mark> umo\u017cliwia interakcj\u0119 z zestawem SIBS SDK i oferuje punkty wej\u015bcia opisane w <a href=\"#krok2\">Kroku 2<\/a> i <a href=\"#krok3\">Kroku 3<\/a>\u00a0poni\u017cej.<\/p>\n<\/p>\n\t\t\t\t  <\/div>\n\t\t\t\t<\/div>\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t<\/div>\n\n\n<h3 class=\"wp-block-heading\" id=\"krok2\">Krok 2: Inicjalizacja SIBS SDK<\/h3>\n\n\n\n<p>Zainicjowanie zestawu SDK SIBS uwierzytelnia Ci\u0119 jako sprzedawc\u0119. Przed wys\u0142aniem dalszych \u017c\u0105da\u0144 uwzgl\u0119dnij nast\u0119puj\u0105ce parametry.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Parametry<\/h6>\n\n\n\n<ul class=\"wp-block-list\">\n<li><mark style=\"background-color:#e9e9f5\" class=\"has-inline-color\">clientId<\/mark> \u2013 identyfikator klienta u\u017cywany do uwierzytelniania.<\/li>\n\n\n\n<li><mark style=\"background-color:#e9e9f5\" class=\"has-inline-color\">accessToken<\/mark> \u2013 token dost\u0119pu u\u017cywany do autoryzacji \u017c\u0105da\u0144.<\/li>\n\n\n\n<li><mark style=\"background-color:#e9e9f5\" class=\"has-inline-color\">environmentSDK<\/mark> \u2013 \u015brodowisko, w kt\u00f3rym b\u0119dzie dzia\u0142a\u0107 SDK.<\/li>\n<\/ul>\n\n\n\n<h6 class=\"wp-block-heading\">Podpis<\/h6>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>start(clientId: String, accessToken: String, environmentSDK: EnvironmentSDK)<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"krok3\">Krok 3: \u017b\u0105dania SDK<\/h3>\n\n\n\n<h5 class=\"wp-block-heading\">StartPayment<\/h5>\n\n\n\n<p>Rozpoczyna proces p\u0142atno\u015bci z podanymi parametrami transakcji. Rozpoczyna przep\u0142yw p\u0142atno\u015bci i zwraca wynik asynchronicznie za po\u015brednictwem <mark style=\"background-color:#e9e9f5\" class=\"has-inline-color\">LiveData<\/mark>.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Parametry:<\/h6>\n\n\n\n<ul class=\"wp-block-list\">\n<li>actvity &#8211; AppCompatActvity, z kt\u00f3rego inicjowany jest przep\u0142yw p\u0142atno\u015bci. Zapewnia to w\u0142a\u015bciwy cykl \u017cycia i zarz\u0105dzanie interfejsem u\u017cytkownika.<\/li>\n\n\n\n<li>transactionParamsSDK &#8211; parametry potrzebne do przetworzenia transakcji p\u0142atno\u015bci.<\/li>\n<\/ul>\n\n\n\n<h6 class=\"wp-block-heading\">Odpowied\u017a:<\/h6>\n\n\n\n<p>Zwraca obiekt LiveData zawieraj\u0105cy wynik transakcji, kt\u00f3rego aktualizacje mo\u017cna obserwowa\u0107 w miar\u0119 post\u0119pu procesu p\u0142atno\u015bci.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Podpis:<\/h6>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>startPayment(activity:AppCompatActicity,transactionParamsSDK:TransactionParamsSDK):LiveData<\/code><\/pre>\n\n\n\n<h5 class=\"wp-block-heading\">GetTransactionStatus<\/h5>\n\n\n\n<p>Przywraca status wcze\u015bniej zainicjowanej transakcji. Zapytanie o status transakcji wed\u0142ug jej ID i asynchronicznie zwraca wynik za pomoc\u0105\u00a0<mark style=\"background-color:#e9e9f5\" class=\"has-inline-color\">LiveData<\/mark>.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Parametry:<\/h6>\n\n\n\n<p>Otrzymuje parametr transactionId. Unikalny identyfikator transakcji, kt\u00f3ry mo\u017ce by\u0107 wyszukany.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Odpowied\u017a:<\/h6>\n\n\n\n<p>Zwraca obiekt LiveData zawieraj\u0105cy status transakcji, kt\u00f3rego aktualizacje mo\u017cna monitorowa\u0107.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Podpis:<\/h6>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>getTransactionStatus(transactionId: String): LiveData&lt;TransactionStatusSDK&gt;<\/code><\/pre>\n\n\n\n<h5 class=\"wp-block-heading\">Klasy danych<\/h5>\n\n\n\n<h6 class=\"wp-block-heading\">EnvironmentSDK:<\/h6>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>enum class EnvironmentSDK {\n     QUALITY,\n     PRODUCTION \n}<\/code><\/pre>\n\n\n\n<h6 class=\"wp-block-heading\">Odpowied\u017a:<\/h6>\n\n\n\n<p>TransactionResultSDK:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class TransactionResultSDK(\n val isSuccess: Boolean,\n val transactionID: String?,\n val paymentType: String?,\n val paymentStatus: String?,\n val paymentMethod: String?,\n val returnStatus: ReturnStatus?,\n val execution: Execution?,\n val merchant: Merchant?,\n val token: Token?,\n val sdkError: ErrorStatusSDK? = null,\n)<\/code><\/pre>\n\n\n\n<p>TransactionStatusSDK:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class TransactionStatusSDK(\nval transactionID: String?,\nval paymentType: String?,\nval paymentStatus: String?,\nval paymentMethod: String?,\nval returnStatus: ReturnStatus?,\nval execution: Execution?,\nval merchant: Merchant?,\nval token: Token?,\nval sdkError: ErrorStatusSDK,\n)<\/code><\/pre>\n\n\n\n<p>Status zwrotu:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class ReturnStatus(\n val statusCode: String,\n val statusMsg: String,\n val statusDescription: String\n)<\/code><\/pre>\n\n\n\n<p>Wykonanie:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class Execution(\nval startTime: String,\nval endTime: String\n)<\/code><\/pre>\n\n\n\n<p>Sprzedawca:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class Merchant(\n val terminalId: Int,\n val merchantTransactionId: String?,\n val websiteAddress: String? = null,\n val channel: String? = null,\n val shopURL: String? = null,\n val transactionDescription: String? = null\n)\n<\/code><\/pre>\n\n\n\n<p>Token:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>class Token(\n val name: String?,\n val type: String,\n val value: String,\n val maskedPan: String?,\n val expireDate: String?,\n)\n<\/code><\/pre>\n\n\n\n<p>ErrorStatusSDK:<\/p>\n\n\n\n<pre class=\"wp-block-code singleline\"><code>enum class ErrorStatusSDK {\n SUCCESS, \n SDK_NOT_CONFIGURED, \n INVALID_TRANSACTION_PARAMETERS, \n USER_CANCELED, \n COMMUNICATION_ERROR,\n NETWORK_ERROR, \n TIMEOUT_ERROR, \n PAYMENT_FORM_NOT_AVAILABLE, \n DECLINED,\n GOOGLE_PAY_DECLINED, \n UNKNOWN_ERROR \n}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Post\u0119puj zgodnie z tym przewodnikiem, aby zintegrowa\u0107 bramk\u0119 p\u0142atno\u015bci SIBS z aplikacj\u0105 na Androida za pomoc\u0105 naszego pakietu SDK. Krok 1: Instalacja SDK Krok 2: Inicjalizacja SIBS SDK Zainicjowanie zestawu SDK SIBS uwierzytelnia Ci\u0119 jako sprzedawc\u0119. Przed wys\u0142aniem dalszych \u017c\u0105da\u0144 uwzgl\u0119dnij nast\u0119puj\u0105ce parametry. Parametry Podpis Krok 3: \u017b\u0105dania SDK StartPayment Rozpoczyna proces p\u0142atno\u015bci z podanymi [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":22718,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_eb_attr":"","footnotes":""},"class_list":["post-22722","page","type-page","status-publish","hentry","has-post-title","has-post-date","has-post-category","has-post-tag","has-post-comment","has-post-author",""],"acf":[],"builder_content":"","_links":{"self":[{"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/pages\/22722","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/comments?post=22722"}],"version-history":[{"count":5,"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/pages\/22722\/revisions"}],"predecessor-version":[{"id":23134,"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/pages\/22722\/revisions\/23134"}],"up":[{"embeddable":true,"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/pages\/22718"}],"wp:attachment":[{"href":"https:\/\/www.qly.docs.pay.sibs.com\/pl\/wp-json\/wp\/v2\/media?parent=22722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}