SKIP TO CONTENT
TOKENIZATION6 minBuilding the RWA Chain / Ep. 1 · Stage 1-2

ERC-3643 Transfers: What They Check and What They Cost

Same token, two receivers: one gets the tokens, one is refused, and both can cost gas. What does the token check?

XIN
Pixel-art illustration of a deed-shaped key beside custom and general-purpose rails, representing an infrastructure design choice.

IN 30 SECONDS

ERC-3643 is an Ethereum token standard that checks, before an ordinary transfer, that the receiver is verified and that the move follows the token’s rules. In the spec, the issuer’s minting and forced transfers skip those rules but still need a verified receiver.

KEY TAKEAWAYS · 3

  • Estimate cost from the transactions a workflow really creates and their measured gas. A fixed gas price is not a fixed cost in dollars or euros.
  • ERC-3643 checks the receiver’s identity separately from the transfer rules, on an existing network.
  • In the spec, minting and forced transfers skip the compliance rules but still need a verified receiver, so review the issuer’s powers on their own.
On this page

Count transactions, not business steps

IN SHORT A cost estimate counts the transactions your workflow really creates, not its business steps.

WORDS TO KNOW

ERC-3643
An Ethereum token standard where only verified holders can receive tokens, and each ordinary transfer must pass the token’s rules.
Gas
The unit that measures a transaction’s computing work. The fee is the gas used times the gas price.
EVM
The engine that runs smart contracts on Ethereum and on networks compatible with it.

I’m one of the five named authors of ERC-3643, a standard for tokens with rules on who may hold them.

A permissioned token like ERC-3643 can run on an existing EVM network, so a separate chain needs more evidence than “real estate is regulated.”

Ethereum-compatible networks run the EVM The engine that runs smart contracts on Ethereum and on networks compatible with it. See the glossary. One transaction can hold several checks, so a five-step process doesn’t always mean five paid transactions.

STEP BY STEP

Flow diagram: 4 stepsFlow diagram: 4 steps. Read source records, then Prepare an allowed action. Prepare an allowed action, then Submit the state change. Submit the state change, then Reconcile the result.1Read source records2Prepare an allowed action3Submit the state change4Reconcile the result

Step 1. Read source records. A read sends no paid transaction, but the RPC provider, the service that answers an app’s reads, can still charge.

Pick a step to see it move
  1. Read source records A read sends no paid transaction, but the RPC provider, the service that answers an app’s reads, can still charge.
  2. Prepare an allowed action Check the inputs and the approvals the action needs.
  3. Submit the state change This is the paid transaction. Measure its gas on the build you plan to use, under the load you expect.
  4. Reconcile the result Index what happened and handle failures.
Separate the business steps from the transactions they create. A planning example, not a land-registry integration or a measured deployment.
workload-budget.txt
Execution fee estimate = transactions × measured gas × effective gas price
Fiat estimate          = native-token fee × assumed token price
Separate costs         = RPC + indexing + storage + providers + operations
For an L2              = include its applicable data/settlement charges

IN PLAIN WORDS

These are inputs for a budget, not a published benchmark. Ethereum’s docs keep gas used and gas price apart. A fixed Gas The unit that measures a transaction’s computing work. The fee is the gas used times the gas price. See the glossary price still gives a cost in dollars or euros that moves.

A read through eth_call sends no paid transaction. The same code run inside a transaction does use gas.

Coming up next: So what does the token itself check inside that transaction?

What ERC-3643 already gives you

IN SHORT ERC-3643 already splits two checks: is the receiver verified, and does this transfer follow the token’s rules?

In the ERC-3643 An Ethereum token standard where only verified holders can receive tokens, and each ordinary transfer must pass the token’s rules. See the glossary spec, these checks are called isVerified and canTransfer. A normal transfer also checks that the token isn’t paused and that neither wallet is frozen. See the transfer rules in the spec.

WATCH OUT

The issuer’s own actions work differently. In the spec, minting new tokens and forced transfers need a verified receiver but skip the compliance rules. Burning tokens skips the check on who may hold them.

So review those powers on their own. The standard gives you technical controls; the issuer’s team still sets their legal purpose.

What the token does

Receiver claims, transfer rules, pause and freeze controls, and explicit issuer powers.

What your deployment must handle

Admin-key security, policy updates, monitoring, outside data and finality assumptions: when a transaction can no longer be reversed under the network’s rules.

A worked example: one transfer settles, one reverts

IN SHORT Same token, same sender, two receivers: the verified one gets the tokens, the other transfer reverts.

A WORKED EXAMPLE

Illustrative numbers

PASSTransfer 1: the receiver is verified

INPUT

From
Alice (verified)
To
Bob (verified)
Amount
100 tokens

WHAT HAPPENS

  1. No pause, no frozen wallet, enough free balance.
  2. Is Bob verified? Yes: he holds the required claims.
  3. Does the transfer fit the token’s rules? Yes.

OUTPUT

Result
100 tokens move to Bob
Cost
one transaction, gas paid

REVERTEDTransfer 2: the receiver has no valid claim

INPUT

To
Carol (no valid claim)
Amount
100 tokens

WHAT HAPPENS

  1. Is Carol verified? No.
  2. The transfer reverts, so no balance changes.
  3. The failed transaction can still be included and consume gas.

OUTPUT

Result
no tokens move
Cost
gas can still be paid

The names and amounts are invented; the checks are the ones ERC-3643 names. A revert rolls the balance change back, but the failed transaction can still land in a block and cost gas.

ITEM GET

Checks first, then the move

No verified receiver, no transfer: nothing moves.

EIP-140, an Ethereum Improvement Proposal, defines the REVERT step. Validators don’t ignore its result. Three more things need their own review on your network: getting transactions in, resisting censorship, and recovering when a data source goes down.

FAQ

An L2 with ERC-3643 can be a good place to start, if its operation, fees, security and tools fit. A custom chain needs a requirement the L2 can’t meet, and a team to run it.

As CTO from March 2025 to June 2026, I built the engineering team and led a Cosmos EVM chain until it was ready for a mainnet launch. I’m not claiming a mainnet in production, or announcing launch dates.

STAGE CLEAR

What you now know

  • How to estimate a workflow’s cost from transactions and measured gas.
  • What ERC-3643 checks on every ordinary transfer, and which issuer powers skip the compliance rules.

Check yourself

Tap or click a question to see the answer.

The issuer forces a transfer to a verified wallet that the transfer rules would block. Do those rules stop it?

No. In the spec, a forced transfer needs a verified receiver but skips the compliance rules.

Next stage:What must you check before you build a chain of your own?6 min
Adam Boudjemaa
Adam Boudjemaa

Former CTO of Integra. Named author (1 of 5) of ERC-3643, first author of ERC-6960, co-author of ERC-7410, and co-author of ERC-8203, which is still a draft. Building production AI and regulated Web3 systems.

Have a project to ship or a role to fill?

Discuss your project or role
Follow the engineering notes

Get new articles on production AI and smart contracts by email.