Tokenized Sukuk on Ethereum Sepolia

A Sukuk you can verify, block by block.

KYC at the gate, a bond certificate on-chain, the principal held in a Safe while it funds the project, and the profit shared every period. Five standards, one flow you can read on Sepolia.

  • ERC-3643
  • ERC-7092
  • ERC-4626
  • ERC-7540
  • Gnosis Safe

Profit rate

every Not set

Subscribed
0,00
of no IDRX
Profit rate
0.00%
every Not set
Right now

No issue has been configured on this deployment yet.

How an issue works

Five stages, one direction.

Each stage is a separate transaction from a separate role, and the contract only ever moves forward.

  1. 01 / 05
    ERC-3643

    KYC gate

    An agent records the wallet in the investor registry. Only registered, unfrozen wallets can ever hold the certificate, so every later step inherits the check.

    Called by Compliance agentregisterIdentity()
  2. 02 / 05
    ERC-7092 · ERC-4626

    Certificate issued

    The investor subscribes with IDRX and receives a bond certificate carrying the tenor, the denomination and the profit rate. One certificate is minted per unit of principal.

    Called by Investordeposit()
  3. 03 / 05
    Gnosis Safe

    Treasury custody

    The principal moves to a Safe and out to the real-world project. It is recorded as deployed rather than spent, so the certificate keeps its full principal value.

    Called by ProtocolallocateToTreasury()
  4. 04 / 05
    ERC-4626

    Profit shared

    Each period the project's profit is paid into the contract and split by share of the issue. Holders pull their part whenever they like, and a transfer carries no unclaimed profit with it.

    Called by ProtocolfundCoupon()
  5. 05 / 05
    ERC-7540

    Redemption

    After maturity the treasury repays, the auditor Safe opens redemption, and the principal comes back through a request the issuer settles before the investor claims.

    Called by Investor and issuerrequestRedeem() → redeem()

Roles and keys

Four roles. No shortcuts between them.

AUDITOR_ROLE administers itself, so the protocol admin cannot grant it to its own key. The gates that lock the money and release it belong to the Safe.

Auditor Safe · AUDITOR_ROLE

Closes the issue and releases the principal

Reading policy…
closeSubscription() · openRedemption()0x411E...2801

Protocol · PROTOCOL_ROLE

Runs the issue

Opens it, moves principal to and from the treasury, funds each profit period, settles redemptions.

0x1cEd...2238

Compliance · AGENT_ROLE

Keeps the register

Registers verified investors, freezes wallets or balances, forces a transfer and recovers a lost wallet.

0x0161...fD5b

Every figure here is read from Sepolia.

Nothing on this site is typed in by hand. Check the contracts yourself, then connect a wallet once the compliance agent has registered it.