> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/Ge0frey/nullgraph/llms.txt
> Use this file to discover all available pages before exploring further.

# Creating Bounties

> Learn how to post bounties for the null results you need, with BIO token rewards automatically escrowed on-chain

The NullGraph bounty marketplace allows researchers, BioDAOs, and institutions to request specific null results by offering BIO token rewards. When you create a bounty, your reward is immediately escrowed into a program-controlled vault, ensuring trustless settlement.

<Note>
  Before creating a bounty, make sure you have [set up your Phantom wallet](/guides/wallet-setup) with devnet SOL and BIO tokens.
</Note>

## What You'll Need

Before creating a bounty:

* **Connected Phantom Wallet**: With sufficient SOL for transaction fees
* **BIO Tokens**: The exact reward amount you want to offer (on Solana devnet)
* **Clear Description**: What null result you're looking for (up to 256 characters)
* **Deadline**: How many days researchers have to submit

<Warning>
  Make sure you have enough BIO tokens in your wallet **before** creating the bounty. The full reward amount is transferred immediately upon creation.
</Warning>

## How Bounty Escrow Works

1. **Creation**: You specify a reward amount (e.g., 10 BIO)
2. **Escrow**: The full amount is transferred from your wallet to a vault PDA
3. **Vault Control**: The vault is controlled by the NullGraph program—only the program can authorize transfers
4. **Settlement**: When you approve a submission, the program automatically pays out (reward - fee) to the researcher and the fee to the treasury
5. **Refund**: If you close the bounty before approval, the full amount returns to your wallet

<Tip>
  You never lose control permanently. You can always reclaim your escrowed BIO by closing the bounty—until you approve a submission.
</Tip>

## Creating a Bounty

<Steps>
  ### Navigate to the Marketplace

  1. Open NullGraph at `https://nullgraph.vercel.app`
  2. Click **Market** in the navigation bar
  3. You'll see a grid of existing bounties (if any)
  4. Click the **Create Bounty** button (usually in the top right or center)

  ### Fill Out the Bounty Form

  A modal will appear with three fields:

  **Description (Required)**

  * What specific null result are you looking for?
  * Be as detailed as possible within the character limit
  * Include key variables, conditions, or methodologies
  * Example: "Looking for evidence that CRISPR efficiency does NOT improve in plant cells under UV exposure"
  * Character limit: **256 characters**
  * A character counter shows your remaining space

  **Reward Amount (Required)**

  * Enter the number of BIO tokens you want to offer
  * Accepts decimal values (e.g., `10.50`)
  * Minimum: `0.01 BIO`
  * The amount will be converted to base units (6 decimals) for on-chain storage
  * Example: `10.00` becomes `10,000,000` base units

  **Deadline (Required)**

  * How many days from now should the bounty expire?
  * Enter a whole number (e.g., `7` for 7 days)
  * Minimum: `1 day`
  * The deadline is stored as a Unix timestamp on-chain
  * After the deadline passes, the bounty can still be closed but no new submissions are accepted

  <Note>
    All three fields are required. The "Deposit BIO & Create Bounty" button remains disabled until all fields are valid.
  </Note>

  ### Approve the Transaction

  1. Click **Deposit BIO & Create Bounty**
  2. Phantom wallet will prompt you to approve two operations:
     * Transfer of BIO tokens to the bounty vault
     * Creation of the NullBounty PDA and vault account
  3. Review the transaction:
     * **Program**: NullGraph Anchor Program
     * **Token Mint**: BIO token address
     * **Amount**: Your reward amount
  4. Click **Approve** in Phantom
  5. Wait for confirmation (1-2 seconds on devnet)

  <Warning>
    Once you approve, the BIO tokens leave your wallet immediately. Make sure the reward amount is correct before approving.
  </Warning>
</Steps>

## After Creation

Once your transaction confirms:

1. Your bounty receives a unique identifier (e.g., `NB-0003`)
2. It appears on the Market page with status **Open**
3. Your BIO tokens are now in the vault (you can verify on Solana Explorer)
4. Researchers can browse your bounty and submit matching NKAs
5. You'll receive notifications when researchers submit to your bounty

## Managing Your Bounty

### Viewing Submissions

1. Click on your bounty card in the Market page
2. You'll see the bounty detail page with:
   * Full description
   * Reward amount
   * Deadline
   * Current status
   * List of submissions (if any)

### Reviewing a Submission

When a researcher submits an NKA to your bounty:

1. The bounty status changes to **Matched**
2. The submission appears on the bounty detail page
3. You can view the linked NKA by clicking its specimen number
4. Review the NKA's hypothesis, methodology, results, and data hash
5. Decide whether it meets your requirements

