스테이블코인 가이드

USDC가 있는데 왜 가스비 부족이 뜰까

페이지 정보

작성자 스테이블어닝 리서치
작성일 20:27

본문

지갑에 USDC는 넉넉히 있는데 보내기 버튼을 누르자 가스비가 부족하다는 말이 뜹니다. 돈은 있는데 왜 수수료를 못 내는 걸까. 이때 빠진 것은 USDC가 아니라 그 네트워크가 쓰는 별도 수수료 코인일 때가 많습니다. 화면에 보이는 잔고는 멀쩡해서 더 헷갈립니다.

이 장면은 처음 겪으면 꽤 억울합니다. USDC도 코인이고, 지갑 안에 돈처럼 보이는데 왜 몇 천 원어치 다른 코인이 더 필요하다는 말이 나오는지 바로 납득되지 않습니다.

문제는 USDC의 가치가 아니라 거래를 기록하는 네트워크입니다. 지갑은 “얼마를 보낼 수 있느냐”와 “이 거래를 블록체인에 올릴 수 있느냐”를 따로 봅니다.

USDC 잔고는 있지만 가스비 코인이 없어 전송을 망설이는 지갑 화면

잔고는 USDC인데 수수료는 다른 코인입니다

USDC는 달러 가격을 따라가도록 설계된 스테이블코인입니다. Circle도 공식 설명에서 USDC를 디지털 달러에 가까운 형태로 소개합니다. 그런데 지갑에서 USDC를 보내는 순간에는 달러 이야기보다 네트워크 이야기가 먼저 등장합니다.

예를 들어 이더리움 네트워크에 있는 USDC를 보낸다면, 거래를 처리하는 비용은 보통 ETH로 냅니다. USDC가 100달러어치 있어도 ETH가 0이면 지갑은 거래를 시작하지 못할 수 있습니다.

Ethereum 공식 gas 설명도 거래에는 gas가 필요하고, 그 비용이 네트워크에서 쓰이는 방식으로 계산된다고 설명합니다. 여기서 gas는 택배비에 가깝습니다. 물건 값과 택배비가 같은 지갑 안에 있다고 해서 같은 돈으로 처리되는 것은 아닙니다.

스테이블코인이라는 이름 때문에 더 헷갈립니다. 1달러에 가깝게 움직인다는 약속은 가격의 약속이지, 모든 네트워크에서 수수료까지 대신 내준다는 뜻은 아닙니다. 결제할 물건과 계산대 사용료가 다른 줄에 적혀 있는 셈입니다.

그래서 “USDC가 있는데 왜 부족하다고 하지?”라는 질문은 조금 바꿔야 합니다. 지갑이 부족하다고 말하는 것은 USDC 잔고가 아니라, 그 거래를 올릴 네트워크 수수료 잔고일 가능성이 큽니다.

USDC 잔고와 수수료 코인, 네트워크, 거래 기록, 전송 대기의 관계를 보여주는 인포그래픽

같은 USDC라도 체인이 바뀌면 필요한 코인도 바뀝니다

USDC라는 이름만 보면 하나의 코인처럼 느껴집니다. 하지만 지갑 화면을 자세히 보면 Ethereum, Base, Polygon, Arbitrum 같은 네트워크 이름이 붙어 있을 수 있습니다.

이 차이는 단순한 표기가 아닙니다. 어느 체인 위에 있는 USDC인지에 따라 전송 수수료로 필요한 코인이 달라집니다. 이더리움에서는 ETH가 필요하고, 폴리곤에서는 POL 계열 수수료 코인이 필요할 수 있습니다. 네트워크마다 “도로 사용료”를 내는 방식이 다른 셈입니다.

최근에 다룬 브릿지 USDC 문제도 이 지점과 이어집니다. 같은 USDC처럼 보여도 어느 네트워크에 있는지에 따라 이동 경로, 입금 화면, 필요한 수수료 코인이 달라집니다.

거래소 출금 화면에서도 비슷한 일이 벌어집니다. 같은 USDC 출금인데 네트워크 선택지가 여러 개 나오면, 사용자는 수수료가 싼 줄만 보고 고르기 쉽습니다. 하지만 그 선택은 지갑에 도착한 뒤 어떤 수수료 코인이 필요해질지도 함께 정합니다.

지갑에서 가장 먼저 볼 것은 잔고 숫자보다 네트워크 이름입니다. USDC가 충분해 보여도, 그 네트워크의 수수료 코인이 없으면 전송 버튼 앞에서 멈출 수 있습니다.

몇 천 원어치 코인이 없어서 큰 잔고가 멈출 수 있습니다

가스비 부족은 금액 크기와 별개로 발생합니다. 지갑에 USDC가 10달러만 있어도, 1만 달러가 있어도 원리는 같습니다. 네트워크 수수료로 쓸 코인이 없으면 거래는 대기하거나 실패합니다.

그래서 이 문제는 “돈이 모자라다”보다 “수수료를 낼 통화가 다르다”에 가깝습니다. 해외여행에서 카드 한도는 충분한데, 현금만 받는 작은 버스표를 못 사는 상황과 비슷합니다.

MetaMask의 gas 안내도 지갑 거래에는 네트워크 수수료가 필요하다는 점을 따로 설명합니다. 지갑이 갑자기 돈을 더 요구하는 것이 아니라, 블록체인에 거래를 기록하는 비용을 묻는 것입니다.

더 답답한 순간은 수수료 코인을 사려고 지갑 안에서 스왑을 누를 때입니다. USDC를 ETH로 조금 바꾸면 될 것 같지만, 그 스왑 거래 자체도 네트워크에 올려야 합니다. 수수료 코인이 완전히 0이면 바꾸는 거래마저 시작하기 어려울 수 있습니다.

