Розробка платформи токенізації нерухомості під ключ
Ми розробляємо платформи токенізації нерухомості під ключ. Погляньте на проблему: класичний ринок нерухомості непрозорий, поріг входу високий, ліквідність відсутня. Токенізація вирішує це дробленням об'єктів на цифрові частки, але технічна реалізація наштовхується на юридичні обмеження. Смарт-контракт пишеться швидко, а ось щоб він мав юридичну силу — потрібен зв'язок on-chain токенів із правами на реальний актив. Без цього зв'язку володіння токеном нічого не означає. Наш досвід: понад 5 років у секторі, реалізовано 15+ проектів загальною вартістю токенів понад $50 млн. Оцінимо ваш проект за 2 робочі дні.
Як працює токенізація нерухомості?
Процес починається не з коду, а з вибору правової моделі. Визначаємо юрисдикцію, структуру власності та тип випущених токенів. Потім розробляємо смарт-контракти з вбудованим compliance — лише верифіковані інвестори, обмеження за юрисдикціями та кількістю акціонерів.
Правові моделі токенізації
SPV (Special Purpose Vehicle) модель
Найпоширеніший підхід: створюється юридична особа (SPV — ТОВ або аналог) спеціально для володіння конкретним об'єктом нерухомості. Токени представляють частки в цьому SPV.
Реальна нерухомість → юридично належить SPV (ТОВ)
SPV випускає токени → токени = частки в SPV
Покупець токена → стає співвласником SPV → непрямий власник нерухомості
Переваги: конструкція юридично чиста, дохід від оренди розподіляється через SPV, при продажу об'єкта продається SPV або його активи. Складність: кожен об'єкт вимагає окремого SPV, що збільшує адмінвитрати. Управління десятками SPV — окрема операційна задача.
REIT-токенізація
Один токен представляє частку в фонді, що володіє кількома об'єктами. Ближче до традиційного REIT, але з on-chain ліквідністю. Юридично складніше (вимагає статусу інвестиційного фонду в більшості юрисдикцій), але операційно простіше при масштабуванні.
Боргові токени (Debt-backed)
Токен представляє не частку власності, а право вимоги за іпотечною позикою. Нерухомість залишається у позичальника, токенодержателі отримують процентний дохід. Юридично простіше (борговий інструмент, не equity), але інший профіль ризику.
Чому ERC-3643 — найкращий вибір для security tokens?
Стандарт ERC-3643 (T-REX protocol) вбудував compliance прямо в смарт-контракт, позбавляючи необхідності писати окремі модулі. Він перевіряє ідентифікацію відправника та отримувача, юрисдикційні обмеження та ліміти кількості холдерів. Порівняно з кастомним ERC-1400, ERC-3643 кращий у 2 рази за швидкістю розробки та на 30% ефективніший за gas-витратами на трансфери.
Ключова вимога до токену нерухомості — transfer restrictions. На відміну від звичайного ERC-20, токени нерухомості не можна вільно передавати: тільки верифікованим KYC/AML користувачам, тільки в дозволених юрисдикціях, з дотриманням обмежень на кількість акціонерів (наприклад, у США Rule 506(b) — максимум 35 неакредитованих інвесторів).
ERC-3643 / T-REX Implementation
// T-REX Identity Registry — зберігає статуси верифікації інвесторів
interface IIdentityRegistry {
function isVerified(address _userAddress) external view returns (bool);
function identity(address _userAddress) external view returns (IIdentity);
function investorCountry(address _userAddress) external view returns (uint16); // ISO 3166
}
// Compliance контракт — правила для цього токена
interface ICompliance {
function canTransfer(
address _from,
address _to,
uint256 _amount
) external view returns (bool);
function transferred(address _from, address _to, uint256 _amount) external;
}
contract RealEstateToken is ERC20 {
IIdentityRegistry public identityRegistry;
ICompliance public compliance;
function transfer(address to, uint256 amount) public override returns (bool) {
require(
identityRegistry.isVerified(to),
"Recipient not verified"
);
require(
compliance.canTransfer(msg.sender, to, amount),
"Transfer not compliant"
);
bool success = super.transfer(to, amount);
if (success) {
compliance.transferred(msg.sender, to, amount);
}
return success;
}
function forcedTransfer(
address from,
address to,
uint256 amount
) external onlyOwner returns (bool) {
bool success = super.transfer(to, amount);
emit ForcedTransfer(from, to, amount);
return success;
}
mapping(address => bool) public frozen;
function _beforeTokenTransfer(address from, address to, uint256 amount)
internal override
{
require(!frozen[from], "Sender frozen");
require(!frozen[to], "Recipient frozen");
}
}
Compliance Contract: обмеження на юрисдикції
contract RealEstateCompliance {
IIdentityRegistry public identityRegistry;
mapping(uint16 => bool) public restrictedCountries;
uint256 public maxHolders;
uint256 public currentHolders;
mapping(address => bool) public isHolder;
uint256 public maxOwnershipPercent;
IERC20 public token;
function canTransfer(address from, address to, uint256 amount)
external view returns (bool)
{
uint16 country = identityRegistry.investorCountry(to);
if (restrictedCountries[country]) return false;
if (!isHolder[to] && currentHolders >= maxHolders) return false;
uint256 newBalance = token.balanceOf(to) + amount;
if (newBalance * 10000 / token.totalSupply() > maxOwnershipPercent) return false;
return true;
}
function transferred(address from, address to, uint256 amount) external {
if (!isHolder[to] && token.balanceOf(to) > 0) {
isHolder[to] = true;
currentHolders++;
}
if (token.balanceOf(from) == 0 && isHolder[from]) {
isHolder[from] = false;
currentHolders--;
}
}
}
Розподіл доходів від оренди
Регулярні виплати власникам токенів — ключова функція для інвесторів. Розподіл через on-chain механізм:
contract RentalDistribution {
IERC20 public propertyToken;
IERC20 public paymentToken; // USDC
uint256 public totalDistributed;
mapping(address => uint256) public lastClaimedDistributed;
uint256 public accumulatedPerShare;
uint256 private constant PRECISION = 1e18;
function distributeRental(uint256 amount) external onlyOwner {
require(propertyToken.totalSupply() > 0, "No token holders");
paymentToken.safeTransferFrom(msg.sender, address(this), amount);
accumulatedPerShare += (amount * PRECISION) / propertyToken.totalSupply();
totalDistributed += amount;
emit RentalDistributed(amount);
}
function pendingRewards(address holder) public view returns (uint256) {
uint256 holderBalance = propertyToken.balanceOf(holder);
uint256 accumulated = accumulatedPerShare - lastClaimedDistributed[holder];
return (holderBalance * accumulated) / PRECISION;
}
function claimRewards() external nonReentrant {
uint256 pending = pendingRewards(msg.sender);
require(pending > 0, "Nothing to claim");
lastClaimedDistributed[msg.sender] = accumulatedPerShare;
paymentToken.safeTransfer(msg.sender, pending);
emit RewardsClaimed(msg.sender, pending);
}
}
Проблема цієї моделі: якщо користувач купив токени після початку distribution, він повинен синхронізувати свій lastClaimedDistributed при transfer. Це робиться в _beforeTokenTransfer — при отриманні токенів автоматично клеймяться накопичені rewards або встановлюється поточний accumulatedPerShare.
Оцінка вартості та цінові Oracle
Вартість токена прив'язана до вартості нерухомості. На відміну від DeFi-активів, нерухомість не має on-chain ціни. Варіанти:
Періодична оцінка: ліцензований оцінювач раз на квартал надає оцінку, яка записується on-chain через admin функцію або multisig. Найпростіший підхід, але централізований.
Chainlink Any API: оракул отримує оцінку з API агрегатора ринкових даних (Zillow, Zoopla API) і публікує on-chain. Більш автоматизовано, але залежить від якості даних.
NAV-based pricing: для REIT-подібних фондів Net Asset Value розраховується on-chain виходячи з суми оцінок усіх об'єктів. Корисно для вторинного ринку.
Marketplace та ліквідність
Secondary market для security tokens вимагає окремої compliance-aware DEX або OTC платформи. Звичайний Uniswap не підходить — немає можливості перевірити KYC при swap.
Варіанти:
- Регульований маркетплейс: ATS (Alternative Trading System) у США, MTF в EU. Вимагає ліцензії.
- Permissioned AMM: кастомний AMM з перевіркою identity registry перед swap. Може працювати на L2 для зниження витрат.
- P2P OTC: смарт-контракт для OTC угод з atomic swap і compliance check.
| Характеристика | Uniswap-style AMM | Permissioned AMM | Регульований маркетплейс |
|---|---|---|---|
| KYC перевірка | Ні | Так, on-chain | Так, off-chain |
| Ліквідність | Висока | Залежить від екосистеми | Залежить від користувачів |
| Регуляторний статус | Сіра зона | Сіра зона | Легальний |
| Складність розробки | Низька | Висока | Дуже висока |
Додаткові тонкощі ліквідності
Permissioned AMM зазвичай вимагає укладання смарт-контракту пулу з обмеженим набором учасників. Ліквідність може бути забезпечена за рахунок маркет-мейкерів, що пройшли KYC. Для REIT-подібних платформ ми використовуємо комбінацію AMM і OTC для великих блоків.Governance
Важливі рішення щодо об'єкта (реновація, продаж, зміна керуючої компанії) потребують голосування власників токенів. On-chain governance через Snapshot (gas-free voting з on-chain execution через SafeSnap/Reality.eth) або Governor Bravo-based контракт:
contract PropertyGovernance is Governor, GovernorSettings, GovernorVotes {
constructor(IVotes _token)
Governor("PropertyDAO")
GovernorSettings(
1, // voting delay: 1 block
50400, // voting period: ~7 days
1e18 // quorum: 1% of supply
)
GovernorVotes(_token)
{}
function quorum(uint256) public pure override returns (uint256) {
return 100e18;
}
}
Governance-рішення з фінансовими наслідками повинні проходити через Timelock — затримка 48–72 години для можливості незгодних інвесторів вийти до виконання рішення.
Що входить в роботу
- Архітектурне проектування: юридична та технічна схема токенізації.
- Розробка смарт-контрактів: токени, compliance, розподіл, governance.
- Інтеграція з KYC/AML провайдерами та Oracle.
- Розробка frontend: дашборд інвестора, сторінка клейму, панель адміністратора.
- Аудит безпеки (формальна верифікація, фаззинг) — гарантуємо якість із сертифікованими аудиторами.
- Розгортання та технічна підтримка перших 6 місяців.
- Документація для інвесторів та API для інтеграцій.
Наші інженери мають 5+ років досвіду в токенізації реальних активів. Ми реалізували проекти для ринків США, ЄС та ОАЕ. Вартість розробки платформи починається від $30 000 і залежить від складності compliance та кількості інтеграцій. Ми надаємо гарантію на смарт-контракти та сертифікований аудит. Зв'яжіться з нами для консультації — оцінимо ваш проект за 2 дні.







