---
title: "NFT 가격을 설정하는 방법"
description: "NFT 가격 책정 방법을 다루는 가이드입니다. 디지털 자산에 적절한 가치를 설정하는 방법을 알아보세요."
---

# NFT 가격을 설정하는 방법

NFT에 가격을 설정하는 방법 가이드

그리고 저희 NFT 튜토리얼 시리즈의 나머지 글들도 꼭 확인해 보세요:

- 🌟  [Web3.js를 사용하여 NFT를 민팅하는 방법](https://www.alchemy.com/blog/how-to-mint-an-nft-using-web3-js)
- 🪄  [Ether.js로 NFT를 민팅하는 방법](https://www.alchemy.com/blog/how-to-mint-an-nft-with-ethers-js)
- 👛  [모바일 지갑에서 NFT를 확인하는 방법](https://www.alchemy.com/blog/how-to-view-your-nft-in-your-mobile-wallet)
- 💻  [NFT 민터 튜토리얼: 풀스택 dApp을 만드는 방법](https://www.alchemy.com/blog/nft-minter-tutorial-how-to-create-a-full-stack-dapp)

NFT를 막 만들었고 이를 다른 NFT 애호가들에게 판매하고 싶다고 가정해 봅시다. 이를 위해서는 NFT에 가격을 매겨야 하는데, 가격을 붙이는 방법은 크게 두 가지입니다:

1. 스마트 컨트랙트 내에서 설정 \(이 가이드에서 다루는 방법\)
1. [NFT 마켓플레이스](https://www.alchemy.com/dapps/best/nft-marketplaces)나 플랫폼에 NFT를 등록 \(더 널리 사용되는 방법\)

## 컨트랙트 내에서 NFT 가격 설정하기

#### 민팅 시 수수료를 요구하기

<CalloutBlock>

**참고**: 아래 섹션은 바로 사용 가능한 솔루션이 아닙니다. [NFT Creation](https://www.alchemy.com/docs/how-to-interact-with-erc-721-tokens-in-solidity) 튜토리얼의 [Step 10](https://www.alchemy.com/docs/how-to-interact-with-erc-721-tokens-in-solidity)에서, 민팅에 대한 결제를 받도록 [Solidity](https://www.alchemy.com/overviews/solidity) 코드를 수정해야 하며, 이는 민팅을 처리하는 프런트엔드의 web3 / ethers.js 로직에서 ETH 전송을 허용하기 위해 msg.value 파라미터를 포함해야 함을 의미합니다.

</CalloutBlock>

이 수수료 패턴은 컨트랙트 내부에서 이루어지고 수수료 메커니즘 자체가 민팅 과정에 내장되어 있기 때문에 완전히 탈중앙화되어 있습니다. 민팅에 가격을 적용하려면 스마트 컨트랙트를 수정하여 이 동작을 포함시켜야 합니다. 개괄적으로 설명하면, mint 함수를 payable로 만들고 구매자에게 NFT를 전송하기 전에 사용자가 일정량의 ETH를 지불하도록 요구함으로써 NFT 민팅 가격을 적용할 수 있습니다.

다음은 이러한 유형의 민팅 과정을 위한 예시 코드입니다:

`function mintToken(address to, uint256 tokenId, string uri) public virtual payable`

- 사용자가 ETH를 지불하고 NFT를 민팅할 수 있도록 하려면, 이 함수를 public이자 payable로 만들어야 합니다. public 함수는 내부적으로 호출하거나 메시지를 통해 호출할 수 있어 누구든 이 함수와 상호작용할 수 있습니다. \(이 함수가 컨트랙트 소유자만 호출할 수 있도록 하면 잠재적인 구매자를 차단하게 되므로 그렇게 하고 싶지 않을 것입니다!\)

`require(msg.value >= 10, "Not enough ETH sent; check price!");`

- 이 require 문은 payable 함수가 최소 10 wei를 받도록 요구하며, 그렇지 않으면 함수가 실패하고 되돌려집니다. `msg.value ` 파라미터는 mint 함수와 함께 전송된 ETH 값입니다.**‍**

`mint(to, tokenId);`

- 이는 OpenZepplin의 ERC721 컨트랙트 파일에 포함된 mint 함수를 호출하여 선택한 NFT를 구매자에게 인스턴스화/전송합니다.

`_setTokenURI(tokenId, uri);`

- 이는 OpenZepplin의 ERC721 컨트랙트 파일에 포함된 **`\_setTokenURIfunction`**를 호출하여 NFT URI를 특정 엔드포인트로 설정합니다.

‌민팅 컨트랙트에 수수료를 구현하는 방법에는 다양한 변형이 있습니다. 위에 소개된 방식은 가장 단순한 축에 속하지만, 많은 프로토콜은 훨씬 더 복잡한 수수료 패턴을 사용하기도 합니다.

## 경매 플랫폼을 통해 NFT 가격 설정하기

#### OpenSea나 다른 NFT 경매 플랫폼에 NFT 등록하기

코드를 작성하지 않는 대안으로는, 새로 민팅한 NFT를 [OpenSea](https://www.alchemy.com/dapps/opensea)나 다른 NFT 경매 웹사이트에 등록하여 가격을 설정하는 방법이 있습니다. NFT 위에서 작동하는 OpenSea의 UI 레이어를 통해 가격을 설정하거나, 입찰을 받거나, 그 외 더 복잡한 경매 방식을 사용할 수 있으며, 이에 필요한 모든 로직을 처리해 줍니다.

[Ethereum mainnet](https://www.alchemy.com/rpc/ethereum)의 경우, 다음을 사용하세요: [https://opensea.io/](https://opensea.io/)

테스트넷의 경우, 다음을 사용하세요: [https://testnets.opensea.io/](https://testnets.opensea.io/)

<CalloutBlock>

**참고:** NFT 경매 플랫폼은 일반적으로 등록 및 경매 처리에 대해 수수료를 부과합니다. NFT 판매를 극대화할 수 있는 경쟁력 있는 요율을 찾으려면 여러 플랫폼의 최신 정보를 꾸준히 확인하세요. [Zora](https://zora.co/)와 [SuperRare](https://superrare.com/)는 OpenSea와 유사한 서비스를 제공하는 두 가지 대안 플랫폼입니다.

</CalloutBlock>
