> For the complete documentation index, see [llms.txt](https://docs.robinmesh.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.robinmesh.com/core-concepts/credits.md).

# Credits

RobinMesh bills inference in credits. A credit is worth exactly $0.01 USDG: you buy credits with USDG, then spend them on requests.

The point of having credits at all is to decouple day-to-day spending from on-chain settlement. Instead of your wallet prompting for a USDG transfer on every message of a conversation, you deposit once and draw the balance down across as many jobs as you like, approval-free.

***

## Properties at a glance

| Property         | Value                                                     |
| ---------------- | --------------------------------------------------------- |
| Value            | 1 credit = $0.01 USDG                                     |
| Purchased with   | USDG (ERC-20) on Robinhood Chain                          |
| Transferable     | No; credits are bound to the purchasing wallet            |
| Expiry           | Never                                                     |
| Minimum purchase | 100 credits ($1.00 USDG)                                  |
| Refundable       | Yes; unspent credits can be withdrawn as USDG at any time |

The non-transferability is deliberate. It rules out a secondary credit market and keeps the accounting trivial: one wallet, one balance.

***

## Funding your balance

**In the web app:**

1. Connect an Ethereum wallet (MetaMask, Rabby, or Robinhood Wallet) at `robinmesh.com/app`
2. Choose "Add credits" in the top navigation bar
3. Enter how much you want
4. Confirm the USDG transaction in your wallet

Your USDG goes straight to the `job_escrow` contract, which books the balance under your wallet address. The deposit's gas is covered by RobinMesh through ERC-4337, so ETH is never needed. With Robinhood Chain confirming blocks every \~100ms, the balance typically reflects the deposit within a second.

**Through the API:** There is no purchase endpoint. Credits are funded from the web app or with a wallet payment QR.

**With a payment QR:** The purchase screen can produce an EIP-681 payment QR code for any compatible mobile wallet. Scanning it pre-fills the exact USDG amount and the deposit address of the `job_escrow` contract.

***

## Pricing tiers

| Tier     | Model range                 | Cost per request   |
| -------- | --------------------------- | ------------------ |
| Lite     | 1B to 3B parameter models   | 2 credits ($0.02)  |
| Standard | 7B to 8B parameter models   | 8 credits ($0.08)  |
| Pro      | 13B to 27B parameter models | 18 credits ($0.18) |
| Max      | 70B+ parameter models       | 40 credits ($0.40) |

These per-request prices apply to completions of up to roughly 500 output tokens. Past that, billing moves to a rate per 1,000 output tokens:

| Tier     | Per 1,000 output tokens |
| -------- | ----------------------- |
| Lite     | 1 credit ($0.01)        |
| Standard | 4 credits ($0.04)       |
| Pro      | 9 credits ($0.09)       |
| Max      | 20 credits ($0.20)      |

Whatever a request costs is locked in escrow up front. A failed or timed-out job returns those locked credits to your balance without any action on your part.

***

## Checking your balance

**Dashboard:** The web app shows your balance in the top navigation bar, always.

**API:** Call `GET /v1/account` with your API key. You get back `credits_remaining` and `usdg_value`.

```json
{
  "wallet": "0x7c41f9b8d2a6e3054cf18a9b62d47e0c93f5a1b8",
  "credits_remaining": 1420,
  "usdg_value": 14.20,
  "last_topup_at": "2026-06-15T09:43:00Z"
}
```

**On-chain:** The balance itself lives in the `job_escrow` contract, keyed by your wallet address. Query it straight from the Robinhood Chain JSON-RPC (`https://rpc.mainnet.chain.robinhood.com`), or look it up on Blockscout at `robinhoodchain.blockscout.com`.

***

## Low balance alerts

A webhook can notify you whenever the balance dips under a threshold you set; the event is `credit.low`, documented on the \[Webhooks]\(

) page.

In the web app, a warning banner appears once you fall below 100 credits.

***

## Getting unused credits back out

To turn leftover credits back into USDG:

1. Open Settings in the web app
2. Choose "Withdraw credits"
3. Enter an amount, or withdraw everything
4. Confirm the transaction in your wallet

A single transaction moves the USDG out of the `job_escrow` contract and back to your wallet. Withdrawals carry no fee, and ERC-4337 sponsorship covers the gas.

***

## Credits vs $RMESH

These are two unrelated instruments with different jobs.

|           | Credits                              | $RMESH                            |
| --------- | ------------------------------------ | --------------------------------- |
| Purpose   | Pay for inference jobs               | Stake, govern, earn protocol fees |
| Value     | Fixed at $0.01 USDG                  | Market price                      |
| Earned by | Purchasing with USDG                 | Providing compute, staking        |
| Spent on  | Inference requests                   | Staking (locked, not spent)       |
| On-chain  | Balance in the `job_escrow` contract | ERC-20 token balance              |

Using RobinMesh requires no $RMESH, and providing compute requires no credits. The two never intersect.


---

# 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.robinmesh.com/core-concepts/credits.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.
