> For the complete documentation index, see [llms.txt](https://docs.j.tools/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.j.tools/affiliate/faq.md).

# Affiliate FAQ

Short answers to the questions partners ask most. For exact tier rates, your current balance, and your live link, open the dashboard. Those numbers update in real time and the admin can adjust them, so the panel is the source of truth.

{% hint style="info" %}
New to the program? Read the [overview](/affiliate/overview.md) first, then come back here when you have a specific question.
{% endhint %}

## Getting started

<details>

<summary>Who can join?</summary>

Anyone with a Solana wallet. No email, no password, no application to wait on. Connect a wallet, sign a message to prove you own it, and your partner account is created on the spot. Sign-up is auto-approved.

</details>

<details>

<summary>How do I get my referral link?</summary>

Open your dashboard after you register. Your link looks like `https://j.tools/?ref=CODE`, where `CODE` is your unique partner code. Share it anywhere. When someone opens J Tools through it, the code is tied to the first wallet they connect. The attribution page walks through the mechanics.

</details>

<details>

<summary>Does it cost anything to be a partner?</summary>

No. Joining is free, and you keep your share of the platform fee on every successful paid transaction from wallets you referred. Everything settles in SOL.

</details>

## How crediting works

When someone clicks your link, the `?ref=` code is stored in a cookie for 7 days. The moment that visitor connects a wallet, the code and wallet are bound together permanently. After that, every paid transaction from that wallet credits you.

{% hint style="warning" %}
The binding is **first referrer wins** and **one partner per wallet**. If a wallet was already attributed to another partner, or it connected before clicking your link, it stays with whoever was first. Get people to open your link before they connect.
{% endhint %}

<details>

<summary>When am I credited?</summary>

Your commission is based on the **platform fee** (the tool fee the user pays), not the network fee. Each time a referred wallet completes a paid transaction, a tier-based share of that platform fee is recorded for you. See [commission tiers](/affiliate/commission-tiers.md) for how the share is set, and check your dashboard for the live rate.

</details>

<details>

<summary>What does it mean when a commission is "Pending"?</summary>

Pending means the transaction is done but the amount has not hit your withdrawable balance yet. It is a holding state shown in the panel. Once it becomes Confirmed, the amount counts toward your balance and you can withdraw it.

</details>

<details>

<summary>Do self-referrals count?</summary>

No. Referring your own wallet is not a way to earn. Self-referral and similar patterns are flagged to our security review, where the admin decides case by case. Build real referrals instead.

</details>

<details>

<summary>My referral link did not credit a sale. Why?</summary>

The usual causes:

* The wallet connected **before** clicking your link, so it was never attributed.
* The wallet was already bound to another partner (first referrer wins).
* The 7-day cookie window expired between the click and the wallet connecting.
* The visitor arrived through an invalid or removed code (`AFF_REF_INVALID`).

Attribution is permanent once set, so it cannot be moved after the fact. The [Error codes reference](/reference/error-codes.md) lists them all.

</details>

## Withdrawals

{% stepper %}
{% step %}

### Reach the minimum

You need at least **0.5 SOL** in confirmed balance to request a payout.
{% endstep %}

{% step %}

### Add a social link

At least one social link (Telegram, X, or YouTube) must be on file. Add it on the Social Media page in your dashboard, then request the withdrawal.
{% endstep %}

{% step %}

### Submit and wait for review

An admin reviews and sends each payout by hand, usually within 24 to 48 hours. You can keep one request open at a time.
{% endstep %}
{% endstepper %}

For the whole flow and every status, see [Withdrawals](/affiliate/withdrawals.md).

<details>

<summary>What is the minimum withdrawal?</summary>

0.5 SOL. The maximum is your available balance, and payouts are in SOL only. Asking for less than the minimum returns `AFF_WITHDRAW_MIN`; asking for more than your balance returns `AFF_WITHDRAW_MAX`.

</details>

<details>

<summary>Why does a withdrawal need a social link?</summary>

A basic check before a manual payout goes out. Without one on file, the request returns `AFF_SOCIAL_REQUIRED`. Add a Telegram, X, or YouTube link on the Social Media page and try again.

</details>

<details>

<summary>How long do payouts take, and can I queue several?</summary>

Review runs in a 24 to 48 hour window, and payouts are sent manually (no automation). Only one request can be pending at a time, so wait for the current one to be Paid or Rejected before opening another. A second attempt while one is open returns `AFF_WITHDRAW_PENDING`.

</details>

<details>

<summary>My withdrawal was rejected. What now?</summary>

A rejected request always comes with a reason. Read it on the request, fix the issue, and submit a new withdrawal. Your balance stays intact.

</details>

## Account and access

<details>

<summary>How do I sign in again later?</summary>

Connect the same wallet that owns your partner account and sign the message. There is no separate login. The session lasts until you close your browser, then you sign in the same way.

</details>

<details>

<summary>I see "Access denied" or "account not found." What is wrong?</summary>

* `AFF_NOT_FOUND` means the connected wallet is not registered as a partner. Register first, or connect the wallet that owns the account.
* `AFF_BANNED` appears as a generic access-denied message. A banned partner cannot use the panel, request payouts, or earn new commissions. Reach out to support.

Both appear in the [Error codes reference](/reference/error-codes.md).

</details>

## Keep reading

{% content-ref url="/pages/x6fbrs2qLkxnZ19ZX0ci" %}
[How the affiliate program works](/affiliate/overview.md)
{% endcontent-ref %}

{% content-ref url="/pages/grOs3phWtsgMnmM8zVyU" %}
[Commission tiers](/affiliate/commission-tiers.md)
{% endcontent-ref %}

{% content-ref url="/pages/Rodo9tl731yuAyBheYkO" %}
[Error codes](/reference/error-codes.md)
{% endcontent-ref %}

{% hint style="success" %}
**J Tools is non-custodial.** We never hold your private keys and never ask for them. Every transaction is built in your browser and signed by your own wallet. If any page ever asks you to paste a private key, stop, close it, and let us know.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.j.tools/affiliate/faq.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
