Skip to main content
This is the internal knowledge base for cryptocheckout.ai. It is written for engineers, operators, and agents who need to understand the whole system before changing any part of it.
Nothing here is customer-facing marketing. Several sections describe unshipped design and open commercial decisions. Check Status before assuming a behaviour is live.

What the product is, in one paragraph

A tier-3a trustless managed-SaaS crypto checkout. Audited Solidity contracts on seven EVM chains plus TRON accept stablecoin payments and settle them through a per-merchant accumulating pool. Two rails feed the same pool, and a permissionless distribute() splits the balance 99 / 0.75 / 0.25 between merchant, treasury, and referral partner, to recipients committed on-chain at pool creation. The platform never takes custody of funds, and — because the checkout verifies the settlement destination on-chain in the customer’s browser before they sign — never takes custody of routing either.

How to read this

Settlement

Two rails, one pool, and how money actually moves from customer to merchant.

Economics

Who pays which gas, how the platform recovers what it fronts, and what is still open.

Trust and security

Why a database compromise cannot redirect a customer’s payment, and the limits of that claim.

Contracts

Every deployed contract, what it does, and the conventions that must never change.

Platform

Edge functions, keepers, indexers, authentication, and the three dashboards.

Compliance

Sanctions screening, the MiCA position, and the refund policy.

Integration

How a merchant embeds checkout and what gates access to it.

Operations

Environments, build and test, deployment, and the known-broken list.

The five things most likely to trip you up

MerchantPool.sol has exactly three external functions and no receive, fallback, or token hook. A forwarder sweep is a plain ERC-20 transfer to the pool address; the pool learns its balance by reading balanceOf(address(this)) at distribute time. Deposit-rail volume generates zero pool calls. This single fact drives most of the clone decisions.
MerchantPool.distribute() carves the 50 bps distributor reward from the merchant share. Every live pool carries distribution_incentive_bps = 50. The all-in rate is 1.495%, not 1%. See Distribution.
Locked 2026-06-18. The forwarder is sweep-only. Refunds are merchant-initiated, off-chain, to a customer-supplied address collected at refund time — never to the inbound sender. See Finality and refunds.
TVM energy equals EVM gas unit-for-unit, but TRON prices it 100–2,700× higher, has no EIP-2929, charges bandwidth as a separate resource that energy rental does not discount, and applies a Dynamic Energy Model penalty with no EVM equivalent. Reasoning ported from EVM to TVM has produced at least three material errors. See TRON.
Production tracks 86 migrations; migration tooling is broken locally and does not record the colliding local versions. See Known issues.

Source hierarchy

When two documents disagree, prefer them in this order. Every dollar figure in the Economics section was computed from live prices on the date stated. The decisions do not move with prices; the numbers do.