diff --git a/install.sh b/install.sh
index 2a7a458f7d584aebc531026f3b713f1a5a5fea14..40e8fa9ac2e373905e1e7e9ab351a425de95beb7 100644
--- a/install.sh
+++ b/install.sh
@@ -11,7 +11,7 @@ if [ -z "$UCOIN_DIR" ]; then
 fi
 
 ucoin_latest_version() {
-  echo "v0.12.2"
+  echo "v0.12.3"
 }
 
 ucoin_repo_url() {
diff --git a/package.json b/package.json
index ecaaf78f2efc5906ef3e657b65a15eea76a0537a..329c4be1548866d6f7b50af3749e71ce3c7d3546 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "ucoin",
-  "version": "0.12.2",
+  "version": "0.12.3",
   "engines": {
     "node": ">=0.12 <0.13",
     "npm": ">=2.11"
diff --git a/test/integration/branches.js b/test/integration/branches.js
index 83372f9469917e8d58a925da4c542786f7443dd4..bc8c2adc6ca0e9e34f244e616c480dbc5cffa727 100644
--- a/test/integration/branches.js
+++ b/test/integration/branches.js
@@ -228,7 +228,7 @@ describe("Branches", function() {
     it('should have a 3 blocks fork window size', function() {
       return expectAnswer(rp('http://127.0.0.1:7778/node/summary', { json: true }), function(res) {
         res.should.have.property('ucoin').property('software').equal('ucoind');
-        res.should.have.property('ucoin').property('version').equal('0.12.2');
+        res.should.have.property('ucoin').property('version').equal('0.12.3');
         res.should.have.property('ucoin').property('forkWindowSize').equal(3);
       });
     });