diff --git a/build.gradle b/build.gradle
index a0654a6..cde386c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,9 +1,9 @@
 plugins {
     id 'java'
-    id 'org.springframework.boot'
-    id 'org.jetbrains.kotlin.jvm'
-    id 'org.jetbrains.kotlin.plugin.jpa'
-    id 'org.jetbrains.kotlin.plugin.spring'
+    id 'org.springframework.boot' version '2.1.6.RELEASE'
+    id 'org.jetbrains.kotlin.jvm' version '1.3.31'
+    id 'org.jetbrains.kotlin.plugin.jpa' version '1.3.31'
+    id 'org.jetbrains.kotlin.plugin.spring' version '1.3.31'
     id "com.palantir.git-version" version "0.12.0-rc2"
     id 'com.palantir.docker' version '0.22.1'
 }
@@ -19,8 +19,15 @@
 def startClass = 'com.supwisdom.dlpay.PayApiApplicationKt'
 
 println("Build version: $payapiVersion")
-repositories {
-    mavenCentral()
+allprojects {
+    repositories {
+        jcenter()
+        mavenCentral()
+    }
+}
+
+subprojects {
+    version = '1.0'
 }
 
 bootJar {
diff --git a/gradle.properties b/gradle.properties
index 557297f..2e0dda4 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,2 @@
-springbootVersion = 2.1.6.RELEASE
-kotlinVersion = 1.3.31
 payapiVersion = 1.0
 jdkVersion = 1.8
\ No newline at end of file
diff --git a/payapi-sdk/build.gradle b/payapi-sdk/build.gradle
new file mode 100644
index 0000000..9b201e0
--- /dev/null
+++ b/payapi-sdk/build.gradle
@@ -0,0 +1,16 @@
+plugins {
+    id 'java'
+    id 'org.springframework.boot'
+    id "com.palantir.git-version"
+}
+
+
+apply plugin: 'io.spring.dependency-management'
+
+dependencies {
+    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
+    implementation 'org.springframework.boot:spring-boot-starter-data-redis'
+
+    implementation 'org.springframework.cloud:spring-cloud-dependencies:Finchley.SR3'
+    implementation 'org.springframework.cloud:spring-cloud-starter-openfeign:2.1.2.RELEASE'
+}
\ No newline at end of file
diff --git a/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/CitizenCardPay.java b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/CitizenCardPay.java
new file mode 100644
index 0000000..1700dc6
--- /dev/null
+++ b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/CitizenCardPay.java
@@ -0,0 +1,8 @@
+package com.supwisdom.dlpay.paysdk;
+
+import org.springframework.cloud.openfeign.FeignClient;
+
+@FeignClient(value = "citizenCardPay", url = "${payapi.url}/api")
+public interface CitizenCardPay {
+  
+}
diff --git a/settings.gradle b/settings.gradle
index ec967da..4e2ae1c 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,20 +1,2 @@
-pluginManagement {
-    resolutionStrategy {
-        eachPlugin {
-            if (requested.id.namespace != null) {
-                if (requested.id.namespace.startsWith("org.jetbrains.kotlin")) {
-                    println "Kotlin version $kotlinVersion"
-                    useVersion kotlinVersion
-                } else if(requested.id.namespace.startsWith("org.springframework")) {
-                    println "Springboot version $springbootVersion"
-                    useVersion springbootVersion
-                }
-            }
-        }
-    }
-    repositories {
-        gradlePluginPortal()
-    }
-}
 rootProject.name = 'payapi'
-
+include 'payapi-sdk'
