# TransactionMustComeFromEOA (/docs/errors/chain/TransactionMustComeFromEOA)

Rejected per EIP-3607: the sender address has contract code deployed, and transactions must originate from externally owned accounts. Check `eth_getCode` for the `source` address and sign with a plain EOA key instead.

Declared by the `EVM` pallet; it classifies to the semantic code [`not_authorized`](/docs/errors/not-authorized).

## Remediation [#remediation]

Sign with the key or origin that owns the target object, then retry

The same explanation is available in the terminal: `btcli explain TransactionMustComeFromEOA`.
