# Collateral (Energy/Carbon NFTs)

**Scope & invariants:**

* **This page specifies how PoV-backed tokens become collateral for credit on EDMA:** We accept Energy (1 MWh) and Carbon (1 tCO₂e) tokens that passed PoV and One-Claim; we do not accept ETT (proof-only) or frozen/mirrored-invalid assets. Credit is extended in EDSD and repaid in EDSD. Nothing here weakens settlement law:
* **No EMT, no funds (Trade):**
* **Must-fund before shipping (Top-up after Pre-Ship EMT):**
* **One-Claim uniqueness:**
* **Locked EDSD → Unlocked EDSD only on proof:**
* **50% of every protocol fee burns in EDM (on settle/release/retire, not on lending):**
* **Bridges:** collateral must be canonical on EDMA (not a wrapped representation). EDSD is platform-bound (no retail bridge).

### A) Eligibility (what can be pledged)

* **Must be true:**
  * **PoV-minted token with One-Claim FINAL:** see proofs on listing page.
  * **Not FROZEN:** no active revocation/mirror freeze.
  * **Registry Mirror ACTIVE where program requires (I-REC/GO/VCM):**
  * **Not retired, not exported, not already pledged (single-pledge rule):**
  * **Fungibility bucket recognized (see below) and priced by oracles:**
* **Not eligible:**
  * **ETT (proof-only), EMTs, wrapped/bridged representations, or tokens under dispute/freeze:**
  * **Tokens with insufficient oracle quality (illiquid buckets) or expired vintage where program disallows forward use:**
* **Buckets (for valuation & LTV):**
  * **Carbon:** program, method, region, vintage (e.g., VERRA/ARR/AMR/2026)
  * **Energy:** region, standard (e.g., DE/GO) or programmatic hourly → 1 MWh aggregates

### B) Custody & pledge (how it’s held)

* **Vault custody (non-custodial smart contract):** token is transferred to CollateralVault; becomes non-transferable until released.
* **Vault mints a Pledge Receipt (PR) to the borrower (non-transferable soulbound):** recording tokenId, bucket, last\_mark, cap\_LTV, expiry.
* **No rehypothecation:** Only the borrower can instruct release/repay; liquidator paths are controlled (see Liquidations spec).
* **One-Pledge ledger ensures a token cannot be pledged twice:**
* **APIs:**
  * **POST /v1/defi/pledge { token\_id } → { pledge\_id, bucket }:**
  * **POST /v1/defi/release { pledge\_id } (only when debt=0):**
* **Events:**
  * **defi.pledge.created(pledgeId, tokenId, bucket):**
  * **defi.pledge.released(pledgeId):**

### C) Valuation & oracles (what it’s worth, safely)

* **Price sources (hierarchy):**
  * **On-platform TWAP (Tokens book) per bucket:** volume-weighted over N hours (governed, default 72h).
  * **Cross-venue quotes (if mirrored program has a public reference):** normalized to EDSD.
  * **Admin mark-to-model fallback (governed; haircuts ↑; used only if TWAP < min samples):**
* **Quality gates:**
  * **Min prints per window, turnover, depth at ±Δ%, dispersion (stability):** drive a Liquidity Score (LS 1..5).
  * **Staleness SLO:** price window ≤ 24h p95; if stale → LTV hard-capped at 20% or bucket disabled.
* **Mark function:** mark = min(TWAP, last\_trade × (1 − guardrail\_bps)) with governance guardrails (e.g., 5–10% below last trade).

### D) LTV bands & risk parameters (by bucket)

| **Bucket example**              | **LS** | **Base LTV** | **Max LTV** | **Liq threshold (HF)** | **Haircut notes**                 |
| ------------------------------- | ------ | ------------ | ----------- | ---------------------- | --------------------------------- |
| **CARB VERRA ARR AMR 2026**     | 5      | 55%          | 60%         | 1.05                   | High liquidity & standard quality |
| **CARB VERRA REDD+ LATAM 2025** | 4      | 50%          | 55%         | 1.08                   | Policy/quality variance risk      |
| **ENER GO DE**                  | 4      | 50%          | 55%         | 1.08                   | GO/REC parity, stable demand      |
| **ENER GO SG**                  | 3      | 45%          | 50%         | 1.10                   | Smaller book depth                |
| **Hourly attributes (24/7)**    | 2      | 35%          | 40%         | 1.12                   | Short-dated; roll/aggregate risk  |
| **Long-tail buckets**           | 1      | 0–25%        | 25%         | 1.15                   | By exception only                 |

* **Concentration controls:**
  * **Per borrower:** ≤ 30% of debt in one bucket, ≤ 50% in one program/region.
  * **Per bucket:** global utilization caps (e.g., $X notional).
