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

# On-chain ledger

Every UR transaction (deposits, withdrawals, FX conversions, card spending, transfers) is recorded on the Mantle Network. This on-chain ledger is UR's core infrastructure layer: it replaces the traditional bank ledger with a transparent, real-time, programmable record of all account activity.

## How it works

When a user performs any financial action in UR, the system executes it as an on-chain transaction:

* **Deposit**: fiat arrives via SEPA/SWIFT → UR mints the corresponding tokenized deposit (e.g., 100 EUR24) to the user's wallet
* **Withdrawal**: UR burns the tokens → fiat is sent out via SEPA/SWIFT
* **FX conversion**: burn one currency token, mint another in a single atomic transaction
* **Card spend**: burn tokens instantly at point of sale, settle with Mastercard later
* **Transfer**: move tokens between wallets on-chain

Each operation is a verifiable, immutable record on Mantle Network.

## Comparison to traditional bank ledgers

Traditional banks maintain internal databases that only they can read. Reconciliation between systems (bank, card processor, partner) takes hours or days, and discrepancies are common.

|                     | Traditional bank ledger   | UR on-chain ledger                  |
| ------------------- | ------------------------- | ----------------------------------- |
| **Visibility**      | Bank-internal only        | Public, auditable by anyone         |
| **Settlement**      | T+1 to T+3                | Instant (block confirmation)        |
| **Reconciliation**  | Manual, periodic batches  | Unnecessary; single source of truth |
| **Auditability**    | Requires bank cooperation | Read directly from chain            |
| **Programmability** | None                      | Smart contract composability        |

## Reading on-chain state

Partners can query the Mantle Network directly to:

| Action                   | What you can do                                                   |
| ------------------------ | ----------------------------------------------------------------- |
| **Verify balances**      | Read token balances for any UR wallet without calling the UR API  |
| **Monitor transactions** | Subscribe to on-chain events for real-time notifications          |
| **Build reports**        | Pull historical transaction data for compliance or reconciliation |
| **Audit**                | Independently verify that user balances match expected state      |

This works with any EVM-compatible tooling (ethers.js, viem, Foundry, block explorers).

## Why this matters

The on-chain ledger is UR's key differentiator:

| Benefit                     | Detail                                                                                                                                          |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **No reconciliation lag**   | What the user sees, what the partner queries, and what the regulator audits is the same data, in real time                                      |
| **Partner independence**    | You don't need to trust UR's reporting; you can verify on-chain                                                                                 |
| **Composability**           | Balances are standard ERC-20 tokens. Partners can build programmable finance on top (automated sweeps, conditional payments, DeFi integrations) |
| **Regulatory transparency** | Regulators can audit the ledger directly, reducing compliance overhead for everyone in the chain                                                |


---

# 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:

```
GET https://docs.ur.app/concepts/on-chain-ledger.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.
