Complete Tokenization Guide

Transform any real-world asset into liquid digital tokens with our comprehensive tokenization framework.

Real Estate Tokenization

Tokenize commercial and residential properties to enable fractional ownership and improve liquidity.

Property Configuration

const realEstateAsset = {
  type: 'REAL_ESTATE',
  subtype: 'COMMERCIAL',
  
  property: {
    address: {
      street: '123 Park Avenue',
      city: 'New York',
      state: 'NY',
      country: 'USA',
      zip: '10001'
    },
    details: {
      squareFeet: 50000,
      yearBuilt: 2015,
      propertyType: 'office',
      floors: 10,
      units: 25
    },
    financials: {
      purchasePrice: 25000000,
      currentValuation: 30000000,
      monthlyRent: 150000,
      occupancyRate: 0.95,
      operatingExpenses: 45000
    }
  },
  
  tokenomics: {
    totalSupply: 1000000,
    pricePerToken: 30, // $30 per token
    minimumInvestment: 1000,
    dividendFrequency: 'quarterly',
    projectedYield: 0.085 // 8.5% annual
  },
  
  legal: {
    structure: 'SPV', // Special Purpose Vehicle
    jurisdiction: 'Delaware',
    trustee: 'OAS Trust Services',
    documents: [
      'deed.pdf',
      'title_insurance.pdf',
      'property_appraisal.pdf',
      'rent_roll.xlsx'
    ]
  }
};

// Create tokenized property
const property = await oas.realEstate.tokenize(realEstateAsset);

Rental Distribution

// Automated rental distribution
await property.distributeRentals({
  period: 'Q1-2024',
  totalRent: 450000, // $450,000 collected
  expenses: 135000,   // Operating expenses
  netIncome: 315000,  // Distributed to token holders
  
  distribution: {
    method: 'proportional',
    currency: 'USDC',
    snapshot: 'automatic' // Takes snapshot of holders
  }
});

Bond Tokenization

Issue and manage tokenized bonds with automated coupon payments and maturity handling.

Bond Issuance

const bondAsset = {
  type: 'BOND',
  subtype: 'CORPORATE',
  
  bond: {
    issuer: 'Acme Corporation',
    isin: 'US123456789',
    rating: 'AA',
    
    terms: {
      faceValue: 1000,
      couponRate: 0.05, // 5% annual
      couponFrequency: 'semiannual',
      maturityDate: '2029-12-31',
      issueDate: '2024-01-01'
    },
    
    size: {
      totalIssuance: 100000000, // $100M
      minimumDenomination: 1000,
      tokenSupply: 100000
    }
  },
  
  features: {
    callable: true,
    callDate: '2027-01-01',
    callPrice: 1020,
    convertible: false,
    secured: true,
    collateral: 'Corporate Assets'
  }
};

const bond = await oas.bonds.issue(bondAsset);

Coupon Payment Automation

// Smart contract for automated coupon payments
contract TokenizedBond {
    function distributeCoupon() external {
        require(block.timestamp >= nextCouponDate, "Not yet");
        
        uint256 couponAmount = faceValue * couponRate / 2;
        uint256 totalPayout = couponAmount * totalSupply / decimals;
        
        // Distribute to all token holders
        for (uint i = 0; i < holders.length; i++) {
            uint256 balance = balanceOf(holders[i]);
            uint256 payment = (balance * couponAmount) / totalSupply;
            USDC.transfer(holders[i], payment);
        }
        
        nextCouponDate += 182 days; // Semi-annual
        emit CouponDistributed(totalPayout, holders.length);
    }
}

Invoice Tokenization

Convert accounts receivable into tradeable tokens for improved cash flow.

Invoice Factoring

const invoiceAsset = {
  type: 'INVOICE',
  
  invoice: {
    number: 'INV-2024-001',
    issuer: 'Supplier Corp',
    debtor: 'BigCo Industries',
    
    details: {
      amount: 500000,
      currency: 'USD',
      issueDate: '2024-01-01',
      dueDate: '2024-03-01',
      terms: 'Net 60'
    },
    
    verification: {
      debtorConfirmed: true,
      documentsVerified: true,
      creditScore: 750
    }
  },
  
  tokenization: {
    discountRate: 0.03, // 3% discount
    tokenValue: 485000, // $500k - 3%
    tokens: 485,
    pricePerToken: 1000
  }
};

// Create tokenized invoice
const invoice = await oas.invoices.tokenize(invoiceAsset);

Art & Collectibles

Tokenize fine art and rare collectibles with verified provenance and authenticity.

Art Tokenization

