Blockchain
Tokens and smart contracts: when they make sense for a business, and what building them well involves
Tokens and smart contracts without the hype: when a shared ledger solves a real problem, ERC standards, immutability and upgradeability, audits, oracles, costs, MiCA and wallet experience.
Fabio Folgori5 min read

Tokens and smart contracts arrived with huge promises and, in many projects, disappointing results. Not because the technology does not work, but because it was used where it was not needed. A blockchain is a shared, verifiable ledger that is hard to alter. When that profile answers a real problem, it is a powerful tool; when it does not, it is a slow, expensive database.
The test to run first
A blockchain makes sense when these conditions hold together:
- several parties need to write to or verify the same ledger;
- there is no trusted party everyone accepts as data manager;
- public verifiability or censorship resistance are requirements, not side effects;
- the rules can be expressed as deterministic code.
If a business manages its own data alone, a database with a good change log does the same job better. Loyalty schemes, internal certificates and traceability run by a single party almost always fall into this case.
Tokens: what they are technically
On an EVM-compatible network, a token is a contract that keeps a ledger of balances and transfer rules according to a standard:
- ERC-20 for fungible tokens (interchangeable units);
- ERC-721 for non-fungible tokens, each unique;
- ERC-1155 for mixed collections, efficient when many token types are needed.
Using a standard is not a detail: it is what makes the token compatible with existing wallets, exchanges and tools. You start from established, verified implementations, not from scratch.
Smart contracts: where the risk is concentrated
Immutability
Deployed code cannot be changed. A bug stays, and if the contract holds value it can be exploited within minutes. Upgradeable proxies allow the logic to change, but reintroduce a party with the power to do so: this must be disclosed to users and protected with multi-signature and time delays.
Security
The vulnerability classes are well known: reentrancy, missing access controls, arithmetic errors, price manipulation, transaction-ordering dependence. The defence is a process: verified libraries, extensive tests, automated analysis, independent review, gradual release.
Oracles
A smart contract cannot see the outside world. Prices, events and deliveries arrive through oracles, which become the trust point of the system. A perfect contract with manipulable input data is not secure.
Execution costs
Every write costs a fee (gas), which varies. Contract design matters a lot: data stored on-chain only when essential, the rest off-chain with a verifiable reference.
Wallets and user experience
This is where most public-facing projects fail. Recovery phrases, incomprehensible transaction signatures, fees payable in a currency the user does not hold. Every screen deals with people's money: interface clarity matters as much as code correctness. Modern approaches (account abstraction, fees paid by the service, sign-in with familiar credentials) reduce friction, but must be designed carefully.
Rules
In Europe the MiCA regulation governs the issuance of several categories of crypto-assets and services on them. If a token has economic value, is transferable or is offered to the public, the legal assessment must come before design, not after.
How to proceed seriously
- The shared-ledger test, honestly.
- A legal assessment, if the token has value.
- Network choice based on costs, ecosystem and privacy requirements.
- Minimal contracts on established standards, with tests and audit.
- Interface and wallet designed for real users, not insiders.
- An incident plan and, if planned, governance of upgrades.
A worked example
A consortium of producers wants to certify the origin of its products and let the end customer verify it with a code on the label.
- With a single party managing the data (the consortium itself), the shared-ledger test fails: a database with a change log, digital signatures on batches and a public verification page does the same job, costs less and is easier to correct.
- With several independent parties (producers, processors, distributors) each writing their own part and refusing a single manager, a shared ledger starts to make sense. Even then, only the fingerprint of the data and ownership transfers go on-chain; documents and photos stay off-chain, with a verifiable reference.
In both cases the hardest problem is not technical: it is ensuring that what enters the ledger matches reality. No blockchain can verify a label stuck on the wrong product.
My take
I worked on the React front end of VeWorld, the wallet for the VeChain network that runs as a Chrome extension, together with an international team. That is where I understood where a public-facing blockchain project is really won or lost: not in the contract, but in the interface that has to explain a signature, a balance, an irreversible operation without scaring people or hiding anything.
That is why, when a business asks me for a token, the first thing I do is the shared-ledger test. Often the honest answer is that a good management system is enough. When the blockchain really is needed, it must be treated with the seriousness of software that moves money.
And when the test fails, I say so without embarrassment: that is a service too.
Why work with me
I have been programming since 1999, delivered more than 300 projects and work as an external developer with about 30 agencies, from Rome and remotely. I have direct experience with wallet interfaces and blockchain projects, and I will tell you frankly whether your case needs one.
If you are weighing tokens or smart contracts, get in touch: in a call of about 20 minutes we run the shared-ledger test together. The service is in Blockchain, tokens and smart contracts.
Frequently asked questions
When several parties who do not fully trust each other must share a ledger none of them controls alone, and when public verifiability is a requirement. If there is a trusted party managing the data, a database is simpler, cheaper and faster.
Deployed code is immutable. An upgrade mechanism (proxy) can be built in, but it reintroduces a party with the power to change the rules: it must be disclosed and governed. Either way, a bug costs far more than in traditional software.
For any contract that holds or moves value, yes. An independent audit, extensive tests and automated analysis reduce the risk; nothing removes it entirely.
Yes. The EU MiCA regulation governs the issuance of certain categories of crypto-assets and services on them. If the token has economic value or is offered to the public, a legal assessment is needed before designing it.
- #smart contract
- #token
- #blockchain
- #wallet
- #security


