{"id":"ERC-6105","name":"No Intermediary NFT Trading","status":"Final","chain":"both","category":{"id":"nft","name":"NFT Capabilities","description":"What NFTs can do beyond basic ownership"},"journeyStages":[{"id":"management","name":"Asset Management","description":"Managing assets over time"}],"uxImpact":"Built-in marketplace functionality — list, buy, and sell NFTs directly from the contract without intermediary. Design implications: show 'List for Sale' directly in wallet UI, display listing price/expiry on owned tokens, enable direct purchase without marketplace approval, show benchmarkPrice for royalty calculation. Design decisions: whether to compete with external marketplaces in UI, simplicity of direct listing vs marketplace features, handling multiple payment tokens.","hasDetailedContent":true,"content":{"id":"ERC-6105","summary":"ERC-6105 enables peer-to-peer NFT trading without marketplace intermediaries. Sellers can list NFTs directly from the contract with price, buyer restrictions, and expiration. Buyers purchase directly on-chain with enforced royalties. This removes marketplace fees, ensures creator royalties are always paid, and enables truly decentralized NFT trading.","applicability":{"whenToUse":["Your product addresses: marketplaces charge 2-5% fees on every sale.","Your product addresses: marketplaces can skip royalties.","The flow should deliver: direct on-chain listing, no intermediary fees.","You are designing a direct listing interface experience with visible states and recovery paths."],"whenToAvoid":["Show explicit comparison: \"Marketplace fee: $0 (normally 2.5%)\".","Prominently show \"Creator royalty enforced on-chain\".","Explain: \"Only specified buyer can purchase\" + show buyer address.","Assets are fungible tokens only with no unique-item semantics."]},"designerTakeaways":["You can design UI that delivers direct on-chain listing, no intermediary fees.","You can design UI that delivers royalties enforced at contract level, can't be bypassed.","You can design UI that delivers atomic on-chain swap: payment and NFT transfer together."],"problemsSolved":[{"problem":"Marketplaces charge 2-5% fees on every sale","oldWay":"List on OpenSea, pay 2.5% even for peer-to-peer trade","newWay":"Direct on-chain listing, no intermediary fees","impact":"critical"},{"problem":"Marketplaces can skip royalties","oldWay":"Some platforms set royalties to 0 to attract volume","newWay":"Royalties enforced at contract level, can't be bypassed","impact":"critical"},{"problem":"Direct peer trades require trust or escrow","oldWay":"Send NFT and hope buyer pays, or use expensive escrow","newWay":"Atomic on-chain swap: payment and NFT transfer together","impact":"high"},{"problem":"Private sales are awkward","oldWay":"List publicly, hope only intended buyer sees it quickly","newWay":"List for specific buyer address only","impact":"medium"}],"uxPatterns":[{"name":"Direct Listing Interface","description":"List NFT for sale without marketplace","mockup":"concept/nft-gallery","userFlow":["User selects NFT to sell","Enter sale price","Choose public or private sale","See fee breakdown (no marketplace fee)","Set expiration time","Create on-chain listing"]},{"name":"Private Sale to Friend","description":"Sell directly to specific address","mockup":"generic/vault-deposit","userFlow":["User chooses private sale","Enter buyer ENS or address","Confirm sale details","Create on-chain listing","Share link with intended buyer","Only that address can purchase"]},{"name":"Direct Purchase Flow","description":"Buy NFT directly from on-chain listing","mockup":"concept/nft-gallery","userFlow":["Buyer opens listing link","See NFT details and price","Notice \"Direct On-Chain Sale\" badge","Review payment breakdown","Click buy","Single transaction completes purchase"]},{"name":"Active Listings Manager","description":"Manage your on-chain listings","mockup":"generic/list-selector","userFlow":["Seller views active listings","See all on-chain listings","Check expiration status","Edit price if needed","Cancel listing (NFT unlocks)","Relist expired items"]}],"uiComponents":[{"name":"DirectListingForm","description":"Create on-chain NFT listing","states":["editing","confirming","listing","listed"],"props":["nft","onList","defaultPrice","showRoyalty"]},{"name":"PrivateSaleConfig","description":"Configure buyer-restricted sale","states":["public","private","validating-address"],"props":["buyerAddress","onBuyerChange","resolved"]},{"name":"DirectPurchaseCard","description":"Purchase UI for on-chain listings","states":["available","expired","sold","purchasing"],"props":["listing","onPurchase","showBreakdown"]},{"name":"ListingManager","description":"Dashboard for managing active listings","states":["loading","has-listings","empty"],"props":["listings","onEdit","onCancel"]}],"antiPatterns":[{"pattern":"Not explaining the no-marketplace advantage","why":"Users don't realize they're saving 2-5% fees","instead":"Show explicit comparison: \"Marketplace fee: $0 (normally 2.5%)\"","severity":"high"},{"pattern":"Hiding that royalties are enforced","why":"Creators don't know their royalties are protected","instead":"Prominently show \"Creator royalty enforced on-chain\"","severity":"high"},{"pattern":"Making private sales look suspicious","why":"Looks like a scam link","instead":"Explain: \"Only specified buyer can purchase\" + show buyer address","severity":"medium"},{"pattern":"No confirmation before listing","why":"User lists at wrong price by accident","instead":"Show full summary + confirmation before on-chain listing","severity":"medium"},{"pattern":"Not showing listing expiration clearly","why":"Seller forgets listing exists, price becomes stale","instead":"Notify when listings near expiration, show clear countdown","severity":"medium"}],"onMonad":[{"aspect":"Listing Speed","ethereum":"Creating listing takes 15-30 seconds","monad":"Instant listing creation","designImplication":"List multiple items rapidly, batch listing UI practical"},{"aspect":"Purchase Confirmation","ethereum":"Buyer waits 15+ seconds to confirm ownership","monad":"Sub-second purchase confirmation","designImplication":"Can show \"You own it!\" immediately"},{"aspect":"Gas Costs","ethereum":"Each listing/purchase costs $5-50","monad":"Negligible costs for all operations","designImplication":"Price edits, relisting, cancellation all cheap"},{"aspect":"Royalty Distribution","ethereum":"Royalty payment in same tx can add cost","monad":"Complex distribution still fast and cheap","designImplication":"Multi-recipient royalty splits practical"}],"keyTakeaways":["ERC-6105 = peer-to-peer NFT trading without marketplace","Zero platform fees, enforced royalties","Private sales to specific addresses supported","Highlight savings vs marketplace fees clearly","On Monad: instant listing and purchase"],"technicalNotes":"ERC-6105 extends ERC-721 with setListing(tokenId, price, expiration, buyer) and purchase(tokenId) functions. The listing is stored on-chain with optional buyer restriction. Purchase atomically transfers NFT to buyer and distributes payment to seller + royalty recipients. Compatible with ERC-2981 for royalty information. Listings can be cancelled or updated by the seller."},"sources":[{"label":"Official specification","url":"https://eips.ethereum.org/EIPS/eip-6105","type":"official-spec"},{"label":"Discussion","url":"https://ethereum-magicians.org/search?q=ERC-6105","type":"discussion"}],"urls":{"canonical":"https://www.eipsfordesigners.com/standards/ERC-6105","markdown":"https://www.eipsfordesigners.com/standards/ERC-6105/content.md","agent":"https://www.eipsfordesigners.com/standards/ERC-6105/agent.md","api":"https://www.eipsfordesigners.com/api/standards/ERC-6105","official":"https://eips.ethereum.org/EIPS/eip-6105","discussion":"https://ethereum-magicians.org/search?q=ERC-6105"},"freshness":{"lastReviewed":"2026-04-05","lastUpdated":"2026-04-05"}}