diff --git a/api/src/StamperWrapper.js b/api/src/StamperWrapper.js
index 7eebbb3ef4d60f9620e6dd31600dd0cbf5925622..41b6140e93dd2d18c74a07851d6fe4f2f1a23ff7 100644
--- a/api/src/StamperWrapper.js
+++ b/api/src/StamperWrapper.js
@@ -11,7 +11,7 @@ class Stamper {
     // utiliza la cuenta walletAccount para enviar la transaccion
     // (o defaultAccount si no se especifica)
     async stamp(objects, walletAccount) {
-        console.log(`stamping ${objects}`)
+        console.log(`asked to stamp ${objects}`)
 
         // si walletAccount es undefined trata de usar la account de web3.eth.defaultAccount
         let defaultAccount = (walletAccount) ? walletAccount.address : this.web3.eth.defaultAccount
@@ -19,13 +19,21 @@ class Stamper {
 
         for (let i=0; i < objects.length; i++) {
             let blockNo = await this.contract.methods.getBlockNo(objects[i], defaultAccount).call()
-            if (blockNo == 0) objectsToStamp.push(objects[i])
+            if (blockNo == 0)
+	    {
+		objectsToStamp.push(objects[i])
+	    }
+	    else
+	    {
+        	console.log(`already stamped: ` + objects[i] );
+	    }
         }
 
         if (objectsToStamp.length == 0) return new Promise( (resolve) => {
             console.log(`Los objects enviados ya están stampeados`)
             resolve()
         })
+        console.log(`stamping ` + objectsToStamp.join(', ') );
 
         let txPromise
         let gasLimit = 2000000
@@ -42,7 +50,8 @@ class Stamper {
                 //chainId: '200941592',
                 gas: gasLimit,
                 // gasLimit: gasLimit,
-                data: encodedABI
+                data: encodedABI,
+		nonce: this.web3.bfa.txnonce++
             }
             // tx.v = Buffer.from([47525974938])
             // tx.nonce = this.web3.utils.toHex(await this.web3.eth.getTransactionCount(defaultAccount))
diff --git a/api/src/index.js b/api/src/index.js
index 598d3ce92257e04b059fea8dacf24f32c651cd81..51a8a124376cacecdc7aec3ec888cc1c020f4cbd 100644
--- a/api/src/index.js
+++ b/api/src/index.js
@@ -43,6 +43,9 @@ async function setupWeb3() {
             // se trata de utilizar una que haya abierta
             web3.eth.defaultAccount =   (await web3.eth.getAccounts())[0]
         }
+	web3.bfa	            =   {
+		txnonce: await web3.eth.getTransactionCount(web3.eth.defaultAccount),
+	}
 
         /***************************************************/
         // Carga de contrato
@@ -102,6 +105,7 @@ if ( process.env.API_USER && process.env.API_PASS ) {
 // API Endpoints
 /***************************************************/
 app.get('/wait1block', async (req, res) => {
+    console.log( Date() + ": /wait1block" );
     let     ss                      =   new Stamper(web3, contractAbi, contractAddress)
 
     try {
@@ -119,6 +123,7 @@ app.get('/wait1block', async (req, res) => {
     }
 })
 app.post('/stamp', async (req, res) => {
+    console.log( Date() + ": /stamp " + req.body.hashes.join(', ') );
     let     ss                      =   new Stamper(web3, contractAbi, contractAddress)
 
     if ( ! ("hashes" in req.body) )
@@ -158,6 +163,7 @@ app.post('/stamp', async (req, res) => {
 })
 
 app.get('/verify/:hash', async (req, res) => {
+    console.log( Date() + ": /verify/:" + req.params.hash );
     let     ss                      =   new Stamper(web3, contractAbi, contractAddress)
 
     var     value                   =   req.params.hash