내 이더리움 지갑 주소는 하나인데…
내가 가진 수십 개의 ERC-20 토큰을 어떻게 한 번에 조회할 수 있을까?
Metamask나 Etherscan으로 하나씩 보는 것도 한계가 있죠.
특히 Web3 기반 앱을 개발 중이라면 사용자의 지갑에서 모든 토큰 목록과 잔액을 자동으로 불러오는 기능이 필수입니다.
이번 포스트에서는 Alchemy API와 Covalent API를 이용해
지갑 주소 하나로 모든 ERC-20 토큰을 한 번에 조회하는 방법을 소개합니다.
스테이블 코인에 대해 궁금하시다면 아래 링크를 참조해주세요.
2025.07.03 - [IT 관련 지식] - 💰 스테이블 코인이란? 변동성을 잡은 암호화폐의 핵심
✅ 1. 왜 직접 구현하면 안 되는가?
ERC-20 토큰은 수천 개가 넘고, 각 토큰은 contract가 다릅니다.
직접 스마트 컨트랙트로 하나하나 호출해서 잔액을 조회하는 방식은 비효율적이고, Gas 비용과 속도 문제도 큽니다.
따라서 토큰 인덱싱 API를 제공하는 외부 API 서비스가 필요합니다.
✅ 2. Alchemy Token API
- 장점: 안정적이고 빠름, Polygon 등 멀티체인 지원
- 단점: 일부 고급 기능은 유료
📦 예제
GET https://dashboard.alchemy.com/api/token-balances/v2/:address
{
"address": "0x1234...",
"tokenBalances": [
{
"contractAddress": "0x6b175474e89094c44da98b954eedeac495271d0f", // DAI
"tokenBalance": "123456000000000000000"
},
...
]
}
💡 팁:
- Alchemy SDK로 쉽게 사용 가능
- getTokenMetadata()로 심볼, 이름, 이미지까지 조회 가능
✅ 3. Covalent API
- 장점: 쉬운 RESTful 방식, 무료 사용 가능, DeFi/NFT 정보까지 가능
- 단점: 일부 체인 지원 제한
📦 예제
GET https://api.covalenthq.com/v1/1/address/0x.../balances_v2/?key=YOUR_API_KEY
{
"data": {
"items": [
{
"contract_name": "Tether USD",
"contract_ticker_symbol": "USDT",
"balance": "145000000",
"quote": 145.0
},
...
]
}
}
💡 팁:
- API 키 발급은 무료 (covalenthq.com)
- ERC-20, NFT, DeFi까지 한번에 조회 가능
✅ 4. 어떤 API를 선택해야 할까?
항목AlchemyCovalent
| 응답 속도 | 매우 빠름 | 빠름 |
| 지원 체인 | Ethereum, Polygon 등 | Ethereum, BSC, Avalanche 등 |
| NFT/DeFi 지원 | 별도 API 필요 | 통합 지원 |
| 무료 사용 한도 | 월 300K | 월 200K |
| 추천 대상 | 개발자 / 대규모 서비스 | 개인 프로젝트 / 간단한 뷰어 |
✅ 5. React에서 ERC-20 토큰 한 번에 불러오기 예제 (Alchemy)
import { Alchemy, Network } from "alchemy-sdk";
const config = {
apiKey: "YOUR_API_KEY",
network: Network.ETH_MAINNET,
};
const alchemy = new Alchemy(config);
const fetchTokens = async (address) => {
const balances = await alchemy.core.getTokenBalances(address);
return balances.tokenBalances;
};
✅ 마무리
Web3 지갑의 핵심은 단순히 주소를 연결하는 것이 아니라, 사용자의 자산을 정확하게 파악하는 것입니다.
지갑 하나만 있으면,
- 모든 ERC-20 토큰의 잔액
- 해당 토큰의 심볼, 이름, 로고
- 심지어 현재 가격까지 조회할 수 있습니다.
📌 지금 바로 Alchemy 또는 Covalent API를 연동해 나만의 Web3 자산 뷰어를 만들어보세요!
반응형
'개발 관련 지식' 카테고리의 다른 글
| 🧾 스마트 컨트랙트 없이 NFT 발행하는 법 (Mint API 기반) (0) | 2025.07.30 |
|---|---|
| Alchemy SDK 활용한 ERC-20 토큰을 조회 React 코드 (3) | 2025.07.23 |
| Kubernetes 없이도 가능한 MSA: Render · Railway · Fly.io 비교 (0) | 2025.07.03 |
| Weaviate로 만드는 나만의 GPT 검색 시스템: LLM과 벡터 DB의 만남 (2) | 2025.07.03 |
| Kubernetes 기반 MSA 배포 전략: 확장성과 안정성을 동시에 잡는 비결 (0) | 2025.06.25 |