# EIP4494 Permits for ERC721

ERC by [William](https://twitter.com/William94029369) and [Simon](https://twitter.com/dievardump) inspired by Permits NFT idea and EIP2612

## EIP overview

This ERC extends the function of EIP2612 - the initial [permit EIP](https://eips.ethereum.org/EIPS/eip-2612) to ERC721 NFT. It requires a separate EIP due to the difference between ERC20 and ERC721. The main difference is that ERC20 permits use value (the amount of the ERC20 token being approved) and a nonce based on the owner's address, while ERC721 permits focus on the `tokenId` of the NFT and increment nonce based on the transfers of the NFT.

This EIP is basically EIP-2612 with an extended ERC-721 function tokenID instead of value—the amount of tokens being transferred.

The main difference between EIP-2612 and EIP-4494 is that EIP-4494 defines tokenID nonce as this function describes and differs NFTs in the contract.

* Full EIP: <https://github.com/ethereum/EIPs/pull/4494/commits/5756e7f465c35da1e0999af71d31c85a8a9668e>
* ERC as PR to follow its status and progress: <https://github.com/ethereum/EIPs/pull/4494>
* EIP-2612 (for comparison): <https://github.com/ethereum/EIPs/pull/2612/commits/1cfbd0eb808892b40f09abebbe3d9581c93240ea>
* EIP-4494 implementation in Vyper: <https://github.com/tserg/vyper-contracts/blob/main/contracts/EIP4494.vy>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nft-standards.gitbook.io/nft-standards-wiki/working-group-eips-and-implementations/eip4494-permits-for-erc721.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
