Money, Bonds & Trust

What leaves your wallet, where it is held, and the limits of the word “escrow” — worth reading before you sign anything on /tasks.

LIVE — funds held on-chainSettlement: contract-credited, self-collectedPlatform fee: 0% (component royalties deployed, set to 0)

When you fund a task, your reward is locked in an on-chain vault dedicated to that one task until the work is approved. When you claim a task, you stake a bond that marks the claim as live: 10% of the reward, at least 76.45 XRD today (an owner setting). Reward and insurance sit in a Scrypto component on Radix mainnet and no owner method can touch them.

The bond is the one exception worth knowing: a forfeited bond is not returned to you. 90% of it goes to a vault only the operator can withdraw, and 10% to whoever closes the expired claim. That vault is funded by worker money, and its balance is public on the component for anyone to check.

The limit worth reading before you approve any signature: Approval does not put money in the worker's wallet. It credits them inside the contract, and the contract pays out only to the account pinned when the task was claimed — a dishonest settlement transaction cannot redirect it. The flip side, stated plainly: the money sits in the escrow until each party signs their own withdrawal, so a credited reward is not yet a collected one. It is spelled out below.

There is no Guild token

Every figure on this page is in XRD, the Radix network's own token, which we do not issue and cannot print. There is no Guild token, no sale, no airdrop, and no plan for one.

The three things you hold here are deliberately not tradeable claims. Your badge is an NFT anyone can mint for the network fee — we do not sell it. Your XP and trust record are account records, earned by working and not purchasable; your badge tier is a field on the NFT. Your reward is XRD that a poster escrowed and you withdraw yourself.

This is a design choice and it has a cost we accept: with nothing to issue, the marketplace has to earn from the royalty on funded tasks or it does not earn at all. That is the trade. If it ever changes it will be announced before it happens, not discovered afterwards.

What leaves your wallet — poster

Reward
The full bounty. Posting a task is free and moves no money; funding is a SECOND, signed transaction, and that one locks the reward and the insurance into the task's escrow vault together, atomically, in the one signature. Until you send it the task sits unfunded and nobody can claim it. On approval the contract assigns it to the worker, who withdraws it with their own signed transaction.
Insurance — your own stake (5% of the reward, rounded up to a whole XRD)
Staked alongside the reward, in the same token. Returned to you whole on the happy path. This is your money held in the vault — not third-party underwriting and not platform-covered. Price your downside off the DISPUTE case, not off the arbiter fee: the app sets the arbiter fee to zero on every task it creates, so the insurance funds no arbiter. On an auto-resolved dispute the live SplitEvenly default governs the reward, not your insurance — your insurance premium comes back to you whole, whoever raised it. An arbiter's ruling is different: it splits the insurance the same way as the reward. On a disputed 100 XRD task with 5 XRD insurance, the worker is credited 50 XRD of the reward and you are credited 55 XRD (the other half plus your premium), not 52.5 each. The worker's claim bond is split the same way as the reward, so half of it is credited to you as well.
Radix network fees
The ordinary ledger transaction fee on the FUNDING transaction. Posting itself is not a ledger transaction and costs nothing. Paid to the network, not to the Guild.

Reward and insurance are locked together, atomically, in one signature — the funding signature, which is separate from and later than posting. XRD only, for now.

What leaves your wallet — worker

Claim bond — 10% of the reward, floored at 76.45 XRD today (an owner setting), forfeitable
A stake you post to claim a task, marking the claim as live: 10% of the task's reward, at least 76.45 XRD today (an owner setting). What can cost you is the expiry race, not the size of the stake. It is not handed back when you submit: it stays in the escrow until the task settles, is credited back to you in full when the work is approved or released after the review window, splits the way the reward does if a dispute is raised, and is collected with the same withdrawal as the reward. Submit has no deadline check, so even a late submission protects it. The catch is the race: once your deadline passes, expire_claim can be called by ANYONE, not only you or the poster, and it forfeits the whole bond and reopens the task. Not instantly, though: the contract refuses to expire a claim until 1 hour past the deadline, so a late submit inside that hour still saves your bond from forfeiture. After that it is first-to-commit, and a claim left unattended can lose the whole bond to a stranger for the cost of their gas.
Radix network fees
The ledger transaction fee on each action you sign (claim, submit, withdraw). Paid to the network.

“Insurance” is the poster’s own stake

The insurance amount (5% of the reward, rounded up to a whole XRD, in the same token) is the poster’s own money, held in the task vault. On the happy path it is returned whole.

