Skip to main content
Yellow private channel relationship

Private payments meet private trading

Stealth addresses are useful for one-time payments. But they become much more powerful when you attach them to ongoing financial relationships. Yellow Network runs state channels for off-chain trading. SPECTER makes those channels private: the counterparty relationship is hidden behind stealth addresses.

The problem Yellow solves

Without SPECTER:
  • Alice opens a channel with Bob
  • On-chain observers see Alice and Bob are connected
  • Trading patterns between them are visible
With SPECTER + Yellow:
  • Alice resolves Bob’s meta-address
  • Alice derives a stealth address for Bob
  • The channel is opened to that stealth address
  • Bob discovers the channel through SPECTER’s announcement system
  • Observers see a channel to an unknown address

How it works

Alice initiates

Alice enters Bob’s ENS name or meta-address and chooses a token/amount.

SPECTER creates a private destination

The backend derives a stealth address for Bob and creates an announcement with a channel_id linking it to the Yellow channel.

Channel opens to stealth address

The Yellow channel is bound to the stealth address instead of Bob’s public identity.

Bob discovers the channel

Bob scans announcements with his SPECTER keys and finds the channel-linked discovery. He now has the stealth private key and the channel metadata.

Off-chain trading

Alice and Bob trade off-chain through the state channel. Settlement goes to the stealth address.
Yellow integration flow

API flow

Create a channel

curl -s -X POST https://backend.specterpq.com/api/v1/yellow/channel/create \
  -H "Content-Type: application/json" \
  -d '{
    "recipient": "bob.eth",
    "token": "USDC",
    "amount": "1000"
  }' | jq .

Discover incoming channels

curl -s -X POST https://backend.specterpq.com/api/v1/yellow/channel/discover \
  -H "Content-Type: application/json" \
  -d '{
    "viewing_sk": "<HEX>",
    "spending_pk": "<HEX>",
    "spending_sk": "<HEX>"
  }' | jq .

Full endpoint table

EndpointStatusWhat it does
POST /yellow/channel/createLiveDerives stealth address, creates announcement with channel_id
POST /yellow/channel/discoverLiveScans for channel-linked announcements
GET /yellow/configLiveReturns WebSocket and contract configuration
POST /yellow/channel/fundScaffoldAPI shape exists, simplified response
POST /yellow/channel/closeScaffoldReturns placeholder close output
GET /yellow/channel/:id/statusLiveChannel status lookup
The fund and close endpoints currently return placeholder-style fields. They demonstrate the integration surface but don’t submit real L1 settlement transactions. Treat them as integration scaffolding.

Why this matters

Most privacy protocols stop at payments. SPECTER extends privacy into ongoing financial relationships. Stealth addresses aren’t just a one-time trick. They’re a coordination primitive that can hide counterparty identity in channels, recurring payments, and multi-party setups. Yellow is the first integration that demonstrates this, with real API endpoints you can test today.

Yellow API docs

Full endpoint documentation with request/response examples.

Try Yellow in the app

Use the hosted Yellow page.