> For the complete documentation index, see [llms.txt](https://novacont.gitbook.io/nova-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://novacont.gitbook.io/nova-docs/user-guide/first-agreement.md).

# Creating Your First Agreement

Before you begin, make sure you have a compatible wallet installed (such as MetaMask) and that it is connected to the correct network supported by NovaCont. The active network information is always displayed within the app. If your wallet is on the wrong network, you will be notified automatically.

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

### Understanding the Two Roles

Every agreement on NovaCont involves exactly two parties:

**Client**: The party who initiates the agreement, defines the terms, and locks the funds on-chain. The client is essentially the one paying for a service or deliverable.

**Provider:** The party who receives the proposal, reviews the terms, and accepts or rejects them. The provider is the one delivering the work or service.

These two roles are assigned at the moment of contract creation and cannot be changed afterward.

### If You Are the Client

You are the client if you are hiring someone, commissioning work, or purchasing a deliverable. You will be the one locking funds into the smart contract.

{% stepper %}
{% step %}

#### Connect Your Wallet

Navigate to the NovaCont app and click **Connect Wallet**. Select your wallet provider and approve the connection request. Make sure you are on the correct network before proceeding.
{% endstep %}

{% step %}

#### Create a New Agreement

Click the **New Contract** button on your dashboard. This will open the contract creation form.
{% endstep %}

{% step %}

#### Fill In the Agreement Details

You will be asked to provide the following information:

* **Provider Wallet Address**: The Ethereum address of the person or entity you are contracting with. Double-check this address carefully. Blockchain transactions cannot be reversed, and sending funds to a wrong address means permanent loss.
* **Title:** A short, descriptive name for the agreement (e.g. "Logo Design for NovaCont").
* **Description**:A clear summary of what is expected. Be as specific as possible. This description becomes part of the on-chain record and will be referenced in the event of a dispute.
* **Accept Deadline**: The number of days the provider has to accept or reject your proposal. If they do not respond within this window, the contract expires and your funds are fully refunded.
* **Delivery Deadline**: The number of days the provider has to deliver the work after accepting. This countdown begins at the moment of acceptance, not at creation.
* **Agreed Price (USD):** The value of the agreement in US Dollars. NovaCont automatically converts this to ETH at the current market rate using an on-chain price oracle.
  {% endstep %}

{% step %}

#### Review the Deposit Requirement

Before confirming, NovaCont will show you exactly how much ETH you need to deposit.

> **Important:** If the agreed price is below $200, NovaCont requires a **1.25x deposit** instead of the standard 1x. This means you lock 25% more than the agreed amount as an additional trust mechanism. This extra amount is fully refunded to you upon successful completion of the agreement. This policy exists to discourage low-value bad-faith contracts.
> {% endstep %}

{% step %}

#### Confirm and Lock Funds

Click **Create Contract** and confirm the transaction in your wallet. Once the transaction is confirmed on-chain, the funds are locked in the smart contract. Neither you nor anyone else - including NovaCont - can access these funds until the agreement reaches its final state.

At this point, a unique proposal link is generated. **Share this link with your provider.** They will use it to review and accept the terms.
{% endstep %}
{% endstepper %}

### If You Are the Provider

You are the provider if you are the one delivering a service or completing a task — and you want to send a formal, on-chain proposal to your client for them to fund.

In this flow, you define the terms of the agreement and generate a proposal link. Your client then uses that link to review the terms and lock the funds on-chain. The contract is only created on the blockchain at the moment your client locks the funds. Not before.

{% stepper %}
{% step %}

#### Connect Your Wallet

Navigate to the NovaCont app and click **Connect Wallet**. Your wallet address will automatically be registered as the provider address for this agreement. This means only your wallet will be able to accept the work and receive payment once the contract is funded.
{% endstep %}

{% step %}

#### &#x20;Select "I'm the Provider"

On the contract creation page, you will see two options at the top: **I'm the Client** and **I'm the Provider**. Select **I'm the Provider**. You will notice that your wallet address is already displayed as the provider. This cannot be changed.
{% endstep %}

{% step %}

#### Fill In the Agreement Details

* **Contract Title**: A short, clear name for the work (e.g. "Website Development", "Logo Design").
* **Work Description**: Describe in detail exactly what you will deliver. Be precise. This description is embedded into the on-chain record and will serve as the primary reference point if a dispute ever arises.
* **Agreed Base Price (USD)**: The amount you expect to be paid, entered in US Dollars. NovaCont will handle the ETH conversion automatically using live oracle pricing at the moment your client funds the contract.
* **Accept Period (Days)**: How many days your client has to fund and activate the contract after receiving the link. If they do not act within this window, the proposal expires.
* **Delivery Period (Days)**: How many days you will have to complete and deliver the work, counted from the moment your client accepts.
  {% endstep %}

{% step %}

#### Review the Summary

Before generating the link, NovaCont will show you a full summary of the terms including the client's required deposit amount. If the agreed price is below $200, your client will be required to deposit 1.25x the agreed amount as a trust mechanism. This is shown clearly so there are no surprises on their end.

If anything looks incorrect, click **Edit** to go back and make changes.
{% endstep %}

{% step %}

#### Generate and Share the Proposal Link

Click **Generate Payment Link**. NovaCont will produce a unique link encoding all the terms you defined. Copy this link and send it to your client through any communication channel — email, messaging app, or otherwise.

> **This link does not create a contract.** It is simply a proposal. The smart contract is deployed and funds are locked only when your client opens the link, reviews the terms, and confirms the transaction from their own wallet.

Until your client funds the contract, nothing is locked and no obligations exist on either side.
{% endstep %}
{% endstepper %}
