# Interact with a smart contract

{% hint style="success" %}
This section is for Operators only.
{% endhint %}

### Overview

* You can now directly interact with any contract on Ethereum, Polygon or BNB Smartchain directly from your Ledger Enterprise workspace, via our **Contract Interaction** panel. The panel lets Operators insert the address of the smart contract to interact with. As long as the contract is verified on Etherscan, Operators will be able to select any of the contract functions (whether read or write), and input the relevant parameters to craft their transaction.

### Instructions

#### Step 1: Select the contract

To directly interact with any contract, click the Contract Interaction button in the sidebar and input the address of the contract you wish to interact with.

<figure><img src="/files/M6vNrrSXytm66ZNSkiDf" alt=""><figcaption></figcaption></figure>

#### Step 2: Select the function

Select the function you wish to call in the dropdown section. Note that Ledger Enterprise supports both read and write functions.

<figure><img src="/files/mXOLCDWEpGqzy6GiM110" alt=""><figcaption></figcaption></figure>

#### Step 3: Specify the function arguments

Once you have chosen one of the available contract functions, define the arguments to pass to the function. If the function requires ETH for execution (see: [payable functions](https://docs.soliditylang.org/en/v0.8.10/types.html?highlight=payable#contract-types)), you will be able to specify the ETH amount sent along with your contract interaction.

<figure><img src="/files/Gsvz2AkHEz3iSFdgvOok" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
It is crucial to research and verify the contract you interact with. Executing contract functions with the right arguments (values & format) requires a good understanding of their underlying logic.
{% endhint %}

#### Step 4: Select your desired fees

As per any transaction, you can choose the fees based on our recommended speed levels, or set custom ones. Note that contract interactions require more gas to be processed by the network, meaning that the usual 21,000 gas limit will not be enough to cover for your interaction.

#### Step 5: Review the web3 security checks

Before confirming your transaction, you will be presented with a series of security assessments ("Web3 checks") to help you make informed decisions. These checks include:

* **Receiver Address Verification** : Web3 Checks verify if the receiver address is a contract address and not an externally owned account (EOA). This ensures that you are interacting with a smart contract, as intended.
* **Contract Age Assessment** : The system checks if the contract has been deployed for at least 7 days. Recently deployed contracts can be riskier to interact with, as they may not have a proven track record or be sufficiently audited.
* **First-time Interaction Notification** : Web3 Checks inform you if this is your first time interacting with a particular contract. This serves as a reminder to double-check the contract's legitimacy and review any associated risks.

<figure><img src="/files/CaSY83PGbNynV6v65k7G" alt=""><figcaption></figcaption></figure>

After the checks are complete, you will be presented with the results. Based on this information, you can decide whether to proceed with the transaction or take additional precautions.

{% hint style="info" %}
Please note that Web3 Checks serve as a supplementary security measure and should not replace your own due diligence when interacting with smart contracts.
{% endhint %}

The rest of the flow is similar to that of a regular transaction: select your desired fees, add an optional note & comment, and review your transaction on your device to verify that it matches your intent. Note that when using the Contract Interaction flow, your Confirmation screen will display both your contract data in both the decoded (contract functions and arguments) and encoded format (hex).

<figure><img src="/files/fPHmby3Zmn3pSqnt5Z5m" alt=""><figcaption></figcaption></figure>

This Contract Interaction panel is also accessible from the account dashboard, next to the Send & Receive buttons.

<figure><img src="/files/dhrke5iTJpu3T7H2j7Ys" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.enterprise.ledger.com/help-center/web3-defi-and-nft/defi/interact-with-a-smart-contract.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
