01
Що це
Криптопроцесинг — це не «прийняти платіж». Це облік. Кожна монета, що зайшла, має бути одночасно записана як актив на нашій адресі та як зобов’язання перед мерчантом; кожна комісія — визнана в правильний момент; кожна виплата — зарезервована так, щоб паралельний запит не витратив ті самі гроші двічі. Помилка в одному символі формули проводки коштує реальних грошей.
Тому перед першим рядком коду специфікацію пройшов холодний мультиагентний аудит: п’ять версій документа, знайдені дефекти в канонічній розводці, виправлений подвійний дебет, розділені класи рахунків.
Комісія платформи визнається у момент свіпу — коли кошти фінальні, — а не при статусі «оплачено» на оборотних у reorg коштах.
02
можливості
Що воно вміє
01
Унікальна адреса на інвойс
Кожен платіж отримує власну депозитну адресу; статуси адреси термінальні, повторне використання заборонене.
02
Мультичейн
USDT на TRON, TON і Ethereum, а також нативні BTC, ETH, BSC, Polygon, Solana, TRX, XRP. Пріоритет — USDT.
03
Подвійний запис по-справжньому
План рахунків із класами активів і зобов’язань, канонічна розводка кожної події, матеріалізовані баланси в тій самій транзакції, що й проводка.
04
Атомарний резерв під виплату
Модель балансу available / pending / locked із блокуванням рядка. Дві паралельні виплати не можуть витратити один і той самий залишок.
05
Ізольований підписант
Ключі живуть в окремому сервісі з політикою підпису й ідемпотентністю. Доведення ізоляції ключів — окремий тест у наборі.
06
SaaS-шар для мерчантів
Реєстрація, організації й ролі, KYC/KYB, режими test і live у кожній грошовій таблиці, whitelist адрес виведення, підписані вебхуки із захистом від SSRF.
03
архітектура
Як влаштовано
01
Інвойс і депозитна адреса
02
Детект платежу в мережі
03
Свіп на материнський гаманець
04
Проводки й визнання комісії
05
Виплата мерчанту
Під капотом
- Монорепо на npm workspaces: ledger, assets, apiauth, chain-adapters, secrets, db, obs — кожен пакет із власними тестами.
- Інваріанти класифіковані за важкістю: P0 — втрата коштів або крадіжка ключів, блокує реліз; будь-який сумнів = стоп.
- Реєстр активів із перевіркою decimals прямо в мережі — не довіряємо конфігу.
- Реверсивне сховище секретів у KMS-конверті замість хешів.
- Інтерфейс адаптера мережі заморожений — нова мережа не змінює ядро.
- Тести на vitest проти живого PostgreSQL; типізація наскрізь, без any в грошових шляхах.
04
масштаб
Цифри
9
мереж у моделі
5
версій специфікації до коду
P0
клас інваріантів, що блокує реліз
2
режими: test і live