Skip to content

Documentation

Official OpenFour x FourCards Docs

How FourCards works: vaulted graded cards on BNB Chain, packs with verifiable odds, instant buyback, redemption, and card-backed tokens on OpenFour.

The full docs are moving to a public GitHub repository.

Overview

FourCards is a marketplace for tokenized graded trading cards on BNB Chain, built natively on OpenFour. Every card on FourCards is a real PSA, CGC or BGS slab held in a vault and represented by exactly one on-chain token. You can trade it, pull it from a pack, sell it back instantly, or redeem it and have the physical slab shipped to you.

  • Chain: BNB Chain (BSC). Payments in BNB and USDT.
  • Graders: PSA, CGC and BGS. The grader and certificate number are stored on-chain with each card.
  • Randomness: Chainlink VRF v2.5, so pack results can't be chosen by FourCards or anyone else.

How it works

  1. Vault. A graded slab arrives at the vault. Staff photograph the front and back and check the certificate with the grader.
  2. Mint. Two separate operator roles sign: the vault approves the exact card record, then the minter mints it. One certificate can back only one live token.
  3. Trade. List, buy, make offers or sign gasless orders on the marketplace. Cards move only while they are vaulted.
  4. Packs. Open a pack to pull a random card from a published pool with published odds.
  5. Instant buyback. Don't want a pull? Sell it back at a fixed share of its value within the buyback window.
  6. Redeem. Request the physical slab. The token is locked, then burned when the slab ships.

Packs and odds

Each pack tier has a price and a set of value buckets (for example Common, Rare, Chase) with published odds. When you open a pack, PackMachine requests randomness from Chainlink VRF v2.5. The random number picks a bucket by its odds, then a card from that bucket.

  • Up to 10 packs per open.
  • A tier only sells while every bucket with non-zero odds holds enough cards for all pending opens, so a paid open can always be served. Otherwise the tier pauses itself until it is restocked.
  • Odds can't change while any open is pending, and every change is published on-chain.
  • If randomness hasn't arrived within 24 hours, you can refund the open.
  • Cards enter a pool bucketed by their oracle value at the time of deposit.

Instant buyback

Cards pulled from a pack can be sold back to FourCards at 85% of their oracle value within 72 hours of the pull. The terms are fixed per tier and snapshotted when you open, so they can't change after you pay. Payouts are in the currency the pack was bought with.

  • The buyback share is capped at 95% on-chain.
  • Per-card ceiling of $5,000 and a daily cap of $25,000 across all buybacks.
  • Buybacks pause for a currency if paying out would take the reserve below its floor.
  • A card's price must be fresh; stale prices block a buyback until the oracle updates.

Marketplace and fees

Sell with an on-chain listing or a gasless signed order (EIP-712). Buyers can buy listings, accept signed orders, or escrow an offer. Signed orders expire and can be cancelled; every order is bound to the chain and contract.

Marketplace fee2%
Fee split70% treasury · 15% platform token buyback · 15% holder rewards
Royalty (ERC-2981, to the treasury)1%
Hard caps (on-chain)fee ≤ 10% · royalty ≤ 10%

Redeeming a card

  1. Enter a shipping address. It is encrypted and stored off-chain; it never touches the blockchain.
  2. Get a signed shipping quote (for example $25 to the US, $60 default) and pay it in BNB or USDT.
  3. The token is locked: it can't be transferred or listed. You can cancel until the vault starts packing.
  4. When the slab ships, the vault confirms on-chain and the token is burned. You get the tracking number.

High-value shipments may require identity verification before dispatch.

OpenFour integration

FourCards is built on OpenFour, the BNB Chain token framework from Four.meme. Anyone holding vaulted cards can launch a card-backed token on OpenFour, linked to a single card, a bundle, a set or a curated collection.

  • Verified on creation. The token's tax vault (CollectTaxVault) checks on-chain that every linked card is vaulted. If any isn't, the launch fails.
  • Fixed platform tax policy. 2% buy and 2% sell tax after migration, split 50% to the buyback reserve and 50% to token holders.
  • CollectibleData module. A CustomData module that writes the card link into the token's on-chain data. It has been submitted to OpenFour; until it is registered, launches use OpenFour's live Royalty preset with the FourCards tax vault.

Launch a card-backed token →

Pricing oracle

Card values come from recent comparable sales and are posted on-chain to PriceOracle in USD. BNB amounts use the Chainlink BNB/USD feed.

  • Each price has a maximum age of 7 days; older prices are stale and block buybacks and pool deposits.
  • A deviation guard rejects any single update that moves a price by more than 50%.
  • A median mode with several independent signers is supported and planned before launch.

Contracts

Pre-audit staging deployment. These contracts are live on BNB Chain but unaudited, with no cards minted and no pack tiers open. Expect a redeploy, with new addresses, after the audit. Source is verified on Sourcify.

ContractPurposeAddress (BNB Chain)
BuybackInstant buyback of pulled cards0x92e3f08a5B37f19398891C25A19B632a446E1831
CollectTaxVaultOpenFour tax vault template for card-backed tokens0xab13249836aD7f9F99F99C48A1b28D1DbAFaDb6B
CollectibleCardERC-721 registry: one token per vaulted slab0x216Ae595902208f40eFd496f222c61E248CF7bC5
CollectibleDataModuleOpenFour CustomData module (CollectibleData)0x66FD84A4E86d34E8ef4a46B6a7b2C29c97Bd0250
CollectiblePresetValidatorOpenFour preset validator for card-backed tokens0x15F7427aaC7b7BEe0B444446B7DF6A1978030185
FeeRouterMarketplace fee split0xD91edEf53E23268a4c57ba605BE4F69fF3eBff25
MarketplaceListings, signed orders and offers0x1DA223C2cf4ED499962FB5201e6Ed1aC4De22059
PackLensRead-only pack odds and expected value0x20EC2FF2443D1C074A5a904cfdA941fbeACF3270
PackMachinePack tiers, pools and Chainlink VRF draws0x460c7BDb1AdC3B8D690BA2cF6055C8713BD040B4
PlatformHolderRewardsPlatform token holder rewards0x17126fFcb2fe8dd0873Ab4eF0C2A7C879a45a47e
PlatformTokenBuybackPlatform token buyback-and-burn0x4f42c9982D14EC7f362ED6B5e663FC8bA2724828
PriceOracleCard valuations and BNB/USD feed0xF8c865Be14D7621E3C4844957B87CD7C9e09CDE2

Security and status

  • Unaudited. An external audit is required before real cards are minted or packs open.
  • Roles. Admin, treasury, vault operations, minting, pricing and quote signing are separate on-chain roles. Production admin keys will sit in a multisig behind a timelock.
  • Two-party minting. No single key can mint a card: the vault approves and a separate minter mints.
  • Tested. Unit, fuzz and invariant tests, plus fork tests against live OpenFour contracts on BNB Chain and the Chainlink VRF coordinator.

FAQ

Is every card a real, physical card?
Yes. A token can only be minted for a graded slab checked into the vault, and it is burned when the slab is redeemed.
Can FourCards change pack odds after I pay?
No. Odds are locked while any open is pending, and buyback terms are snapshotted at the time you open.
What happens if Chainlink is slow?
Your open stays pending. If it isn't fulfilled within 24 hours, you can refund it.
Which wallets work?
Browser wallets and wallet extensions on BNB Chain, such as MetaMask, Trust Wallet, OKX Wallet or Binance Wallet.