# evm

## Description

The `txStatus` function is used to retrieve the status of a transaction on a blockchain. It checks the status of a transaction by validating the transaction hash, selecting the appropriate blockchain and environment, and checking the transaction receipt. The function returns the status of the transaction, whether it is confirmed, failed, pending, or not found.

## Parameters

| Parameter    | Data Type | Description                                                   |
| ------------ | --------- | ------------------------------------------------------------- |
| `txHash`     | string    | Transaction hash of the transaction to retrieve the status of |
| `blockchain` | string    | Blockchain network of the transaction                         |
| `env`        | string    | Environment of the blockchain network, e.g., mainnet, testnet |

## Response

| Field    | Data Type | Description                                                    |
| -------- | --------- | -------------------------------------------------------------- |
| `code`   | number    | Result code indicating success or failure of the function call |
| `error`  | string    | Error message returned if code is 0                            |
| `result` | string    | Status of the transaction returned if code is 1                |

## Example Request and Response

### Prerequisites

Before making requests with NO.AI SDK, you must have it installed.

You can install NO.AI SDK using either **`npm`** or **`yarn`**. Use the following commands to install NO.AI SDK:

```sh
npm install @nest25/wallet-lib
OR
yarn add @nest25/wallet-lib
```

### Request

Here is an example of how to make a `txStatus` request using the NO.AI SDK:

```javascript
// import Nest SDK
import { Wallet } from 'nest25/wallet-lib';

// Create a new instance of the Wallet class
const wallet = new Wallet();

const main = async () => {
  // Get the status of a transaction
  const response = await wallet.txStatus(
    'eth',
    '0x30f3c69723c17d87b17aefb1388ebb5c2498829edc8574a5d7ea052157dc3029'
  );
  // Print the response
  console.log(response);
};

main();
```

### Response

{% code overflow="wrap" %}

```sh
   { code: 1, result: 'confirmed' }
```

{% endcode %}

## Use Cases

* **Online Wallets:** Online wallets can use this function to retrieve the status of transactions made on their platform.
* **Trading Platforms:** Trading platforms can use this function to verify the status of transactions made by their users on different blockchain networks.
