Documentation

Nest docs

Shared USDC money for homes and teams, built on Arc.

Getting started

What is Nest?

Nest is a shared money app on Arc, Circle's Layer 1 where USDC is the gas token. Create a home, add the people you live or work with, log shared costs, and settle up in USDC in under a second.

USDC-native

Gas is paid in USDC. No other token is needed.

Sub-second finality

Payments and settlements confirm almost instantly.

One shared truth

Every member reads the same onchain balances.

Non-custodial

Funds move wallet-to-wallet. Nest never holds them.

5042002

Chain ID

USDC

Gas token

<1s

Finality

26

CCTP domain

Who it's for

Nest is built for anyone who shares money with other people: flatmates splitting rent and bills, friends on a trip, couples with a joint budget, and small teams paying for shared tools. Instead of one person keeping a spreadsheet and chasing everyone for payments, every member sees the same balances and can settle in a single tap.

Why Arc

Arc is Circle's Layer 1 blockchain designed for stablecoin finance. Gas is paid in USDC, blocks finalise in under a second, and fees are typically a fraction of a cent. That makes small, everyday payments like a share of the electricity bill practical onchain for the first time, without anyone needing to buy a separate gas token.

How it fits together

Nest does not run its own ledger or hold anyone's funds. Homes, members, expenses and settlements live in one public contract on Arc, payments move native USDC directly between wallets, and bridging uses Circle's CCTP v2. The app is a front-end that reads that public data and helps you sign the right transactions.

Getting started

Quick start

Go from zero to your first settlement in about two minutes.

  1. 1

    Sign in

    Tap Launch Nest and continue with email, or connect an existing wallet.

  2. 2

    Get test USDC

    Use the Circle faucet and choose Arc Testnet. Email wallets get a small fee top-up automatically.

  3. 3

    Create a home

    Name your home. This creates it onchain and makes you the first member.

  4. 4

    Invite members

    Share the invite link or add wallet addresses directly.

  5. 5

    Add an expense

    Enter the amount, who paid, and how to split it.

  6. 6

    Settle up

    Open Settle and pay what you owe in one tap. A receipt appears instantly.

Before you start

You need either an email address or an EVM wallet such as MetaMask, Rabby or Coinbase Wallet. If you sign in with email, Nest creates a wallet for you through Circle and sends a small amount of testnet USDC to cover your first network fees. If you bring your own wallet, claim test USDC from the Circle faucet first.

What to expect

Each step that changes data asks your wallet to confirm. Arc confirms transactions in under a second, so your new home, expense or settlement appears almost immediately. If something fails, Nest shows the reason on the same screen and nothing is charged.

Getting started

Network setup

Nest adds Arc to your wallet automatically. To add it by hand, use these values:

Network name
Arc Testnet
Chain ID
5042002
RPC URL
https://rpc.testnet.arc.io
Currency symbol
USDC
Explorer
https://explorer.testnet.arc.io
USDC address
0x3600000000000000000000000000000000000000
Testnet USDC has no value. Never send real funds to a testnet address.

Adding Arc automatically

When you connect a wallet, Nest checks which network it is on. If it isn't Arc Testnet, Nest asks your wallet to add or switch to it. Approve the request and you're ready; no manual setup is needed for most wallets.

USDC as gas

On Arc your wallet shows USDC as the native balance. That balance pays for gas and is the same USDC you send and receive. The native interface uses 18 decimals while the token contract at 0x3600…0000 uses 6 decimals; they are the same asset, so the numbers always match once rounded.

Products

Homes & members

A home is a shared space for a household, trip or team. It is stored in the contract, so anyone you add sees it from any device as soon as they sign in with their wallet.

Create

One transaction creates the home.

Invite

Share a link or add an address.

Manage

Owners can rename and remove members.

Each home has an owner (the person who created it) and a list of members identified by wallet address. Members can have a display name, which is set from their profile and shown everywhere in the app instead of a raw address.

Invite links contain the home ID, so anyone who opens one and signs in can join. Owners can remove a member at any time, but a member with an open balance should settle first so the history stays clear. Because the home lives onchain, it can't be lost if you change phones or clear your browser.

Products

Expenses & splits

Log any shared cost — rent, groceries, utilities — and choose how it is divided.

  • Equal — split evenly across selected members.
  • Exact — set each person's share; totals must match.
  • Recurring rent — repeat a cost every month.

Amounts use exact 6-decimal USDC math, so balances never drift by rounding.

Recording an expense

Pick the home, enter the amount in USDC, choose who paid and add a short description like 'March rent' or 'Groceries'. Nest calculates each member's share and records the expense with one transaction. Everyone in the home sees it straight away.

How balances are calculated