If the task is disputed, it does not fund an arbiter fee. The 10% figure quoted elsewhere is max_arbiter_fee_pct, a ceiling on a parameter this app never sets — it writes an arbiter fee of 0 on every task it creates, so the insurance pays no arbiter; an arbiter’s ruling splits it like the reward. What actually happens on an auto-resolved dispute is governed by the live component’s default ruling — SplitEvenly — and that ruling governs the reward only. The insurance premium is hardcoded back to the poster on this path, whoever raised the dispute; the blueprint does this deliberately, so that disputing can never out-earn being approved. Price the downside accordingly: on a 100 XRD task with 5 XRD insurance, the worker is credited 50 XRD and you are credited 55 XRD, not 52.5 each — and the worker’s claim bond splits the same way as the reward, so half of it comes to you too.

It is not an underwritten policy, not a third-party guarantee, and not covered by the platform. A separate opt-in dispute-insurance product is designed but not deployed; this stake is not that.

There is no platform fee

The fee is 0% today. The worker receives 100% of the reward, and that is chain-enforced, not a policy choice: every worker-side method — claim, submit, approve, withdraw — is locked Free on the deployed component, permanently.

The poster-side dial is real, not planned: create_task carries an on-chain component royalty, attached at deployment and currently set to 0 XRD. It can only move via the royalty-admin badge, and any change goes through a published RFC first. “Free to use” is still qualified: you always pay Radix network fees, the claim bond and the poster insurance.

Honest limitapproval credits; the payee collects

Approval settles the split inside the contract: it credits the worker's reward and returns the poster's insurance as entitlements the component holds, payable only to the accounts pinned when the task was claimed. A settlement transaction cannot redirect either one, so payout no longer rests on an honest manifest. The limit that replaces it is smaller but real — money stays in the component until each party signs their own withdrawal, so a credited reward is not a collected one, and an abandoned account leaves funds sitting.

Because of that, this page — and every Guild surface — will never say “trustless payout,” “the contract pays the worker automatically,” or call disputes “automatic/fair resolution.”

On disputes specifically: once a task is submitted, either party to it can raise one here. The pre-deploy gate now fails a release that compiles the dispute UI off. Our UI is still only a front door: the dispute methods are callable on-chain by anyone who builds the transaction by hand, and there is no per-task setting that makes a task undisputable.

And the limit that matters most if you are the worker: nothing is credited until the poster approves, or the review window lapses and someone triggers the release. Approval is the fast way to get the full reward, not the only one: the submission time is pinned on-chain as the start of a review window, and once it lapses anyone — including you — can trigger the escrow's own release, which credits that same full reward, no approval needed. A poster who simply stops responding used to leave a submitted worker with no on-chain path to payment at all; that gap is what this closes. With disputes on there is a second door too, and it is deliberately the worse one: raising a dispute moves the task out of the state the review-window release requires, forfeiting it, and if no arbiter rules first the 7-day default recovers only half the reward — while the poster ends up better off than if they had approved. Reach for a dispute over a disagreement about the work, not a poster's silence; the review-window release answers silence in full once the window passes.

Verify it yourself

On-chain (now): read the live escrow component and its config on the Radix Dashboard — the claim bond (claim_bond_pct/floor/cap), the arbiter-fee CEILING (0.1), and the create_task royalty are all on-ledger. The minimum insurance fraction is not one of them today: the chain's own floor (min_insurance_fraction) is 0, an owner-settable dial, so the escrow would accept a task funded with no insurance at all. The 5% this app locks on every task is its own policy, not a number you can read off the component. Read the arbiter-fee ceiling as what it is: a bound, not the fee. The per-task arbiter fee this app writes is 0, and the royalty is 0 too, which you can confirm on any task funded through this app rather than taking our word for it.

component_rdx1czka54tdxyva098x7djgdsqplt63n9qdglep47atkzpml45hp88yly

Source: the escrow blueprint source is public at github.com/radixguild/guild; a reproducible build that ties it to the deployed package is still planned.

Status labels used here

LIVE — reward, insurance and bonds are held in a Scrypto component on Radix mainnet today.

Contract-settled, self-collected — approval credits each party inside the component, and each withdraws with their own signed transaction.

DEPLOYED AT ZERO — the platform fee is 0%. It is implemented as on-chain component royalties, attached at instantiation and currently set to 0 XRD on every method.

The plain-language marketplace flow lives on how the Guild works; address-by-address verification is on trust & verification.