> For the complete documentation index, see [llms.txt](https://docs.artinals.com/artinals-protocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/register-ledger.md).

# Register Ledger

Function:

```
fun register_ledger(
    registry: &mut LedgerRegistry,
    collection_id: ID,
    currency_type: TypeName,
    ledger_id: ID
)

```

**Description:**

* Adds a **trade ledger reference** to the registry.
* Ensures that **each collection has only one ledger per currency**.

**Validations:**

* A ledger must **not already exist** for the collection.