Every expense creates debts from each participant to the person who paid. Nest adds these up across all expenses so you always see one net number per person: what you owe, or what you're owed. Shares are stored in the smallest USDC unit, so 10 USDC split three ways is 3.333334 + 3.333333 + 3.333333, never a cent more or less.

Products

Settle up

Nest nets every expense into the fewest payments needed. Open Settle, review who you owe, and pay. The contract marks the debt as settled and emits an event that becomes your receipt.

  1. 1

    Review

    See each balance and the total due.

  2. 2

    Approve

    First time only: allow the contract to move the exact USDC amount.

  3. 3

    Confirm

    Sign the settlement. It confirms in under a second.

  4. 4

    Receipt

    A receipt with an explorer link appears in Activity.

Settlements go through the ExpenseManager contract, which transfers USDC from you to the person you owe and marks the matching debt as paid in the same transaction. Because both happen together, a balance can never be marked paid without the money moving, or the other way round.

The first time you settle, your wallet asks you to approve USDC spending. Nest requests only the exact amount needed, not unlimited access. Each settlement emits a SplitSettled event that Nest reads back to build your receipt, so receipts are verifiable on the explorer by anyone.

Products

Pay & gasless

Send USDC to any address or scan a payment request. Simple sends are gasless: you sign a USDC authorization (EIP-3009 transferWithAuthorization) and a sponsor submits it, so you pay no fee.

Contract settlements are not gasless — they need a small USDC fee from your wallet.

Sending USDC

Enter an address or scan a payment request, type the amount and confirm. Payments go directly from your wallet to theirs; Nest never touches the funds in between. Every payment shows up in Activity with a link to the Arc explorer.

How gasless works

Instead of sending a normal transaction, you sign a short message that authorises one exact USDC transfer: amount, recipient and an expiry time. Nest's sponsor wallet submits that message to the USDC contract and pays the network fee. The sponsor cannot change the amount or recipient, and the authorisation can only be used once.

Products

Bridge (CCTP v2)

Move native USDC between Arc and other testnets using Circle's CCTP v2. No wrapped tokens.

  1. 1

    Approve

    Allow the TokenMessenger to burn your USDC.

  2. 2

    Burn

    depositForBurn on the source chain.

  3. 3

    Attest

    Circle signs the message, usually within seconds.

  4. 4

    Mint

    receiveMessage on the destination mints fresh USDC.

Supported: Arc, Ethereum Sepolia, Base Sepolia, Arbitrum Sepolia, OP Sepolia, Avalanche Fuji and more. Your bridge history is private to your wallet.

Fast and standard transfers

CCTP v2 Fast Transfer settles in seconds on chains that support it. Standard Transfer waits for the source chain to finalise, which can take several minutes on Ethereum. Once Circle's attestation is ready, minting on Arc is sub-second. Nest shows the expected time before you start.

If you close the page

Your bridge is saved to your device's history for your wallet. Come back to the Bridge page, open the pending transfer and Nest will pick up the attestation and let you finish the mint step. Your USDC is never lost; it is safely burned on the source chain until you mint it on the destination.

Products

Settlement assistant

The assistant prepares a batch of settlements for you within limits you set — maximum per payment and per day. Nothing is sent until you confirm.

Suggests

Finds the smallest set of payments.

Stays in limits

Never exceeds your caps.

Turn the assistant on and set two limits: the most it can pay in one settlement and the most it can pay per day. It then looks at every open balance in your homes and prepares the smallest set of payments that clears them, showing the total before anything happens.

You stay in control the whole time. The assistant can't send money by itself; it only prepares the batch, and you confirm it in your wallet. If a payment would go over your limits, it is left out and clearly marked so you can settle it manually.

Accounts

Wallets & email login

Continue with email

Enter your email, type the 6-digit code, and a wallet is created for you. It restores on any device.

Bring a wallet

MetaMask, Rabby, Coinbase Wallet or any WalletConnect wallet.

Email sessions last about an hour; after that you'll be asked to verify again.

Email wallets

Enter your email and Nest sends a 6-digit code. Once you verify it, Circle creates a wallet linked to your email, or restores the one you already have. You can sign in on any device with the same email and see the same homes and balances. Circle may ask you to set a PIN on first sign-in to protect transactions.

Bring your own wallet

If you already use a wallet, tap Connect wallet and pick it from the list. Nest supports injected browser wallets and any mobile wallet through WalletConnect. You can switch between email and your own wallet at any time; each address has its own homes and history.

Accounts

Profile & activity

Tap your wallet address in the sidebar to see your net position, what you've paid and received, and every onchain receipt for your wallet.

Your profile is built from your wallet's onchain history, so it's always accurate and identical on every device. It shows your total paid, total received, open balance across all homes, and a filtered list of every expense, settlement and payment you were part of.

From your profile you can copy your address, open it on the Arc explorer, and set the display name your housemates see. Changing your name never changes your address or history.

