⬡ FUSECOOPNO WALLET
← Home
◈ SETUP GUIDE

Get FuseCoop running

Everything you need — from creating a Circles account to running your first cooperative with a Circles Group.

Quick start
Just need a Circles account. No group required.
With Circles Group
Full on-chain cooperative. Recommended for hackathon.
⚡ QUICK START — NO GROUP
1
Create a Circles account

Go to circles.garden or open the Circles app on Gnosis Chain.

Sign up with your phone number or email. You will receive a Safe address — this is your Circles identity. You will start minting 24 CRC per day automatically.

💡
You need a small amount of xDAI (the Gnosis Chain native token) to pay for gas. Get some free from the Gnosis faucet.
2
Invite at least one other person

Share your Circles address with someone and ask them to trust you — or trust them yourself in the Circles app.

When someone trusts you, they are vouching that you are a real person. FuseCoop uses this trust as your cooperative membership ticket.

3
Create your cooperative on FuseCoop

Tap + NEW at the bottom of this app. Set a name, contribution amount, and cycle. Leave the Circles Group field empty for now.

The person you trusted (or who trusted you) can now join your cooperative.

⬡ CIRCLES GROUP SETUP

A Circles Group gives your cooperative its own on-chain token. Members contribute by minting group CRC (backed by their personal CRC as collateral) — the pool holds a single uniform token that anyone can verify on-chain. This is the recommended path for a production cooperative.

1
Have a Circles account (see Quick Start above)
PREREQ
2
Create a Circles Group

Open the Circles app and navigate to Groups → Create Group. You will need:

  • Name — e.g. "Builders Savings Circle"
  • Symbol — a short ticker, e.g. "BSC" (3–6 chars)
  • Mint policy — leave as BaseGroupMintPolicy (1:1 collateral, no vetting)
Alternatively you can create a group programmatically:
sdk.registerGroup(name, symbol, mintPolicyAddress)
3
Copy the group address

Once created, your group has a unique 0x… address on Gnosis Chain. Find it in the Circles app under your group profile.

You can also look it up on gnosisscan.io — search for your group name or check your transaction history.

4
Trust your coop members through the group

For each person who will join the cooperative, the group admin needs to trust their Circles address through the group.

In the Circles app: open your group → Members → Trust new member → enter their address.

This allows them to mint group CRC (i.e. contribute to the pool). FuseCoop checks isTrusted(groupAddress, memberAddress) on-chain before admitting anyone.

The trust must come from the group, not from your personal account. In the Circles app, make sure you are acting as the group (switch to group context) when trusting members.
5
Create the cooperative on FuseCoop

Tap + NEW, fill in your cooperative details, and paste the group address into the Circles Group field.

From this point:

  • Joining — checked against group trust on-chain
  • Contributing — mints group CRC (collateralises personal CRC), then sends it to the pool
  • Savings wheel payout — transfers group CRC directly to recipient
  • Loans — disbursed in group CRC, repaid in group CRC
6
Members join and start contributing

Trusted members open FuseCoop, find your cooperative, and tap Join. Their Circles address is verified against the group trust on-chain — no admin approval needed beyond the initial group trust.

Once joined they can tap Contribute to mint group CRC and add it to the pool. Their contribution is a real on-chain transaction visible at gnosisscan.io.

◈ CIRCLES SDK FEATURES USED
GROUP
hub.groupMint()
Mint group CRC by collateralising personal CRC — the core contribution primitive
GROUP
hub.isTrusted(group, member)
Check if the group has admitted a member — on-chain membership gate
GROUP
hub.trust(member, expiry)
Admin admits members through the group's trust relationship
GROUP
hub.safeTransferFrom()
Transfer group CRC for savings wheel payouts and loan disbursement
OPTIONAL
buildPathTransferTxs()
Trust-graph path transfer for coops without a group (fallback)
CORE
miniapp-sdk sendTransactions()
All on-chain calls routed through the user's Circles Safe passkey
CORE
miniapp-sdk signMessage()
EIP-1271 signature authenticates every API write off-chain
CORE
sdk.rpc.profile.getProfileView()
Load avatar name and image for the wallet status chip
⬡ CREATE COOPERATIVEBROWSE COOPS