> ## Documentation Index
> Fetch the complete documentation index at: https://crossmint-wallets-docs-2-5.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# EVM

> Send transactions from your wallet

## Prerequisites

* Ensure you have a wallet created.
* **API Key**: Ensure you have an API key with the scopes: `wallets:transactions.create`.

## Sending a Transaction

<Tabs>
  <Tab title="React">
    ```typescript theme={null}
    import { useWallet, EVMWallet } from '@crossmint/client-sdk-react-ui';

    const { wallet } = useWallet();

    const evmWallet = EVMWallet.from(wallet);

    const { hash, explorerLink } = await evmWallet.sendTransaction({
        to: '0x...',
        value: '0x1234abcd...',
        data: '0x1234abcd...',
    });
    ```

    ### Parameters

    <ParamField path="transaction" type="EVMTransactionInput" required>
      The transaction to send.
    </ParamField>

    ### Returns

    <ParamField path="hash" type="string">
      The hash of the transaction.
    </ParamField>

    <ParamField path="explorerLink" type="string">
      The explorer link of the transaction.
    </ParamField>
  </Tab>

  <Tab title="Node.js">
    ```typescript theme={null}
    const wallet = await crossmintWallets.getWallet(walletLocator);

    const evmWallet = EVMWallet.from(wallet);

    const { hash, explorerLink } = await evmWallet.sendTransaction({
        to: '0x...',
        value: '0x1234abcd...',
        data: '0x1234abcd...',
    });
    ```

    ### Parameters

    <ParamField path="transaction" type="EVMTransactionInput" required>
      The transaction to send.
    </ParamField>

    ### Returns

    <ParamField path="hash" type="string">
      The hash of the transaction.
    </ParamField>

    <ParamField path="explorerLink" type="string">
      The explorer link of the transaction.
    </ParamField>
  </Tab>

  <Tab title="React Native">
    ```typescript theme={null}
    import { useWallet } from '@crossmint/client-sdk-react-native-ui';

    const { wallet } = useWallet();

    const evmWallet = EVMWallet.from(wallet);

    const { hash, explorerLink } = await evmWallet.sendTransaction({
        to: '0x...',
        value: '0x1234abcd...',
        data: '0x1234abcd...',
    });
    ```

    ### Parameters

    <ParamField path="transaction" type="EVMTransactionInput" required>
      The transaction to send.
    </ParamField>

    ### Returns

    <ParamField path="hash" type="string">
      The hash of the transaction.
    </ParamField>

    <ParamField path="explorerLink" type="string">
      The explorer link of the transaction.
    </ParamField>
  </Tab>
</Tabs>