const artAsset = {
  type: 'ART',
  
  artwork: {
    title: 'Sunset Over Mountains',
    artist: 'Jane Doe',
    year: 1985,
    medium: 'Oil on Canvas',
    dimensions: '48x36 inches',
    
    provenance: {
      previousOwners: ['Gallery X', 'Collector Y'],
      exhibitions: ['MoMA 2010', 'Tate Modern 2015'],
      publications: ['Art Review Vol.23']
    },
    
    authentication: {
      certificate: 'ipfs://QmCertificate...',
      appraiser: 'Christie\'s',
      valuation: 5000000,
      valuationDate: '2024-01-01'
    }
  },
  
  tokenization: {
    totalSupply: 10000,
    pricePerToken: 500,
    royalty: {
      artist: 0.05, // 5% to artist
      platform: 0.025 // 2.5% to platform
    }
  }
};

Carbon Credits

Tokenize verified carbon offsets for transparent ESG compliance and trading.

Carbon Credit Creation

const carbonAsset = {
  type: 'CARBON_CREDIT',
  
  project: {
    name: 'Amazon Rainforest Conservation',
    location: 'Brazil',
    type: 'forest-conservation',
    
    verification: {
      standard: 'Verra VCS',
      registryId: 'VCS-1234',
      vintage: 2024,
      auditor: 'SGS'
    },
    
    impact: {
      co2Tons: 100000,
      methodology: 'VM0007',
      additionalBenefits: [
        'biodiversity',
        'community-development',
        'water-conservation'
      ]
    }
  },
  
  tokens: {
    supply: 100000, // 1 token = 1 ton CO2
    pricePerToken: 25,
    retireable: true,
    tradeable: true
  }
};

// Create carbon credit tokens
const carbonCredits = await oas.carbon.tokenize(carbonAsset);

// Retire credits for offset
await carbonCredits.retire({
  amount: 100,
  beneficiary: 'Company ABC',
  reason: 'Annual carbon offset 2024'
});

Tokenization Process

1. Asset Verification

All assets undergo rigorous verification before tokenization:

  • • Document authentication and legal review
  • • Ownership verification and title search
  • • Third-party audits and appraisals
  • • Compliance checks and regulatory approval

2. Valuation Process

// Automated valuation with oracle data
const valuation = await oas.oracle.getValuation({
  asset: assetId,
  sources: ['chainlink', 'band', 'api3'],
  method: 'weighted-average',
  
  adjustments: {
    marketConditions: true,
    comparables: true,
    discountRate: 0.08
  }
});

// Set token price based on valuation
await asset.updatePrice({
  newPrice: valuation.fairValue / asset.totalSupply,
  effective: 'immediate'
});

3. Legal Structure

Each asset type requires specific legal structures:

SPV (Special Purpose Vehicle)

For real estate and large assets

Trust Structure

For art and collectibles

Escrow Agreement

For invoices and receivables

Registry Contract

For carbon credits

4. Token Minting

// Mint tokens with compliance rules
const mintConfig = {
  standard: 'ERC-1400', // Security token standard
  
  compliance: {
    kycRequired: true,
    accreditationRequired: false,
    transferRestrictions: ['lockup', 'whitelist'],
    maxInvestors: 2000
  },
  
  features: {
    dividends: true,
    voting: true,
    forceTransfer: true, // For legal compliance
    partition: true // Different share classes
  }
};

const tokens = await oas.mint(asset, mintConfig);

5. Distribution & Trading

// Configure distribution
await asset.setupDistribution({
  method: 'dutch-auction',
  startPrice: 110, // Start 10% above target
  reservePrice: 90, // Minimum 90% of target
  duration: 7 * 24 * 60 * 60, // 7 days
  
  allocation: {
    public: 0.6,      // 60% public sale
    private: 0.2,     // 20% private investors
    team: 0.1,        // 10% team (vested)
    treasury: 0.1     // 10% treasury
  },
  
  vesting: {
    team: {
      cliff: 365,     // 1 year cliff
      duration: 1095, // 3 years total
      release: 'linear'
    }
  }
});

// Enable secondary trading
await asset.enableTrading({
  exchanges: ['oas-dex', 'uniswap'],
  liquidity: 100000, // Initial liquidity
  marketMaker: true
});

Best Practices

DO

  • ✓ Complete thorough due diligence
  • ✓ Use appropriate legal structures
  • ✓ Implement proper KYC/AML
  • ✓ Provide transparent documentation
  • ✓ Regular audits and reporting

DON'T

  • ✗ Skip regulatory compliance
  • ✗ Overvalue assets
  • ✗ Ignore investor protections
  • ✗ Neglect ongoing management
  • ✗ Promise unrealistic returns