testnet

Test a PRL / USDG OTC swap.

The USDG sits in a contract you can read. No signup, no deposit, and no operator who can freeze your funds or walk off with them.

This is a test run. Play money on Robinhood Chain Testnet. The USDG here isn't worth anything. Works with MetaMask, Rabby, Coinbase Wallet, Brave, or any EIP-6963 / EIP-1193 wallet.
How to run a test OTC trade
1

Connect your EVM wallet

The page adds Robinhood Testnet and asks for USDG approval only when you open a trade.

2

Enter both parties

Use two different Robinhood addresses and two different Pearl SimNet rprl1p addresses.

3

Buyer escrows test USDG

The page generates the secret, refund ladder, Pearl funding address, and trade ID in your browser.

4

Seller locks PRL

Send SimNet PRL to the generated Pearl address. The measured enclave verifies it and arms the escrow.

5

Settle or refund

The seller claims USDG and reveals the secret. The buyer then claims PRL. If the trade stalls, the buyer refunds after expiry.

Current demo state: the contracts are live, but the Nitro watcher is normally stopped to avoid hourly AWS cost. A fresh full test requires the operator to start the enclave session and provide test ETH, USDG, and SimNet PRL.
Read this before you trade. Releasing the USDG depends on a measured AWS Nitro enclave that verifies the Pearl lock and signs "the PRL really got locked". It holds no keys to your coins and its signature moves no money on its own, so it cannot steal from you alone. But if it colluded with a seller, or simply got it wrong, USDG could be released against a PRL lock that isn't real. AWS remains part of the trust boundary. Trades are capped at 25 USDG. A 0.5% fee applies only when the seller successfully claims. Refunds pay no fee. Why it has to work this way →

You pay USDG and receive PRL. You escrow first; the seller then locks their PRL on Pearl. If they never do, you take your USDG back after the deadline, always and unconditionally.

The only address that can claim this USDG. Agree this with your counterparty first.
Paste your normal rprl1p… SimNet address. We decode its public key in your browser; no private key is ever involved. An HTLC address (rprl1z…) is rejected because nobody holds a key for it.
Where their PRL returns if the swap times out.
Hours. Minimum 0.75, maximum 6. Pearl blocks take about 194 seconds, so a short window may not confirm in time.
-

Why there's a trusted attester

Robinhood Chain cannot check whether something happened on Pearl. Normally you'd fix that with a light client, a contract that verifies Pearl's proof-of-work directly. That isn't possible here: Pearl's proof-of-work is a ~60 KB recursive STARK over the Goldilocks field, and the EVM has no precompile that can verify it. Verifying the enclave's own attestation document on-chain is possible (Base's audited verifier does it for about 13.8 million gas), but that only proves which code ran inside the enclave. The measured enclave's own light client verifies what happened on Pearl.

For this pair of chains, the enclave attester is structural. What the contract does guarantee is that authorising and paying are separate: the attester's signature moves nothing, only the seller can claim, and your refund after the deadline cannot be blocked by anyone. The realistic ceiling is several independent attesters, so that no single one can release funds. This is not trustless.

Choose your wallet

Confirm