그래서 어떤 사람은 거래소에서 아주 소액의 수수료 코인을 따로 보내 해결하고, 어떤 사람은 네트워크가 맞는 다른 지갑이나 서비스 기능을 찾습니다. 방식보다 중요한 것은 원인입니다. USDC가 쓸 수 없는 돈이 된 게 아니라, 움직이는 데 필요한 작은 연료가 없는 상태입니다.

이때 급하게 USDC를 더 사면 문제가 풀리지 않을 수 있습니다. 필요한 것은 USDC가 아니라 그 네트워크에서 수수료로 쓰이는 작은 잔고일 수 있기 때문입니다.

전송 실패 알림이 잔고 손실은 아닙니다

가스비가 부족해서 전송이 시작되지 않았다면, 대개 USDC가 상대방에게 갔다가 사라진 상황은 아닙니다. 거래가 블록체인에 올라가지 못했거나, 지갑이 애초에 보내기 전 단계에서 막은 것입니다.

다만 화면 표현은 지갑마다 다릅니다. 어떤 지갑은 “insufficient gas”처럼 바로 말하고, 어떤 지갑은 예상 수수료 계산에 실패했다는 식으로 보여 줍니다. 거래 해시가 생겼는지, 네트워크 탐색기에서 상태가 보이는지에 따라 실제 진행 정도도 달라집니다.

전송 버튼을 누른 뒤 몇 초 만에 막혔다면 지갑 내부에서 멈춘 경우가 많습니다. 반대로 거래 해시가 생기고 탐색기에서 pending처럼 보인다면 이미 네트워크 쪽으로 넘어간 상태일 수 있습니다. 같은 “안 됨”이어도 기다릴 일인지, 수수료 잔고를 채울 일인지가 달라집니다.

여기서 불안해서 같은 전송을 여러 번 누르면 더 헷갈립니다. 전송 자체가 시작되지 않았다면 먼저 필요한 수수료 코인을 확인하는 편이 낫습니다. 이미 네트워크에 올라간 거래라면 지갑 내역이나 탐색기 상태를 보고 기다려야 합니다.

중요한 건 잔고 화면만 보고 결론을 내리지 않는 것입니다. USDC 잔고, 수수료 코인 잔고, 거래 상태는 서로 다른 줄에 있는 정보입니다.

가스비 부족으로 전송 전 차단, 해시 없음, 수수료 부족, 잔고 유지가 이어지는 흐름도형 인포그래픽

USDC로 가스비를 내는 화면도 가끔 있습니다

요즘은 일부 앱에서 수수료를 대신 처리하거나, 특정 조건에서 USDC로 수수료를 내는 것처럼 보이는 기능도 나옵니다. Circle 개발자 문서의 gas fees 안내도 이런 수수료 처리 방식을 별도로 설명합니다.

하지만 모든 지갑 전송이 그렇게 움직이는 것은 아닙니다. 앱이 중간에서 수수료를 대납하거나 별도 기능을 제공하는 경우와, 개인 지갑에서 일반 전송을 누르는 경우는 다릅니다.

이 차이를 모르고 있으면 어떤 서비스는 친절하고, 어떤 지갑은 이상한 것처럼 느껴집니다. 사실은 뒤에서 누가 네트워크 수수료를 내느냐가 달라졌을 뿐입니다. 서비스가 대신 내고 나중에 반영할 수도 있고, 사용자가 직접 네이티브 코인을 들고 있어야 할 수도 있습니다.

그래서 “어디서는 USDC만으로 됐는데 왜 여기서는 안 되지?”라는 느낌이 생깁니다. 답은 대개 서비스가 수수료 처리를 숨겨 줬는지, 아니면 사용자가 직접 네트워크 수수료를 내는 지갑 전송인지의 차이에 있습니다.

처음 쓰는 지갑이나 네트워크라면, USDC 잔고와 별도로 아주 작은 수수료 코인을 남겨 두는 이유가 여기에 있습니다. 많은 금액이 필요한 것은 아니지만, 0이면 버튼이 멈춥니다.

거래소 입금 전에는 네트워크 이름을 다시 봐야 합니다

가스비를 마련했다고 끝나는 것은 아닙니다. 거래소로 USDC를 보낼 때는 거래소 입금 화면의 네트워크와 내 지갑의 네트워크가 맞아야 합니다.

지갑에서 Ethereum USDC를 들고 있는데 거래소에서 다른 네트워크 입금 주소를 골랐다면, 가스비 문제가 풀려도 더 큰 문제가 생길 수 있습니다. 반대로 네트워크가 맞는데 수수료 코인만 없었다면, 작은 수수료 잔고를 채운 뒤 전송이 가능해질 수 있습니다.

여기서 글의 초점은 겁을 주는 데 있지 않습니다. 가스비 부족 알림은 대개 “USDC가 위험하다”는 신호가 아니라 “이 네트워크에서 거래를 쓰려면 다른 코인이 필요하다”는 신호입니다. 원인을 이렇게 나누면 화면이 훨씬 덜 무섭습니다.

이 글에서 남겨야 할 결론은 단순합니다. USDC 잔고는 보낼 금액이고, 가스비 코인은 그 금액을 움직이는 비용입니다. 둘은 같은 지갑 안에 있어도 같은 역할을 하지 않습니다.

다음에 지갑이 가스비 부족을 말하면, USDC를 더 사기 전에 네트워크 이름과 그 네트워크의 수수료 코인을 먼저 떠올리면 됩니다. 화면이 조금 덜 이상해 보일 것입니다.

댓글 0
홈으로 전체메뉴 마이메뉴 새글/새댓글
전체 검색
회원가입