Technical

Architecture

Nest is deliberately thin: a non-custodial front-end on top of Arc and Circle's rails, plus one public contract that stores homes, expenses and settlements.

Request flow

Browser (wagmi / viem)
  ├─ reads  → Arc RPC → ExpenseManager (homes, members, debts)
  ├─ writes → your wallet signs → ExpenseManager / USDC
  ├─ gasless → you sign EIP-3009 → sponsor submits → USDC
  └─ bridge → TokenMessengerV2 → Circle attestation → receiveMessage

App

React app reading Arc directly via viem/wagmi.

Receipts

Built from contract event logs, not local storage.

Bridge

Circle CCTP v2 contracts and attestation API.

There is no private ledger: balances, members and receipts all come from public chain data. If an RPC is slow, Nest keeps showing the last verified state instead of guessing.

Technical

Smart contracts

ExpenseManager
0x709cbad88162b999882788155cde79ade46a6d42
USDC (Arc)
0x3600000000000000000000000000000000000000
Compiler
Solidity 0.8.28, optimizer 200 runs
License
MIT
View on Arc explorer

ExpenseManager is the single source of truth for Nest. It stores homes, members, expenses and debt balances, and executes settlements in USDC. The contract is verified on the Arc explorer, so anyone can read the source code and every transaction it has processed.

Key events: RoomCreated when a home is made, ExpenseAdded when a cost is recorded, SplitSettled when a debt is paid, and DirectTransfer for direct payments between members. Nest uses these events to build receipts and activity.

Technical

Integration guide

Read a home's members and settle a debt with viem:

import { createPublicClient, http } from "viem";

const client = createPublicClient({
  transport: http("https://rpc.testnet.arc.io"),
});

const members = await client.readContract({
  address: "0x709cbad88162b999882788155cde79ade46a6d42",
  abi: expenseManagerAbi,
  functionName: "getRoommates",
  args: [homeId],
});

Listen for SplitSettled and DirectTransfer events to build your own receipts.

Because everything lives in a public contract, other apps can read Nest data or build on top of it without permission. Use any Arc RPC endpoint, the ABI from the verified contract on the explorer, and standard viem or ethers tooling.

For writes, remember that settlements require a USDC approval to the ExpenseManager first, and all amounts use 6 decimals. Simulate transactions before sending them to catch errors like an insufficient balance or an already-settled debt.

Resources

Security

What Nest controls, what it does not, and how to keep yourself safe.

Trust model

Nest never has

  • Your private keys or seed phrase
  • Custody of USDC during a payment, settlement or bridge
  • The ability to move funds out of your wallet without your signature

Nest does operate

  • The website and its server functions
  • A sponsor wallet that submits gasless USDC authorizations you sign
  • A small fee top-up for brand-new email wallets on testnet

Key management

The sponsor key is a dedicated server-side key with no other permissions; it can only submit authorizations that you have already signed, for the exact amount and recipient you approved. Provider credentials live in server environment variables and are never shipped to the browser.

Third-party components

  • Circle CCTP v2 — Circle-operated contracts and attestation service.
  • Circle Wallets — email wallets are created and secured by Circle; Nest never sees the keys.
  • Wallets — RainbowKit / WalletConnect. Always confirm the chain and the contract you approve inside your wallet.

Contract safety

  • Exact approvals — only the amount you're paying.
  • Every transaction is simulated before you sign.
  • State updates happen before transfers to prevent re-entry.

Staying safe

  • Only use nestarc.xyz. We will never DM you first or ask for your seed phrase.
  • Check that approvals target the ExpenseManager address listed on the contracts section.
  • Revoke token approvals you no longer need from your wallet.
  • Verify the chain ID is 5042002 (Arc Testnet) before signing.

Report a vulnerability

Reach us through the support page with details and reproduction steps. Please don't disclose publicly until we've had a chance to fix it.

Resources

Limitations

  • Public deployment runs on Arc Testnet; assets have no value.
  • EURC and cirBTC transfers are disabled until routes are confirmed.
  • Some testnet RPCs can be slow; Nest keeps the last verified state.

Nest is in active development and the public version runs on Arc Testnet, so every balance is test money with no real value. We list known gaps here so you always know what to expect.

Email sessions expire after about an hour for security, after which you verify your email again. The sponsor wallet that pays gasless fees has a limited testnet balance; if it runs low, sends fall back to a normal transaction that you pay for in USDC.

Resources

FAQ

A shared money app on Arc: create a home, split expenses, settle up in USDC, send gasless payments and bridge USDC with Circle CCTP v2.

Nest

Nest is an independent onchain group-finance application built on Arc. The current public deployment includes testnet functionality; testnet assets have no real-world value.

Built on ArcNative USDCCircle Wallets