diff --git a/payapi-common/src/main/java/com/supwisdom/dlpay/api/bean/CardBizResponse.java b/payapi-common/src/main/java/com/supwisdom/dlpay/api/bean/CardBizResponse.java
index 5ee85f0..c54a3ee 100644
--- a/payapi-common/src/main/java/com/supwisdom/dlpay/api/bean/CardBizResponse.java
+++ b/payapi-common/src/main/java/com/supwisdom/dlpay/api/bean/CardBizResponse.java
@@ -12,6 +12,8 @@
 
   private String description;
 
+  private Integer accountBal;
+
   public String getRefno() {
     return refno;
   }
@@ -35,4 +37,13 @@
   public void setDescription(String description) {
     this.description = description;
   }
+
+
+  public Integer getAccountBal() {
+    return accountBal;
+  }
+
+  public void setAccountBal(Integer accountBal) {
+    this.accountBal = accountBal;
+  }
 }
diff --git a/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java b/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java
index 77a02bc..cad5c82 100644
--- a/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java
+++ b/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java
@@ -241,6 +241,7 @@
     param.setCapitalSubjno("112201");
     param.setSummary("发卡");
     param.setCost(1000);
+    param.setInOrOut("in");
     param.setCharge(0);
     param.setCashPledge(0);
     param.setUserid("ff8080816dd8f3a6016dd8f5e5d80002");
@@ -261,6 +262,7 @@
         response.getRetcode(), equalTo(0));
 
     System.out.println("biz confirm accdate " + response.getAccdate() + " , refno " + response.getRefno()
+        + ", account " + response.getAccountBal() / 100.0
         + ", description " + response.getDescription() + "  summary " + response.getRetmsg());
 
   }
diff --git a/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TPersondtl.java b/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TPersondtl.java
index c961f32..c103085 100644
--- a/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TPersondtl.java
+++ b/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TPersondtl.java
@@ -46,6 +46,9 @@
   @Column(name = "BEFBAL", precision = 9, scale = 2)
   private Double befbal;
 
+  @Column(name = "AFTBAL", precision = 9, scale = 2)
+  private Double aftbal;
+
   @Column(name = "amount", precision = 9, scale = 2)
   @NotNull
   private Double amount; //实际付款金额
@@ -298,4 +301,12 @@
   public void setAnonymous(Boolean anonymous) {
     this.anonymous = anonymous;
   }
+
+  public Double getAftbal() {
+    return aftbal;
+  }
+
+  public void setAftbal(Double aftbal) {
+    this.aftbal = aftbal;
+  }
 }
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt
index 90199c8..432a84f 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt
@@ -18,6 +18,7 @@
 import org.springframework.web.bind.annotation.*
 import java.net.URLDecoder
 import javax.validation.Valid
+import kotlin.math.roundToInt
 
 @RestController
 @RequestMapping("/api/user")
@@ -219,6 +220,7 @@
                 if (depositAmount != 0) {
                     builder.addDebitCreditRecord(capitalSubj.subjno, capitalSubj.subjno,
                             user.accno, Subject.SUBJNO_PERSONAL_DEPOSIT, request.totalAmount / 100.0, request.summary)
+                    transDesc.add("充值 %.2f 元".format(depositAmount / 100.0))
                 }
                 if (request.cost != 0) {
                     val subject = accountUtilServcie.readSubject(Subject.SUBJNO_CARD_COST)
@@ -245,6 +247,7 @@
                 if (depositAmount != 0) {
                     builder.addDebitCreditRecord(user.accno, Subject.SUBJNO_PERSONAL_DEPOSIT,
                             capitalSubj.subjno, capitalSubj.subjno, request.totalAmount / 100.0, request.summary)
+                    transDesc.add("退余额 %.2f 元".format(depositAmount / 100.0))
                 }
                 if (request.cost != 0) {
                     val subject = accountUtilServcie.readSubject(Subject.SUBJNO_CARD_COST)
@@ -287,6 +290,7 @@
             accdate = transaction.accdate
             refno = transaction.refno
             description = transaction.personDtl.transdesc
+            accountBal = (transaction.personDtl.aftbal * 100).roundToInt()
         }
         return ResponseBodyBuilder.successEntity(response, "${request.summary}确认成功")
     }
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/account_service_impl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/account_service_impl.kt
index 5bc63a9..71c3189 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/account_service_impl.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/account_service_impl.kt
@@ -80,6 +80,7 @@
                     } else {
                         account.lastdayDpsamt += amount
                     }
+                    dtl.aftbal = account.availbal
                     try {
                         entityManager.persist(account)
                     } catch (ex: OptimisticLockException) {
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_service_impl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_service_impl.kt
index 5e431b7..c4889df 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_service_impl.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_service_impl.kt
@@ -92,6 +92,7 @@
                         userName = builder.person().person!!.accname
                         befbal = builder.person().person!!.availbal
                     }
+                    aftbal = 0.0
                     outtradeno = builder.outtradeno
                     transdate = builder.transDate
                     transtime = builder.transTime
@@ -556,18 +557,17 @@
 
         transaction.status = TradeDict.DTL_STATUS_SUCCESS //置为成功
         transactionOnSuccess(transaction, sourcetypeRefno, true)
-//        transaction.checkDate = systemUtilService.accdate
         transaction.settleDate = agentAccdate
         transaction.details?.forEach {
             it.settleDate = agentAccdate
         }
-        if(transaction.person){
+        if (transaction.person) {
             transaction.personDtl.remark = remark
         }
-        if(transaction.shop){
+        if (transaction.shop) {
             transaction.shopDtl.remark = remark
         }
-        if(transaction.subject){
+        if (transaction.subject) {
             //
         }
         transaction.endTime = systemUtilService.sysdatetime.sysdate
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
index 861212a..6fe6933 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
@@ -52,7 +52,7 @@
 
     // 补帐接口
     @Transactional(rollbackFor = [Exception::class])
-    fun repair(refno: String, agentAccdate: String, sourcetypeRefno: String, remark:String): TTransactionMain
+    fun repair(refno: String, agentAccdate: String, sourcetypeRefno: String, remark: String): TTransactionMain
 }
 
 @Service
@@ -61,6 +61,9 @@
     private lateinit var transactionService: TransactionService
 
     @Autowired
+    private lateinit var kafkaSendMsgService: KafkaSendMsgService
+
+    @Autowired
     private lateinit var shopAccBalanceAsyncTask: ShopAccBalanceAsyncTask
 
     @Autowired
@@ -100,7 +103,10 @@
             }
 
             if (it.person && !it.personDtl.userid.isNullOrEmpty()) {
-                kafkaSendMsgService.sendJpushMessage(it.personDtl.userid, "交易提醒", "你有一笔${it.personDtl.amount}元的支出，点击查看详情", it.refno, mutableMapOf(), it.tenantid)
+                kafkaSendMsgService.sendJpushMessage(it.personDtl.userid,
+                        "交易提醒",
+                        "你有一笔${it.personDtl.amount}元的支出，点击查看详情",
+                        it.refno, mutableMapOf(), it.tenantid)
             }
         }
     }
@@ -137,4 +143,4 @@
         }
     }
 
-}
\ No newline at end of file
+}
