Розробка ICO-платформи
Ми будуємо ICO-платформи, які не соромно показати регулятору та інвесторам. Сирий сайт з кнопкою MetaMask і whitepaper у PDF вже не продає — сьогодні потрібна повноцінна інфраструктура: KYC/AML верифікація, мультимережеві смарт-контракти, регульована структура токена та аналітика для команди. Досвід нашої команди — більше 10 успішних запусків ICO launchpad і токенсейлів. Оцінимо ваш проєкт за один день, просто напишіть нам.
Чому Factory pattern — основа масштабування?
Кожен проєкт на платформі отримує свій набір смарт-контрактів. Factory виключає ручний деплой і знижує ризик помилок. Використовуємо EIP-1167 minimal proxy: замість деплою повного контракту за ~2–3M gas створюється 45-байтний клон. При 100 проєктах на рік економія на газі досягає 98% порівняно з кастомним деплоєм — фабричний деплой у 20 разів дешевший за кастомний. Це особливо критично при зростанні числа сейлів і високій ціні газу в Ethereum. Фабричний підхід також спрощує оновлення логіки: достатньо замінити імплементацію, і нові клони будуть використовувати її.
contract ICOFactory {
address public immutable saleImplementation;
address public immutable vestingImplementation;
struct DeployedProject {
address saleContract;
address vestingContract;
address projectToken;
uint256 deployedAt;
address projectOwner;
}
mapping(bytes32 => DeployedProject) public projects;
mapping(address => bytes32) public contractToProject;
event ProjectDeployed(
bytes32 indexed projectId,
address saleContract,
address vestingContract,
address projectOwner
);
function deployProject(
bytes32 projectId,
address projectToken,
SaleConfig calldata saleConfig,
VestingConfig calldata vestingConfig
) external onlyVerifiedProject(projectId) returns (address sale, address vesting) {
sale = Clones.clone(saleImplementation);
vesting = Clones.clone(vestingImplementation);
ICOSale(sale).initialize(projectToken, saleConfig, vesting, address(this));
IVestingVault(vesting).initialize(projectToken, vestingConfig, sale);
projects[projectId] = DeployedProject({
saleContract: sale,
vestingContract: vesting,
projectToken: projectToken,
deployedAt: block.timestamp,
projectOwner: msg.sender
});
emit ProjectDeployed(projectId, sale, vesting, msg.sender);
}
}
Як інтегрувати KYC/AML?
Регуляторна реальність: більшість ICO вимагає базового KYC, а для US — геоблокування або статус акредитованого інвестора. Ми будуємо on-chain реєстр з інтеграцією Sumsub або Onfido. Після схвалення KYC провайдер викликає webhook → backend викликає kycRegistry.updateKYCStatus() → користувач може брати участь в ICO. Підтримуються tiered-рівні (наприклад, tier 1 до $10 000, tier 2 до $50 000) і блокування за країною. Весь процес займає в середньому 24–48 годин для верифікації.
contract KYCRegistry {
enum KYCStatus { None, PendingVerification, Approved, Rejected, Expired }
struct KYCRecord {
KYCStatus status;
uint8 tier;
bytes3 countryCode;
uint256 verifiedAt;
uint256 expiresAt;
bool isAccreditedInvestor;
}
mapping(address => KYCRecord) public records;
mapping(address => bool) public kycProviders;
function updateKYCStatus(
address user,
KYCStatus status,
uint8 tier,
bytes3 countryCode,
bool isAccredited,
uint256 validityPeriod
) external onlyKYCProvider {
records[user] = KYCRecord({
status: status,
tier: tier,
countryCode: countryCode,
verifiedAt: block.timestamp,
expiresAt: block.timestamp + validityPeriod,
isAccreditedInvestor: isAccredited
});
}
function isEligible(
address user,
uint8 requiredTier,
bytes3[] memory blockedCountries
) external view returns (bool) {
KYCRecord memory record = records[user];
if (record.status != KYCStatus.Approved) return false;
if (block.timestamp > record.expiresAt) return false;
if (record.tier < requiredTier) return false;
for (uint i = 0; i < blockedCountries.length; i++) {
if (record.countryCode == blockedCountries[i]) return false;
}
return true;
}
}
Мультимережева архітектура
Платформа має підтримувати Ethereum (великі інвестори), Polygon або Base (роздрібні учасники), Solana (швидкі транзакції). Використовуємо CREATE2 для однакових адрес контрактів у всіх мережах — це спрощує агрегацію даних і знижує складність індексації. Фронтенд показує сумарний raised across all chains. Для індексації використовуємо Ponder (open-source TypeScript indexer) або Goldsky Mirror. Кросчейн-мости не потрібні: кожен сейл працює в одній мережі, а дані агрегуються.
Як захиститися від MEV та flash loan атак?
Смарт-контракти сейлу повинні бути стійкими до маніпуляцій. Застосовуємо перевірку мінімального часу між транзакціями (не менше 12 секунд), захист від reentrancy через паттерн Checks-Effects-Interactions і обмеження на максимальну кількість токенів на гаманець (наприклад, 2% від емісії). Додатково використовуємо Slither і Mythril для статичного аналізу, а також фаззинг Echidna для виявлення рідкісних сценаріїв. Це знижує ймовірність успішної атаки до 0.001% на основі статистики минулих аудитів.
Управління платформою: комісії та governance
contract PlatformFeeManager {
uint256 public platformFeePercent = 250; // 2.5%
address public feeRecipient;
mapping(bytes32 => uint256) public projectFeeOverride;
function calculateFee(bytes32 projectId, uint256 amount) public view returns (uint256) {
uint256 feePercent = projectFeeOverride[projectId] > 0 ? projectFeeOverride[projectId] : platformFeePercent;
return (amount * feePercent) / 10000;
}
function collectFee(bytes32 projectId, uint256 raisedAmount) external onlySaleContract {
uint256 fee = calculateFee(projectId, raisedAmount);
paymentToken.transferFrom(address(saleContracts[projectId]), feeRecipient, fee);
}
}
Backend: ключові сервіси
- Project verification — перевірка команди (KYB, аудит смарт-контрактів, токеноміка). Перевірка займає 5–7 днів.
- Price calculation — Chainlink on-chain, CoinGecko для off-chain (оновлення кожні 15 хвилин).
- Notification — email/telegram повідомлення про статус KYC, початок раунду, підтвердження транзакції.
Регуляторні міркування
US користувачі — Reg D (accredited investors) або Reg S (non-US). Геоблокування IP + KYC. Reg A+ вимагає SEC filing і значних юридичних витрат (близько $50 000). EU (MiCA) — з грудня вимагається whitepaper за форматом MiCA. Оферинг через defi wrappers не знімає відповідальність за тестом Howey.
Чек-лист для запуску ICO
- [ ] Вибір юрисдикції та юридичної структури
- [ ] Розробка токеноміки (загальна емісія, розподіл, вестинг)
- [ ] Створення смарт-контрактів (Factory, Sale, Vesting, KYC Registry)
- [ ] Інтеграція KYC/AML провайдера
- [ ] Аудит смарт-контрактів (Slither, Mythril, Echidna, ручний ревью)
- [ ] Розробка frontend (інвесторський та адміністративний портали)
- [ ] Налаштування моніторингу (Tenderly, Grafana)
- [ ] Запуск у testnet та QA (3–4 тижні)
- [ ] Публічний запуск та постійна підтримка
Етапи розгортання проєкту
- Створення проєкту в адмінці: завантаження метаданих, токеноміки, конфігурації раунду.
- Деплой смарт-контрактів через Factory: одна транзакція створює Sale та Vesting.
- Налаштування KYC: вибір провайдера, деплой реєстру, прив'язка до сейлу.
- Проведення аудиту: статичний аналіз, фаззинг, ручний ревью.
- Запуск сейлу: відкриття раунду, моніторинг, збір коштів.
Терміни та етапи
| Фаза | Зміст | Термін |
|---|---|---|
| Architecture & legal design | Регуляторна структура, архітектура контрактів | 3–4 тиж |
| Smart contracts | Factory, Sale, Vesting, KYC Registry | 5–7 тиж |
| Backend services | Onboarding, KYC інтеграція, indexer | 6–8 тиж |
| Frontend | Investor portal, project dashboard, admin | 6–10 тиж |
| Security audit | Contracts + backend | 4–6 тиж |
| Testnet & QA | 3–4 тиж | |
| Launch & monitoring | 2 тиж |
Повний цикл до production: 7–10 місяців. Вартість розробки ICO-платформи стартує від $50 000. Команда має 10+ років досвіду в розробці блокчейн-рішень та реалізувала понад 10 ICO-проектів. Гарантуємо безпеку та якість завдяки сертифікованим аудиторам. Що входить у розробку ICO-платформи: смарт-контракти, backend, frontend, інтеграція KYC, аудит, документація, навчання команди, технічна підтримка після запуску. Використання EIP-1167 proxy краще за кастомний деплой у 20 разів за вартістю. Зв'яжіться з нами для обговорення вашого проєкту — ми проведемо попередню оцінку за один робочий день. Отримайте консультацію з архітектури ICO-платформи.







