# Issue when Attempting to Retrieve Receipt from a `TokenMintTransaction` Executed with Blade Wallet using `@bladelabs/blade-web3.js (v1.2.1)` ### Problem Description Every time we try to obtain a receipt from a `TokenMintTransaction` initially executed with Blade Wallet on our [production site (https://testnet.mintbar.xyz)](https://testnet.mintbar.xyz), we encounter an issue. We use a Docker image with Node.js `16.14.2` installed (`node:16.14.2-alpine3.15`) in this environment. Oddly, this issue only occurs here. When we test our project on multiple devices with different operating systems (Windows, Ubuntu, macOS) and run the project locally, we can obtain the receipt from the transaction with both methods without any problems. The problem is specific to our production environment. ### What We Tried We have already cleared our pipeline cache to eliminate possible artifacts. We have attempted two methods to retrieve the receipt from the transaction. The first attempt involved using the `transactionResponse.getReceiptWithSigner(signer)` method from the `TransactionResponse` instance created after executing `transaction.executeWithSigner(signer)` following the signing of the transaction. Additionally, we tried the standard Hedera approach to receive the receipt by creating a `TransactionReceiptQuery` with `@hashgraph/sdk` and executing it with the Blade Wallet extension. Both of these solutions work on the local environment but not on our production site. ## Using `getReceiptWithSigner` #### Here's the code snippet: ```ts=150 const signer = bladeConnector.getSigner(); if (!signer) { throw new Error('BladeSigner is not available! Please connect to the wallet first.'); } console.log('Blade signer:', signer); console.log('Blade populated transaction (before):', transaction); transaction = await signer.populateTransaction(transaction); console.log('Blade populated transaction:', transaction); transaction = await signer.signTransaction(transaction.freeze()); console.log('Blade signed transaction:', transaction); const result = await transaction.executeWithSigner(signer); console.log('Blade executed transaction result:', result); const receipt = await result.getReceiptWithSigner(signer); console.log('Blade result receipt:', receipt); const status = receipt.status.toString(); console.log('Blade receipt status:', status); ``` #### The error received looks like this: ![Image](https://hackmd.io/_uploads/BkhMiDLQp.png) #### It occurs here: ![Image](https://hackmd.io/_uploads/H14IjDL76.png) ___ ## Using TransactionReceiptQuery #### Here's the code snippet: ```ts=150 const signer = bladeConnector.getSigner(); if (!signer) { throw new Error('BladeSigner is not available! Please connect to the wallet first.'); } console.log('Blade signer:', signer); console.log('Blade populated transaction (before):', transaction); transaction = await signer.populateTransaction(transaction); console.log 'Blade populated transaction:', transaction; transaction = await signer.signTransaction(transaction.freeze()); console.log('Blade signed transaction:', transaction); const result = await transaction.executeWithSigner(signer); console.log('Blade executed transaction result:', result); const receipt = new TransactionReceiptQuery({ transactionId: transaction.transactionId as TransactionId }); const resultReceipt = await receipt.executeWithSigner(signer); console.log('Blade result receipt:', receipt, resultReceipt); ``` #### The error received looks like this: ![Image](https://hackmd.io/_uploads/H1zVrwU7T.png) #### It occurs here: ![Image](https://hackmd.io/_uploads/Hypjrw8QT.png)