diff --git a/gradle.properties b/gradle.properties
index acf8d17..7af5da1 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,5 @@
 payapiVersion = 1.0
 jdkVersion = 1.8
 nxUser=ecard
-nxPassword=Ecard4SUP
\ No newline at end of file
+nxPassword=Ecard4SUP
+systemProp.org.gradle.internal.publish.checksums.insecure=true
\ No newline at end of file
diff --git a/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/PayAPISDKConfigure.java b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/PayAPISDKConfigure.java
index a4d6790..065ba9c 100644
--- a/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/PayAPISDKConfigure.java
+++ b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/PayAPISDKConfigure.java
@@ -4,12 +4,15 @@
 import com.supwisdom.dlpay.paysdk.proxy.ApiLoginProxy;
 import com.supwisdom.mutlitenant.client.JwtTokenClientCallback;
 import com.supwisdom.mutlitenant.client.annotations.EnableTenantJwtClient;
+import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
-@Component
+@Configuration
 @EnableTenantJwtClient
+@EnableFeignClients(basePackages = "com.supwisdom.dlpay.paysdk")
 public class PayAPISDKConfigure {
   @Bean
   public JwtTokenClientCallback jwtTokenClientCallback(ApiLoginProxy loginProxy) {
@@ -17,7 +20,6 @@
   }
 
   @Bean
-  @DependsOn("jwtTokenClientCallback")
   public PayApiJwtClientConfigure jwtClientConfigure(JwtTokenClientCallback callback) {
     return new PayApiJwtClientConfigure(callback);
   }
