The CryptMeUp Base smart contract is the onchain payment contract we use to process Base payments without taking custody of user funds. It is designed to keep the payment flow simple, transparent, and deterministic.
For native Base payments, the contract receives the payment amount directly as msg.value. For supported ERC20 payments such as USDC and EURC, the contract uses the approved token amount and performs the split onchain.
The payer only sends the total amount that belongs to the payment. The contract calculates the fixed 0.1% fee internally. The remaining 99.9% is routed to the merchant wallet. The 0.1% fee is routed to the configured fee wallet.
This model is safer than passing fee amounts from the frontend, because the settlement rule lives inside the contract itself. That means the final split cannot silently drift because of browser logic, UI bugs, or mismatched rounding rules.
The contract is also non-custodial. CryptMeUp does not ask users to pre-send funds to a platform wallet. The contract only executes the payment split that belongs to the active payment transaction.
For ERC20 payments, an approval step is required before payment. This is normal ERC20 behavior. The approval allows the contract to pull only the amount needed for that payment and split it between the merchant and the fee wallet.
On the verification side, our backend checks the transaction target, the called method, the token or native amount, and the resulting transfer logs. This makes the chain transaction itself the source of truth for settlement.
You can inspect the live Base mainnet contract on BaseScan.
0x57F33f55159Da453F05A9A28f53da9dD038bE103
- Non-custodial payment execution.
- Fixed 0.1% fee calculated inside the contract.
- Deterministic merchant and fee split.
- Onchain verification against real transaction data and logs.