diff --git a/duniter4j-core-shared/src/main/java/org/duniter/core/util/json/JsonAttributeParser.java b/duniter4j-core-shared/src/main/java/org/duniter/core/util/json/JsonAttributeParser.java
index 8444ad9cf051c3af59b46222cd80b99c10c2cfc7..ada12986593cac0ba6e68e18c06a345dd0999a95 100644
--- a/duniter4j-core-shared/src/main/java/org/duniter/core/util/json/JsonAttributeParser.java
+++ b/duniter4j-core-shared/src/main/java/org/duniter/core/util/json/JsonAttributeParser.java
@@ -111,11 +111,14 @@ public class JsonAttributeParser<T extends Object> {
 
         Matcher matcher = pattern.matcher(jsonString);
 
-        if (!matcher.find()) {
-            return null;
-        }
+        if (!matcher.find()) return null;
 
-        return parseValue(matcher.group(1));
+        try {
+            return parseValue(matcher.group(1));
+        }
+        catch(NumberFormatException e) {
+            throw new IllegalArgumentException(String.format("Unable to parse value '%' on attribute '%s' : %s. Expected type: %s", matcher.group(1), attributeName, e.getMessage(), type.name()));
+        }
     }
 
     public List<T> getValues(String jsonString) {
diff --git a/duniter4j-core-shared/src/test/java/org/duniter/core/util/json/JsonAttributeParserTest.java b/duniter4j-core-shared/src/test/java/org/duniter/core/util/json/JsonAttributeParserTest.java
index 67187e89a73b0f2f2a435c4bbaabc0e8c13001ea..800ecf2f9f294bee4ba92e003caee5e504b66c59 100644
--- a/duniter4j-core-shared/src/test/java/org/duniter/core/util/json/JsonAttributeParserTest.java
+++ b/duniter4j-core-shared/src/test/java/org/duniter/core/util/json/JsonAttributeParserTest.java
@@ -48,6 +48,48 @@ public class JsonAttributeParserTest {
 
     }
 
+    @Test
+    public void getValueAsLong() {
+
+        String jsonString = "{\n" +
+                "    \"version\": 10,\n" +
+                "    \"nonce\": 10400000001312,\n" +
+                "    \"number\": 755,\n" +
+                "    \"powMin\": 81,\n" +
+                "    \"time\": 1489204846,\n" +
+                "    \"medianTime\": 1489201914,\n" +
+                "    \"membersCount\": 59,\n" +
+                "    \"monetaryMass\": 177000,\n" +
+                "    \"unitbase\": 0,\n" +
+                "    \"issuersCount\": 19,\n" +
+                "    \"issuersFrame\": 96,\n" +
+                "    \"issuersFrameVar\": 0,\n" +
+                "    \"currency\": \"g1\",\n" +
+                "    \"issuer\": \"Com8rJukCozHZyFao6AheSsfDQdPApxQRnz7QYFf64mm\",\n" +
+                "    \"signature\": \"HSA1F2JEf9vsORi5ABUrEgRKfLHFM76Yks9ibH1dgcQ/UBlo1iP9bYUT+lUQDgG5+EDUwuGQq5v+cJEVGciZDw==\",\n" +
+                "    \"hash\": \"000004C0781DA1F71571A83D23D8B38D67E2F73529D833917A274C372D2968C2\",\n" +
+                "    \"parameters\": \"\",\n" +
+                "    \"previousHash\": \"00000937703D4C34B234B18B7C5E7E67462BC8EBC0144AA6DE42FAD169C8EF05\",\n" +
+                "    \"previousIssuer\": \"4fHMTFBMo5sTQEc5p1CNWz28S4mnnqdUBmECq1zt4n2m\",\n" +
+                "    \"inner_hash\": \"7210E5D8B36BB2064D1DCFBE08C9FC8D0D107B87ED4D0AE8B6BF54C615366060\",\n" +
+                "    \"dividend\": null,\n" +
+                "    \"identities\": [],\n" +
+                "    \"joiners\": [],\n" +
+                "    \"actives\": [],\n" +
+                "    \"leavers\": [],\n" +
+                "    \"revoked\": [],\n" +
+                "    \"excluded\": [],\n" +
+                "    \"certifications\": [],\n" +
+                "    \"transactions\": [],\n" +
+                "    \"raw\": \"Version: 10\\nType: Block\\nCurrency: g1\\nNumber: 755\\nPoWMin: 81\\nTime: 1489204846\\nMedianTime: 1489201914\\nUnitBase: 0\\nIssuer: Com8rJukCozHZyFao6AheSsfDQdPApxQRnz7QYFf64mm\\nIssuersFrame: 96\\nIssuersFrameVar: 0\\nDifferentIssuersCount: 19\\nPreviousHash: 00000937703D4C34B234B18B7C5E7E67462BC8EBC0144AA6DE42FAD169C8EF05\\nPreviousIssuer: 4fHMTFBMo5sTQEc5p1CNWz28S4mnnqdUBmECq1zt4n2m\\nMembersCount: 59\\nIdentities:\\nJoiners:\\nActives:\\nLeavers:\\nRevoked:\\nExcluded:\\nCertifications:\\nTransactions:\\nInnerHash: 7210E5D8B36BB2064D1DCFBE08C9FC8D0D107B87ED4D0AE8B6BF54C615366060\\nNonce: 10400000001312\\n\"\n" +
+                "  }";
+
+        JsonAttributeParser<Long> idAttribute = new JsonAttributeParser<>("number", Long.class);
+        Long number = idAttribute.getValue(jsonString);
+        Assert.assertNotNull(number);
+        Assert.assertEquals(755L, number.longValue());
+    }
+
     @Test
     public void removeStringAttributeFromJson() {
         String jsonString = String.format("%s", OBJ_JSON);