### Approving a Submission

If the submission satisfies your bounty:

<Steps>
  ### Click Approve

  On the bounty detail page, click the **Approve Submission** button next to the matched submission.

  ### Confirm Transaction

  Phantom will prompt you to approve the settlement transaction:

  * **Researcher Payout**: `reward × (1 - fee_rate)` (default: 97.5% of reward)
  * **Protocol Fee**: `reward × fee_rate` (default: 2.5% of reward)
  * **Vault Balance**: Goes to zero

  Click **Approve**.

  ### Settlement Complete

  * The researcher receives their payout in BIO tokens
  * The protocol treasury receives the fee
  * The vault account is closed
  * Your bounty status becomes **Fulfilled**
  * You can no longer close or reclaim the bounty
</Steps>

<Note>
  The protocol fee (default 2.5%) is deducted from the reward and sent to the treasury. The researcher receives the remaining 97.5%.
</Note>

### Closing a Bounty

If you want to cancel the bounty or the deadline has passed without a suitable submission:

<Steps>
  ### Click Close Bounty

  On the bounty detail page, click the **Close Bounty** button.

  ### Confirm Refund

  Phantom will prompt you to approve the refund transaction:

  * The full vault balance returns to your wallet
  * The bounty status becomes **Closed**

  Click **Approve**.

  ### Bounty Closed

  * Your BIO tokens are refunded in full
  * The bounty remains visible on the Market page with status **Closed**
  * No further submissions can be made
</Steps>

<Tip>
  You can close a bounty at any time before approving a submission. There's no penalty for closing—you get your full reward back.
</Tip>

## Bounty Status Lifecycle

| Status            | Description                                  | Your Actions                       |
| ----------------- | -------------------------------------------- | ---------------------------------- |
| **Open** (0)      | Bounty is active, waiting for submissions    | Close bounty                       |
| **Matched** (1)   | A researcher has submitted an NKA            | Approve submission or close bounty |
| **Fulfilled** (2) | You approved a submission, payout complete   | None (terminal state)              |
| **Closed** (3)    | You closed the bounty and reclaimed your BIO | None (terminal state)              |

## Understanding Token Transfers

**During Creation**

```
Your Wallet (BIO) → Vault Token Account (BIO)
```

**During Approval**

```
Vault (BIO) → Researcher Wallet (97.5%)
Vault (BIO) → Treasury Wallet (2.5%)
```

**During Close**

```
Vault (BIO) → Your Wallet (100%)
```

All transfers use the **SPL Token Interface** with `transfer_checked`, ensuring mint address and decimal precision are validated.

## Common Questions

**Can I edit a bounty after creation?**

No. Bounties are immutable once created. You can only close them or approve submissions.

**What if I don't like the submission?**

You can close the bounty to reclaim your BIO. The researcher's NKA remains on-chain, but you get your full reward back.

**Can multiple researchers submit to the same bounty?**

Currently, only the first submission sets the bounty to Matched status. Future versions may support multiple submissions.

**What if the deadline passes?**

The bounty remains open on-chain even after the deadline. You can still close it to reclaim your BIO. The deadline is informational—it doesn't automatically close the bounty.

**How much SOL do I need for transaction fees?**

Typically \~0.00001 SOL per transaction, plus rent for the bounty PDA (\~0.01 SOL, recoverable).

**Can I create multiple bounties?**

Yes! Each bounty gets a unique number and vault. You can have multiple active bounties simultaneously.

## Best Practices

**Write Clear Descriptions**

* Be specific about the hypothesis, methodology, or conditions
* Include negative terms: "does NOT", "no effect", "failed to"
* Mention key variables or populations

**Set Appropriate Rewards**

* Consider the complexity and rarity of the null result
* Check existing bounties for market rates
* Remember: 2.5% goes to the protocol as a fee

**Set Realistic Deadlines**

* Allow enough time for researchers to find and submit matching NKAs
* 7-14 days is typical for common null results
* 30+ days for rare or highly specific requests

**Review Submissions Carefully**

* Click through to the full NKA detail page
* Check methodology aligns with your needs
* Verify p-values and sample sizes meet your standards
* Look for data hash if provenance is important

## Next Steps

<CardGroup cols={2}>
  <Card title="Browse Market" icon="store" href="/market">
    View all open bounties
  </Card>

  <Card title="Claiming Bounties" icon="hand-holding-dollar" href="/guides/claiming-bounties">
    Learn how researchers submit to bounties
  </Card>
</CardGroup>