* **Aging / eligibility:**
  * **Carbon vintages older than policy threshold (e.g., >7 years):** get −5..10% LTV or disabled.
  * **Frozen/mirror-invalid → LTV=0 until cleared.**

### E) Loan model (what you borrow, how it accrues)

* **Currency:** EDSD only (platform stable).
* **Facility types:**
  * **Term:** fixed tenor, bullet/milestone amortization
  * **Revolving:** redraw up to limit while HF ≥ min
* **Accrual:** simple APR (governed grid by bucket/LS), debited daily to principal; repay any time.
* **Fees:** origination/roll fees (from treasury half only); no impact on burns.
* **Health Factor (HF):** HF = sum\_i (V\_i × LTV^max\_i) / Debt; Margin call at HF ≤ 1.10, liquidation at HF ≤ 1.00 (or per-bucket stricter threshold).
* **APIs:**
  * **POST /v1/defi/borrow { pledge\_id, amount\_edsd } → checks HF, caps, LS:**
  * **POST /v1/defi/repay { loan\_id, amount\_edsd } → partial/Full:**
  * **GET /v1/defi/health { loan\_id } → HF, marks, margin requirements:**

### F) Marking, calls & cures

* **Mark frequency:** hourly recompute, event-driven on price moves, mirror/freeze events.
* **Margin call:** HF ≤ call\_threshold → webhook defi.margin.call with cure deadline (e.g., 24–48h).
* **Cure by:** repay, add collateral, or swap buckets (if policy allows).
* **No cure:** position enters partial liquidation up to HF restore (see Liquidations spec).

### G) Where burns appear (and where they don’t)

* **No burns at pledge/borrow/repay/release:**
* **Burns happen when tokens trade or retire (Tokens 4% → burn 2%) and when Trade milestones release (0.5%/stage → burn 0.25% until caps):**
* **Lending fees, staking rewards, and grants source from the treasury half only.**

### H) Security & compliance levers

* **Freeze propagation:** if a pledged token becomes FROZEN (revocation/mirror revoke), borrowing is blocked and HF recomputed; margin call may trigger.
* **KYC/KYB / sanctions:** borrower & pledge owners must be whitelisted; custody moves logged.
* **Auditability:** pledge → price → HF → borrow/repay → release is fully evented; ledgers export CSVs.

### I) KPIs & SLOs (what we publish)

* **Oracle freshness (p95):** ≤ 24h; > 2 feeds for top buckets
* **Liquidation loss rate:** 0 (target; measured net of recovery)
* **Margin call cure rate:** ≥ 90% within SLA
* **Utilization per bucket:** within governance caps
* **Borrow APR spread vs LS:** within governed grid; no out-of-band loans

### J) Worked examples

* **1) Carbon collateral (VERRA ARR 2026, LS=5):**
  * **Mark = $18/t, pledge 10,000 t → V = $180,000**
  * **Base LTV 55% → max debt $99,000 EDSD**
  * **Borrow $85,000 → HF = (180k×0.60)/85k ≈ 1.27 (safe)**
  * **Price drops to $15 → V=150k, HF=(150k×0.60)/85k ≈ 1.06 → margin call (cure: repay \~$5k or add \~1,900 t)**
* **2) Energy collateral (GO DE, LS=4):**
  * **Mark $50/MWh, pledge 2,000 MWh → V=$100,000**
  * **Base LTV 50% → max $50,000; borrow $45,000 → HF=(100k×0.55)/45k=1.22**
  * **Mirror freeze hits (registry issue) → LTV=0 during freeze → HF=0 → immediate margin requirement or partial liquidation.**

### K) Governance knobs (bounded)

* **Enable/disable buckets; set LS thresholds, LTV grids, HF thresholds, utilization caps:**
* **Configure price oracle windows, sources, and fallback policies:**
* **Set margin call cure windows and liquidation penalties (page 3):**
* **Cannot:** accept frozen/bridged/ETT; bypass PoV/One-Claim; discount burns; pledge the same token twice.

<img src="https://4141632533-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvCX7EzuE9nwtTuIaxXGQ%2Fuploads%2FX68l6QHYizP9kDMOfYtZ%2Ffile.excalidraw.svg?alt=media&#x26;token=1360160c-c038-45c2-914f-544ef32efe91" alt="" class="gitbook-drawing">

### Plain recap

{% hint style="info" %}
Collateral on EDMA is PoV-true, oracle-valued, vault-held Energy/Carbon NFTs. Credit is in EDSD, sized by LTV bands per bucket and guarded by HF. Mirrors/freeze events and price marks flow straight into calls and cures; liquidations are partial and rule-based. None of it touches the burn engine: burns still happen only when assets settle, retire, or releases pay—always tied to proof.
{% endhint %}
