Semuni: pays off-chain, anchors a commitment
Semuni represents an off-chain payer. Here is the complete on-chain record of one three-period testnet batch, anchored in September 2026:164 bytes, zero value, three hashes. That is the entire cost and the entire disclosure.
Demo Payroll: pays on-chain
The same system, the opposite choice. Demo Payroll pays in an ERC-20 on Sepolia, sorunPayroll() emits the transfer, the payment record and the anchor in one transaction, and Attestcoin authenticates the transfer itself, not merely an assertion about it.
The cost is that the amount is public. It is in the Transfer log, in the PaymentMade event, and readable directly:
Side by side
Which should you be
Anchored, almost certainly. Unless you already pay in an ERC-20 on Ethereum, anchoring is the only option, and it is the better one for your workers, because their salaries stay private. The transparent model exists here so the whole chain can be audited end to end. It is a demonstration choice, not a recommendation.What a judge or auditor can check
Every step is on a public explorer and none of it requires trusting us:1
The anchor on Ethereum
The transaction above, on Etherscan. Three hashes and no private preimage.
2
The Attestcoin verification on Creditcoin
acceptedByPayer(commitment, payer) on the attestation registry returns true. The proof was verified by the native precompile, not by us.3
The statement
statusOf(credentialId) returns valid, with the band and the evidence date.4
The payout
25 mUSDC moved from the credit pool to the worker, against a statement that never carried an amount.